<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA">
  <uml:Model xmi:id="_WW0l4HAKEemJ-foOn68QUw" name="BuiltInTypes" URI="http://www.eclipse.org/papyrus/model2doc/core/1.0.0/BuiltInTypes">
    <ownedComment xmi:type="uml:Comment" xmi:id="_Ik67gJQVEemHKPZQudxUGA" annotatedElement="_WW0l4HAKEemJ-foOn68QUw">
      <body>Common interface to reference a file.</body>
    </ownedComment>
    <packageImport xmi:type="uml:PackageImport" xmi:id="_WaIYkHAKEemJ-foOn68QUw">
      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
    </packageImport>
    <packagedElement xmi:type="uml:Class" xmi:id="_lYIB4HAKEemJ-foOn68QUw" name="AbstractTable" isAbstract="true">
      <ownedComment xmi:type="uml:Comment" xmi:id="_8e9l4HCfEemJ-foOn68QUw" annotatedElement="_lYIB4HAKEemJ-foOn68QUw">
        <body>Abstract class used to represent a Table in the Model2Doc API.</body>
      </ownedComment>
      <ownedAttribute xmi:type="uml:Property" xmi:id="_oRLSoHAKEemJ-foOn68QUw" name="caption" visibility="public">
        <ownedComment xmi:type="uml:Comment" xmi:id="_CDrLoHCgEemJ-foOn68QUw" annotatedElement="_oRLSoHAKEemJ-foOn68QUw">
          <body>The caption of the table.</body>
        </ownedComment>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedAttribute>
      <ownedAttribute xmi:type="uml:Property" xmi:id="_eFJHAHALEemJ-foOn68QUw" name="rows" visibility="public" type="_-Rcr4HAKEemJ-foOn68QUw" aggregation="composite" association="_eFIf8HALEemJ-foOn68QUw">
        <ownedComment xmi:type="uml:Comment" xmi:id="_XTCFUHCgEemJ-foOn68QUw" annotatedElement="_eFJHAHALEemJ-foOn68QUw">
          <body>The rows owned by the table.</body>
        </ownedComment>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_eFJHAXALEemJ-foOn68QUw"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_eFJHAnALEemJ-foOn68QUw" value="*"/>
      </ownedAttribute>
      <ownedOperation xmi:type="uml:Operation" xmi:id="_wrfzkHAKEemJ-foOn68QUw" name="getRowsNumber">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_sSYlYHCmEemJ-foOn68QUw" source="http://www.eclipse.org/emf/2002/GenModel">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_sSYlYXCmEemJ-foOn68QUw" key="body" value="return getRows().size();"/>
        </eAnnotations>
        <ownedComment xmi:type="uml:Comment" xmi:id="_LbLGgHCgEemJ-foOn68QUw" annotatedElement="_wrfzkHAKEemJ-foOn68QUw">
          <body>This method returns the numbers of rows of the table.</body>
        </ownedComment>
        <ownedParameter xmi:type="uml:Parameter" xmi:id="_3SMawHAKEemJ-foOn68QUw" name="return" direction="return">
          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
          <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_GBxY4HCgEemJ-foOn68QUw" name="DEFAULT_VALUE"/>
        </ownedParameter>
      </ownedOperation>
      <ownedOperation xmi:type="uml:Operation" xmi:id="_y91poHAKEemJ-foOn68QUw" name="getColumnsNumber">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_poKa0nCmEemJ-foOn68QUw" source="http://www.eclipse.org/emf/2002/GenModel">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_poKa03CmEemJ-foOn68QUw" key="body" value="if (getRowsNumber() > 0) {&#xA;&#x9;// we assume all rows have the same number of cells.&#xA;&#x9;final Row firstRow = getRows().get(0);&#xA;&#x9;if (null != firstRow) {&#xA;&#x9;&#x9;return firstRow.getCells().size();&#xA;&#x9;}&#xA;}&#xA;return 0;"/>
        </eAnnotations>
        <ownedComment xmi:type="uml:Comment" xmi:id="_Na-bEHCgEemJ-foOn68QUw" annotatedElement="_y91poHAKEemJ-foOn68QUw">
          <body>This method returns the number of columns of the table.</body>
        </ownedComment>
        <ownedParameter xmi:type="uml:Parameter" xmi:id="_49v9oHAKEemJ-foOn68QUw" name="return" direction="return">
          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
          <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_Im6PIHCgEemJ-foOn68QUw" name="DEFAULT_VALUE"/>
        </ownedParameter>
      </ownedOperation>
      <ownedOperation xmi:type="uml:Operation" xmi:id="_qn5QIHC_EemO3N3fNOfMKQ" name="getAllCells">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Vu06EHDAEemO3N3fNOfMKQ" source="http://www.eclipse.org/emf/2002/GenModel">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Vu06EXDAEemO3N3fNOfMKQ" key="body" value="final java.util.List&lt;Cell> cells = new  java.util.ArrayList&lt;Cell>();&#xA;for (final Row row : getRows()) {&#xA;&#x9;cells.addAll(row.getCells());&#xA;}&#xA;return  org.eclipse.emf.common.util.ECollections.toEList(cells);&#xA;"/>
        </eAnnotations>
        <ownedComment xmi:type="uml:Comment" xmi:id="_SoBhMHDAEemO3N3fNOfMKQ" annotatedElement="_qn5QIHC_EemO3N3fNOfMKQ">
          <body>This method returns all Cells as a List. This list concatenates the Cells Row by Row. So for a table with 3 columns and 5 rows.&#xD;
