java – Spring Framework XML配置元数据和命名空间

我一直在研究元数据信息的配置以使用Spring,我意识到我需要深入研究XML.我对XML文件中的引用方案有疑问.到目前为止,我所知道的(我猜……),如下:

>我读到使用命名空间对分离很有用
XML文档中的标记元素,从而避免冲突
加价(source).
>使用URI来命名命名空间被视为标准,而不是
意味着将在网址中搜索文件,用于
示例(source – 在“命名空间名称指向什么?”中).
>命名空间的声明是使用保留的
属性,“xmlns”.
>命名空间使用前缀(也称为别名),但使用
标记各种子元素不需要前缀(source – 在“美化”中).

当我遇到以下标记时,事情开始变得混乱:

<element xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://www.w3.org/1999/XSL/Transform
                             http://www.w3.org/1999/XSL/Transform.xsd
                             http://www.w3.org/1999/xhtml
                             http://www.w3.org/1999/xhtml.xsd">
</element>

根据许多来源(包括this),引用XSD架构是使用(看似我)命名空间,如上所述,它不指向任何东西,没有任何文件或任何东西.

session 2.6中说,词汇表由Namespace标识和使用,让我理解名称“schemaLocation”是一个保留字,并与所选前缀“xsi”一起使用.我想知道一些与此处提供的事实有关的事情:

>“schemaLocation”的名称是什么,放在前缀之后
用过的?这被命名为“属性”吗?如果是这样,那是什么属性
> Spring以不同的方式识别某些命名空间,执行它
在它上面拥有自己的逻辑,或者命名空间是否真的可能
指向地址中的物理文件
>使用“xsi:schemaLocation”可以在没有声明的情况下完成
使用前缀为“xsi”的命名空间?

例如:

<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:util="http://www.springframework.org/schema/util"
   xsi:schemaLocation="..... http://www.springframework.org/schema/util 
   http://www.springframework.org/schema/util/spring-util-4.0.xsd">

这段摘录摘自“Spring Framework入门 – 第二版”,第3章,第112页.

>可能是作者遗漏了声明“xmlns:xsi
……“?如果他没有省略,那么这段代码就错了?或者是这样
没有必要写?

编辑

我希望如果对我的问题作出回应,它包括以下内容的定义,差异和适用性:

> qnames.
>扩展名称.
>全局属性.

谢谢.

解决方法:

1)在使用前缀之后放置的“schemaLocation”的名称是什么?这被命名为“属性”吗?如果是这样,那是什么属性See here

In an instance document, the attribute xsi:schemaLocation provides hints from the author to a processor regarding the location of schema documents.

The schemaLocation attribute value consists of one or more pairs of
URI references, separated by white space. The first member of each
pair is a namespace name, and the second member of the pair is a hint
describing where to find an appropriate schema document for that
namespace. The presence of these hints does not require the processor
to obtain or use the cited schema documents, and the processor is free
to use other schemas obtained by any suitable means, or to use no
schema at all.

2)Spring以不同的方式识别某些命名空间,在它上面执行自己的逻辑,或者命名空间是否真的可以指向地址中的物理文件

春天使用

meta-inf / spring.schemas

>重新映射(*)schemalocation到库中的xsd
>(摘要)此库仅支持重新映射的版本
>名为“spring.schemas”的属性文件包含XML Schema位置的映射

meta-inf / spring.handlers

>为特定名称空间提供名称空间处理程序类
>命名空间处理程序类提供解析器逻辑来解析spring-batch bean,如job,step等.

3)使用“xsi:schemaLocation”可以在不声明使用带有前缀“xsi”的命名空间的情况下完成吗?

前缀是必需的(XML标准)

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念