<xsd:schema
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xmi="http://www.omg.org/XMI"
    xmlns:Deployment="http://www.omg.org/Deployment"
    targetNamespace="http://www.omg.org/Deployment"
    >
  <xsd:import namespace="http://www.omg.org/XMI"/>








  <xsd:complexType name="ObjrefType">
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element name="name" type="xsd:string"/>
      <xsd:element name="typeId" type="xsd:string"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id" use="optional"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="ObjrefType" type="Deployment:ObjrefType"/>
  <xsd:complexType name="BoundedStringType">
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element name="bound" type="xsd:string"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id" use="optional"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="BoundedStringType" type="Deployment:BoundedStringType"/>
  <xsd:complexType name="FixedType">
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element name="digits" type="xsd:string"/>
      <xsd:element name="scale" type="xsd:string"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id" use="optional"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="FixedType" type="Deployment:FixedType"/>
  <xsd:complexType name="ArrayType">
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element name="length" type="xsd:string"/>
      <xsd:element name="elementType" type="Deployment:DataType"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id" use="optional"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="ArrayType" type="Deployment:ArrayType"/>


  <xsd:complexType name="UnionType">
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element name="name" type="xsd:string"/>
      <xsd:element name="typeId" type="xsd:string"/>
      <xsd:element name="default" type="Deployment:UnionMemberType"/>
      <xsd:element name="discriminatorType" type="Deployment:DataType"/>
      <xsd:element name="member" type="Deployment:UnionMemberType"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id" use="optional"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="UnionType" type="Deployment:UnionType"/>
  <xsd:complexType name="UnionMemberType">
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element name="name" type="xsd:string"/>
      <xsd:element name="type" type="Deployment:DataType"/>
      <xsd:element name="label" type="Deployment:DataValue"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id" use="optional"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="UnionMemberType" type="Deployment:UnionMemberType"/>




  <xsd:complexType name="ResourceAllocation">
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element name="elementName" type="xsd:string"/>
      <xsd:element name="resourceName" type="xsd:string"/>
      <xsd:element name="property" type="Deployment:Property"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id" use="optional"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="ResourceAllocation" type="Deployment:ResourceAllocation"/>

  <xsd:complexType name="ComponentUsageDescription">
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element name="basePackage" type="Deployment:ComponentPackageDescription"/>
      <xsd:element name="specializedConfig" type="Deployment:PackageConfiguration"/>
      <xsd:element name="selectRequirement" type="Deployment:Requirement"/>
      <xsd:element name="configProperty" type="Deployment:Property"/>
      <xsd:element name="referencedPackage" type="Deployment:ComponentPackageReference"/>
      <xsd:element name="importedPackage" type="Deployment:ComponentPackageImport"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id" use="optional"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="ComponentUsageDescription" type="Deployment:ComponentUsageDescription"/>


  <xsd:complexType name="RequirementSatisfier">
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element name="name" type="xsd:string"/>
      <xsd:element name="resourceType" type="xsd:string"/>
      <xsd:element name="property" type="Deployment:SatisfierProperty"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id" use="optional"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="RequirementSatisfier" type="Deployment:RequirementSatisfier"/>
  <xsd:element name="Deployment">
  <xsd:complexType>
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element ref="Deployment:Any"/>
      <xsd:element ref="Deployment:DataType"/>
      <xsd:element ref="Deployment:DataValue"/>
      <xsd:element ref="Deployment:EnumType"/>
      <xsd:element ref="Deployment:ObjrefType"/>
      <xsd:element ref="Deployment:BoundedStringType"/>
      <xsd:element ref="Deployment:FixedType"/>
      <xsd:element ref="Deployment:ArrayType"/>
      <xsd:element ref="Deployment:SequenceType"/>
      <xsd:element ref="Deployment:AliasType"/>
      <xsd:element ref="Deployment:StructType"/>
      <xsd:element ref="Deployment:StructMemberType"/>
      <xsd:element ref="Deployment:ValueType"/>
      <xsd:element ref="Deployment:ValueMemberType"/>
      <xsd:element ref="Deployment:UnionType"/>
      <xsd:element ref="Deployment:UnionMemberType"/>
      <xsd:element ref="Deployment:NamedValue"/>
      <xsd:element ref="Deployment:Bridge"/>
      <xsd:element ref="Deployment:Interconnect"/>
      <xsd:element ref="Deployment:Node"/>
      <xsd:element ref="Deployment:Resource"/>
      <xsd:element ref="Deployment:SharedResource"/>
      <xsd:element ref="Deployment:Domain"/>
      <xsd:element ref="Deployment:ResourceAllocation"/>
      <xsd:element ref="Deployment:PlanPropertyMapping"/>
      <xsd:element ref="Deployment:PlanSubcomponentPropertyReference"/>
      <xsd:element ref="Deployment:PlanSubcomponentPortEndpoint"/>
      <xsd:element ref="Deployment:PlanConnectionDescription"/>
      <xsd:element ref="Deployment:InstanceDeploymentDescription"/>
      <xsd:element ref="Deployment:MonolithicDeploymentDescription"/>
      <xsd:element ref="Deployment:ArtifactDeploymentDescription"/>
      <xsd:element ref="Deployment:DeploymentPlan"/>
      <xsd:element ref="Deployment:ResourceDeploymentDescription"/>
      <xsd:element ref="Deployment:InstanceResourceDeploymentDescription"/>
      <xsd:element ref="Deployment:ConnectionResourceDeploymentDescription"/>
      <xsd:element ref="Deployment:PlanLocality"/>
      <xsd:element ref="Deployment:Capability"/>
      <xsd:element ref="Deployment:ComponentPropertyDescription"/>
      <xsd:element ref="Deployment:ComponentPortDescription"/>
      <xsd:element ref="Deployment:ComponentInterfaceDescription"/>
      <xsd:element ref="Deployment:ImplementationArtifactDescription"/>
      <xsd:element ref="Deployment:MonolithicImplementationDescription"/>
      <xsd:element ref="Deployment:AssemblyPropertyMapping"/>
      <xsd:element ref="Deployment:SubcomponentPropertyReference"/>
      <xsd:element ref="Deployment:SubcomponentPortEndpoint"/>
      <xsd:element ref="Deployment:AssemblyConnectionDescription"/>
      <xsd:element ref="Deployment:SubcomponentInstantiationDescription"/>
      <xsd:element ref="Deployment:ComponentAssemblyDescription"/>
      <xsd:element ref="Deployment:ComponentImplementationDescription"/>
      <xsd:element ref="Deployment:ComponentPackageReference"/>
      <xsd:element ref="Deployment:ComponentPackageDescription"/>
      <xsd:element ref="Deployment:ComponentUsageDescription"/>
      <xsd:element ref="Deployment:PackagedComponentImplementation"/>
      <xsd:element ref="Deployment:NamedImplementationArtifact"/>
      <xsd:element ref="Deployment:ImplementationRequirement"/>
      <xsd:element ref="Deployment:ComponentPackageImport"/>
      <xsd:element ref="Deployment:PackageConfiguration"/>
      <xsd:element ref="Deployment:Locality"/>
      <xsd:element ref="Deployment:RequirementSatisfier"/>
      <xsd:element ref="Deployment:SatisfierProperty"/>
      <xsd:element ref="Deployment:Requirement"/>
      <xsd:element ref="Deployment:Property"/>
      <xsd:element ref="Deployment:ExternalReferenceEndpoint"/>
      <xsd:element ref="Deployment:ComponentExternalPortEndpoint"/>
      <xsd:element ref="Deployment:ImplementationDependency"/>
      <xsd:element ref="Deployment:ToplevelPackageDescription"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id" use="optional"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  </xsd:element>
</xsd:schema>


