xml-schema引用多个文件

来源:互联网 发布:淘宝好友如何查看 编辑:程序博客网 时间:2024/05/16 14:08

<!--引用多个名称空间-->

<?xml version="1.0" encoding="UTF-8"?>

<!-- 引用多个命名空间 -->

<f:family xmlns:f="http://www.example.org/family" 

  xmlns:p="http://www.example.org/person" 

  xmlns:c="http://www.example.org/children" 

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

xsi:schemaLocation="http://www.example.org/family family.xsd http://www.example.org/person person.xsd http://www.example.org/children children.xsd">

<!-- 多个命名空间的schemaLocation的地址可以依次写 -->

<p:person>

<p:firstname></p:firstname>

<p:lastname></p:lastname>

<c:children>

<c:childname></c:childname>

</c:children>

</p:person>

</f:family>

<!--约束family文件-->

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 

targetNamespace="http://www.example.org/family" 

xmlns:tns="http://www.example.org/family" 

elementFormDefault="qualified">

<xs:element name="family">

<xs:complexType>

<xs:sequence>

<xs:any minOccurs="0" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

<!--children约束-->

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 

targetNamespace="http://www.example.org/children" 

xmlns:tns="http://www.example.org/children" 

elementFormDefault="qualified">

<!-- 定义children元素 -->

<xs:element name="children">

<!-- 复合类型 -->

  <xs:complexType>

  <!-- 有序 -->

    <xs:sequence>

    <!-- childname可以出现无数次 -->

      <xs:element name="childname" type="xs:string"

      maxOccurs="unbounded"/>

    </xs:sequence>

  </xs:complexType>

</xs:element>

</xs:schema>

<!--person约束-->

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 

targetNamespace="http://www.example.org/person" 

xmlns:tns="http://www.example.org/person" 

elementFormDefault="qualified">

<!-- 定义一个person元素 -->

<xs:element name="person">

<!-- 复合类型 -->

  <xs:complexType>

  <!-- 有序 -->

    <xs:sequence>

    <!-- 元素firstname -->

      <xs:element name="firstname" type="xs:string"/>

        <!-- 元素lasttname -->

      <xs:element name="lastname" type="xs:string"/>

      <!-- 留着扩展 -->

      <xs:any minOccurs="0"/>

    </xs:sequence>

  </xs:complexType>

</xs:element>

</xs:schema>

0 0
原创粉丝点击