![]() ![]() |
||||
|
||||
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="http:///AADL/property"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:property="http:///AADL/property" xmlns:core="http:///AADL/core">
<xsd:import
namespace="http:///AADL/core" schemaLocation="core.xsd"/>
<xsd:simpleType
name="PropertyOwnerCategory">
<xsd:restriction
base="xsd:NCName">
<xsd:enumeration
value="DATA"/>
<xsd:enumeration
value="SUBPROGRAM"/>
<xsd:enumeration
value="THREAD"/>
<xsd:enumeration
value="THREAD_GROUP"/>
<xsd:enumeration
value="PROCESS"/>
<xsd:enumeration
value="MEMORY"/>
<xsd:enumeration
value="PROCESSOR"/>
<xsd:enumeration
value="BUS"/>
<xsd:enumeration
value="DEVICE"/>
<xsd:enumeration
value="SYSTEM"/>
<xsd:enumeration
value="MODE"/>
<xsd:enumeration
value="PORT_GROUP"/>
<xsd:enumeration
value="PORT"/>
<xsd:enumeration
value="EVENT_PORT"/>
<xsd:enumeration
value="DATA_PORT"/>
<xsd:enumeration
value="EVENT_DATA_PORT"/>
<xsd:enumeration
value="SERVER_SUBPROGRAM"/>
<xsd:enumeration
value="CONNECTIONS"/>
<xsd:enumeration
value="PORT_GROUP_CONNECTIONS"/>
<xsd:enumeration
value="PORT_CONNECTIONS"/>
<xsd:enumeration
value="EVENT_PORT_CONNECTIONS"/>
<xsd:enumeration
value="DATA_PORT_CONNECTIONS"/>
<xsd:enumeration
value="EVENT_DATA_PORT_CONNECTIONS"/>
<xsd:enumeration
value="ACCESS_CONNECTIONS"/>
<xsd:enumeration
value="FLOW"/>
<xsd:enumeration
value="PARAMETER"/>
<xsd:enumeration
value="PARAMETER_CONNECTIONS"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name="ComponentCategory">
<xsd:restriction
base="xsd:NCName">
<xsd:enumeration
value="DATA"/>
<xsd:enumeration
value="SUBPROGRAM"/>
<xsd:enumeration
value="THREAD"/>
<xsd:enumeration
value="THREAD_GROUP"/>
<xsd:enumeration
value="PROCESS"/>
<xsd:enumeration
value="MEMORY"/>
<xsd:enumeration
value="PROCESSOR"/>
<xsd:enumeration
value="BUS"/>
<xsd:enumeration
value="DEVICE"/>
<xsd:enumeration
value="SYSTEM"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name="ReferableElementCategory">
<xsd:restriction
base="xsd:NCName">
<xsd:enumeration
value="DATA"/>
<xsd:enumeration
value="SUBPROGRAM"/>
<xsd:enumeration
value="THREAD"/>
<xsd:enumeration
value="THREAD_GROUP"/>
<xsd:enumeration
value="PROCESS"/>
<xsd:enumeration
value="MEMORY"/>
<xsd:enumeration
value="PROCESSOR"/>
<xsd:enumeration
value="BUS"/>
<xsd:enumeration
value="DEVICE"/>
<xsd:enumeration
value="SYSTEM"/>
<xsd:enumeration
value="CONNECTIONS"/>
<xsd:enumeration
value="SERVER_SUBPROGRAM"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType
name="Properties">
<xsd:complexContent>
<xsd:extension
base="core:AObject">
<xsd:sequence>
<xsd:element
name="propertyAssociation" type="property:PropertyAssociation"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="Properties" type="property:Properties"/>
<xsd:complexType
name="PropertyAssociation">
<xsd:complexContent>
<xsd:extension
base="core:ModeMember">
<xsd:sequence>
<xsd:element
name="propertyValue" type="property:PropertyValue" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute
name="constant" type="xsd:boolean"/>
<xsd:attribute
name="access" type="xsd:boolean"/>
<xsd:attribute
name="append" type="xsd:boolean"/>
<xsd:attribute
name="derived" type="xsd:boolean"/>
<xsd:attribute
name="propertyDefinition" type="xsd:string"/>
<xsd:attribute
name="inBinding" type="xsd:string"/>
<xsd:attribute
name="appliesTo" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="PropertyAssociation" type="property:PropertyAssociation"/>
<xsd:complexType
name="PropertyDefinition">
<xsd:complexContent>
<xsd:extension
base="core:NamedElement">
<xsd:sequence>
<xsd:element
name="appliesto" type="property:PropertyOwnerCategory" minOccurs="0"
maxOccurs="27"/>
<xsd:element
name="propertyType" type="property:PropertyType" minOccurs="0"/>
<xsd:element
name="defaultpropertyValue" type="property:PropertyValue"
minOccurs="0" maxOccurs="unbounded"/>
<xsd:element
name="appliesToClassifier" type="property:ClassifierValue"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute
name="access" type="xsd:boolean"/>
<xsd:attribute
name="inherit" type="xsd:boolean"/>
<xsd:attribute
name="list" type="xsd:boolean"/>
<xsd:attribute
name="hasEmptyList" type="xsd:boolean"/>
<xsd:attribute
name="propertyTypeReference" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="PropertyDefinition" type="property:PropertyDefinition"/>
<xsd:complexType
name="PropertySet">
<xsd:complexContent>
<xsd:extension
base="core:NamedElement">
<xsd:sequence>
<xsd:element
name="contents" type="xsd:string" nillable="true" minOccurs="0"
maxOccurs="unbounded"/>
<xsd:element
name="propertyType" type="property:PropertyType" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="PropertySet" type="property:PropertySet"/>
<xsd:complexType
name="Aadlboolean">
<xsd:complexContent>
<xsd:extension
base="property:PropertyConstantType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="Aadlboolean" type="property:Aadlboolean"/>
<xsd:complexType
name="Aadlstring">
<xsd:complexContent>
<xsd:extension
base="property:PropertyConstantType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="Aadlstring" type="property:Aadlstring"/>
<xsd:complexType
name="Aadlinteger">
<xsd:complexContent>
<xsd:extension
base="property:NumberType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="Aadlinteger" type="property:Aadlinteger"/>
<xsd:complexType
name="NumberType">
<xsd:complexContent>
<xsd:extension
base="property:PropertyConstantType">
<xsd:sequence>
<xsd:element
name="propertyType" type="property:UnitsType" minOccurs="0"/>
<xsd:element
name="lower" type="property:NumberOrPropertyReference"
minOccurs="0"/>
<xsd:element
name="upper" type="property:NumberOrPropertyReference"
minOccurs="0"/>
</xsd:sequence>
<xsd:attribute
name="propertyTypeReference" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType
name="PropertyType">
<xsd:complexContent>
<xsd:extension
base="core:NamedElement"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType
name="RangeType">
<xsd:complexContent>
<xsd:extension
base="property:PropertyConstantType">
<xsd:sequence>
<xsd:element
name="propertyType" type="property:NumberType" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute
name="propertyTypeReference" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="RangeType" type="property:RangeType"/>
<xsd:complexType
name="ClassifierType">
<xsd:complexContent>
<xsd:extension
base="property:PropertyType">
<xsd:sequence>
<xsd:element
name="category" type="property:ComponentCategory" minOccurs="0"
maxOccurs="10"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="ClassifierType" type="property:ClassifierType"/>
<xsd:complexType
name="ReferenceType">
<xsd:complexContent>
<xsd:extension
base="property:PropertyType">
<xsd:sequence>
<xsd:element
name="category" type="property:ReferableElementCategory"
minOccurs="0" maxOccurs="11"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="ReferenceType" type="property:ReferenceType"/>
<xsd:complexType
name="EnumType">
<xsd:complexContent>
<xsd:extension
base="property:PropertyConstantType">
<xsd:sequence>
<xsd:element
name="enumLiteral" type="property:EnumLiteral"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="EnumType" type="property:EnumType"/>
<xsd:complexType
name="UnitsType">
<xsd:complexContent>
<xsd:extension
base="property:PropertyType">
<xsd:sequence>
<xsd:element
name="unitLiteral" type="property:UnitLiteral" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="UnitsType" type="property:UnitsType"/>
<xsd:complexType
name="EnumLiteral">
<xsd:complexContent>
<xsd:extension
base="core:NamedElement"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="EnumLiteral" type="property:EnumLiteral"/>
<xsd:complexType
name="UnitLiteral">
<xsd:complexContent>
<xsd:extension
base="core:NamedElement">
<xsd:sequence>
<xsd:element
name="factor" type="property:NumberValue" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute
name="baseunit" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="UnitLiteral" type="property:UnitLiteral"/>
<xsd:complexType
name="PropertyValue">
<xsd:complexContent>
<xsd:extension
base="core:AObject"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType
name="BooleanValue">
<xsd:complexContent>
<xsd:extension
base="property:BooleanOrPropertyReference">
<xsd:attribute
name="value" type="xsd:boolean"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType
name="RangeValue">
<xsd:complexContent>
<xsd:extension
base="property:PropertyValue">
<xsd:sequence>
<xsd:element
name="minimum" type="property:NumberOrPropertyReference"/>
<xsd:element
name="maximum" type="property:NumberOrPropertyReference"/>
<xsd:element
name="delta" type="property:NumberOrPropertyReference"
minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="RangeValue" type="property:RangeValue"/>
<xsd:complexType
name="BooleanAND">
<xsd:complexContent>
<xsd:extension
base="property:BooleanValue">
<xsd:sequence>
<xsd:element
name="booleanValue" type="property:BooleanOrPropertyReference"
minOccurs="2" maxOccurs="2"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="BooleanAND" type="property:BooleanAND"/>
<xsd:complexType
name="BooleanOR">
<xsd:complexContent>
<xsd:extension
base="property:BooleanValue">
<xsd:sequence>
<xsd:element
name="booleanValue" type="property:BooleanOrPropertyReference"
minOccurs="2" maxOccurs="2"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="BooleanOR" type="property:BooleanOR"/>
<xsd:complexType
name="BooleanNOT">
<xsd:complexContent>
<xsd:extension
base="property:BooleanValue">
<xsd:sequence>
<xsd:element
name="booleanValue" type="property:BooleanOrPropertyReference"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="BooleanNOT" type="property:BooleanNOT"/>
<xsd:complexType
name="TRUE">
<xsd:complexContent>
<xsd:extension
base="property:TrueFalseValue"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="TRUE" type="property:TRUE"/>
<xsd:complexType
name="FALSE">
<xsd:complexContent>
<xsd:extension
base="property:TrueFalseValue"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="FALSE" type="property:FALSE"/>
<xsd:complexType
name="StringValue">
<xsd:complexContent>
<xsd:extension
base="property:PropertyValue">
<xsd:attribute
name="value" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="StringValue" type="property:StringValue"/>
<xsd:complexType
name="NumberValue">
<xsd:complexContent>
<xsd:extension
base="property:PropertyValue">
<xsd:attribute
name="valueString" type="xsd:string"/>
<xsd:attribute
name="unitLiteral" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="NumberValue" type="property:NumberValue"/>
<xsd:complexType
name="IntegerValue">
<xsd:complexContent>
<xsd:extension
base="property:NumberValue">
<xsd:attribute
name="value" type="xsd:long"/>
<xsd:attribute
name="base" type="xsd:int"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="IntegerValue" type="property:IntegerValue"/>
<xsd:complexType
name="RealValue">
<xsd:complexContent>
<xsd:extension
base="property:NumberValue">
<xsd:attribute
name="value" type="xsd:double"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="RealValue" type="property:RealValue"/>
<xsd:complexType
name="IntegerRangeValue">
<xsd:complexContent>
<xsd:extension
base="property:RangeValue"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="IntegerRangeValue" type="property:IntegerRangeValue"/>
<xsd:complexType
name="RealRangeValue">
<xsd:complexContent>
<xsd:extension
base="property:RangeValue"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="RealRangeValue" type="property:RealRangeValue"/>
<xsd:complexType
name="EnumValue">
<xsd:complexContent>
<xsd:extension
base="property:PropertyValue">
<xsd:attribute
name="enumLiteral" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="EnumValue" type="property:EnumValue"/>
<xsd:complexType
name="ClassifierValue">
<xsd:complexContent>
<xsd:extension
base="property:PropertyValue">
<xsd:attribute
name="value" type="property:ComponentCategory"/>
<xsd:attribute
name="componentClassifier" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="ClassifierValue" type="property:ClassifierValue"/>
<xsd:complexType
name="PropertyReference">
<xsd:complexContent>
<xsd:extension
base="property:BooleanOrPropertyReference">
<xsd:attribute
name="referenceSign" type="xsd:string"/>
<xsd:attribute
name="referencedProperty" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="PropertyReference" type="property:PropertyReference"/>
<xsd:complexType
name="Aadlreal">
<xsd:complexContent>
<xsd:extension
base="property:NumberType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="Aadlreal" type="property:Aadlreal"/>
<xsd:complexType
name="PropertyConstant">
<xsd:complexContent>
<xsd:extension
base="core:NamedElement">
<xsd:sequence>
<xsd:element
name="propertyType" type="property:PropertyConstantType"
minOccurs="0"/>
<xsd:element
name="constantValue" type="property:PropertyValue" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute
name="list" type="xsd:boolean"/>
<xsd:attribute
name="propertyTypeReference" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="PropertyConstant" type="property:PropertyConstant"/>
<xsd:complexType
name="ReferencedProperty"/>
<xsd:element
name="ReferencedProperty" type="property:ReferencedProperty"/>
<xsd:complexType
name="ReferenceValue">
<xsd:complexContent>
<xsd:extension
base="property:PropertyValue">
<xsd:attribute
name="referenceElement" type="xsd:string"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element
name="ReferenceValue" type="property:ReferenceValue"/>
<xsd:complexType
name="ReferenceElement"/>
<xsd:complexType
name="TrueFalseValue">
<xsd:complexContent>
<xsd:extension
base="property:BooleanValue"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType
name="PropertyConstantType">
<xsd:complexContent>
<xsd:extension
base="property:PropertyType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType
name="BooleanOrPropertyReference">
<xsd:complexContent>
<xsd:extension
base="property:PropertyValue"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType
name="PropertyValueHolder"/>
<xsd:complexType
name="NumberOrPropertyReference">
<xsd:complexContent>
<xsd:extension
base="property:PropertyValue"/>
</xsd:complexContent>
</xsd:complexType>
</xsd:schema> |
||||