Commit ee14c9d5 authored by Jonathon Duerig's avatar Jonathon Duerig

Merged changes into .xsd versions and tweaked example.

parent c0d9b6e4
......@@ -22,7 +22,10 @@
<xs:element ref="rspec:node"/>
<xs:element ref="rspec:link"/>
</xs:choice>
<xs:element ref="rspec:external_ref"/>
<xs:choice>
<xs:element ref="rspec:external_ref"/>
<xs:element ref="rspec:type_relation"/>
</xs:choice>
</xs:choice>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="generated" type="xs:dateTime"/>
......@@ -37,6 +40,7 @@
</xs:attribute>
</xs:complexType>
<xs:element name="external_ref" type="rspec:ExternalReferenceContents"/>
<xs:element name="type_relation" type="rspec:TypeRelationContents"/>
<xs:element name="node" type="rspec:NodeContents"/>
<xs:element name="link" type="rspec:LinkContents"/>
<xs:complexType name="NodeContents">
......@@ -52,7 +56,23 @@
<xs:element ref="rspec:cloud"/>
<xs:element ref="rspec:services"/>
<xs:element ref="rspec:hardware_type"/>
<xs:element ref="rspec:sliver_type"/>
<xs:element name="sliver_type">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="rspec:SliverTypeContents"/>
<xs:element name="disk_image">
<xs:complexType>
<xs:complexContent>
<xs:extension base="rspec:DiskImageContents">
<xs:attribute name="default"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:attributeGroup ref="rspec:SliverTypeContents"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:choice>
<xs:attributeGroup ref="rspec:AnyExtension"/>
......@@ -147,18 +167,28 @@
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="sliver_type">
<xs:complexType>
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="hardware_type">
<xs:complexType>
<xs:group name="SliverType">
<xs:sequence>
<xs:element name="sliver_type">
<xs:complexType>
<xs:group ref="rspec:SliverTypeContents"/>
<xs:attributeGroup ref="rspec:SliverTypeContents"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="SliverTypeContents">
<xs:sequence>
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<xs:attributeGroup name="SliverTypeContents">
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:attributeGroup>
<xs:complexType name="HardwareTypeContents">
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:schema>
......@@ -19,6 +19,13 @@
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="now" use="required" type="xs:boolean"/>
</xs:complexType>
<xs:complexType name="DiskImageContents">
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
<xs:attribute name="os"/>
<xs:attribute name="version"/>
</xs:complexType>
<xs:complexType name="MonitoringContents">
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
......@@ -79,4 +86,20 @@
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="TypeRelationContents">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="rspec:AnyExtension"/>
<xs:element ref="rspec:hardware_type"/>
<xs:element name="sliver_type">
<xs:complexType>
<xs:group ref="rspec:SliverTypeContents"/>
<xs:attributeGroup ref="rspec:SliverTypeContents"/>
</xs:complexType>
</xs:element>
<xs:element ref="rspec:disk_image"/>
</xs:choice>
<xs:attributeGroup ref="rspec:AnyExtension"/>
</xs:complexType>
<xs:element name="hardware_type" type="rspec:HardwareTypeContents"/>
<xs:element name="disk_image" type="rspec:DiskImageContents"/>
</xs:schema>
......@@ -8,7 +8,7 @@
<hardware_type name="pc600" />
<hardware_type name="pc3000" />
<sliver_type name="raw-pc" />
<disk_image name="RH9-STD" os="linux" version="Redhat-9" />
<disk_image name="RHL9-STD" os="linux" version="Redhat-9" />
</type_relation>
<type_relation>
<hardware_type name="pc3000" />
......@@ -22,9 +22,8 @@
<login authentication="ssh-keys" hostname="pc175.emulab.net" port="22"/>
</services>
<sliver_type name="raw-pc">
<disk_image name="FBSD62-UNSTABLE" os="linux" version="FreeBSD-6.21"
default="true">
</disk_image>
<disk_image name="FBSD62-UNSTABLE" os="linux" version="FreeBSD-6.21" />
<disk_image name="FBSD62-STD" default="true" />
</sliver_type>
<hardware_type name="pc3000" />
<hardware_type name="pc" />
......@@ -35,7 +34,9 @@
<services>
<login authentication="ssh-keys" hostname="pc176.emulab.net" port="22"/>
</services>
<sliver_type name="raw-pc" />
<sliver_type name="raw-pc">
<disk_image name="FBSD62-STD" default="true" />
</sliver_type>
<hardware_type name="pc3000" />
<hardware_type name="pc" />
</node>
......@@ -45,7 +46,9 @@
<services>
<login authentication="ssh-keys" hostname="pc1.emulab.net" port="22"/>
</services>
<sliver_type name="raw-pc" />
<sliver_type name="raw-pc">
<disk_image name="RHL9-STD" default="true" />
</sliver_type>
<hardware_type name="pc600" />
<hardware_type name="pc" />
</node>
......
......@@ -131,18 +131,16 @@
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="sliver_type">
<xs:complexType>
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="hardware_type">
<xs:complexType>
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="sliver_type" type="rspec:SliverTypeContents"/>
<xs:complexType name="SliverTypeContents">
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
<xs:element name="hardware_type" type="rspec:HardwareTypeContents"/>
<xs:complexType name="HardwareTypeContents">
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:schema>
......@@ -129,18 +129,16 @@
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="sliver_type">
<xs:complexType>
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="hardware_type">
<xs:complexType>
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="sliver_type" type="rspec:SliverTypeContents"/>
<xs:complexType name="SliverTypeContents">
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
<xs:element name="hardware_type" type="rspec:HardwareTypeContents"/>
<xs:complexType name="HardwareTypeContents">
<xs:group ref="rspec:AnyExtension"/>
<xs:attributeGroup ref="rspec:AnyExtension"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:schema>
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment