“name”和“type”属性来自xsd:element声明?

时间:2015-10-16 16:39:26

标签: xml xsd

虽然我已经使用过XML Schema,但我仍有一些疑问:

以下是示例XML Schema(来自w3schools):

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           targetNamespace="http://www.w3schools.com"
           xmlns="http://www.w3schools.com"
           elementFormDefault="qualified">

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

“name”和“type”属性来自哪里?在这个XSD中,我们定义了可以出现在XML文档中的元素。

XSD中的大多数元素/构造都是前缀。例如:xs:elementxs:complexType等。 “名称”和“类型”来自何处?

任何澄清都表示赞赏。

1 个答案:

答案 0 :(得分:1)

XML Schema中name声明的typexs:element属性来自W3C XML Schema Recommendation,分别用于定义元素的名称和类型被宣布。

它们没有名称空间前缀(xs:),因为它们未定义为名称空间。这是设计的。使用xs:namexs:type

会出错