| <?xml version="1.0" encoding="UTF-8"?> |
| <gmfmap:Mapping 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" |
| xmlns:gmfmap="http://www.eclipse.org/gmf/2008/mappings" |
| xmlns:gmftool="http://www.eclipse.org/gmf/2005/ToolDefinition"> |
| <nodes> |
| <containmentFeature |
| href="library.ecore#//Library/writers"/> |
| <ownedChild> |
| <domainMetaElement |
| href="library.ecore#//Writer"/> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#NamedNode_Name"/> |
| <features |
| href="library.ecore#//Writer/name"/> |
| </labelMappings> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.1/@tools.1"/> |
| <diagramNode |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#NamedNode"/> |
| <children |
| compartment="//@nodes.0/@ownedChild/@compartments.0"> |
| <containmentFeature |
| href="library.ecore#//Writer/brochures"/> |
| <childrenFeature |
| href="library.ecore#//Writer/brochures"/> |
| <ownedChild> |
| <domainMetaElement |
| href="library.ecore#//Book"/> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping" |
| viewPattern="{0}" |
| editPattern="{0}"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| <features |
| href="library.ecore#//Book/title"/> |
| </labelMappings> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.1/@tools.0"/> |
| <diagramNode |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| </ownedChild> |
| </children> |
| <compartments |
| children="//@nodes.0/@ownedChild/@children.0"> |
| <compartment |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Compartment"/> |
| </compartments> |
| </ownedChild> |
| </nodes> |
| <nodes> |
| <containmentFeature |
| href="library.ecore#//Library/books"/> |
| <ownedChild> |
| <domainMetaElement |
| href="library.ecore#//Book"/> |
| <domainSpecialization |
| body="pages <= 150"/> |
| <domainInitializer |
| xsi:type="gmfmap:FeatureSeqInitializer"> |
| <initializers |
| xsi:type="gmfmap:FeatureValueSpec"> |
| <feature |
| xsi:type="ecore:EAttribute" |
| href="library.ecore#//Book/pages"/> |
| <value |
| body="100"/> |
| </initializers> |
| </domainInitializer> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#NamedNode_Name"/> |
| <features |
| href="library.ecore#//Book/title"/> |
| </labelMappings> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping" |
| viewPattern="{0} pages" |
| editPattern="{0}"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#LabelWOIcon"/> |
| <features |
| href="library.ecore#//Book/pages"/> |
| </labelMappings> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.1/@tools.0"/> |
| <diagramNode |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#NamedNode"/> |
| <children |
| compartment="//@nodes.1/@ownedChild/@compartments.0"> |
| <containmentFeature |
| href="library.ecore#//Book/reviews"/> |
| <ownedChild> |
| <domainMetaElement |
| href="library.ecore#//Review"/> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| <features |
| href="library.ecore#//Review/title"/> |
| </labelMappings> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.1/@tools.2/@tools.1"/> |
| <diagramNode |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| </ownedChild> |
| </children> |
| <children> |
| <containmentFeature |
| href="library.ecore#//Book/chapters"/> |
| <ownedChild> |
| <domainMetaElement |
| href="library.ecore#//Chapter"/> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping" |
| viewPattern="Chapter: {0}" |
| editPattern="{0}"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| <features |
| href="library.ecore#//Chapter/name"/> |
| </labelMappings> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.1/@tools.2/@tools.0"/> |
| <diagramNode |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| </ownedChild> |
| </children> |
| <compartments |
| children="//@nodes.1/@ownedChild/@children.0"> |
| <compartment |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Compartment"/> |
| </compartments> |
| </ownedChild> |
| </nodes> |
| <nodes> |
| <containmentFeature |
| href="library.ecore#//Library/books"/> |
| <ownedChild> |
| <domainMetaElement |
| href="library.ecore#//Book"/> |
| <domainSpecialization |
| body="pages > 150"/> |
| <domainInitializer |
| xsi:type="gmfmap:FeatureSeqInitializer"> |
| <initializers |
| xsi:type="gmfmap:FeatureValueSpec"> |
| <feature |
| xsi:type="ecore:EAttribute" |
| href="library.ecore#//Book/pages"/> |
| <value |
| body="200"/> |
| </initializers> |
| </domainInitializer> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#NamedNode_Name"/> |
| <features |
| href="library.ecore#//Book/title"/> |
| </labelMappings> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping" |
| viewPattern="{0} pages" |
| editPattern="{0}"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#LabelWOIcon"/> |
| <features |
| href="library.ecore#//Book/pages"/> |
| </labelMappings> |
| <diagramNode |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#NamedNode"/> |
| <children |
| compartment="//@nodes.2/@ownedChild/@compartments.0"> |
| <containmentFeature |
| href="library.ecore#//Book/reviews"/> |
| <ownedChild> |
| <domainMetaElement |
| href="library.ecore#//Review"/> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| <features |
| href="library.ecore#//Review/title"/> |
| </labelMappings> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.1/@tools.2/@tools.1"/> |
| <diagramNode |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| </ownedChild> |
| </children> |
| <children> |
| <containmentFeature |
| href="library.ecore#//Book/chapters"/> |
| <ownedChild> |
| <domainMetaElement |
| href="library.ecore#//Chapter"/> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping" |
| viewPattern="{0}" |
| editPattern="{0}"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| <features |
| href="library.ecore#//Chapter/name"/> |
| </labelMappings> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.1/@tools.2/@tools.0"/> |
| <diagramNode |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| </ownedChild> |
| </children> |
| <compartments |
| children="//@nodes.2/@ownedChild/@children.0"> |
| <compartment |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Compartment"/> |
| </compartments> |
| </ownedChild> |
| </nodes> |
| <nodes> |
| <containmentFeature |
| href="library.ecore#//Library/communities"/> |
| <ownedChild> |
| <domainMetaElement |
| href="library.ecore#//Community"/> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping" |
| viewPattern="{0}" |
| editorPattern="{0}" |
| editPattern="{0}"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#NamedNode_Name"/> |
| <features |
| href="library.ecore#//Community/name"/> |
| </labelMappings> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.3/@tools.0"/> |
| <diagramNode |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#NamedNode"/> |
| <children> |
| <containmentFeature |
| href="library.ecore#//Community/roles"/> |
| <ownedChild> |
| <domainMetaElement |
| href="library.ecore#//CommunityRole"/> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping" |
| viewPattern="{0}" |
| editorPattern="{0}" |
| editPattern="{0}"> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#LabelWOIcon"/> |
| <features |
| href="library.ecore#//CommunityRole/role"/> |
| </labelMappings> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.3/@tools.1"/> |
| <diagramNode |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#LabelWOIcon"/> |
| </ownedChild> |
| </children> |
| </ownedChild> |
| </nodes> |
| <links> |
| <domainMetaElement |
| href="library.ecore#//Opinion"/> |
| <domainSpecialization |
| body="book.pages <= 250"/> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping" |
| editPattern=""> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| <features |
| href="library.ecore#//Opinion/text"/> |
| </labelMappings> |
| <containmentFeature |
| href="library.ecore#//Writer/opinions"/> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.2/@tools.0"/> |
| <diagramLink |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Link"/> |
| <linkMetaFeature |
| xsi:type="ecore:EReference" |
| href="library.ecore#//Opinion/book"/> |
| <creationConstraints> |
| <targetEnd |
| body="pages <= 250"/> |
| </creationConstraints> |
| </links> |
| <links> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.2/@tools.1"/> |
| <diagramLink |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Link"/> |
| <linkMetaFeature |
| xsi:type="ecore:EReference" |
| href="library.ecore#//Book/author"/> |
| </links> |
| <links> |
| <domainMetaElement |
| href="library.ecore#//Opinion"/> |
| <domainSpecialization |
| body="book.pages > 250"/> |
| <labelMappings |
| xsi:type="gmfmap:FeatureLabelMapping" |
| editPattern=""> |
| <diagramLabel |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Label"/> |
| <features |
| href="library.ecore#//Opinion/text"/> |
| </labelMappings> |
| <containmentFeature |
| href="library.ecore#//Writer/opinions"/> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.2/@tools.0"/> |
| <diagramLink |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Link"/> |
| <linkMetaFeature |
| xsi:type="ecore:EReference" |
| href="library.ecore#//Opinion/book"/> |
| <creationConstraints> |
| <targetEnd |
| body="pages > 250"/> |
| </creationConstraints> |
| </links> |
| <links> |
| <tool |
| xsi:type="gmftool:CreationTool" |
| href="library_constrained.gmftool#//@palette/@tools.3/@tools.2"/> |
| <diagramLink |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Link"/> |
| <linkMetaFeature |
| xsi:type="ecore:EReference" |
| href="library.ecore#//Writer/participates"/> |
| </links> |
| <diagram> |
| <diagramCanvas |
| href="../../../../plugin/org.eclipse.gmf.graphdef/models/basic.gmfgraph#Surface"/> |
| <domainModel |
| href="library.ecore#/"/> |
| <domainMetaElement |
| href="library.ecore#//Library"/> |
| <palette |
| href="library_constrained.gmftool#//@palette"/> |
| </diagram> |
| <audits |
| id="lib" |
| name="Lib Audits" |
| description="Lib audits"> |
| <audits |
| name="author_book_not_empty" |
| description="Rule1" |
| id="rule1" |
| severity="WARNING" |
| message="Author should have written something, lest he is not an author"> |
| <rule |
| body="books->notEmpty() or brochures->notEmpty()"/> |
| <target |
| xsi:type="gmfmap:DomainElementTarget"> |
| <element |
| href="library.ecore#//Writer"/> |
| </target> |
| </audits> |
| <audits |
| description="Rule2" |
| id="rule2" |
| message=""> |
| <rule |
| body="self < 100"/> |
| <target |
| xsi:type="gmfmap:AuditedMetricTarget" |
| metric="//@metrics/@metrics.1"/> |
| </audits> |
| </audits> |
| <metrics> |
| <metrics |
| name="TotalPages" |
| description="Total pages" |
| key="totalPages" |
| lowLimit="1.0" |
| highLimit="1000.0"> |
| <rule |
| body="books.pages->sum()"/> |
| <target |
| xsi:type="gmfmap:DomainElementTarget"> |
| <element |
| href="library.ecore#//Writer"/> |
| </target> |
| </metrics> |
| <metrics |
| name="TotalBrochurePages" |
| description="Total brochure pages" |
| key="totalBrochurePages" |
| lowLimit="1.0" |
| highLimit="100.0"> |
| <rule |
| body="brochures.pages->sum()"/> |
| <target |
| xsi:type="gmfmap:DomainElementTarget"> |
| <element |
| href="library.ecore#//Writer"/> |
| </target> |
| </metrics> |
| </metrics> |
| </gmfmap:Mapping> |