diff options
-rw-r--r-- | Schemas/FileIncluder.xsd | 30 | ||||
-rw-r--r-- | Schemas/Parameter.xsd | 380 | ||||
-rw-r--r-- | Schemas/ParameterSettings.xsd | 184 | ||||
-rw-r--r-- | Schemas/Subsystem.xsd | 80 | ||||
-rw-r--r-- | Schemas/SystemClass.xsd | 34 |
5 files changed, 354 insertions, 354 deletions
diff --git a/Schemas/FileIncluder.xsd b/Schemas/FileIncluder.xsd index 3278aea..62593b2 100644 --- a/Schemas/FileIncluder.xsd +++ b/Schemas/FileIncluder.xsd @@ -1,15 +1,15 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Samuel Gravez (Siemens VDO S.A.S.) -->
-<xs:schema xmlns:html="http://www.w3.org/1999/xhtml" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
- <xs:complexType name="FileIncluderType">
- <xs:annotation>
- <xs:documentation>Element type used to import a root element from a file.</xs:documentation>
- </xs:annotation>
- <xs:attribute name="Path" type="xs:anyURI" use="required">
- <xs:annotation>
- <xs:documentation>Path to the file to import.
-This path may be absolute or relative to the path of the includer file.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
-</xs:schema>
+<?xml version="1.0" encoding="UTF-8"?> +<!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Samuel Gravez (Siemens VDO S.A.S.) --> +<xs:schema xmlns:html="http://www.w3.org/1999/xhtml" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> + <xs:complexType name="FileIncluderType"> + <xs:annotation> + <xs:documentation>Element type used to import a root element from a file.</xs:documentation> + </xs:annotation> + <xs:attribute name="Path" type="xs:anyURI" use="required"> + <xs:annotation> + <xs:documentation>Path to the file to import. +This path may be absolute or relative to the path of the includer file.</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:complexType> +</xs:schema> diff --git a/Schemas/Parameter.xsd b/Schemas/Parameter.xsd index f174b6e..14f7629 100644 --- a/Schemas/Parameter.xsd +++ b/Schemas/Parameter.xsd @@ -1,190 +1,190 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
- <xs:attributeGroup name="Nameable">
- <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/>
- <xs:attribute name="Description" type="xs:string" use="optional"/>
- </xs:attributeGroup>
- <xs:attributeGroup name="TypedNameable">
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Type" type="xs:NMTOKEN" use="required"/>
- </xs:attributeGroup>
- <xs:complexType name="ComponentInstance">
- <xs:attributeGroup ref="TypedNameable"/>
- <xs:attribute name="Mapping" use="optional"/>
- </xs:complexType>
- <xs:simpleType name="SizeType">
- <xs:restriction base="xs:positiveInteger">
- <xs:pattern value="8|16|32"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="SizeType64">
- <xs:restriction base="xs:positiveInteger">
- <xs:pattern value="8|16|32|64"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:attributeGroup name="IntegerParameterAttributes">
- <xs:attribute name="Size" type="SizeType" use="required"/>
- <xs:attribute name="Min" type="xs:integer" use="optional"/>
- <xs:attribute name="Max" type="xs:integer" use="optional"/>
- <xs:attribute name="Signed" type="xs:boolean" use="optional" default="false"/>
- </xs:attributeGroup>
- <xs:attributeGroup name="ArrayLengthAttribute">
- <xs:attribute name="ArrayLength" type="xs:nonNegativeInteger" use="optional" default="0"/>
- </xs:attributeGroup>
- <xs:complexType name="Adaptation">
- <xs:attribute name="Offset" type="xs:integer" default="0"/>
- </xs:complexType>
- <xs:complexType name="LinearAdaptationType">
- <xs:complexContent>
- <xs:extension base="Adaptation">
- <xs:attribute name="SlopeNumerator" type="xs:double" default="1"/>
- <xs:attribute name="SlopeDenominator" type="xs:double" default="1"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:element name="LinearAdaptation" type="LinearAdaptationType"/>
- <xs:element name="LogarithmicAdaptation">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="LinearAdaptationType">
- <xs:attribute name="LogarithmBase" type="xs:double" default="10"/>
- <xs:attribute name="FloorValue" type="xs:double" default="-INF"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:complexType name="Parameter" abstract="true">
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Mapping" type="xs:string" use="optional"/>
- <xs:attributeGroup ref="ArrayLengthAttribute"/>
- </xs:complexType>
- <xs:element name="BooleanParameter">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="Parameter">
- <xs:attribute name="Size" fixed="8"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:complexType name="IntegerParameterType">
- <xs:complexContent>
- <xs:extension base="Parameter">
- <xs:choice minOccurs="0">
- <xs:element ref="LinearAdaptation"/>
- <xs:element ref="LogarithmicAdaptation"/>
- </xs:choice>
- <xs:attributeGroup ref="IntegerParameterAttributes"/>
- <xs:attribute name="Unit" type="xs:token" use="optional"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:element name="IntegerParameter" type="IntegerParameterType"/>
- <xs:complexType name="EnumParameterType">
- <xs:complexContent>
- <xs:extension base="Parameter">
- <xs:sequence>
- <xs:element name="ValuePair" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="Literal" type="xs:string" use="required"/>
- <xs:attribute name="Numerical" use="required">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="0|[+-]?[1-9][0-9]*"/>
- <xs:pattern value="0x[0-9a-fA-F]+"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="Size" type="SizeType" use="required"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:element name="EnumParameter" type="EnumParameterType">
- <xs:unique name="LiteralUniqueness">
- <xs:selector xpath="ValuePair"/>
- <xs:field xpath="@Literal"/>
- </xs:unique>
- <xs:unique name="NumericalUniqueness">
- <xs:selector xpath="ValuePair"/>
- <xs:field xpath="@Numerical"/>
- </xs:unique>
- </xs:element>
- <xs:complexType name="FixedPointParameterType">
- <xs:complexContent>
- <xs:extension base="Parameter">
- <xs:attribute name="Size" type="SizeType" use="required"/>
- <xs:attribute name="Integral" type="xs:nonNegativeInteger" use="required"/>
- <xs:attribute name="Fractional" type="xs:nonNegativeInteger" use="required"/>
- <xs:attribute name="Unit" type="xs:token" use="optional"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:element name="FixedPointParameter" type="FixedPointParameterType"/>
- <xs:complexType name="BitParameterType">
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Size" use="required">
- <xs:simpleType>
- <xs:restriction base="xs:positiveInteger">
- <xs:maxInclusive value="64"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="Pos" use="required">
- <xs:simpleType>
- <xs:restriction base="xs:nonNegativeInteger">
- <xs:maxInclusive value="63"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="Max" type="xs:integer" use="optional"/>
- </xs:complexType>
- <xs:element name="BitParameterBlock">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="BitParameter" type="BitParameterType" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Size" type="SizeType64" use="required"/>
- <xs:attribute name="Mapping" type="xs:string" use="optional"/>
- </xs:complexType>
- <xs:unique name="BitParameterBlockSubElementsUniqueness">
- <xs:selector xpath="*"/>
- <xs:field xpath="@Name"/>
- </xs:unique>
- </xs:element>
- <xs:element name="StringParameter">
- <xs:complexType>
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Mapping" type="xs:string" use="optional"/>
- <xs:attribute name="MaxLength" type="xs:nonNegativeInteger" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:group name="ParameterBlockGroup">
- <xs:choice>
- <xs:element ref="BooleanParameter"/>
- <xs:element ref="IntegerParameter"/>
- <xs:element ref="EnumParameter"/>
- <xs:element ref="FixedPointParameter"/>
- <xs:element ref="BitParameterBlock"/>
- <xs:element ref="StringParameter"/>
- <xs:element name="Component" type="ComponentInstance"/>
- <xs:element name="ParameterBlock" type="ParameterBlockType">
- <xs:unique name="ParameterBlockSubElementsUniqueness">
- <xs:selector xpath="*"/>
- <xs:field xpath="@Name"/>
- </xs:unique>
- </xs:element>
- </xs:choice>
- </xs:group>
- <xs:complexType name="ParameterBlockType">
- <xs:sequence>
- <xs:group ref="ParameterBlockGroup" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attributeGroup ref="Nameable"/>
- <xs:attributeGroup ref="ArrayLengthAttribute"/>
- <xs:attribute name="Mapping" type="xs:string" use="optional"/>
- </xs:complexType>
-</xs:schema>
+<?xml version="1.0" encoding="UTF-8"?> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> + <xs:attributeGroup name="Nameable"> + <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/> + <xs:attribute name="Description" type="xs:string" use="optional"/> + </xs:attributeGroup> + <xs:attributeGroup name="TypedNameable"> + <xs:attributeGroup ref="Nameable"/> + <xs:attribute name="Type" type="xs:NMTOKEN" use="required"/> + </xs:attributeGroup> + <xs:complexType name="ComponentInstance"> + <xs:attributeGroup ref="TypedNameable"/> + <xs:attribute name="Mapping" use="optional"/> + </xs:complexType> + <xs:simpleType name="SizeType"> + <xs:restriction base="xs:positiveInteger"> + <xs:pattern value="8|16|32"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SizeType64"> + <xs:restriction base="xs:positiveInteger"> + <xs:pattern value="8|16|32|64"/> + </xs:restriction> + </xs:simpleType> + <xs:attributeGroup name="IntegerParameterAttributes"> + <xs:attribute name="Size" type="SizeType" use="required"/> + <xs:attribute name="Min" type="xs:integer" use="optional"/> + <xs:attribute name="Max" type="xs:integer" use="optional"/> + <xs:attribute name="Signed" type="xs:boolean" use="optional" default="false"/> + </xs:attributeGroup> + <xs:attributeGroup name="ArrayLengthAttribute"> + <xs:attribute name="ArrayLength" type="xs:nonNegativeInteger" use="optional" default="0"/> + </xs:attributeGroup> + <xs:complexType name="Adaptation"> + <xs:attribute name="Offset" type="xs:integer" default="0"/> + </xs:complexType> + <xs:complexType name="LinearAdaptationType"> + <xs:complexContent> + <xs:extension base="Adaptation"> + <xs:attribute name="SlopeNumerator" type="xs:double" default="1"/> + <xs:attribute name="SlopeDenominator" type="xs:double" default="1"/> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="LinearAdaptation" type="LinearAdaptationType"/> + <xs:element name="LogarithmicAdaptation"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="LinearAdaptationType"> + <xs:attribute name="LogarithmBase" type="xs:double" default="10"/> + <xs:attribute name="FloorValue" type="xs:double" default="-INF"/> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> + <xs:complexType name="Parameter" abstract="true"> + <xs:attributeGroup ref="Nameable"/> + <xs:attribute name="Mapping" type="xs:string" use="optional"/> + <xs:attributeGroup ref="ArrayLengthAttribute"/> + </xs:complexType> + <xs:element name="BooleanParameter"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="Parameter"> + <xs:attribute name="Size" fixed="8"/> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> + <xs:complexType name="IntegerParameterType"> + <xs:complexContent> + <xs:extension base="Parameter"> + <xs:choice minOccurs="0"> + <xs:element ref="LinearAdaptation"/> + <xs:element ref="LogarithmicAdaptation"/> + </xs:choice> + <xs:attributeGroup ref="IntegerParameterAttributes"/> + <xs:attribute name="Unit" type="xs:token" use="optional"/> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="IntegerParameter" type="IntegerParameterType"/> + <xs:complexType name="EnumParameterType"> + <xs:complexContent> + <xs:extension base="Parameter"> + <xs:sequence> + <xs:element name="ValuePair" maxOccurs="unbounded"> + <xs:complexType> + <xs:attribute name="Literal" type="xs:string" use="required"/> + <xs:attribute name="Numerical" use="required"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:pattern value="0|[+-]?[1-9][0-9]*"/> + <xs:pattern value="0x[0-9a-fA-F]+"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:complexType> + </xs:element> + </xs:sequence> + <xs:attribute name="Size" type="SizeType" use="required"/> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="EnumParameter" type="EnumParameterType"> + <xs:unique name="LiteralUniqueness"> + <xs:selector xpath="ValuePair"/> + <xs:field xpath="@Literal"/> + </xs:unique> + <xs:unique name="NumericalUniqueness"> + <xs:selector xpath="ValuePair"/> + <xs:field xpath="@Numerical"/> + </xs:unique> + </xs:element> + <xs:complexType name="FixedPointParameterType"> + <xs:complexContent> + <xs:extension base="Parameter"> + <xs:attribute name="Size" type="SizeType" use="required"/> + <xs:attribute name="Integral" type="xs:nonNegativeInteger" use="required"/> + <xs:attribute name="Fractional" type="xs:nonNegativeInteger" use="required"/> + <xs:attribute name="Unit" type="xs:token" use="optional"/> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="FixedPointParameter" type="FixedPointParameterType"/> + <xs:complexType name="BitParameterType"> + <xs:attributeGroup ref="Nameable"/> + <xs:attribute name="Size" use="required"> + <xs:simpleType> + <xs:restriction base="xs:positiveInteger"> + <xs:maxInclusive value="64"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="Pos" use="required"> + <xs:simpleType> + <xs:restriction base="xs:nonNegativeInteger"> + <xs:maxInclusive value="63"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="Max" type="xs:integer" use="optional"/> + </xs:complexType> + <xs:element name="BitParameterBlock"> + <xs:complexType> + <xs:sequence> + <xs:element name="BitParameter" type="BitParameterType" maxOccurs="unbounded"/> + </xs:sequence> + <xs:attributeGroup ref="Nameable"/> + <xs:attribute name="Size" type="SizeType64" use="required"/> + <xs:attribute name="Mapping" type="xs:string" use="optional"/> + </xs:complexType> + <xs:unique name="BitParameterBlockSubElementsUniqueness"> + <xs:selector xpath="*"/> + <xs:field xpath="@Name"/> + </xs:unique> + </xs:element> + <xs:element name="StringParameter"> + <xs:complexType> + <xs:attributeGroup ref="Nameable"/> + <xs:attribute name="Mapping" type="xs:string" use="optional"/> + <xs:attribute name="MaxLength" type="xs:nonNegativeInteger" use="required"/> + </xs:complexType> + </xs:element> + <xs:group name="ParameterBlockGroup"> + <xs:choice> + <xs:element ref="BooleanParameter"/> + <xs:element ref="IntegerParameter"/> + <xs:element ref="EnumParameter"/> + <xs:element ref="FixedPointParameter"/> + <xs:element ref="BitParameterBlock"/> + <xs:element ref="StringParameter"/> + <xs:element name="Component" type="ComponentInstance"/> + <xs:element name="ParameterBlock" type="ParameterBlockType"> + <xs:unique name="ParameterBlockSubElementsUniqueness"> + <xs:selector xpath="*"/> + <xs:field xpath="@Name"/> + </xs:unique> + </xs:element> + </xs:choice> + </xs:group> + <xs:complexType name="ParameterBlockType"> + <xs:sequence> + <xs:group ref="ParameterBlockGroup" maxOccurs="unbounded"/> + </xs:sequence> + <xs:attributeGroup ref="Nameable"/> + <xs:attributeGroup ref="ArrayLengthAttribute"/> + <xs:attribute name="Mapping" type="xs:string" use="optional"/> + </xs:complexType> +</xs:schema> diff --git a/Schemas/ParameterSettings.xsd b/Schemas/ParameterSettings.xsd index 9943d8e..5ebe495 100644 --- a/Schemas/ParameterSettings.xsd +++ b/Schemas/ParameterSettings.xsd @@ -1,92 +1,92 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
- <xs:complexType name="ParameterType" abstract="true">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/>
- <xs:attribute name="ValueSpace" use="optional">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="Raw"/>
- <xs:enumeration value="Real"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="BooleanParameterType">
- <xs:simpleContent>
- <xs:restriction base="ParameterType">
- <xs:pattern value="([01][\s]*)+"/>
- <xs:pattern value="((0x0|0x1)[\s]*)+"/>
- <xs:attribute name="ValueSpace" use="prohibited"/>
- </xs:restriction>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="IntegerParameterType">
- <xs:simpleContent>
- <xs:restriction base="ParameterType">
- <xs:pattern value="(0|([+-]?[1-9][0-9]*))(\s+(0|([+-]?[1-9][0-9]*)))*"/>
- <xs:pattern value="(0x[0-9a-fA-F]+)(\s+(0x[0-9a-fA-F]+))*"/>
- <xs:attribute name="ValueSpace" use="prohibited"/>
- </xs:restriction>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="EnumParameterType">
- <xs:simpleContent>
- <xs:restriction base="ParameterType">
- <xs:attribute name="ValueSpace" use="prohibited"/>
- </xs:restriction>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="FixedPointParameterType">
- <xs:simpleContent>
- <xs:restriction base="ParameterType">
- <xs:pattern value="((0|[+-]?0\.[0-9]+|(([+-]?[1-9][0-9]*)(\.[0-9]+)?))(e[+-]?[0-9]+)?)(\s+(0|[+-]?0\.[0-9]+|(([+-]?[1-9][0-9]*)(\.[0-9]+)?))(e[+-]?[0-9]+)?)*"/>
- <xs:pattern value="(0x[0-9a-fA-F]+)(\s+(0x[0-9a-fA-F]+))*"/>
- </xs:restriction>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="BitParameterBlockType">
- <xs:sequence>
- <xs:element name="BitParameter" maxOccurs="unbounded" type="IntegerParameterType"/>
- </xs:sequence>
- <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/>
- </xs:complexType>
- <xs:complexType name="StringParameterType">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:group name="ParameterBlockGroup">
- <xs:choice>
- <xs:element name="BooleanParameter" type="BooleanParameterType"/>
- <xs:element name="IntegerParameter" type="IntegerParameterType"/>
- <xs:element name="EnumParameter" type="EnumParameterType"/>
- <xs:element name="FixedPointParameter" type="FixedPointParameterType"/>
- <xs:element name="BitParameterBlock" type="BitParameterBlockType">
- <xs:unique name="BitParameterBlockSubElementsUniqueness">
- <xs:selector xpath="*"/>
- <xs:field xpath="@Name"/>
- </xs:unique>
- </xs:element>
- <xs:element name="StringParameter" type="StringParameterType"/>
- <xs:element name="Component" type="ParameterBlockType"/>
- <xs:element name="ParameterBlock" type="ParameterBlockType">
- <xs:unique name="ParameterBlockSubElementsUniqueness">
- <xs:selector xpath="*"/>
- <xs:field xpath="@Name"/>
- </xs:unique>
- </xs:element>
- </xs:choice>
- </xs:group>
- <xs:complexType name="ParameterBlockType">
- <xs:sequence>
- <xs:group ref="ParameterBlockGroup" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/>
- </xs:complexType>
-</xs:schema>
+<?xml version="1.0" encoding="UTF-8"?> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> + <xs:complexType name="ParameterType" abstract="true"> + <xs:simpleContent> + <xs:extension base="xs:string"> + <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/> + <xs:attribute name="ValueSpace" use="optional"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="Raw"/> + <xs:enumeration value="Real"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:extension> + </xs:simpleContent> + </xs:complexType> + <xs:complexType name="BooleanParameterType"> + <xs:simpleContent> + <xs:restriction base="ParameterType"> + <xs:pattern value="([01][\s]*)+"/> + <xs:pattern value="((0x0|0x1)[\s]*)+"/> + <xs:attribute name="ValueSpace" use="prohibited"/> + </xs:restriction> + </xs:simpleContent> + </xs:complexType> + <xs:complexType name="IntegerParameterType"> + <xs:simpleContent> + <xs:restriction base="ParameterType"> + <xs:pattern value="(0|([+-]?[1-9][0-9]*))(\s+(0|([+-]?[1-9][0-9]*)))*"/> + <xs:pattern value="(0x[0-9a-fA-F]+)(\s+(0x[0-9a-fA-F]+))*"/> + <xs:attribute name="ValueSpace" use="prohibited"/> + </xs:restriction> + </xs:simpleContent> + </xs:complexType> + <xs:complexType name="EnumParameterType"> + <xs:simpleContent> + <xs:restriction base="ParameterType"> + <xs:attribute name="ValueSpace" use="prohibited"/> + </xs:restriction> + </xs:simpleContent> + </xs:complexType> + <xs:complexType name="FixedPointParameterType"> + <xs:simpleContent> + <xs:restriction base="ParameterType"> + <xs:pattern value="((0|[+-]?0\.[0-9]+|(([+-]?[1-9][0-9]*)(\.[0-9]+)?))(e[+-]?[0-9]+)?)(\s+(0|[+-]?0\.[0-9]+|(([+-]?[1-9][0-9]*)(\.[0-9]+)?))(e[+-]?[0-9]+)?)*"/> + <xs:pattern value="(0x[0-9a-fA-F]+)(\s+(0x[0-9a-fA-F]+))*"/> + </xs:restriction> + </xs:simpleContent> + </xs:complexType> + <xs:complexType name="BitParameterBlockType"> + <xs:sequence> + <xs:element name="BitParameter" maxOccurs="unbounded" type="IntegerParameterType"/> + </xs:sequence> + <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/> + </xs:complexType> + <xs:complexType name="StringParameterType"> + <xs:simpleContent> + <xs:extension base="xs:string"> + <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/> + </xs:extension> + </xs:simpleContent> + </xs:complexType> + <xs:group name="ParameterBlockGroup"> + <xs:choice> + <xs:element name="BooleanParameter" type="BooleanParameterType"/> + <xs:element name="IntegerParameter" type="IntegerParameterType"/> + <xs:element name="EnumParameter" type="EnumParameterType"/> + <xs:element name="FixedPointParameter" type="FixedPointParameterType"/> + <xs:element name="BitParameterBlock" type="BitParameterBlockType"> + <xs:unique name="BitParameterBlockSubElementsUniqueness"> + <xs:selector xpath="*"/> + <xs:field xpath="@Name"/> + </xs:unique> + </xs:element> + <xs:element name="StringParameter" type="StringParameterType"/> + <xs:element name="Component" type="ParameterBlockType"/> + <xs:element name="ParameterBlock" type="ParameterBlockType"> + <xs:unique name="ParameterBlockSubElementsUniqueness"> + <xs:selector xpath="*"/> + <xs:field xpath="@Name"/> + </xs:unique> + </xs:element> + </xs:choice> + </xs:group> + <xs:complexType name="ParameterBlockType"> + <xs:sequence> + <xs:group ref="ParameterBlockGroup" maxOccurs="unbounded"/> + </xs:sequence> + <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/> + </xs:complexType> +</xs:schema> diff --git a/Schemas/Subsystem.xsd b/Schemas/Subsystem.xsd index e803175..d418af7 100644 --- a/Schemas/Subsystem.xsd +++ b/Schemas/Subsystem.xsd @@ -1,40 +1,40 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--W3C Schema generated by XMLSpy v2007 (http://www.altova.com)-->
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
- <xs:include schemaLocation="ComponentLibrary.xsd"/>
- <xs:complexType name="SubsystemType">
- <xs:sequence>
- <xs:element ref="ComponentLibrary"/>
- <xs:element name="InstanceDefinition">
- <xs:complexType>
- <xs:sequence>
- <xs:sequence maxOccurs="unbounded">
- <xs:group ref="ParameterBlockGroup"/>
- </xs:sequence>
- </xs:sequence>
- </xs:complexType>
- <xs:unique name="InstanceDefintionSubElementsUniqueness">
- <xs:selector xpath="*"/>
- <xs:field xpath="@Name"/>
- </xs:unique>
- </xs:element>
- </xs:sequence>
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Endianness" use="required">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="Little"/>
- <xs:enumeration value="Big"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="Type" use="required"/>
- <xs:attribute name="Mapping" use="optional"/>
- </xs:complexType>
- <xs:element name="Subsystem" type="SubsystemType">
- <xs:keyref name="InstanceDefinitionComponentTypeNotFound" refer="ComponentTypeUniqueness">
- <xs:selector xpath="InstanceDefinition/Component"/>
- <xs:field xpath="@Type"/>
- </xs:keyref>
- </xs:element>
-</xs:schema>
+<?xml version="1.0" encoding="UTF-8"?> +<!--W3C Schema generated by XMLSpy v2007 (http://www.altova.com)--> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> + <xs:include schemaLocation="ComponentLibrary.xsd"/> + <xs:complexType name="SubsystemType"> + <xs:sequence> + <xs:element ref="ComponentLibrary"/> + <xs:element name="InstanceDefinition"> + <xs:complexType> + <xs:sequence> + <xs:sequence maxOccurs="unbounded"> + <xs:group ref="ParameterBlockGroup"/> + </xs:sequence> + </xs:sequence> + </xs:complexType> + <xs:unique name="InstanceDefintionSubElementsUniqueness"> + <xs:selector xpath="*"/> + <xs:field xpath="@Name"/> + </xs:unique> + </xs:element> + </xs:sequence> + <xs:attributeGroup ref="Nameable"/> + <xs:attribute name="Endianness" use="required"> + <xs:simpleType> + <xs:restriction base="xs:NMTOKEN"> + <xs:enumeration value="Little"/> + <xs:enumeration value="Big"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="Type" use="required"/> + <xs:attribute name="Mapping" use="optional"/> + </xs:complexType> + <xs:element name="Subsystem" type="SubsystemType"> + <xs:keyref name="InstanceDefinitionComponentTypeNotFound" refer="ComponentTypeUniqueness"> + <xs:selector xpath="InstanceDefinition/Component"/> + <xs:field xpath="@Type"/> + </xs:keyref> + </xs:element> +</xs:schema> diff --git a/Schemas/SystemClass.xsd b/Schemas/SystemClass.xsd index daf3cd7..5aa32db 100644 --- a/Schemas/SystemClass.xsd +++ b/Schemas/SystemClass.xsd @@ -1,17 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--W3C Schema generated by XMLSpy v2007 (http://www.altova.com)-->
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
- <xs:include schemaLocation="FileIncluder.xsd"/>
- <xs:include schemaLocation="Subsystem.xsd"/>
- <xs:element name="SystemClass">
- <xs:complexType>
- <xs:sequence>
- <xs:choice maxOccurs="unbounded">
- <xs:element name="SubsystemInclude" type="FileIncluderType"/>
- <xs:element ref="Subsystem"/>
- </xs:choice>
- </xs:sequence>
- <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/>
- </xs:complexType>
- </xs:element>
-</xs:schema>
+<?xml version="1.0" encoding="UTF-8"?> +<!--W3C Schema generated by XMLSpy v2007 (http://www.altova.com)--> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> + <xs:include schemaLocation="FileIncluder.xsd"/> + <xs:include schemaLocation="Subsystem.xsd"/> + <xs:element name="SystemClass"> + <xs:complexType> + <xs:sequence> + <xs:choice maxOccurs="unbounded"> + <xs:element name="SubsystemInclude" type="FileIncluderType"/> + <xs:element ref="Subsystem"/> + </xs:choice> + </xs:sequence> + <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/> + </xs:complexType> + </xs:element> +</xs:schema> |