<!--[if !supportLists]-->² <!--[endif]-->XSD 元素
<!--[if !supportLists]-->一、<!--[endif]-->element::声明一个元素。
<!--[if !supportLists]-->1、 <!--[endif]-->声明方式:
<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>
<!--[if !supportLists]-->2、 <!--[endif]-->block:
导出类型,该元素是为了防止具有指定导出类型的元素被用于替代该元素。其值可能为:
extension: 防止通过扩展导出的元素替换该元素。
restriction: 防止通过限制导出的元素替换该元素。
substitution:防止通过替换导出的元素替换该元素。
#all:防止所有的类型的导出元素替换该元素。
<!--[if !supportLists]-->3、 <!--[endif]-->default:
如果该元素为简单类型或者为textOnly的话,设置该元素的缺省值。default与fixed冲突。substitutionGroup:可用来替换该元素的元素的名称。该元素必须具有相同的类型后者具有从指定元素导出的类型。
如果引用的元素是在全局级别声明的(父元素是 schema 元素),则可以在任何元素上使用该属性。
类似与程序设计中的缺省值。
该值必须是 QName。
<!--[if !supportLists]-->4、 <!--[endif]-->final:
导出类型。可以为extension,restriction以及#all,仅仅作用于包含元素为schema的元素。
<!--[if !supportLists]-->5、 <!--[endif]-->fixed:
如果该元素是简单的或者为textOnly的元素的话,那么它的值是预定的不可更改的,可以使用fixed设置这个值,。fixed与default矛盾。它类似于程序设计中的const的作用。
<!--[if !supportLists]-->6、 <!--[endif]-->form:
元素的形式,是否通过命名空间前缀的限定。可选值有qualified与unqualified