The 3 first cells will represents the first row, then the cell, 4, 5 and 6, will represents the 2 rows, and so on.</body>
        </ownedComment>
        <ownedParameter xmi:type="uml:Parameter" xmi:id="_yHsCgHC_EemO3N3fNOfMKQ" name="return" type="_EUUNQHALEemJ-foOn68QUw" direction="return">
          <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_3OZBIHDAEemO3N3fNOfMKQ"/>
          <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_3OsjIHDAEemO3N3fNOfMKQ" value="*"/>
        </ownedParameter>
      </ownedOperation>
    </packagedElement>
    <packagedElement xmi:type="uml:Class" xmi:id="_54knIHAKEemJ-foOn68QUw" name="BasicTable">
      <ownedComment xmi:type="uml:Comment" xmi:id="_AZzq0HCgEemJ-foOn68QUw" annotatedElement="_54knIHAKEemJ-foOn68QUw">
        <body>Default implementation provided for a table.</body>
      </ownedComment>
      <generalization xmi:type="uml:Generalization" xmi:id="_8p8ikHAKEemJ-foOn68QUw" general="_lYIB4HAKEemJ-foOn68QUw"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Interface" xmi:id="_-Rcr4HAKEemJ-foOn68QUw" name="Row">
      <ownedAttribute xmi:type="uml:Property" xmi:id="_FVvOAnALEemJ-foOn68QUw" name="cells" type="_EUUNQHALEemJ-foOn68QUw" aggregation="composite" association="_FVt_4HALEemJ-foOn68QUw">
        <ownedComment xmi:type="uml:Comment" xmi:id="_Qu64EHCgEemJ-foOn68QUw" annotatedElement="_FVvOAnALEemJ-foOn68QUw">
          <body>The cells owned by the row.</body>
        </ownedComment>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_FVv1EHALEemJ-foOn68QUw"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_FVv1EXALEemJ-foOn68QUw" value="*"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Class" xmi:id="__NYvsHAKEemJ-foOn68QUw" name="BasicRow">
      <ownedComment xmi:type="uml:Comment" xmi:id="_bgPsoHCgEemJ-foOn68QUw" annotatedElement="__NYvsHAKEemJ-foOn68QUw">
        <body>Default Row implementation.</body>
      </ownedComment>
      <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_C7ojEHALEemJ-foOn68QUw" client="__NYvsHAKEemJ-foOn68QUw" supplier="_-Rcr4HAKEemJ-foOn68QUw" contract="_-Rcr4HAKEemJ-foOn68QUw"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Interface" xmi:id="_EUUNQHALEemJ-foOn68QUw" name="Cell">
      <ownedAttribute xmi:type="uml:Property" xmi:id="_RDZH8HALEemJ-foOn68QUw" name="location" type="_H_dCQHALEemJ-foOn68QUw">
        <ownedComment xmi:type="uml:Comment" xmi:id="_f1hq0HCgEemJ-foOn68QUw" annotatedElement="_RDZH8HALEemJ-foOn68QUw">
          <body>The location of the cells.</body>
        </ownedComment>
        <defaultValue xmi:type="uml:LiteralString" xmi:id="_WzxyMHALEemJ-foOn68QUw" name="DEFAULT_VALUE" value="BODY"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Association" xmi:id="_FVt_4HALEemJ-foOn68QUw" memberEnd="_FVvOAnALEemJ-foOn68QUw _FVwcIHALEemJ-foOn68QUw">
      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_FVvOAHALEemJ-foOn68QUw" source="org.eclipse.papyrus">
        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_FVvOAXALEemJ-foOn68QUw" key="nature" value="UML_Nature"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:Property" xmi:id="_FVwcIHALEemJ-foOn68QUw" name="row" type="_-Rcr4HAKEemJ-foOn68QUw" association="_FVt_4HALEemJ-foOn68QUw"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Enumeration" xmi:id="_H_dCQHALEemJ-foOn68QUw" name="CellLocation">
      <ownedComment xmi:type="uml:Comment" xmi:id="_eB1foHCgEemJ-foOn68QUw" annotatedElement="_H_dCQHALEemJ-foOn68QUw">
        <body>This enumeration allows to define the location of each cell.</body>
      </ownedComment>
      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_I2oh4HALEemJ-foOn68QUw" name="CORNER"/>
      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_JsUzwHALEemJ-foOn68QUw" name="COLUMN_HEADER"/>
      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_LQhKYHALEemJ-foOn68QUw" name="ROW_HEADER"/>
      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_NdPgoHALEemJ-foOn68QUw" name="BODY"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Class" xmi:id="_XyQMoHALEemJ-foOn68QUw" name="TextCell">
      <ownedAttribute xmi:type="uml:Property" xmi:id="_Y5VwgHALEemJ-foOn68QUw" name="text">
        <ownedComment xmi:type="uml:Comment" xmi:id="_imNCsHCgEemJ-foOn68QUw" annotatedElement="_Y5VwgHALEemJ-foOn68QUw">
          <body>The text owned by the cells.</body>
        </ownedComment>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
        <defaultValue xmi:type="uml:LiteralString" xmi:id="_5KR7gHC_EemO3N3fNOfMKQ" name="DEFAULT_VALUE" value=""/>
      </ownedAttribute>
      <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_cvcfYHALEemJ-foOn68QUw" client="_XyQMoHALEemJ-foOn68QUw" supplier="_EUUNQHALEemJ-foOn68QUw" contract="_EUUNQHALEemJ-foOn68QUw"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Association" xmi:id="_eFIf8HALEemJ-foOn68QUw" memberEnd="_eFJHAHALEemJ-foOn68QUw _eFJHA3ALEemJ-foOn68QUw">
      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_eFIf8XALEemJ-foOn68QUw" source="org.eclipse.papyrus">
        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_eFIf8nALEemJ-foOn68QUw" key="nature" value="UML_Nature"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:Property" xmi:id="_eFJHA3ALEemJ-foOn68QUw" name="abstracttable" type="_lYIB4HAKEemJ-foOn68QUw" association="_eFIf8HALEemJ-foOn68QUw"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Class" xmi:id="_L9zAQHsFEemo4rKYxRobdQ" name="AbstractList" isAbstract="true">
      <ownedComment xmi:type="uml:Comment" xmi:id="_597E4HsFEemo4rKYxRobdQ" annotatedElement="_L9zAQHsFEemo4rKYxRobdQ">
        <body>The abstract element to use to create a new List type</body>
      </ownedComment>
      <ownedAttribute xmi:type="uml:Property" xmi:id="_R3n6YHsFEemo4rKYxRobdQ" name="items" type="_PugRwHsFEemo4rKYxRobdQ" isOrdered="true" aggregation="composite" association="_R3k3EHsFEemo4rKYxRobdQ">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_TSVk4HsFEemo4rKYxRobdQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_TMYG0HsFEemo4rKYxRobdQ" value="*"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Interface" xmi:id="_PugRwHsFEemo4rKYxRobdQ" name="ListItem">
      <ownedComment xmi:type="uml:Comment" xmi:id="_986qAHsFEemo4rKYxRobdQ" annotatedElement="_PugRwHsFEemo4rKYxRobdQ">
        <body>Interface to use to create new kind of ListItem</body>
      </ownedComment>
      <ownedAttribute xmi:type="uml:Property" xmi:id="_5GSEcXvEEemmnMs_VyNz8A" name="subItems" type="_PugRwHsFEemo4rKYxRobdQ" isOrdered="true" aggregation="composite" association="_5GOaEHvEEemmnMs_VyNz8A">
        <ownedComment xmi:type="uml:Comment" xmi:id="_R0fjQHvIEemmnMs_VyNz8A" annotatedElement="_5GSEcXvEEemmnMs_VyNz8A">
          <body>This property allows us to make items with children called subItems.</body>
        </ownedComment>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_8NDBEHvEEemmnMs_VyNz8A"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_5GSrgHvEEemmnMs_VyNz8A" value="*"/>
      </ownedAttribute>
      <ownedOperation xmi:type="uml:Operation" xmi:id="_VueQIHsFEemo4rKYxRobdQ" name="getLevel">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_FfywIHsHEemo4rKYxRobdQ" source="http://www.eclipse.org/emf/2002/GenModel">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_FfywIXsHEemo4rKYxRobdQ" key="body" value="int level = 1;&#xA;org.eclipse.emf.ecore.EObject eContainer = eContainer();&#xA;while (eContainer != null &amp;&amp; eContainer instanceof org.eclipse.papyrus.model2doc.core.builtintypes.ListItem) {&#xA;&#x9;level++;&#xA;&#x9;eContainer = eContainer.eContainer();&#xA;}&#xA;return level;"/>
        </eAnnotations>
        <ownedComment xmi:type="uml:Comment" xmi:id="_zObRkHsGEemo4rKYxRobdQ" annotatedElement="_VueQIHsFEemo4rKYxRobdQ">
          <body>This operation returns the level of the ListItem. Default value is 1;</body>
        </ownedComment>
        <ownedParameter xmi:type="uml:Parameter" xmi:id="_a_EAAHsFEemo4rKYxRobdQ" name="return" direction="return">
          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
          <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_21I5kHsGEemo4rKYxRobdQ" name="DEFAULT_LEVEL_VALUE" value="1"/>
        </ownedParameter>
      </ownedOperation>
    </packagedElement>
    <packagedElement xmi:type="uml:Association" xmi:id="_R3k3EHsFEemo4rKYxRobdQ" memberEnd="_R3n6YHsFEemo4rKYxRobdQ _R3ohcXsFEemo4rKYxRobdQ">
      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_R3msQHsFEemo4rKYxRobdQ" source="org.eclipse.papyrus">
        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_R3msQXsFEemo4rKYxRobdQ" key="nature" value="UML_Nature"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:Property" xmi:id="_R3ohcXsFEemo4rKYxRobdQ" name="abstractlist" type="_L9zAQHsFEemo4rKYxRobdQ" association="_R3k3EHsFEemo4rKYxRobdQ"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Class" xmi:id="_d6G00HsFEemo4rKYxRobdQ" name="TextListItem">
      <ownedComment xmi:type="uml:Comment" xmi:id="_Cub4QHsGEemo4rKYxRobdQ" annotatedElement="_d6G00HsFEemo4rKYxRobdQ">
        <body>Default implementation for ListItem. This one allows to defines Text for the Item</body>
      </ownedComment>
      <ownedAttribute xmi:type="uml:Property" xmi:id="_rUG70HsFEemo4rKYxRobdQ" name="text">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
        <defaultValue xmi:type="uml:LiteralString" xmi:id="_zIyZEHsFEemo4rKYxRobdQ" name="emptyString" value=""/>
      </ownedAttribute>
      <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_opH8QHsFEemo4rKYxRobdQ" client="_d6G00HsFEemo4rKYxRobdQ" supplier="_PugRwHsFEemo4rKYxRobdQ" contract="_PugRwHsFEemo4rKYxRobdQ"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Class" xmi:id="_iB5woHsFEemo4rKYxRobdQ" name="BasicList">
      <ownedComment xmi:type="uml:Comment" xmi:id="_7z9ZcHsFEemo4rKYxRobdQ" annotatedElement="_iB5woHsFEemo4rKYxRobdQ">
        <body>The default implementation for List</body>
      </ownedComment>
      <generalization xmi:type="uml:Generalization" xmi:id="_l4mVYHsFEemo4rKYxRobdQ" general="_L9zAQHsFEemo4rKYxRobdQ"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Association" xmi:id="_5GOaEHvEEemmnMs_VyNz8A" memberEnd="_5GSEcXvEEemmnMs_VyNz8A _5GSrgXvEEemmnMs_VyNz8A">
      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5GRdYHvEEemmnMs_VyNz8A" source="org.eclipse.papyrus">
        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5GSEcHvEEemmnMs_VyNz8A" key="nature" value="UML_Nature"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:Property" xmi:id="_5GSrgXvEEemmnMs_VyNz8A" name="listitem" type="_PugRwHsFEemo4rKYxRobdQ" association="_5GOaEHvEEemmnMs_VyNz8A"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Interface" xmi:id="_o1CCUJQUEemHKPZQudxUGA" name="IFileReference">
      <ownedOperation xmi:type="uml:Operation" xmi:id="_6HWesJQUEemHKPZQudxUGA" name="getFilePath">
        <ownedComment xmi:type="uml:Comment" xmi:id="_ddP1QJQVEemHKPZQudxUGA" annotatedElement="_6HWesJQUEemHKPZQudxUGA">
          <body>Return the path of the referenced file. The path can be a platform:/resource, a platform:/plugin, a path in the current project or a system path (ex: c:\MyDocuments).</body>
        </ownedComment>
        <ownedParameter xmi:type="uml:Parameter" xmi:id="_-zjIEJQUEemHKPZQudxUGA" name="return" direction="return">
          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
        </ownedParameter>
      </ownedOperation>
    </packagedElement>
    <packagedElement xmi:type="uml:Class" xmi:id="_tL-NYJQUEemHKPZQudxUGA" name="DefaultFileReference">
      <ownedComment xmi:type="uml:Comment" xmi:id="_pzARAJQVEemHKPZQudxUGA" annotatedElement="_tL-NYJQUEemHKPZQudxUGA">
        <body>Default implementation of IFileReference.</body>
      </ownedComment>
      <ownedAttribute xmi:type="uml:Property" xmi:id="_B56cEJQVEemHKPZQudxUGA" name="filePath">
        <ownedComment xmi:type="uml:Comment" xmi:id="_kNey8JQVEemHKPZQudxUGA" annotatedElement="_B56cEJQVEemHKPZQudxUGA">
          <body>This element allow to reference a file (.txt, odt, ... ). Return the path of the referenced file. The path can be a platform:/resource, a platform:/plugin, a path in the current project or a system path (ex: c:\MyDocuments).</body>
        </ownedComment>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedAttribute>
      <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_AK-1EJQVEemHKPZQudxUGA" client="_tL-NYJQUEemHKPZQudxUGA" supplier="_o1CCUJQUEemHKPZQudxUGA" contract="_o1CCUJQUEemHKPZQudxUGA"/>
    </packagedElement>
    <packagedElement xmi:type="uml:Enumeration" xmi:id="_I9QFkBn9EeunG-PlCrg2Pg" name="ImageFormat">
      <ownedComment xmi:type="uml:Comment" xmi:id="_sHK6kB9sEeufppQNI_9Idw" annotatedElement="_I9QFkBn9EeunG-PlCrg2Pg">
        <body>This enumeration provide the list of format for images</body>
      </ownedComment>
      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_qjV3oB28EeuC_v9WQLDVcQ" name="SVG"/>
      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_rzcNkB28EeuC_v9WQLDVcQ" name="PNG"/>
    </packagedElement>
    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_txSQgHCfEemJ-foOn68QUw">
      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_txVT0HCfEemJ-foOn68QUw" source="http://www.eclipse.org/uml2/2.0.0/UML">
        <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA"/>
      </eAnnotations>
      <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
    </profileApplication>
  </uml:Model>
  <Ecore:EPackage xmi:id="_u3RBIHCfEemJ-foOn68QUw" base_Package="_WW0l4HAKEemJ-foOn68QUw" packageName="builtintypes" nsPrefix="builtintypes" basePackage="org.eclipse.papyrus.model2doc.core" prefix="BuiltInTypes"/>
</xmi:XMI>
