<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:cmof="http://schema.omg.org/spec/MOF/2.0/cmof.xml">
  <cmof:Package xmi:id="_0" name="DI" uri="http://www.omg.org/spec/DD/20100524/DI-XMI">
    <packageImport xmi:type="cmof:PackageImport" xmi:id="_packageImport.0" importingNamespace="_0">
      <importedPackage xmi:type="cmof:Package" href="DC.cmof#_0"/>
    </packageImport>
    <ownedMember xmi:type="cmof:Class" xmi:id="DiagramElement" name="DiagramElement" isAbstract="true">
      <ownedAttribute xmi:type="cmof:Property" xmi:id="DiagramElement-owningDiagram" name="owningDiagram" visibility="public" type="Diagram" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_rootElement_owningDiagram"/>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="DiagramElement-owningElement" name="owningElement" visibility="public" type="DiagramElement" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_ownedElement_owningElement"/>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="DiagramElement-modelElement" name="modelElement" visibility="public" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_modelElement_diagramElement">
        <type xmi:type="cmof:Class" href="http://schema.omg.org/spec/MOF/2.0/cmof.xml#Element"/>
      </ownedAttribute>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="DiagramElement-style" name="style" visibility="public" type="Style" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_style_diagramElement"/>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="DiagramElement-ownedElement" name="ownedElement" visibility="public" type="DiagramElement" upper="*" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" isComposite="true" association="A_ownedElement_owningElement"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Class" xmi:id="Node" name="Node" isAbstract="true" superClass="DiagramElement"/>
    <ownedMember xmi:type="cmof:Class" xmi:id="Edge" name="Edge" isAbstract="true" superClass="DiagramElement">
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Edge-source" name="source" visibility="public" type="DiagramElement" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_source_sourceEdge"/>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Edge-target" name="target" visibility="public" type="DiagramElement" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_target_targetEdge"/>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Edge-waypoint" name="waypoint" visibility="public" isOrdered="true" isUnique="false" upper="*" lower="2">
        <type xmi:type="cmof:DataType" href="DC.cmof#Point"/>
      </ownedAttribute>
    </ownedMember>
    <ownedMember xmi:type="cmof:Class" xmi:id="Diagram" name="Diagram" isAbstract="true">
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Diagram-rootElement" name="rootElement" visibility="public" type="DiagramElement" isReadOnly="true" isDerived="true" isDerivedUnion="true" isComposite="true" association="A_rootElement_owningDiagram"/>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Diagram-name" name="name" visibility="public" lower="0">
        <type xmi:type="cmof:PrimitiveType" href="DC.cmof#String"/>
      </ownedAttribute>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Diagram-documentation" name="documentation" visibility="public" lower="0">
        <type xmi:type="cmof:PrimitiveType" href="DC.cmof#String"/>
      </ownedAttribute>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Diagram-resolution" name="resolution" visibility="public" lower="0">
        <type xmi:type="cmof:PrimitiveType" href="DC.cmof#Real"/>
      </ownedAttribute>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Diagram-ownedStyle" name="ownedStyle" visibility="public" type="Style" upper="*" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" isComposite="true" association="A_ownedStyle_owningDiagram"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Class" xmi:id="Shape" name="Shape" isAbstract="true" superClass="Node">
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Shape-bounds" name="bounds" visibility="public">
        <type xmi:type="cmof:DataType" href="DC.cmof#Bounds"/>
      </ownedAttribute>
    </ownedMember>
    <ownedMember xmi:type="cmof:Class" xmi:id="Plane" name="Plane" isAbstract="true" superClass="Node">
      <ownedRule xmi:type="cmof:Constraint" xmi:id="Plane-plane_element_type" name="plane_element_type" constrainedElement="Plane" namespace="Plane">
        <specification xmi:type="cmof:OpaqueExpression" xmi:id="Plane-plane_element_type-_specification">
          <language>OCL</language>
          <body>planeElement->forAll(oclIsKindOf(Shape) or oclIsKindOf(Edge))</body>
        </specification>
      </ownedRule>
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Plane-planeElement" name="planeElement" visibility="public" type="DiagramElement" isOrdered="true" upper="*" lower="0" isComposite="true" subsettedProperty="DiagramElement-ownedElement" association="A_planeElement_plane"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Class" xmi:id="LabeledEdge" name="LabeledEdge" isAbstract="true" superClass="Edge">
      <ownedAttribute xmi:type="cmof:Property" xmi:id="LabeledEdge-ownedLabel" name="ownedLabel" visibility="public" type="Label" upper="*" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" isComposite="true" subsettedProperty="DiagramElement-ownedElement" association="A_ownedLabel_owningEdge"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Class" xmi:id="LabeledShape" name="LabeledShape" isAbstract="true" superClass="Shape">
      <ownedAttribute xmi:type="cmof:Property" xmi:id="LabeledShape-ownedLabel" name="ownedLabel" visibility="public" type="Label" upper="*" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" isComposite="true" subsettedProperty="DiagramElement-ownedElement" association="A_ownedLabel_owningShape"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Class" xmi:id="Label" name="Label" isAbstract="true" superClass="Node">
      <ownedAttribute xmi:type="cmof:Property" xmi:id="Label-bounds" name="bounds" visibility="public" lower="0">
        <type xmi:type="cmof:DataType" href="DC.cmof#Bounds"/>
      </ownedAttribute>
    </ownedMember>
    <ownedMember xmi:type="cmof:Class" xmi:id="Style" name="Style" isAbstract="true"/>
    <ownedMember xmi:type="cmof:Association" xmi:id="A_target_targetEdge" name="A_target_targetEdge" visibility="private" memberEnd="Edge-target A_target_targetEdge-targetEdge">
      <ownedEnd xmi:type="cmof:Property" xmi:id="A_target_targetEdge-targetEdge" name="targetEdge" visibility="public" type="Edge" upper="*" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" owningAssociation="A_target_targetEdge" association="A_target_targetEdge"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Association" xmi:id="A_source_sourceEdge" name="A_source_sourceEdge" visibility="private" memberEnd="Edge-source A_source_sourceEdge-sourceEdge">
      <ownedEnd xmi:type="cmof:Property" xmi:id="A_source_sourceEdge-sourceEdge" name="sourceEdge" visibility="public" type="Edge" upper="*" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" owningAssociation="A_source_sourceEdge" association="A_source_sourceEdge"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Association" xmi:id="A_ownedElement_owningElement" name="A_ownedElement_owningElement" visibility="private" memberEnd="DiagramElement-ownedElement DiagramElement-owningElement"/>
    <ownedMember xmi:type="cmof:Association" xmi:id="A_modelElement_diagramElement" name="A_modelElement_diagramElement" visibility="private" memberEnd="DiagramElement-modelElement A_modelElement_diagramElement-diagramElement">
      <ownedEnd xmi:type="cmof:Property" xmi:id="A_modelElement_diagramElement-diagramElement" name="diagramElement" visibility="public" type="DiagramElement" upper="*" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" owningAssociation="A_modelElement_diagramElement" association="A_modelElement_diagramElement"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Association" xmi:id="A_rootElement_owningDiagram" name="A_rootElement_owningDiagram" visibility="private" memberEnd="Diagram-rootElement DiagramElement-owningDiagram"/>
    <ownedMember xmi:type="cmof:Association" xmi:id="A_ownedLabel_owningEdge" name="A_ownedLabel_owningEdge" visibility="private" memberEnd="LabeledEdge-ownedLabel A_ownedLabel_owningEdge-owningEdge">
      <ownedEnd xmi:type="cmof:Property" xmi:id="A_ownedLabel_owningEdge-owningEdge" name="owningEdge" visibility="public" type="LabeledEdge" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" owningAssociation="A_ownedLabel_owningEdge" subsettedProperty="DiagramElement-owningElement" association="A_ownedLabel_owningEdge"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Association" xmi:id="A_planeElement_plane" name="A_planeElement_plane" visibility="private" memberEnd="Plane-planeElement A_planeElement_plane-plane">
      <ownedEnd xmi:type="cmof:Property" xmi:id="A_planeElement_plane-plane" name="plane" visibility="public" type="Plane" lower="0" owningAssociation="A_planeElement_plane" subsettedProperty="DiagramElement-owningElement" association="A_planeElement_plane"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Association" xmi:id="A_style_diagramElement" name="A_style_diagramElement" visibility="private" memberEnd="DiagramElement-style A_style_diagramElement-diagramElement">
      <ownedEnd xmi:type="cmof:Property" xmi:id="A_style_diagramElement-diagramElement" name="diagramElement" visibility="public" type="DiagramElement" upper="*" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" owningAssociation="A_style_diagramElement" association="A_style_diagramElement"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Association" xmi:id="A_ownedStyle_owningDiagram" name="A_ownedStyle_owningDiagram" visibility="private" memberEnd="Diagram-ownedStyle A_ownedStyle_owningDiagram-owningDiagram">
      <ownedEnd xmi:type="cmof:Property" xmi:id="A_ownedStyle_owningDiagram-owningDiagram" name="owningDiagram" visibility="public" type="Diagram" isReadOnly="true" isDerived="true" isDerivedUnion="true" owningAssociation="A_ownedStyle_owningDiagram" association="A_ownedStyle_owningDiagram"/>
    </ownedMember>
    <ownedMember xmi:type="cmof:Association" xmi:id="A_ownedLabel_owningShape" name="A_ownedLabel_owningShape" visibility="private" memberEnd="LabeledShape-ownedLabel A_ownedLabel_owningShape-owningShape">
      <ownedEnd xmi:type="cmof:Property" xmi:id="A_ownedLabel_owningShape-owningShape" name="owningShape" visibility="public" type="LabeledShape" lower="0" isReadOnly="true" isDerived="true" isDerivedUnion="true" owningAssociation="A_ownedLabel_owningShape" subsettedProperty="DiagramElement-owningElement" association="A_ownedLabel_owningShape"/>
    </ownedMember>
  </cmof:Package>
  <cmof:Tag xmi:id="_1" name="org.omg.xmi.nsPrefix" value="di" element="_0"/>
  <cmof:Tag xmi:id="_2" name="org.omg.xmi.nsURI" value="http://www.omg.org/spec/DD/20100524/DI-XMI" element="_0"/>
</xmi:XMI>