`
liugang594
  • 浏览: 978743 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

XML Schema中的命名空间

 
阅读更多

在定义XML Schema时,通常我们会定义一些命名空间,例如:

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.liulutu.com/students/"
	targetNamespace="http://www.liulutu.com/students/">
	...
</schema>

 

(以下我的理解,错了别怪我)

其中:

  • xmlns:定义了默认的命令空间,也就是在当前schema中元素的默认命名空间。例如"schema"元素,由于没有给出一个名称空间前缀,所以默认的命名空间就是由"xmlns"给出的值http://www.w3.org/2001/XMLSchema
  • targetNamespace:目标元素的命名空间。所谓的目标元素是指符合这份schema定义的xml文档里的元素,例如:
    <?xml version="1.0" encoding="UTF-8"?>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.liulutu.com/students/"
    	targetNamespace="http://www.liulutu.com/students/">
    	<element name="students">
    		<complexType>
    			<sequence>
    				<element name="student" type="tns:StudentType" maxOccurs="unbounded" />
    			</sequence>
    		</complexType>
    	</element>
    	<simpleType name="SexType">
    		<restriction base="string">
    			<enumeration value="Male"></enumeration>
    			<enumeration value="Female"></enumeration>
    		</restriction>
    	</simpleType>
    
    	<complexType name="StudentType">
    		<attribute name="sex" type="tns:SexType"></attribute>
    		<attribute name="name" type="string"></attribute>
    	</complexType>
    </schema>
     对应的一份可能的目标xml内容为:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ns2:students xmlns:ns2="http://www.liulutu.com/students/">
        <student name="aaa" sex="Male"/>
        <student name="bbb" sex="Female"/>
    </ns2:students>
     那个这个targetNamespace就是用来定义students和student元素的名称空间
  • xmlns:tns:一份Xml schema里有时可能不止引用一个名称空间,因此就使用"xmlns:XXX"格式来定义一些其他的名称空间,然后引用些空间里的元素如下:"XXX:name"

要声明一个schema的地址,可以如下做:

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3school.com.cn note.xsd"

 其中schemaLocation的namespace需要是XMLSchema的名称空间,每个Location是一对值,其中前半部分代表这个schema的名称空间,后半部分值代码schema文件的路径

分享到:
评论

相关推荐

    XML Schema简明教程-W3C.rar

    XML Schema 是基于 XML 的 DTD 替代者。 XML Schema 描述 XML 文档的结构。 XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD)。 在此教程中,你将学习如何在应用...XML Schema 支持命名空间

    XML Schema教程

    一本关于XML Schema的打包教程,深入浅出,系统性强,并附有相应实例。

    《XML》实验任务书 XML Schema 答案 解答

    假设SpyBase1.xml中的alias、mission、spy来自不同的命名空间中,如何在Schema中对其进行限定,请在XMLSPY中完成相应的xsd文档?修改SpyBase1.xml,并验证新的SpyBase1_2.xsd是否正确? [提交时间及内容] 最后...

    xml schema实验报告

    shema基础 熟悉Schema的结构。 2、掌握Schema中的数据类型、命名空间、元素声明、属性声明。

    WCF返回xml格式时去除命名空间

    WCF返回xml格式数据时去除命名空间(比如xmlns="http://schemas.datacontract.org/2004/07/XmlRemoveNamespaceWcfService" xmlns:i="http://www.w3.org/2001/XMLSchema-instance")

    xml的命名空间.md

    xml的命名空间.md

    C#+XML+入门经典part2

    XML技术是近年来最热门的...主要内容包括:XML语法和格式良好的XML,XML命名空间,利用DTD和XML Schema进行XML验证,使用SOAP和Web服务,以及运用ADO.NET进行数据库访问等。本书还用两个案例分析来展示XML的具体应用。

    XSDInferencer:XSDInferencer 是一个自动 XML Schema 文档生成工具,它可以从 XML 正例中生成全面且正确的 XSD

    XSDInferencer 的主要优点: 100% 符合 XML 和 XSD 规范,包括正确的命名空间处理。 高度可配置,因此生成的模式更适合用户需求。 模块化且易于扩展。 它不仅可以根据节点名称,还可以根据它们的上下文来推断简单和...

    C# XML入门经典

    主要内容包括:XML语法和格式良好的XML,XML命名空间,利用DTD和XML Schema进行XML验证,使用SOAP和Web服务,以及运用ADO.NET进行数据库访问等。本书还用两个案例分析来展示XML的具体应用。  本书适合于有一定的...

    对象转xml和xml轻松转对象

    XML Schema描述了XML文档的结构。可以用一个指定的XML Schema来验证某个XML文档,以 ... 命令介绍本节您将只用到Schema/WSDL视图

    xml培训学习资料

    3.4 XML命名空间 3.5 开发工具XML Spy与XML实例   第四章 XML文档类型定义   第五章 XML Schema结构   第六章 层叠样式表 6.1 CSS简介 6.2 设置字体属性 6.3 设置色彩和背景图像属性 6.4 设置边界属性 ...

    Java and XML, 3rd Edition

    书中的主题如下: *XML基础,包括DTD、命名空间(namespace)、XML Schema和数据格式转换 (Transformation) *SAX应用程序编程接口,包括处理器接口、过滤器接口和写出接口 *DOM应用程序编程接口,...

    Spring实战之使用util:命名空间简化配置操作示例

    本文实例讲述了Spring使用util:命名空间简化配置操作。分享给大家供大家参考,具体如下: 一 配置 &lt;... xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:p=http://www.springframew

    XML课件,自己的一点贡献

    学会如何使用 DTD 和Schema验证XML 掌握命名空间的使用 学会使用XSLT 学会使用XML数据岛 了解 XML的体系结构及优势 理解格式良好且有效的 XML 文档 学会如何使用 DTD 生成 XML 文档 理解命名空间

    JAVA与XML.rar

    书中的主题如下: XML基础,包括DTD、命名空间(namespace)、XML Schema和数据格式转换(Transformation) SAX应用程序编程接口,包括处理器接口、过滤器接口和写出接口 DOM应用程序编程接口,包括DOM第2层、第3层...

    XML及其编程与应用

    05命名空间 06表现与转换1-CSS 06表现与转换2-XSLT 06表现与转换3-XSL-FO 07定位、链接与查询1-XPath 07定位、链接与查询2-链接 07定位、链接与查询3-XQuery 08编程接口1-概述与DOM 08编程接口2-SAX 08编程...

    Java与XML第三版本

    书中的主题为XML基础,包括DTD、命名空间(namespace)、XML Schema和数据格式转换(Transformation) SAX应用程序编程接口,包括处理器接口、过滤器接口和写出接口 DOM应用程序编程接口,包括DOM第2层、第3层和DOM ...

    xml入门教程/xml入门教程

    DTD不支持命名空间,解析器无法测试命名空间。 1、作用: 解决XML文档中命名冲突的问题,即将 XML文档与引用URI标识的名域相结合,来 限定其中的元素和属性名。 示例: &lt;?xml version="1.0" encoding="UTF-8" ...

    C#XML入门经典 C#编程人员必备的XML技能.part2

    在.NET中使用XML &lt;br&gt;3.1 XML如何适合.NET 3.1.1 XML 3.1.2 文档对象模型(DOM) 3.1.3 命名空间 3.1.4 DTD和XML Schema 3.1.5 XPath 3.1.6 XSLT 3.2 .NET Framework使用XML 3.2.1 配置...

    从XML模式文件生成C#类-.NET开发

    通过显式或通过(confi XmlSchemaClassGenerator一个控制台程序和库,将XML命名空间映射到C#名称空间。从XML Schema文件生成XmlSerializer兼容的C#类的控制台程序和库。来自架构注释的C#XML注释根据架构限制生成...

Global site tag (gtag.js) - Google Analytics