2015-10-16 61 views
1

雖然我已經在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

回答

1

在XML模式的xs:element聲明的nametype屬性來自W3C XML Schema Recommendation和用於定義的名稱和類型,分別所聲明的元件。

他們沒有命名空間前綴(xs:),因爲他們沒有被定義爲在一個命名空間。這是設計的。這是使用了錯誤xs:namexs:type