shoppingSchema.xsd
<?xml version="1.0" encoding="gb2312"?>
<!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by mosj (linkage) -->
<xs:schema targetNamespace="http://www.shopping.com/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns="http://www.shopping.com/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:sp="http://www.shopping.com/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="SP">
<xs:annotation>
<xs:documentation>This a test of XMLSchema!</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="allMembers">
<xs:complexType>
<xs:sequence>
<xs:element name="member" type="member" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="organizations">
<xs:complexType>
<xs:sequence>
<xs:element name="organization" type="organization" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:key name="keyMid">
<xs:selector xpath="./sp:allMembers/sp:member"/>
<xs:field xpath="sp:mid"/>
</xs:key>
<xs:keyref name="captainorganization" refer="keyMid">
<xs:selector xpath=".//sp:organization"/>
<xs:field xpath="sp:captain"/>
</xs:keyref>
</xs:element>
<xs:complexType name="member">
<xs:sequence>
<xs:element name="mid">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="SP[0-9]{1,3}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="corporation">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="公司A"/>
<xs:enumeration value="公司B"/>
<xs:enumeration value="公司C"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MSN" type="emailType"/>
<xs:element name="email" type="emailType"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="organization">
<xs:sequence>
<xs:element name="captain" type="xs:string"/>
<xs:element name="subaltern" type="xs:string" minOccurs="0"/>
<xs:element name="member" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
<xs:simpleType name="emailType">
<xs:restriction base="xs:string">
<xs:pattern value="[\p{L}_-]+(\.[\p{L}_-]+)*@[\p{L}_]+(\.[\p{L}_]+)+"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
<?xml version="1.0" encoding="gb2312"?>
<!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by mosj (linkage) -->
<xs:schema targetNamespace="http://www.shopping.com/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns="http://www.shopping.com/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:sp="http://www.shopping.com/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="SP">
<xs:annotation>
<xs:documentation>This a test of XMLSchema!</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="allMembers">
<xs:complexType>
<xs:sequence>
<xs:element name="member" type="member" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="organizations">
<xs:complexType>
<xs:sequence>
<xs:element name="organization" type="organization" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:key name="keyMid">
<xs:selector xpath="./sp:allMembers/sp:member"/>
<xs:field xpath="sp:mid"/>
</xs:key>
<xs:keyref name="captainorganization" refer="keyMid">
<xs:selector xpath=".//sp:organization"/>
<xs:field xpath="sp:captain"/>
</xs:keyref>
</xs:element>
<xs:complexType name="member">
<xs:sequence>
<xs:element name="mid">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="SP[0-9]{1,3}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="corporation">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="公司A"/>
<xs:enumeration value="公司B"/>
<xs:enumeration value="公司C"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MSN" type="emailType"/>
<xs:element name="email" type="emailType"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="organization">
<xs:sequence>
<xs:element name="captain" type="xs:string"/>
<xs:element name="subaltern" type="xs:string" minOccurs="0"/>
<xs:element name="member" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
<xs:simpleType name="emailType">
<xs:restriction base="xs:string">
<xs:pattern value="[\p{L}_-]+(\.[\p{L}_-]+)*@[\p{L}_]+(\.[\p{L}_]+)+"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
<?xml version="1.0" encoding="UTF-8"?>
<SP xmlns="http://www.shopping.com/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.shopping.com/XMLSchema
E:\temp\ShoppingSchema.xsd">
<allMembers>
<member name="刘德华">
<mid>SP001</mid>
<corporation>公司A</corporation>
<MSN>ldhhotmail.com</MSN>
<email>ldhhotmail.com</email>
</member>
<member name="李嘉欣">
<mid>SP002</mid>
<corporation>公司B</corporation>
<MSN>[email protected]</MSN>
<email>[email protected]</email>
</member>
<member name="莫文蔚">
<mid>SP003</mid>
<corporation>公司C</corporation>
<MSN>[email protected]</MSN>
<email>[email protected]</email>
</member>
<member name="成龙">
<mid>SP004</mid>
<corporation>公司C</corporation>
<MSN>[email protected]</MSN>
<email>[email protected]</email>
</member>
<member name="朱茵">
<mid>SP005</mid>
<corporation>公司C</corporation>
<MSN>[email protected]</MSN>
<email>[email protected]</email>
</member>
</allMembers>
<organizations>
<organization name="领导小组">
<captain>SP009</captain>
<subaltern>SP003</subaltern>
<member>SP004</member>
</organization>
<organization name="需求小组">
<captain>SP005</captain>
<subaltern>SP002</subaltern>
<member>SP003</member>
<member>SP004</member>
</organization>
</organizations>
</SP>
<?xml version="1.0" encoding="UTF-8"?>
<SP xmlns="http://www.shopping.com/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.shopping.com/XMLSchema
E:\temp\ShoppingSchema.xsd">
<allMembers>
<member name="刘德华">
<mid>SP001</mid>
<corporation>公司A</corporation>
<MSN>[email protected]</MSN>
<email>[email protected]</email>
</member>
<member name="李嘉欣">
<mid>SP002</mid>
<corporation>公司B</corporation>
<MSN>[email protected]</MSN>
<email>[email protected]</email>
</member>
<member name="莫文蔚">
<mid>SP003</mid>
<corporation>公司C</corporation>
<MSN>[email protected]</MSN>
<email>[email protected]</email>
</member>
<member name="成龙">
<mid>SP004</mid>
<corporation>公司C</corporation>
<MSN>[email protected]</MSN>
<email>[email protected]</email>
</member>
<member name="朱茵">
<mid>SP005</mid>
<corporation>公司C</corporation>
<MSN>[email protected]</MSN>
<email>[email protected]</email>
</member>
</allMembers>
<organizations>
<organization name="领导小组">
<captain>SP001</captain>
<subaltern>SP002</subaltern>
<member>SP003</member>
</organization>
<organization name="需求小组">
<captain>SP001</captain>
<subaltern>SP002</subaltern>
<member>SP003</member>
<member>SP004</member>
<member>SP005</member>
</organization>
</organizations>
</SP>