<?xml version="1.0" encoding="UTF-8"?><xsd:schema targetNamespace="http://www.omg.org/XMI"    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsd="http://www.w3.org/2001/XMLSchema">    <xsd:attribute name="id" type="xsd:ID"/>    <xsd:attributeGroup name="IdentityAttribs">        <xsd:attribute form="qualified" name="label" type="xsd:string" use="optional"/>        <xsd:attribute form="qualified" name="uuid" type="xsd:string" use="optional"/>    </xsd:attributeGroup>    <xsd:attributeGroup name="LinkAttribs">        <xsd:attribute name="href" type="xsd:string" use="optional"/>        <xsd:attribute form="qualified" name="idref" type="xsd:IDREF" use="optional"/>    </xsd:attributeGroup>    <xsd:attributeGroup name="ObjectAttribs">        <xsd:attributeGroup ref="xmi:IdentityAttribs"/>        <xsd:attributeGroup ref="xmi:LinkAttribs"/>        <xsd:attribute fixed="2.0" form="qualified" name="version"            type="xsd:string" use="optional"/>        <xsd:attribute form="qualified" name="type" type="xsd:QName" use="optional"/>    </xsd:attributeGroup>    <xsd:complexType name="XMI">        <xsd:choice maxOccurs="unbounded" minOccurs="0">            <xsd:any processContents="strict"/>        </xsd:choice>        <xsd:attribute ref="xmi:id"/>        <xsd:attributeGroup ref="xmi:IdentityAttribs"/>        <xsd:attributeGroup ref="xmi:LinkAttribs"/>        <xsd:attribute form="qualified" name="type" type="xsd:QName" use="optional"/>        <xsd:attribute fixed="2.0" form="qualified" name="version"            type="xsd:string" use="required"/>    </xsd:complexType>    <xsd:element name="XMI" type="xmi:XMI"/>    <xsd:complexType name="PackageReference">        <xsd:choice maxOccurs="unbounded" minOccurs="0">            <xsd:element name="name" type="xsd:string"/>            <xsd:element name="version" type="xsd:string"/>            <xsd:element ref="xmi:Extension"/>        </xsd:choice>        <xsd:attribute ref="xmi:id"/>        <xsd:attributeGroup ref="xmi:ObjectAttribs"/>        <xsd:attribute name="name" type="xsd:string" use="optional"/>    </xsd:complexType>    <xsd:element name="PackageReference" type="xmi:PackageReference"/>    <xsd:complexType name="Model">        <xsd:complexContent>            <xsd:extension base="xmi:PackageReference"/>        </xsd:complexContent>    </xsd:complexType>    <xsd:element name="Model" type="xmi:Model"/>    <xsd:complexType name="Import">        <xsd:complexContent>            <xsd:extension base="xmi:PackageReference"/>        </xsd:complexContent>    </xsd:complexType>    <xsd:element name="Import" type="xmi:Import"/>    <xsd:complexType name="MetaModel">        <xsd:complexContent>            <xsd:extension base="xmi:PackageReference"/>        </xsd:complexContent>    </xsd:complexType>    <xsd:element name="MetaModel" type="xmi:MetaModel"/>    <xsd:complexType name="Documentation">        <xsd:choice maxOccurs="unbounded" minOccurs="0">            <xsd:element name="contact" type="xsd:string"/>            <xsd:element name="exporter" type="xsd:string"/>            <xsd:element name="exporterVersion" type="xsd:string"/>            <xsd:element name="longDescription" type="xsd:string"/>            <xsd:element name="shortDescription" type="xsd:string"/>            <xsd:element name="notice" type="xsd:string"/>            <xsd:element name="owner" type="xsd:string"/>            <xsd:element ref="xmi:Extension"/>        </xsd:choice>        <xsd:attribute ref="xmi:id"/>        <xsd:attributeGroup ref="xmi:ObjectAttribs"/>        <xsd:attribute name="contact" type="xsd:string" use="optional"/>        <xsd:attribute name="exporter" type="xsd:string" use="optional"/>        <xsd:attribute name="exporterVersion" type="xsd:string" use="optional"/>        <xsd:attribute name="longDescription" type="xsd:string" use="optional"/>        <xsd:attribute name="shortDescription" type="xsd:string" use="optional"/>        <xsd:attribute name="notice" type="xsd:string" use="optional"/>        <xsd:attribute name="owner" type="xsd:string" use="optional"/>    </xsd:complexType>    <xsd:element name="Documentation" type="xmi:Documentation"/>    <xsd:complexType name="Extension">        <xsd:choice maxOccurs="unbounded" minOccurs="0">            <xsd:any processContents="lax"/>        </xsd:choice>        <xsd:attribute ref="xmi:id"/>        <xsd:attributeGroup ref="xmi:ObjectAttribs"/>        <xsd:attribute name="extender" type="xsd:string" use="optional"/>        <xsd:attribute name="extenderID" type="xsd:string" use="optional"/>    </xsd:complexType>    <xsd:element name="Extension" type="xmi:Extension"/>    <xsd:complexType name="Difference">        <xsd:choice maxOccurs="unbounded" minOccurs="0">            <xsd:element name="target">                <xsd:complexType>                    <xsd:choice maxOccurs="unbounded" minOccurs="0">                        <xsd:any processContents="skip"/>                    </xsd:choice>                    <xsd:anyAttribute processContents="skip"/>                </xsd:complexType>            </xsd:element>            <xsd:element name="difference" type="xmi:Difference"/>            <xsd:element name="container" type="xmi:Difference"/>            <xsd:element ref="xmi:Extension"/>        </xsd:choice>        <xsd:attribute ref="xmi:id"/>        <xsd:attributeGroup ref="xmi:ObjectAttribs"/>        <xsd:attribute name="target" type="xsd:IDREFS" use="optional"/>        <xsd:attribute name="container" type="xsd:IDREFS" use="optional"/>    </xsd:complexType>    <xsd:element name="Difference" type="xmi:Difference"/>    <xsd:complexType name="Add">        <xsd:complexContent>            <xsd:extension base="xmi:Difference">                <xsd:attribute name="position" type="xsd:string" use="optional"/>                <xsd:attribute name="addition" type="xsd:IDREFS" use="optional"/>            </xsd:extension>        </xsd:complexContent>    </xsd:complexType>    <xsd:element name="Add" type="xmi:Add"/>    <xsd:complexType name="Replace">        <xsd:complexContent>            <xsd:extension base="xmi:Difference">                <xsd:attribute name="position" type="xsd:string" use="optional"/>                <xsd:attribute name="replacement" type="xsd:IDREFS" use="optional"/>            </xsd:extension>        </xsd:complexContent>    </xsd:complexType>    <xsd:element name="Replace" type="xmi:Replace"/>    <xsd:complexType name="Delete">        <xsd:complexContent>            <xsd:extension base="xmi:Difference"/>        </xsd:complexContent>    </xsd:complexType>    <xsd:element name="Delete" type="xmi:Delete"/>    <xsd:complexType name="Any">        <xsd:choice maxOccurs="unbounded" minOccurs="0">            <xsd:any processContents="skip"/>        </xsd:choice>        <xsd:anyAttribute processContents="skip"/>    </xsd:complexType></xsd:schema>
