XML学习之------>Schema约束XML文件的实例

shiporder_1.xsd文件:

<?xmlversion="1.0"encoding="UTF-8"?>
<xs:schemaxmlns:xs="http://www.w3.org/2001/XMLSchema"
      targetNamespace="http://www.itstar.cn/shiporder_1"
  elementFormDefault="qualified">
  <xs:elementname="shiporder">
   <xs:complexType>
    <xs:sequence>
     <xs:elementname="orderperson"type="xs:string" />
     <xs:elementname="shipto">
      <xs:complexType>
                  <xs:sequence>
          <xs:elementname="name"type="xs:string"/>
          <xs:elementname="address"type="xs:string" />
          <xs:elementname="city"type="xs:string"/>
          <xs:elementname="country"type="xs:string" />
       </xs:sequence>
       </xs:complexType>
     </xs:element>
     <xs:elementname="item"maxOccurs="unbounded">
      <xs:complexType>
       <xs:sequence>
         <xs:elementname="title"type="xs:string"/>
        <xs:elementname="note"type="xs:string"minOccurs="0"/>
        <xs:elementname="quantity"type="xs:positiveInteger"></xs:element>
        <xs:elementname="price"type="xs:decimal"/>
       </xs:sequence>
      </xs:complexType>
     </xs:element>
    </xs:sequence>
    <xs:attributename="orderid"type="xs:string" use="required"/>
   </xs:complexType>
  </xs:element>
</xs:schema>

shiporder_2.xsd文件:(不知道为什么此种方式不能加入targetNamespace属性)

<?xmlversion="1.0"encoding="UTF-8"?>
<xh:schemaxmlns:xh="http://www.w3.org/2001/XMLSchema"
     elementFormDefault="qualified">
<!-- 简易元素的定义 -->
  <xh:elementname="orderperson"type="xh:string" />
  <xh:elementname="name"type="xh:string"/>
  <xh:elementname="address"type="xh:string" />
  <xh:elementname="city"type="xh:string"/>
  <xh:elementname="country"type="xh:string" />
  <xh:elementname="title"type="xh:string"/>
  <xh:elementname="note"type="xh:string"/>
  <xh:elementname="quantity"type="xh:positiveInteger"/>
  <xh:elementname="price"type="xh:decimal"/>
<!-- 属性的定义 -->
  <xh:attributename="orderid"type="xh:string" />
<!-- 复合元素的定义 -->
  <xh:elementname="shipto">
    <xh:complexType>
     <xh:sequence>
      <xh:elementref="name"/>
      <xh:elementref="address"/>
      <xh:elementref="city"/>
    <xh:elementref="country"/>
     </xh:sequence>
     </xh:complexType>
   </xh:element>

  <xh:elementname="item">
   <xh:complexType>
    <xh:sequence>
     <xh:elementref="title"/>
     <xh:elementref="note"minOccurs="0"/>
     <xh:elementref="quantity"/>
     <xh:elementref="price"/>
     </xh:sequence>
    </xh:complexType>
  </xh:element>

  <xh:elementname="shiporder">
   <xh:complexType>
    <xh:sequence>
      <xh:elementref="orderperson"/>
      <xh:elementref="shipto"/>
     <xh:elementref="item"maxOccurs="unbounded"/>
    </xh:sequence>
    <xh:attributeref="orderid"use="required" />
   </xh:complexType>
  </xh:element>
</xh:schema>

shiporder.xml文件:

<?xmlversion="1.0"encoding="UTF-8"?>
<shiporderxmlns="http://www.itstar.cn/shiporder_1"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                         xsi:schemaLocation="http://www.itstar.cn/shiporder_1 shiporder_1.xsd"
                         orderid="111">
  <orderperson>orderperson</orderperson>
   <shipto>
   <name>name</name>
    <address>address</address>
    <city>city</city>
   <country>country</country>
  </shipto>
  <item>
    <title>title</title>
   <note>note</note>
    <quantity>100</quantity>
   <price>100.0</price>
  </item>
  <item>
   <title>title</title>
   <quantity>200</quantity>
   <price>80.0</price>
  </item>
</shiporder>
时间: 2024-09-20 12:06:32

XML学习之------&gt;Schema约束XML文件的实例的相关文章

XML学习:应当如何使用XML语言

xml 首先要明确的是:XML是被设计用来存储数据.携带数据和交换数据的,他不是为了显示数据而设计的. XML可以从HTML中分离数据 通过XML,你可以在HTML文件之外存储数据.在不使用XML时,HTML用于显示数据,数据必须存储在HTML文件之内;使用了XML,数据就可以存放在分离的XML文档中.这种方法可以让你集中精力去到使用HTML做好数据的显示和布局上,并确保数据改动时不会导致HTML文件也需要改动.这样可以方便维护页面.XML数据同样可以以"数据岛"的形式存储在HTML页

Linq To Xml学习 - 2.LINQ to XML编程概述

LINQ to XML 类概述 XAttribute 类 XAttribute 表示一个 XML 属性. XCData 类 XCData 表示一个 CDATA 文本节点. XComment 类 XComment 表示一个 XML 注释. XContainer 类 XContainer 是适用于可能具有子节点的所有节点的抽 象基类.下面的类派生自 XContainer 类: XElement XDocument XDeclaration 类 XDeclaration 表示一个 XML 声明.XML

Linq To Xml学习 - 1.LINQ to XML 概述

LINQ to XML 是一种启用了 LINQ 的内存 XML 编程接口,使用它,可以在 .NET Framework 编程语言中处理 XML. 它将 XML 文档置于内存中,这一点很像文档对象模型 (DOM). 您可以查询 和修改 XML 文档,修改之后,可以将其另存为文件,也可以将其序列化然后通 过网络发送. 但是,LINQ to XML 与 DOM 不同: 它提供一种新的对象模型, 这是一种更轻量的模型,使用也更方便,这种模型利用了 Visual C# 2008 在语 言方面的改进. LI

XMLSchema.xsd 文件约束xml文档格式内容

XMLSchema.xsd 文件,用来约束xml内容格式的. <?xml version="1.0" encoding="utf-8"?> <xs:schema id="XMLSchemaLettle" targetNamespace="http://www.pukuimin.com/XMLSchemaLettle.xsd" elementFormDefault="qualified" x

轻松学习手册(3)XML的术语

第三章 XML的术语 导言 初学XML最令人头疼的就是有一大堆新的术语概念要理解.由于XML本身也是一个崭新的技术,正在不断发展和变化,各组织和各大网络公司(微软,IBM,SUN等)都在不断推出自己的见解和标准,因此新概念漫天飞就不足为奇了.而国内又缺乏权威的机构或组织来对这些术语正式定名,你所看见的有关XML的中文教材大部分是靠作者本身的理解翻译过来的,有些是正确的,有些是错误的,更加妨碍了我们对这些概念的理解和学习. 你下面将要看到的关于XML术语的解释,也是作者本身的理解和翻译.阿捷是以W

XML轻松学习手册(3)XML的术语

xml 第三章 XML的术语 提纲:   导言 一.XML文档的有关术语 二.DTD的有关术语 导言 初学XML最令人头疼的就是有一大堆新的术语概念要理解.由于XML本身也是一个崭新的技术,正在不断发展和变化,各组织和各大网络公司(微软,IBM,SUN等)都在不断推出自己的见解和标准,因此新概念漫天飞就不足为奇了.而国内又缺乏权威的机构或组织来对这些术语正式定名,你所看见的有关XML的中文教材大部分是靠作者本身的理解翻译过来的,有些是正确的,有些是错误的,更加妨碍了我们对这些概念的理解和学习.

XML轻松学习手册(6)XML相关资源

xml 第六章:XML相关资源 一. XML的大本营 XML是由W3C(World Wide Web Consortium)国际组织负责开发和制定标准的.关于XML最权威,最新的消息都来自W3C.网址是:http://w3c.org/XML/ 另外一个名为OASIS的前著名的SGML研究组织也在一起推动XML的发展,网址是:http://www.oasis-open.org/ 二. XML指南 http://www.w3.org/TR/REC-xml W3C关于XML规范的详细,完整的说明.不用

XML学习-形式良好的文档/有效的文档

形式良好的文档:符合基本的语法规范 有效的文档:不仅符合基本的语法规范,还符合DTD或者Schema定义 xml:数据 dtd/schema:定义数据 XSL/CSS/数据岛:数据如何显示 Schema规范中: 1.所有标签和属性都需要有schema文件来定义 2.在根标签引入schema约束文件  通过属性xmlns="对应的schema文件的namespace[即对应的schema文件中的根标签的targetNamespace属性值]" 3.如果引入的schema文件不是由w3c来

XML轻松学习手册(3)XML的术语_XML/RSS

第三章 XML的术语 提纲: 导言 一.XML文档的有关术语 二.DTD的有关术语 导言 初学XML最令人头疼的就是有一大堆新的术语概念要理解.由于XML本身也是一个崭新的技术,正在不断发展和变化,各组织和各大网络公司(微软,IBM,SUN等)都在不断推出自己的见解和标准,因此新概念漫天飞就不足为奇了.而国内又缺乏权威的机构或组织来对这些术语正式定名,你所看见的有关XML的中文教材大部分是靠作者本身的理解翻译过来的,有些是正确的,有些是错误的,更加妨碍了我们对这些概念的理解和学习. 你下面将要看