8
我已經定義了兩種複雜的元素類型 - Developer和App。如何在XML模式中定義用戶定義數據類型?
開發孩子的 - ID,姓名,電子郵件
應用孩子的 - ID,姓名,開發
在這裏,在應用程序的複雜元素的開發是指開發商/ ID。
如何在xml模式中定義這種關係。我正在使用XML spy2013編輯器。
我已經嘗試過在簡單類型開發人員 - > ID的聲明中指定名稱。並在App-> Developer數據類型中使用此名稱。但它給錯誤..
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2013 (x64) (http://www.altova.com) by Piyush (USC) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="appinfo">
<xs:complexType>
<xs:sequence>
<xs:element name="Developer">
<xs:complexType>
<xs:all>
**<xs:element name="ID">**
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="5"/>
<xs:pattern value="[a-zA-Z][a-zA-Z][0-9][0-9][a-zA-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Name">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="([a-zA-Z])+"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Email">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[^@][email protected][^\.]+\..+"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Company" type="xs:string"/>
<xs:element name="Website" type="xs:string"/>
<xs:element name="Phone">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="13"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="App">
<xs:complexType>
<xs:all>
<xs:element name="ID">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="5"/>
<xs:pattern value="[0-9][0-9][0-9][0-9][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Name">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="([a-zA-Z])+"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Developer" ***type="xs:anySimpleType"/>***
<xs:element name="Price">
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:minInclusive value="0.00"/>
<xs:maxInclusive value="6.99"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="TabletCompatible" type="xs:boolean" minOccurs="0"/>
<xs:element name="Category">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Travel"/>
<xs:enumeration value="Productivity"/>
<xs:enumeration value="Game"/>
<xs:enumeration value="Music"/>
<xs:enumeration value="Education"/>
<xs:enumeration value="Lifestyle"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Platform">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Android"/>
<xs:enumeration value="iOS"/>
<xs:enumeration value="Blackberry"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="AppStat">
<xs:complexType>
<xs:all>
<xs:element name="AppID" type="xs:anySimpleType"/>
<xs:element name="Statistics">
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element name="Platform" type="xs:anySimpleType"/>
<xs:element name="Downloads" type="xs:positiveInteger"/>
<xs:element name="Rating">
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:minInclusive value="0.0"/>
<xs:maxInclusive value="5.0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="LastChecked" type="xs:date"/>
</xs:all>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
我不知道是誰upvoted這個問題或者爲什麼,但我downvoting它。如果您編寫了一些代碼,但它給了我們一個錯誤,您應該向我們展示您編寫的代碼以及它給出的錯誤,然後我們可以看到錯誤發生的位置。你不能害怕或尷尬顯示你的編碼嘗試;最好的學習方法是讓你的努力受到你正在學習的技術更豐富經驗的人的批判性評論。 –