码迷,mamicode.com
首页 > 其他好文 > 详细

XML 9—— Schama回顾

时间:2021-01-29 12:08:16      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:不能   其他   end   类型   height   最小数   个数   默认   出现   

简单类型

1、简单元素

指只能包含文本内容,不能够包含子元素,也没有属性的元素。

格式:<xs:element name="xxx" type="yyy"/>

例子:

<xs:element name="name" type="xs:string"/>
<xs:element name="age" type="xs:integer"/>
<xs:element name="gender" type="xs:boolean"/>

 

2、属性

所有的元素属性均被声明为简单类型。只有复杂类型的元素才可以拥有属性。

格式:<xs:attribute name="xxx" type="yyy" />

例子:<xs:attribute name="lang" type="xs:string"/>

所有的属性默认都是可选的,我们可以通过使用use关键字明确的指出是可选或是必需:

<xs:attribute name="lang" type="xs:string" use="optional" />
<xs:attribute name="lang" type="xs:string" use="required"/>

 

我们可以通过使用default或fixed为简单类型(简单元素、属性)指定默认值或固定值,

如下:

<xs:element name="color" type="xs:string" default="red" />
<xs:attribute name="lang" type="xs:string" fixed="CN"/>

 

对简单类型值的约束

约束 含义
enumeration 定义允许值的枚举
fractionDigit 指定最多允许的小数位数(必须大于等于零)
length 精确指定允许的最大长度字符长度
maxExclusive 指定允许的最大数值,必须小于该值
maxLength 指定允许的最大字符长度(必须大于等于零)
minExclusive 指定允许的最小数值,必须大于该值
minInclusive 指定允许的最小数值,必须大于或等于该值
minLength 指定允许的最小字符长度
pattern 指定允许值的模式,类似正则表达式
totalDigits 精确指定数字个数
whiteSpace 处理空白(保留:perserve;替换:replace;合并:collapse)

复杂类型

复杂类型指包含其他元素/属性的元素类型。

<message>
  <to>rose</to>
  <from>alex</from>
  <body>Hi,My Girll</body>
</message>

 

在上面的例子中,元素 message就是一个复杂类型的元素,我们在 schema中这样描述:

<xs:element name="message">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="to" type="xs:string"/>
      <xs:element name="from" type="xs:string"/>
      <xs:element name="body" type="xs:string"/>
    </xs:sequence>
</xs:complexType>

 

 

注意元素to、from、body包含在<xs:sequence></xs:sequence>中,表明这些元素必须按照定义的顺序出现在你的XML文件中。

当然,message元素也可以包含一个type属性,指向我们定义的复杂类型象这:

<xs:element name="message" type="msg"/>
<xs:complexType name="msg">
  <xs:sequence>
    <xs:element name="to" type="xs:string"/>
    <xs:element name="from" type="xs:string"/>
    <xs:element name="body" type="xs:string"/>
  </xs:sequence>
</xs:complexType>

 

 

复杂类型和简单类型之间最根本的区别就是:复杂类型的内容中可以包含其他元素,也可以带有属性(Attribute),但简单类型既不能包含子元素,也不能带有任何属性。

 

XML 9—— Schama回顾

标签:不能   其他   end   类型   height   最小数   个数   默认   出现   

原文地址:https://www.cnblogs.com/stu-jyj3621/p/14342135.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!