diff options
Diffstat (limited to 'Schemas')
-rw-r--r-- | Schemas/ConfigurableDomains.xsd | 173 |
1 files changed, 88 insertions, 85 deletions
diff --git a/Schemas/ConfigurableDomains.xsd b/Schemas/ConfigurableDomains.xsd index d306c64..f0cc11e 100644 --- a/Schemas/ConfigurableDomains.xsd +++ b/Schemas/ConfigurableDomains.xsd @@ -3,49 +3,49 @@ <xs:include schemaLocation="ParameterSettings.xsd"/> <xs:complexType name="SelectionCriterionRuleType"> <xs:attribute name="SelectionCriterion" type="xs:NMTOKEN" use="required"/> - <xs:attribute name="MatchesWhen" use="required"> - <xs:simpleType> - <xs:restriction base="xs:NMTOKEN"> - <xs:enumeration value="Is"/> - <xs:enumeration value="IsNot"/> - <xs:enumeration value="Includes"/> - <xs:enumeration value="Excludes"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute name="Value" use="required"/> - </xs:complexType> - <xs:group name="RuleGroup"> - <xs:choice> - <xs:element name="CompoundRule" type="CompoundRuleType"/> - <xs:element name="SelectionCriterionRule" type="SelectionCriterionRuleType"/> - </xs:choice> - </xs:group> + <xs:attribute name="MatchesWhen" use="required"> + <xs:simpleType> + <xs:restriction base="xs:NMTOKEN"> + <xs:enumeration value="Is"/> + <xs:enumeration value="IsNot"/> + <xs:enumeration value="Includes"/> + <xs:enumeration value="Excludes"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="Value" use="required"/> + </xs:complexType> + <xs:group name="RuleGroup"> + <xs:choice> + <xs:element name="CompoundRule" type="CompoundRuleType"/> + <xs:element name="SelectionCriterionRule" type="SelectionCriterionRuleType"/> + </xs:choice> + </xs:group> <xs:complexType name="CompoundRuleType"> - <xs:sequence> - <xs:group ref="RuleGroup" minOccurs="0" maxOccurs="unbounded"/> - </xs:sequence> - <xs:attribute name="Type"> - <xs:simpleType> - <xs:restriction base="xs:NMTOKEN"> - <xs:enumeration value="Any"/> - <xs:enumeration value="All"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - </xs:complexType> - <xs:complexType name="ConfigurationsType"> - <xs:sequence> - <xs:element maxOccurs="unbounded" name="Configuration"> - <xs:complexType> - <xs:sequence> - <xs:element name="CompoundRule" type="CompoundRuleType" minOccurs="0" maxOccurs="1"/> - </xs:sequence> - <xs:attribute name="Name" use="required" type="xs:NCName"/> - </xs:complexType> - </xs:element> - </xs:sequence> - </xs:complexType> + <xs:sequence> + <xs:group ref="RuleGroup" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> + <xs:attribute name="Type"> + <xs:simpleType> + <xs:restriction base="xs:NMTOKEN"> + <xs:enumeration value="Any"/> + <xs:enumeration value="All"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:complexType> + <xs:complexType name="ConfigurationsType"> + <xs:sequence> + <xs:element maxOccurs="unbounded" name="Configuration"> + <xs:complexType> + <xs:sequence> + <xs:element name="CompoundRule" type="CompoundRuleType" minOccurs="0" maxOccurs="1"/> + </xs:sequence> + <xs:attribute name="Name" use="required" type="xs:NCName"/> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:complexType> <xs:group name="ComponentGroup"> <xs:choice> <xs:group ref="ParameterBlockGroup"/> @@ -71,20 +71,23 @@ <xs:pattern value="/.*[^/]"/> </xs:restriction> </xs:simpleType> - </xs:attribute> + </xs:attribute> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="ConfigurableElementSettingsType"> - <xs:group ref="ComponentGroup"/> + <xs:choice> + <xs:element name="BitParameter" type="IntegerParameterType"/> + <xs:group ref="ComponentGroup"/> + </xs:choice> <xs:attribute name="Path" use="required"> <xs:simpleType> <xs:restriction base="xs:anyURI"> <xs:pattern value="/.*[^/]"/> </xs:restriction> </xs:simpleType> - </xs:attribute> + </xs:attribute> </xs:complexType> <xs:complexType name="SettingsType"> <xs:sequence> @@ -103,45 +106,45 @@ </xs:sequence> </xs:complexType> <xs:complexType name="ConfigurableDomainType"> - <xs:sequence> - <xs:element name="Configurations" type="ConfigurationsType"/> - <xs:element name="ConfigurableElements" type="ConfigurableElementsType"/> - <xs:element name="Settings" type="SettingsType" minOccurs="0"/> - </xs:sequence> - <xs:attribute name="Name" use="required" type="xs:NCName"/> + <xs:sequence> + <xs:element name="Configurations" type="ConfigurationsType"/> + <xs:element name="ConfigurableElements" type="ConfigurableElementsType"/> + <xs:element name="Settings" type="SettingsType" minOccurs="0"/> + </xs:sequence> + <xs:attribute name="Name" use="required" type="xs:NCName"/> <xs:attribute name="SequenceAware" use="optional" type="xs:boolean" default="false"/> - </xs:complexType> - <xs:element name="ConfigurableDomains"> - <xs:complexType> - <xs:sequence> - <xs:element maxOccurs="unbounded" name="ConfigurableDomain" type="ConfigurableDomainType"> - <xs:key name="ConfigurableElementKey"> - <xs:selector xpath="ConfigurableElements/ConfigurableElement"/> - <xs:field xpath="@Path"/> - </xs:key> - <xs:keyref refer="ConfigurableElementKey" name="ConfigurableDomainReference"> - <xs:selector xpath="Settings/Configuration/ConfigurableElement"/> - <xs:field xpath="@Path"/> - </xs:keyref> - <xs:key name="ConfigurationKey"> - <xs:selector xpath="Configurations/Configuration"/> - <xs:field xpath="@Name"/> - </xs:key> - <xs:keyref refer="ConfigurationKey" name="ConfigurationReference2"> - <xs:selector xpath="ConfigurableElements/ConfigurableElement/Configuration"/> - <xs:field xpath="@Name"/> - </xs:keyref> - <xs:keyref refer="ConfigurationKey" name="ConfigurationReference"> - <xs:selector xpath="Settings/Configuration"/> - <xs:field xpath="@Name"/> - </xs:keyref> - </xs:element> - </xs:sequence> - <xs:attribute name="SystemClassName" use="required" type="xs:NCName"/> - </xs:complexType> - <xs:unique name="ConfigurableDomainUniqueness"> - <xs:selector xpath="ConfigurableDomain"/> - <xs:field xpath="@Name"/> - </xs:unique> - </xs:element> + </xs:complexType> + <xs:element name="ConfigurableDomains"> + <xs:complexType> + <xs:sequence> + <xs:element maxOccurs="unbounded" name="ConfigurableDomain" type="ConfigurableDomainType"> + <xs:key name="ConfigurableElementKey"> + <xs:selector xpath="ConfigurableElements/ConfigurableElement"/> + <xs:field xpath="@Path"/> + </xs:key> + <xs:keyref refer="ConfigurableElementKey" name="ConfigurableDomainReference"> + <xs:selector xpath="Settings/Configuration/ConfigurableElement"/> + <xs:field xpath="@Path"/> + </xs:keyref> + <xs:key name="ConfigurationKey"> + <xs:selector xpath="Configurations/Configuration"/> + <xs:field xpath="@Name"/> + </xs:key> + <xs:keyref refer="ConfigurationKey" name="ConfigurationReference2"> + <xs:selector xpath="ConfigurableElements/ConfigurableElement/Configuration"/> + <xs:field xpath="@Name"/> + </xs:keyref> + <xs:keyref refer="ConfigurationKey" name="ConfigurationReference"> + <xs:selector xpath="Settings/Configuration"/> + <xs:field xpath="@Name"/> + </xs:keyref> + </xs:element> + </xs:sequence> + <xs:attribute name="SystemClassName" use="required" type="xs:NCName"/> + </xs:complexType> + <xs:unique name="ConfigurableDomainUniqueness"> + <xs:selector xpath="ConfigurableDomain"/> + <xs:field xpath="@Name"/> + </xs:unique> + </xs:element> </xs:schema> |