diff options
Diffstat (limited to 'xsd')
-rw-r--r-- | xsd/ee.xsd | 37 |
1 files changed, 30 insertions, 7 deletions
@@ -31,7 +31,7 @@ TODO: rename 'id' to 'url'. targetNamespace="http://purl.org/ee/bom-file" xmlns="http://purl.org/ee/bom-file"> - <xs:attribute name="id" type="xs:string"/> + <xs:attribute name="uri" type="xs:anyURI"/> <xs:element name="part-db" type="PartDb"/> <xs:element name="part" type="Part"/> @@ -44,14 +44,14 @@ TODO: rename 'id' to 'url'. <xs:complexType name="Part"> <xs:sequence> - <xs:element name="schema-reference" type="xs:string"/> + <!-- TODO: this should be a fact --> <xs:element name="part-type" type="xs:anyURI"/> - <xs:element name="part-numbers" type="PartNumberList"/> + <xs:element name="references" type="ReferencesList"/> <xs:element name="distributor-info" type="DistributorInfo"/> <xs:element name="facts" type="FactList"/> <xs:element name="price-breaks" type="PriceBreakList"/> </xs:sequence> - <xs:attribute ref="id" use="required"/> + <xs:attribute ref="uri"/> </xs:complexType> <xs:complexType name="PartList"> @@ -60,16 +60,39 @@ TODO: rename 'id' to 'url'. </xs:sequence> </xs:complexType> + <xs:complexType name="PartUri"> + <xs:sequence> + <xs:element name="value" type="xs:anyURI"/> + </xs:sequence> + </xs:complexType> + <xs:complexType name="PartNumber"> <xs:sequence> <xs:element name="value" type="xs:string"/> - <xs:element name="distributor" type="xs:anyURI"/> </xs:sequence> </xs:complexType> - <xs:complexType name="PartNumberList"> + <xs:complexType name="SupplierPartNumber"> + <xs:sequence> + <xs:element name="value" type="xs:string"/> + <xs:element name="supplier" type="xs:anyURI"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="SchematicReference"> + <xs:sequence> + <xs:element name="reference" type="xs:string"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="ReferencesList"> <xs:sequence> - <xs:element name="part-number" type="PartNumber" maxOccurs="unbounded"/> + <xs:choice maxOccurs="unbounded"> + <xs:element name="schematic-reference" type="SchematicReference"/> + <xs:element name="part-uri" type="PartUri"/> + <xs:element name="part-number" type="PartNumber"/> + <xs:element name="supplier-part-number" type="SupplierPartNumber"/> + </xs:choice> </xs:sequence> </xs:complexType> |