summaryrefslogtreecommitdiff
path: root/src/main/resources/boot/OD/Module.xsd
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2012-07-06 11:00:24 +0200
committerAndrew Branson <andrew.branson@cern.ch>2012-07-06 11:00:24 +0200
commit24314dc1699c7e73048fa24e33729f1aa1ec0e86 (patch)
treec97af82997783b860c36f4410973b23caff0d42e /src/main/resources/boot/OD/Module.xsd
parentcc79e98c4763affba4fa2e17dfe5a412f9de66c3 (diff)
Modules serialize with Castor. Just about to remove the parsing.
CastorXMLUtility is now a static member of gateway. Domain specific instances can be used by domain applications, but the maps do not interfere with the kernel.
Diffstat (limited to 'src/main/resources/boot/OD/Module.xsd')
-rw-r--r--src/main/resources/boot/OD/Module.xsd55
1 files changed, 40 insertions, 15 deletions
diff --git a/src/main/resources/boot/OD/Module.xsd b/src/main/resources/boot/OD/Module.xsd
index 10a0155..bd92ffc 100644
--- a/src/main/resources/boot/OD/Module.xsd
+++ b/src/main/resources/boot/OD/Module.xsd
@@ -47,7 +47,8 @@
<xs:element name="Imports" minOccurs="0">
<xs:annotation>
<xs:documentation>Items to import into or verify within the
- Cristal server upon launch.</xs:documentation>
+ Cristal server upon launch.
+ </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
@@ -73,17 +74,7 @@
<xs:element name="Item" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
- <xs:element name="Property" minOccurs="0"
- maxOccurs="unbounded">
- <xs:complexType>
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="name" type="xs:string"
- use="required" />
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- </xs:element>
+ <xs:element name="Property" type="property" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Outcome" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
@@ -102,12 +93,23 @@
maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
- <xs:element name="DependencyMember" type="xs:string"
- minOccurs="0" maxOccurs="unbounded" />
+ <xs:element name="DependencyMember" minOccurs="0"
+ maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="MemberProperties" type="collprops" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="itemPath" type="xs:string"
+ use="required" />
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="CollectionProperties" type="collprops" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="isDescription" type="xs:boolean"
use="optional" default="false" />
+ <xs:attribute name="itemDescriptionPath"
+ type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
<xs:element name="Aggregation" minOccurs="0"
@@ -121,7 +123,8 @@
<xs:element name="AggregationMember" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
- <xs:element name="Geometry">
+ <xs:element name="Geometry" minOccurs="1"
+ maxOccurs="1">
<xs:complexType>
<xs:attribute name="x" type="xs:int" use="required" />
<xs:attribute name="y" type="xs:int" use="required" />
@@ -131,6 +134,7 @@
use="required" />
</xs:complexType>
</xs:element>
+ <xs:element name="MemberProperties" type="collprops" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="slotNo" type="xs:int"
use="required" />
@@ -158,6 +162,7 @@
<xs:complexType>
<xs:sequence>
<xs:element name="Role" type="xs:string" maxOccurs="unbounded" />
+ <xs:element name="Property" type="property" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="password" type="xs:string"
@@ -194,4 +199,24 @@
</xs:restriction>
</xs:simpleType>
</xs:attribute>
+ <xs:complexType name="property">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="name" type="xs:string" />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="collprops">
+ <xs:sequence>
+ <xs:element name="KeyValuePair" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:attribute name="Key" type="xs:string" use="optional" />
+ <xs:attribute name="Boolean" type="xs:boolean" use="optional" />
+ <xs:attribute name="String" type="xs:string" use="optional" />
+ <xs:attribute name="Integer" type="xs:int" use="optional" />
+ <xs:attribute name="Float" type="xs:double" use="optional" />
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
</xs:schema>