1 <?xml version='1.0' encoding='UTF-8'?>
2 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
4 <xs:element name="adapters" type="Adapters" />
6 <xs:complexType name="Adapters">
8 <xs:choice minOccurs="0" maxOccurs="unbounded">
9 <xs:element name="target" type="Target"/>
10 <xs:element name="installer" type="Installer"/>
15 <xs:complexType name="Target">
17 <xs:choice minOccurs="0" maxOccurs="unbounded">
18 <xs:element name="baseType" type="BaseType"/>
19 <xs:element name="type" type="Type"/>
20 <xs:element name="adapter" type="Adapter"/>
21 <xs:element name="resource" type="Type"/>
24 <xs:attribute name="interface" type="ClassName"/>
27 <xs:complexType name="BaseType">
28 <xs:attribute name="uri" type="xs:anyURI"/>
31 <xs:complexType name="Type">
33 <xs:choice minOccurs="0" maxOccurs="unbounded">
34 <xs:element name="this" type="Empty"/>
35 <xs:element name="graph" type="Empty"/>
36 <xs:element name="bundle" type="xs:string"/>
37 <xs:element name="related" type="RelatedResource"/>
38 <xs:element name="single" type="RelatedResource"/>
39 <xs:element name="atMostOne" type="RelatedResource"/>
40 <xs:element name="orderedSet" type="RelatedResource"/>
41 <xs:element name="string" type="xs:string"/>
44 <xs:attribute name="uri" type="xs:anyURI"/>
45 <xs:attribute name="class" type="ClassName"/>
46 <xs:attribute name="constructor" type="xs:string"/>
49 <xs:complexType name="Adapter">
50 <xs:attribute name="uri" type="xs:anyURI" />
51 <xs:attribute name="adapterClass" type="ClassName" />
52 <xs:attribute name="contextClass" type="ClassName"></xs:attribute>
56 <xs:complexType name="Resource">
57 <xs:attribute name="uri" type="xs:anyURI"/>
58 <xs:attribute name="class" type="ClassName"/>
62 <xs:complexType name="Installer">
63 <xs:attribute name="class" type="ClassName"/>
66 <xs:complexType name="RelatedResource">
67 <xs:attribute name="uri" type="xs:anyURI"/>
68 <xs:attribute name="to" type="ClassName" use="optional"/>
71 <xs:complexType name="Empty">
74 <xs:simpleType name="ClassName">
75 <xs:restriction base="xs:string">
76 <xs:pattern value="([a-zA-Z_][a-zA-Z_0-9]*[.])*[a-zA-Z_][a-zA-Z_0-9]*"/>