XSD标准架构-----<xsd:element> 元素详解
声明一个元素。
<element
abstract = Boolean : false
block = (#all | List of (extension | restriction | substitution))
default = string
final = (#all | List of (extension | restriction))
fixed = string
form = (qualified | unqualified)
id = ID
maxOccurs = (nonNegativeInteger | unbounded) : 1
minOccurs = nonNegativeInteger : 1
name = NCName
nillable = Boolean : false
ref = QName
substitutionGroup = QName
type = QName
{any attributes with non-schema Namespace}...>
Content: (annotation?, ((simpleType | complexType)?, (unique | key |
keyref)*))
</element>
-
一个指示符,指示元素是否可以在实例文档中使用。如果该值为 true,则元素不能出现在实例文档中。而 substitutionGroup 属性包含该元素的限定名 (QName) 的其他元素必须出现在该元素的位置。多个元素可以在其 substitutionGroup 属性中引用该元素。
默认值为 false。
可选项。
- block
-
派生的类型。block 属性防止具有指定派生类型的元素被用于替代该元素。该值可以包含 #all 或者一个列表,该列表是 extension、restriction 或 substitution 的子集。
extension
防止通过扩展派生的元素被用来替代该元素。
restriction
防止通过限制派生的元素被用来替代该元素。
substitution
防止通过替换派生的元素被用来替代该元素。
#all
防止所有派生的元素被用来替代该元素。
可选项。
- default
-
如果元素内容是简单类型或者元素内容是 textOnly,则为元素的默认值。
fixed 和 default 属性相互排斥。
如果元素包含简单类型,则该值必须是该类型的有效值。
可选项。
- substitutionGroup
-
可用来替代该元素的元素的名称。该元素必须具有相同的类型或从指定元素类型派生的类型。
如果引用的元素是在全局级别声明的(父元素是 schema 元素),则可以在任何元素上使用该属性。
该值必须是 QName。
可选项。
- final
-
派生的类型。final 属性在 element 元素上设置 final 属性的默认值。该值可以包含 #all 或者一个列表,该列表是 extension 或 restriction 的子集。
extension
防止通过扩展派生的元素被用来替代该元素。
restriction
防止通过限制派生的元素被用来替代该元素。
#all
防止所有派生的元素被用来替代该元素。
如果包含元素不是 schema 元素,则会被禁止。
可选项。
- fixed
-
如果元素的内容是简单类型或其内容是 textOnly,则为该元素的预确定的、不可更改的值。
fixed 和 default 属性相互排斥。
可选项。
- form
-
该元素的形式。默认值是包含该属性的 schema 元素的 elementFormDefault 属性的值。该值必须是下列字符串之一:“qualified”或“unqualified”。
如果该值是非限定的,则无须通过命名空间前缀限定该元素。
如果该值是限定的,则必须通过命名空间前缀限定该元素。
可选项。
- id
-
该元素的 ID。id 值必须属于类型 ID 并且在包含该元素的文档中是唯一的。
可选项。
- maxOccurs
-
该元素可以在包含元素中出现的最大次数。该值可以是大于或等于零的整数。若不想对最大次数设置任何限制,请使用字符串“unbounded”。
如果包含元素为 schema 元素,则会被禁止。
可选项。
- minOccurs
-
该元素可以在包含元素中出现的最小次数。该值可以是大于或等于零的整数。若要指定该元素是可选的,请将此属性设置为零。
如果包含元素为 schema 元素,则会被禁止。
可选项。
- name
-
元素的名称。该名称必须是在 XML 命名空间规范中定义的无冒号名称 (NCName)。Name 和 ref 属性不能同时出现。
如果包含元素是 schema 元素,则是必选项。
可选项。
- nillable
-
一个指示符,指示是否可以将显式的零值分配给该元素。此项应用于元素内容并且不是该元素的属性。默认值为 false。
如果 nillable 为 true,将使该元素的实例可以将 nil 属性设置为 true。nil 属性被定义为实例的 XML 架构命名空间的一部分。
例如,下段定义了单个元素,同时将 nillable 设置为 true。
<xs:element name="myDate" type="xs:date" nillable="true"/>
下段使用该元素并具有显式零值(nil 属性设置为 true)。
<myDate xsi:nil="true"></myDate>
可选项。
- ref
-
在此架构(或者由指定命名空间指示的其他架构)中声明的元素的名称。ref 值必须是 QName。ref 可以包含命名空间前缀。
如果包含元素为 schema 元素,则会被禁止。
如果 ref 属性出现,则 complexType、simpleType、key、keyref 和 unique 元素以及 nillable、default、fixed、form、block 和 type 属性不能出现。
<xs:element ref="comment"/>
可选项。
- type
-
或者是内置数据类型的名称,或者是在此架构(或者由指定命名空间指示的其他架构)中定义的 simpleType 或 complexType 元素的名称。提供的值必须与引用的 simpleType 或 complexType 元素上的 name 属性相对应。
type 和 ref 属性是互相排斥的。
若要使用现有简单类型或复杂类型定义声明一个元素,请使用 type 属性指定现有类型。
<xs:element name="name" type="xs:string"/>
可选项。
|
出现次数 |
在架构中定义的元素的数目。 |
|
父元素 |
|
|
内容 |
元素声明可以作为 schema 元素(具有全局范围)的子元素存在或在复杂类型定义内存在。在复杂类型内,元素声明可以作为本地声明或对具有全局范围的元素的引用存在。
全局元素声明必须直接定义复杂类型。
只有在 ref 和 type 属性均不存在时,simpleType 或 complexType 元素才可以作为子元素存在。
此外,元素可以通过在 choice、all、sequence 和 complexType 元素内的引用出现。
<xs:element name="cat" type="xs:string"/>
<xs:element name="dog" type="xs:string"/>
<xs:element name="redDog" type="xs:string"
substitutionGroup="dog" />
<xs:element name="brownDog" type="xs:string"
substitutionGroup ="dog" /> <xs:element name="pets">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="cat"/>
<xs:element ref="dog"/>
</xs:choice>
</xs:complexType>
</xs:element>
XSD标准架构-----<xsd:element> 元素详解的更多相关文章
- (转)python标准库中socket模块详解
python标准库中socket模块详解 socket模块简介 原文:http://www.lybbn.cn/data/datas.php?yw=71 网络上的两个程序通过一个双向的通信连接实现数据的 ...
- 史上最全web.xml配置文件元素详解
一.web.xml配置文件常用元素及其意义预览 <web-app> <!--定义了WEB应用的名字--> <display-name></display-na ...
- HTML5有语义的内联元素详解
HTML5有语义的内联元素详解 time标签 time 元素表示一个时间值,比如 5:35 P.M., EST, April 23, 2007.例如: Example Source Code:< ...
- Jmeter 测试计划元素详解
Jmeter 测试计划元素详解 by:授客 QQ:1033553122 由于篇幅问题,采用链接分享的形式,烦请复制以下网址,黏贴到浏览器中打开,下载 http://pan.baidu.com/s/1n ...
- web.xml配置文件元素详解
一.web.xml配置文件常用元素及其意义 1 <web-app> 2 3 <!--定义了WEB应用的名字--> 4 <display-name></disp ...
- JS DOM对象控制HTML元素详解
JS DOM对象控制HTML元素详解 方法: getElementsByName() 获取name getElementsByTagName() 获取元素 getAttribute() 获取元素 ...
- html5中output元素详解
html5中output元素详解 一.总结 一句话总结: output元素是HTML5新增的元素,用来设置不同数据的输出,没什么大用,了解即可 <form action="L3_01. ...
- html5的datalist元素详解
html5的datalist元素详解 一.总结 一句话总结: datalist元素配合input元素可以出现有提示选择作用的选框效果,还是相对比较简便好用的 1.optgroup元素是干嘛的? opt ...
- html5中section元素详解
html5中section元素详解 一.总结 一句话总结: section元素 用来定义文章中的章节(通常应该有标题和段落内容) section元素的作用就是给内容分段,给页面分区 1.section ...
随机推荐
- SQLServer 2008数据库查看死锁、堵塞的SQL语句
--每秒死锁数量 SELECT * FROM sys.dm_os_performance_counters WHERE counter_name LIKE 'Number of Deadlocks ...
- sql索引碎片产生的原理 解决碎片的办法(sql碎片整理)(转)
本文讲述了SQL SERVER中碎片产生的原理,内部碎片和外部碎片的概念.以及解决碎片的办法和填充因子.在数据库中,往往每一个对于某一方面性能增加的功能也会伴随着另一方面性能的减弱.系统的学习数据库知 ...
- FusionChart 导出图片 功能实现(转载)
FusionChart 导出图片 功能实现(转载) http://www.cnblogs.com/jiagoushi/archive/2013/02/05/2893468.html 题目:精美Fusi ...
- 帝国CMS附件大小限制
做文件的上传下载,在我们本地测试总是顺利通过,一上传到服务器各种问题都来了. 帝国CMS,我们先看网站配制中附件大小限制. 附件存放目录设置: 单击菜单“系统”>“系统设置”>“系统参数设 ...
- 安卓热更新之Nuwa实现步骤
安卓热更新之Nuwa实现步骤 最近热更新热修复的功能在安卓应用上越发火热,终于我的产品也提出了相应的需求. 经过两天的研究,搞定了这个功能,在这里还要多谢大神们的博客,大神们的原理分析很到位,不过对于 ...
- VS2013中Django流水账笔记--配置环境
一.开发环境 Win7 64位搭建开发环境.需要准备VS2013.Python34.PTVS2013. 1.http://pytools.codeplex.com/ 下载工具,下载之后进行安装即可,我 ...
- mysql批量更新、多表更新、多表删除
本文介绍下,mysql中进行批量更新.多表更新.多表删除的一些实例,有需要的朋友可以参考下. 本节主要内容: mysql的批量更新.多表更新.多表删除 一,批量更新: 复制代码代码示例: update ...
- PHP 5.6.6 上运行 ecshop 2.7.3 不兼容问题整合
在安装完php在自己的服务器上以后, 发现在静态网页上出现了很多 error. 在网上查找过后发现,大部分问题是因为 PHP发展到PHP5.5版本以后,有了很多细微的变化.而ECSHOP官方更新又太慢 ...
- Java应用程序可执行jar文件与服务器交互中文乱码
生成可执行jar文件后,直接双击打开应用,发送Http请求带有中文时,服务器接收到的中文乱码! 解决方式: 1.在cmd命令中执行javaw命令打开jar可执行应用: 打开cmd命令框,输入: jav ...
- Google Code Jam 2014 Qualification 题解
拿下 ABD, 顺利晋级, 预赛的时候C没有仔细想,推荐C题,一个非常不错的构造题目! A Magic Trick 简单的题目来取得集合的交并 1: #include <iostream> ...