hbmapkeys
Book
title
writersByName
cityByWriter
City
name
cityWriter
StringToWriterMapEntry
java.util.Map$Entry
java.util.Map$Entry
key
value
Writer
name
WriterToCityMapEntry
java.util.Map$Entry
java.util.Map$Entry
key
value
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0"
    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="hbmapkeys"
    nsURI="http://www.eclipse.org/emf/teneo/samples/emf/annotations/hbmapkeys" nsPrefix="hbmapkeys">
  <eClassifiers xsi:type="ecore:EClass" name="Book">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="name" value="Book"/>
      <details key="kind" value="elementOnly"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="element"/>
        <details key="name" value="title"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="writersByName" upperBound="-1"
        eType="#//StringToWriterMapEntry" containment="true" resolveProxies="false">
      <eAnnotations source="teneo.jpa">
        <details key="appinfo" value="&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;@HbMapKey(columns=@Column(name=&quot;THENAMEOFTHEWRITER&quot;))&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;@JoinColumn(name=&quot;JOIN_COLUMN_WRITER&quot;)&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;"/>
      </eAnnotations>
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="element"/>
        <details key="name" value="writersByName"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="cityByWriter" upperBound="-1"
        eType="#//WriterToCityMapEntry" containment="true" resolveProxies="false">
      <eAnnotations source="teneo.jpa">
        <details key="appinfo" value="&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;@MapKeyManyToMany(targetEntity=&quot;Writer&quot;, joinColumns=@JoinColumn(name=&quot;THE_CITYWRITER_ID&quot;))&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;@JoinColumn(name=&quot;JOIN_COLUMN_CITY&quot;)&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;"/>
      </eAnnotations>
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="element"/>
        <details key="name" value="cityByWriter"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="City">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="name" value="City"/>
      <details key="kind" value="elementOnly"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="element"/>
        <details key="name" value="name"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="cityWriter" lowerBound="1"
        eType="#//Writer" resolveProxies="false">
      <eAnnotations source="teneo.jpa">
        <details key="appinfo" value="&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;@JoinColumn(name=&quot;THE_CITYWRITER_ID&quot;)&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;"/>
      </eAnnotations>
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="element"/>
        <details key="name" value="cityWriter"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="StringToWriterMapEntry" instanceClassName="java.util.Map$Entry">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="name" value="StringToWriterMapEntry"/>
      <details key="kind" value="empty"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="attribute"/>
        <details key="name" value="key"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//Writer"
        resolveProxies="false">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="attribute"/>
        <details key="name" value="value"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Writer">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="name" value="Writer"/>
      <details key="kind" value="elementOnly"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
      <eAnnotations source="teneo.jpa">
        <details key="appinfo" value="&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;@Column(name=&quot;THENAMEOFTHEWRITER&quot;)&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;"/>
      </eAnnotations>
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="element"/>
        <details key="name" value="name"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="WriterToCityMapEntry" instanceClassName="java.util.Map$Entry">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="name" value="WriterToCityMapEntry"/>
      <details key="kind" value="empty"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="key" eType="#//Writer"
        resolveProxies="false">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="attribute"/>
        <details key="name" value="key"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//City"
        resolveProxies="false">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="attribute"/>
        <details key="name" value="value"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
</ecore:EPackage>

{"directed":true,"nodes":[{"nsPrefix":"hbmapkeys","nsURI":"http://www.eclipse.org/emf/teneo/samples/emf/annotations/hbmapkeys","name":"hbmapkeys","id":0,"eClass":"EPackage"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Book","instanceClass":null,"abstract":false,"id":1,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"City","instanceClass":null,"abstract":false,"id":2,"interface":false,"eClass":"EClass"},{"instanceTypeName":"java.util.Map$Entry","defaultValue":null,"instanceClassName":"java.util.Map$Entry","name":"StringToWriterMapEntry","instanceClass":"java.util.Map$Entry","abstract":false,"id":3,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Writer","instanceClass":null,"abstract":false,"id":4,"interface":false,"eClass":"EClass"},{"instanceTypeName":"java.util.Map$Entry","defaultValue":null,"instanceClassName":"java.util.Map$Entry","name":"WriterToCityMapEntry","instanceClass":"java.util.Map$Entry","abstract":false,"id":5,"interface":false,"eClass":"EClass"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"title","changeable":true,"lowerBound":1,"iD":false,"id":6,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"writersByName","changeable":true,"resolveProxies":false,"lowerBound":0,"id":7,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"cityByWriter","changeable":true,"resolveProxies":false,"lowerBound":0,"id":8,"derived":false},{"id":9,"eClass":"EGenericType"},{"id":10,"eClass":"EGenericType"},{"id":11,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"name","changeable":true,"lowerBound":1,"iD":false,"id":12,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"cityWriter","changeable":true,"resolveProxies":false,"lowerBound":1,"id":13,"derived":false},{"id":14,"eClass":"EGenericType"},{"id":15,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"key","changeable":true,"lowerBound":0,"iD":false,"id":16,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"value","changeable":true,"resolveProxies":false,"lowerBound":0,"id":17,"derived":false},{"id":18,"eClass":"EGenericType"},{"id":19,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"name","changeable":true,"lowerBound":1,"iD":false,"id":20,"derived":false},{"id":21,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"key","changeable":true,"resolveProxies":false,"lowerBound":0,"id":22,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"value","changeable":true,"resolveProxies":false,"lowerBound":0,"id":23,"derived":false},{"id":24,"eClass":"EGenericType"},{"id":25,"eClass":"EGenericType"}],"links":[{"source":0,"target":1},{"source":0,"target":2},{"source":0,"target":3},{"source":0,"target":4},{"source":0,"target":5},{"source":1,"target":0},{"source":1,"target":6},{"source":1,"target":7},{"source":1,"target":8},{"source":6,"target":9},{"source":6,"target":1},{"source":7,"target":3},{"source":7,"target":10},{"source":7,"target":1},{"source":10,"target":3},{"source":8,"target":5},{"source":8,"target":11},{"source":8,"target":1},{"source":11,"target":5},{"source":2,"target":0},{"source":2,"target":12},{"source":2,"target":13},{"source":12,"target":14},{"source":12,"target":2},{"source":13,"target":4},{"source":13,"target":15},{"source":13,"target":2},{"source":15,"target":4},{"source":3,"target":0},{"source":3,"target":16},{"source":3,"target":17},{"source":16,"target":18},{"source":16,"target":3},{"source":17,"target":4},{"source":17,"target":19},{"source":17,"target":3},{"source":19,"target":4},{"source":4,"target":0},{"source":4,"target":20},{"source":20,"target":21},{"source":20,"target":4},{"source":5,"target":0},{"source":5,"target":22},{"source":5,"target":23},{"source":22,"target":4},{"source":22,"target":24},{"source":22,"target":5},{"source":24,"target":4},{"source":23,"target":2},{"source":23,"target":25},{"source":23,"target":5},{"source":25,"target":2}],"multigraph":true}