XML(4)——schema文件相互引用

两个xsd必须在同一命名空间下targetNamespace。

student.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
targetNamespace="http://www.example.org/classroom" 
xmlns:tns="http://www.example.org/classroom" 
elementFormDefault="qualified">
<xsd:element name="student" type="tns:studentType"/>

<xsd:complexType name="studentType">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="sex" type="tns:sexType"/>
</xsd:sequence>
</xsd:complexType>

<xsd:simpleType name="sexType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="男"/>
<xsd:enumeration value="女"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>

classroom.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
targetNamespace="http://www.example.org/classroom" 
xmlns:tns="http://www.example.org/classroom" 
elementFormDefault="qualified">

<!-- 两个文件必须在同一个命名空间下(targetNamespace) -->
<xsd:include schemaLocation="student.xsd"/>

<xsd:element name="classroom" type="tns:classroomType"/>

<xsd:complexType name="classroomType">
<xsd:sequence>
<xsd:element name="grade" type="tns:gradeType"/>
<xsd:element name="name" type="xsd:string"/>
<xsd:sequence minOccurs="1" maxOccurs="unbounded">
<xsd:element name="student" type="tns:studentType"/>
</xsd:sequence>
</xsd:sequence>
</xsd:complexType>

<xsd:simpleType name="gradeType">
<xsd:restriction base="xsd:int">
<xsd:minInclusive value="2000"/>
<xsd:maxInclusive value="3000"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>

时间: 2024-10-12 05:25:15

XML(4)——schema文件相互引用的相关文章

XML(3)——schema文件的三种编写方式

一.schema文件编写方式 ①Russian Doll(俄罗斯套娃) ②Salami Slice(香肠切片)③Venetian Blind(百叶窗) 推荐 二.Russian Doll俄罗斯套娃 顾名思义,编写方式是一层套一层,只有一个根元素,通过且套的方式编写完成. 优点:结构清晰 缺点:元素无法重用 RussionDoll.xsd <?xml version="1.0" encoding="UTF-8"?> <schema xmlns=&qu

如何用Java对XML文件进行Schema校验,Schema文件用的是微软格式

问题描述 schema文件采用的是微软格式,非W3标准格式<Schemaname="po-schema"xmlns="urn:schemas-microsoft-com:xml-data"xmlns:dt="urn:schemas-microsoft-com:datatypes"> 解决方案 解决方案二:<appxmlns="x-schema:schemaName.xml">解决方案三:引用1楼just

Android实现在xml文件中引用自定义View的方法分析

本文实例讲述了Android实现在xml文件中引用自定义View的方法.分享给大家供大家参考,具体如下: 在xml中引用自定义view 方法一: <view class="com.test.copytext.CopyText" android:layout_width="fill_parent" android:layout_height="wrap_content" /> 方法二: <view class="com.

Xml日志记录文件最优方案

Xml作为数据存储的一种方式,当数据非常大的时候,我们将碰到很多Xml处理的问题.通常,我们对Xml文 件进行编辑的最直接的方式是将xml文件加载到XmlDocument,在内存中来对XmlDocument进行修改,然后再保 存到磁盘中.这样的话我们将不得不将整个XML document 加载到内存中,这明显是不明智的(对于大数据XML 文件来说,内存将消耗很大,哥表示鸭梨很大).下面我们将要讲的是如何高效的增加内容(对象实体内容) 到xml日志文件中. (一)设计概要 总体来说,我们将(通过代

同时使用xml、schema和xslt的例子

以前从来没有用过 schema, 这次希望能给我的 xml 文件加上 namespace, schema, 然后用 xslt 转换成 html, 没想到花了不少功夫.现在我把工作正常的结果记录下来,希望对大家有些帮助. 先来看看我的 xml 文件.打算用来定义网页的菜单. <?xml version="1.0" encoding="GB2312"?><menu_items><menu_item href="index.html

XML是什么文件,xml文件怎么打开

XML是Extensible Markup Language的简写,一种扩展性标识语言.现在教你打开xml文件的方法和软件. 其实最简单的就是用EXCEL表格打开了.也可以用Netscape 6来打开XML文档,并且也可以用右键选择"察看源文件",当你用Netscape 6打开XML文档后,浏览器将用带颜色的代码显示根元素和子元素. 如何在 Excel 中打开文件 在Excel 中打开 XML 文件时,系统将提示您选择下列方法之一来导入XML 数据:作为 XML 列表,作为只读工作簿,

jvm-java ClassLoader怎么手动加载2个相互引用的类

问题描述 java ClassLoader怎么手动加载2个相互引用的类 public class A{ private B b; } public class B{ private A a; } 程序中只有这2各类的class文件的2进制数据(2个byte[]),怎么使用classloader加载这2个类呢. 因为涉及到了A类需要B类 B类需要A类,如果使用简单的defineClass会出ClassNotFoundException异常.

项目中布局文件怎么引用另一个项目自定义的组件

问题描述 项目中布局文件怎么引用另一个项目自定义的组件 如果我在一个项目里自定义了一个组件,我想在另一个项目的布局文件中加入这个组件,怎么配置呢?怎么让布局文件能够找到这个组件呢? 解决方案 参考这个例子:http://www.yiibai.com/android/simple_android_custom_component_using_xm.html 解决方案二: xml中include

求如何使生成的xml符合xds文件规范

问题描述 别人给了我一个xds文件,说是xml的模板文件,我现在的任务是做一个eclipse插件,可以生成应用服务器的配置信息文件xml.我的开发环境用的是wtp-all-in-one-sdk-R-1.5.1 我不知道如何下手,请大家指教其xds文件代码如下:<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!-- edited with XMLSpy v2006 U