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

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

问题描述:

虽然我已经在XML Schema的工作,我也有疑问:“name”和“type”属性来自xsd:element声明的位置?

下面是示例XML模式(从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> 

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

大部分元素/在XSD构建我们的前缀。例如:xs:elementxs:complexType等。 “名称”和“类型”从哪里来?

理解任何澄清。

+0

这就是架构是如何定义的。看看[这里](http://www.w3schools.com/schema/el_element.asp) – SMA

+0

什么,我问的是,是“名”一些命名空间的“型”的一部分? – CuriousMind

在XML模式的xs:element声明的nametype属性来自W3C XML Schema Recommendation和用于定义的名称和类型,分别所声明的元件。

他们没有命名空间前缀(xs:),因为他们没有被定义为在一个命名空间。这是设计的。这是使用了错误xs:namexs:type