activefacts-metamodel 1.8.3 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 191d182dcc1294a8a95c45837cb280eb7c5f6aa5
4
- data.tar.gz: dc363ab895323a22cdecc5f6e475a5ca5e833346
3
+ metadata.gz: afb3d3c2e330c364478dbfa0f3add48f91977a18
4
+ data.tar.gz: cae27ec48c4f46e2a0827bbddc20cc1560c997e9
5
5
  SHA512:
6
- metadata.gz: 620e4357c3c17757a3e62267350aaa7d8270176dd07ef32ef1a618ab9cbbf35c82f1ad251fc133e1e848351bf88ed44a608ff47fe351d522fe2f8645d9939246
7
- data.tar.gz: 3f2721be2e27a9ec39b00054c83176add5122f18814b9ef5c6a6c29d00288ba80298043a90b60506bb847c111d45c9db58b474685aa8570e199bc95abfaa69dc
6
+ metadata.gz: 4a4db7310d00e7fea438ab2edbfa536d5ff994ae736ef491ee58173a5affda389e28a0cad2a7ddfad81d4cd175df1c9078df7a35d01286bb02dbe80086764893
7
+ data.tar.gz: 79de78dfc8c6f0ec08c14a7a23940dc5dbc22e422b21614255472bae3449d49411c1d67c14b19cd0c161afc0bae72148c48d12abba990eb081dfbcd827ca1fee
@@ -24,6 +24,6 @@ This gem provides the core representations for the Fact Modeling tools of Active
24
24
  spec.add_development_dependency "rake", "~> 10.0"
25
25
  spec.add_development_dependency "rspec", "~> 3.3"
26
26
 
27
- spec.add_runtime_dependency "activefacts-api", ">= 1.8", "~> 1.8.5"
27
+ spec.add_runtime_dependency "activefacts-api", ">= 1.9", "~> 1.9.0"
28
28
  spec.add_development_dependency "activefacts", "~> 1.8", "~> 1.8.0"
29
29
  end
Binary file
@@ -4,6 +4,8 @@
4
4
  #
5
5
  # Copyright (c) 2009 Clifford Heath. Read the LICENSE file.
6
6
  #
7
+ require 'activefacts/support'
8
+
7
9
  module ActiveFacts
8
10
  module Metamodel
9
11
  class Vocabulary
@@ -222,6 +224,10 @@ module ActiveFacts
222
224
  end
223
225
  end
224
226
 
227
+ def is_unary
228
+ all_role.size == 1
229
+ end
230
+
225
231
  def internal_presence_constraints
226
232
  all_role.map do |r|
227
233
  r.all_role_ref.map do |rr|
@@ -314,9 +320,89 @@ module ActiveFacts
314
320
  end
315
321
 
316
322
  def name
317
- role_name || object_type.name
323
+ role_name or
324
+ is_mirror_role && base_role.role_name or
325
+ fact_type.is_unary && unary_name or
326
+ String::Words.new(preferred_reference.role_name nil).capwords*' ' or
327
+ object_type.name
328
+ end
329
+
330
+ def unary_name
331
+ fact_type.preferred_reading.text.gsub(/\{[0-9]\}/,'').words.titlewords*' '
332
+ end
333
+
334
+ def is_link_role
335
+ fact_type.is_a?(LinkFactType)
336
+ end
337
+
338
+ def is_mirror_role
339
+ is_a?(MirrorRole)
340
+ end
341
+
342
+ def is_objectification_role
343
+ is_link_role && !is_mirror_role
318
344
  end
319
345
 
346
+ def counterpart
347
+ case fact_type.all_role.size
348
+ when 1
349
+ self
350
+ when 2
351
+ (fact_type.all_role.to_a-[self])[0]
352
+ else
353
+ raise "counterpart roles are undefined in n-ary fact types"
354
+ end
355
+ end
356
+
357
+ def role_type
358
+ raise "Incorrectly implemented"
359
+ if fact_type.is_a?(ActiveFacts::Metamodel::TypeInheritance)
360
+ return object_type == fact_type.supertype ? :supertype : :subtype
361
+ end
362
+
363
+ if fact_type.is_a?(ActiveFacts::Metamodel::LinkFactType)
364
+ # Prevent an unnecessary from-1 search:
365
+ from_1 = true
366
+ # Change the to_1 search to detect a one-to-one:
367
+ return fact_type.implying_role.role_type
368
+ elsif fact_type.all_role.size == 1
369
+ return :unary
370
+ end
371
+
372
+ # List the UCs on this fact type:
373
+ all_uniqueness_constraints =
374
+ fact_type.all_role.map do |fact_role|
375
+ fact_role.all_role_ref.map do |rr|
376
+ rr.role_sequence.all_presence_constraint.select do |pc|
377
+ pc.max_frequency == 1
378
+ end
379
+ end
380
+ end.flatten.uniq
381
+
382
+ # It's to-1 if a UC exists over exactly this role:
383
+ to_1 =
384
+ all_uniqueness_constraints.
385
+ detect do |c|
386
+ (rr = c.role_sequence.all_role_ref.single) and
387
+ rr.role == role
388
+ end
389
+
390
+ if from_1 || fact_type.entity_type
391
+ # This is a role in an objectified fact type
392
+ from_1 = true
393
+ else
394
+ # It's from-1 if a UC exists over roles of this FT that doesn't cover this role:
395
+ from_1 = all_uniqueness_constraints.detect{|uc|
396
+ !uc.role_sequence.all_role_ref.detect{|rr| rr.role == role || rr.role.fact_type != fact_type}
397
+ }
398
+ end
399
+
400
+ if from_1
401
+ return to_1 ? :one_one : :one_many
402
+ else
403
+ return to_1 ? :many_one : :many_many
404
+ end
405
+ end
320
406
  end
321
407
 
322
408
  class RoleRef
@@ -429,6 +515,16 @@ module ActiveFacts
429
515
  return other if supertypes_transitive.include(other)
430
516
  nil
431
517
  end
518
+
519
+ # Is this ValueType auto-assigned either at assert or on first save to the database?
520
+ def is_auto_assigned
521
+ type = self
522
+ while type
523
+ return true if type.name =~ /^Auto/ || type.transaction_phase
524
+ type = type.supertype
525
+ end
526
+ false
527
+ end
432
528
  end
433
529
 
434
530
  class EntityType
@@ -445,6 +541,10 @@ module ActiveFacts
445
541
  end
446
542
  end
447
543
 
544
+ def is_separate
545
+ super || !['absorbed', nil].include?(assimilation)
546
+ end
547
+
448
548
  def preferred_identifier
449
549
  return @preferred_identifier if @preferred_identifier
450
550
  if fact_type
@@ -600,8 +700,12 @@ module ActiveFacts
600
700
  end
601
701
  end
602
702
 
703
+ def preferred_identifier_roles
704
+ preferred_identifier.role_sequence.all_role_ref_in_order.map(&:role)
705
+ end
706
+
603
707
  def rank_in_preferred_identifier(role)
604
- preferred_identifier.role_sequence.all_role_ref_in_order.map(&:role).index(role)
708
+ preferred_identifier_roles.index(role)
605
709
  end
606
710
 
607
711
  # An array of all direct subtypes:
@@ -1139,7 +1243,7 @@ module ActiveFacts
1139
1243
  raise "A MirrorRole should not be asked for its uniqueness constraints"
1140
1244
  end
1141
1245
 
1142
- %w{all_ring_constraint_as_other_role all_ring_constraint all_role_value role_value_constraint mirror_role_as_base_role
1246
+ %w{all_ring_constraint_as_other_role all_ring_constraint all_role_value role_value_constraint
1143
1247
  }.each do |accessor|
1144
1248
  define_method(accessor.to_sym) do
1145
1249
  base_role.send(accessor.to_sym)
@@ -1347,32 +1451,60 @@ module ActiveFacts
1347
1451
  end
1348
1452
  end
1349
1453
 
1454
+ class Composition
1455
+ def all_composite_by_name
1456
+ all_composite.keys.sort_by do |key|
1457
+ @constellation.Composite[key].mapping.name
1458
+ end.map do |key|
1459
+ composite = @constellation.Composite[key]
1460
+ yield composite if block_given?
1461
+ composite
1462
+ end
1463
+ end
1464
+ end
1465
+
1350
1466
  class Mapping
1351
1467
  def inspect
1352
- "#{self.class.basename} (#{rank_kind}) of #{object_type.name}"
1468
+ "#{self.class.basename} (#{rank_kind})#{parent ? " in #{parent.name}" :''} of #{name && name != '' ? name : '<anonymous>'}"
1353
1469
  end
1354
1470
 
1355
1471
  def show_trace
1356
- trace :composition, "#{ordinal ? "#{ordinal}: " : ''}#{inspect} #{name ? " (as #{name})" : ''}" do
1472
+ trace :composition, "#{ordinal ? "#{ordinal}: " : ''}#{inspect}" do
1357
1473
  yield if block_given?
1358
1474
  all_member.sort_by{|member| [member.ordinal, member.name]}.each do |member|
1359
1475
  member.show_trace
1360
1476
  end
1361
1477
  end
1362
1478
  end
1479
+
1480
+ # Recompute a contiguous member ranking fron zero, based on current membership:
1481
+ def re_rank
1482
+ next_rank = 0
1483
+ all_member.
1484
+ sort_by(&:rank_key).
1485
+ each do |member|
1486
+ member.ordinal = next_rank
1487
+ next_rank += 1
1488
+ end
1489
+ end
1490
+
1363
1491
  end
1364
1492
 
1365
1493
  class Nesting
1366
1494
  def show_trace
1367
1495
  # The index role has a counterpart played by the parent object in the enclosing Absorption
1368
1496
  reading = index_role.fact_type.default_reading
1369
- trace :composition, "#{ordinal}: Nesting under #{index_role.object_type.name}#{key_name ? " (as #{key_name})" : ''} in #{reading.inspect}}"
1497
+ trace :composition, "#{ordinal}: Nesting under #{index_role.object_type.name}#{key_name ? " (as #{key_name.inspect})" : ''} in #{reading.inspect}}"
1370
1498
  end
1371
1499
  end
1372
1500
 
1373
1501
  class Absorption
1502
+ def inspect_reading
1503
+ parent_role.fact_type.reading_preferably_starting_with_role(parent_role).expand.inspect
1504
+ end
1505
+
1374
1506
  def inspect
1375
- "#{super} in #{parent_role.fact_type.reading_preferably_starting_with_role(parent_role).expand.inspect}"
1507
+ "#{super} in #{inspect_reading}#{absorption ? ' (forward)' : (reverse_absorption ? ' (reverse)' : '')}"
1376
1508
  end
1377
1509
 
1378
1510
  def show_trace
@@ -1396,6 +1528,71 @@ module ActiveFacts
1396
1528
  def is_subtype_absorption
1397
1529
  is_type_inheritance && parent_role.fact_type.supertype == object_type
1398
1530
  end
1531
+
1532
+ def is_preferred_direction
1533
+ return child_role.is_mirror_role if child_role.is_mirror_role != parent_role.is_mirror_role
1534
+
1535
+ # Prefer to absorb the one into the many:
1536
+ p_un = parent_role.is_unique
1537
+ c_un = child_role.is_unique
1538
+ return p_un if p_un != c_un
1539
+
1540
+ # Prefer to absorb a subtype into the supertype (opposite if separate or partitioned)
1541
+ if (ti = child_role.fact_type).is_a?(TypeInheritance)
1542
+ is_subtype = child_role == ti.subtype_role # Supertype absorbing subtype
1543
+ subtype = ti.subtype_role.object_type # Subtype doesn't want to be absorbed?
1544
+ # REVISIT: We need fewer ways to say this:
1545
+ child_separate = ["separate", "partitioned"].include?(ti.assimilation) ||
1546
+ subtype.is_independent ||
1547
+ subtype.concept.all_concept_annotation.detect{|ca| ca.mapping_annotation == 'separate'}
1548
+ return !is_subtype != !child_separate
1549
+ end
1550
+
1551
+ if p_un && c_un
1552
+ # Prefer to absorb a ValueType into an EntityType rather than the other way around:
1553
+ pvt = parent_role.object_type.is_a?(ActiveFacts::Metamodel::ValueType)
1554
+ cvt = child_role.object_type.is_a?(ActiveFacts::Metamodel::ValueType)
1555
+ return cvt if pvt != cvt
1556
+
1557
+ if !pvt
1558
+ # REVISIT: Force the decision if one EntityType identifies another
1559
+ end
1560
+
1561
+ # Primary absorption absorbs the object playing the mandatory role into the non-mandatory:
1562
+ return child_role.is_mandatory if !parent_role.is_mandatory != !child_role.is_mandatory
1563
+ end
1564
+
1565
+ if parent_role.object_type.is_a?(ActiveFacts::Metamodel::EntityType) &&
1566
+ child_role.object_type.is_a?(ActiveFacts::Metamodel::EntityType)
1567
+ # Prefer to absorb an identifying element into the EntityType it identifies
1568
+ return true if parent_role.object_type.preferred_identifier.
1569
+ role_sequence.all_role_ref.map(&:role).detect{|r|
1570
+ r.object_type == child_role.object_type
1571
+ }
1572
+ return false if child_role.object_type.preferred_identifier.
1573
+ role_sequence.all_role_ref.map(&:role).detect{|r|
1574
+ r.object_type == parent_role.object_type
1575
+ }
1576
+ end
1577
+
1578
+ # For stability, absorb a later-named role into an earlier-named one:
1579
+ return parent_role.name < child_role.name
1580
+ end
1581
+
1582
+ def flip!
1583
+ if (other = absorption)
1584
+ # We point at them - make them point at us instead
1585
+ self.absorption = nil
1586
+ self.reverse_absorption = other
1587
+ elsif (other = reverse_absorption)
1588
+ # They point at us - make us point at them instead
1589
+ self.reverse_absorption = nil
1590
+ self.absorption = other
1591
+ else
1592
+ raise "Absorption cannot be flipped as it has no reverse"
1593
+ end
1594
+ end
1595
+
1399
1596
  end
1400
1597
 
1401
1598
  class Indicator
@@ -1404,17 +1601,17 @@ module ActiveFacts
1404
1601
  end
1405
1602
 
1406
1603
  def show_trace
1407
- trace :composition, "#{ordinal ? "#{ordinal}: " : ''}#{inspect} #{name ? " (as #{name})" : ''}"
1604
+ trace :composition, "#{ordinal ? "#{ordinal}: " : ''}#{inspect} #{name ? "(as #{name.inspect})" : ''}"
1408
1605
  end
1409
1606
  end
1410
1607
 
1411
1608
  class Discriminator
1412
1609
  def inspect
1413
- "#{self.class.basename} #{role.fact_type.default_reading.inspect}"
1610
+ "#{self.class.basename} between #{all_discriminated_role.map{|dr|dr.fact_type.default_reading.inspect}*', '}"
1414
1611
  end
1415
1612
 
1416
1613
  def show_trace
1417
- trace :composition, "#{ordinal ? "#{ordinal}: " : ''}#{inspect} #{name ? " (as #{name})" : ''}"
1614
+ trace :composition, "#{ordinal ? "#{ordinal}: " : ''}#{inspect} #{name ? " (as #{name.inspect})" : ''}"
1418
1615
  end
1419
1616
  end
1420
1617
 
@@ -1424,7 +1621,7 @@ module ActiveFacts
1424
1621
  end
1425
1622
 
1426
1623
  def show_trace
1427
- trace :composition, "#{ordinal}: #{inspect} #{name ? " (as #{name})" : ''}"
1624
+ trace :composition, "#{ordinal}: #{inspect}#{name ? " (as #{name.inspect})" : ''}"
1428
1625
  end
1429
1626
  end
1430
1627
 
@@ -1445,72 +1642,75 @@ module ActiveFacts
1445
1642
  RANK_SCOPING = 11 # Scoping in alphabetical order
1446
1643
 
1447
1644
  def rank_key
1448
- parent_et = parent &&
1449
- parent.object_type.is_a?(EntityType) &&
1450
- parent.object_type
1451
-
1452
- case self
1453
- when Indicator
1454
- if parent_et && (position = parent_et.rank_in_preferred_identifier(role))
1455
- [RANK_IDENT, position] # An identifying unary
1456
- else
1457
- [RANK_INDICATOR, name || role.role_name || role.fact_type.default_reading] # A non-identifying unary
1458
- end
1459
-
1460
- when Discriminator
1461
- [RANK_DISCRIMINATOR, name || object_type.name]
1462
-
1463
- when ValueField
1464
- [RANK_IDENT]
1465
-
1466
- when Injection
1467
- [RANK_INJECTION, name || object_type.name] # REVISIT: A different sub-key for ranking may be needed
1468
-
1469
- when Absorption
1470
- if is_type_inheritance
1471
- # We are traversing a type inheritance fact type. Is this object_type the subtype or supertype?
1472
- if is_supertype_absorption
1473
- # What's the rank of this supertype?
1474
- tis = parent_role.object_type.all_type_inheritance_as_subtype.sort_by{|ti| ti.provides_identification ? '' : ti.supertype.name }
1475
- [RANK_SUPER, child_role.fact_type.provides_identification ? 0 : 1+tis.index(parent_role.fact_type)]
1645
+ @rank_key ||=
1646
+ case self
1647
+ when Indicator
1648
+ if (p = parent_entity_type) and (position = p.rank_in_preferred_identifier(role.base_role))
1649
+ [RANK_IDENT, position] # An identifying unary
1476
1650
  else
1477
- # What's the rank of this subtype?
1478
- tis = parent_role.object_type.all_type_inheritance_as_supertype.sort_by{|ti| ti.subtype.name }
1479
- [RANK_SUBTYPE, tis.index(parent_role.fact_type)]
1651
+ [RANK_INDICATOR, name || role.name] # A non-identifying unary
1480
1652
  end
1481
- elsif parent_et && (position = parent_et.rank_in_preferred_identifier(child_role))
1482
- [RANK_IDENT, position]
1483
- else
1484
- if parent_role.is_unique
1485
- [parent_role.is_mandatory ? RANK_MANDATORY : RANK_NON_MANDATORY, name || child_role.role_name || object_type.name]
1653
+
1654
+ when Discriminator
1655
+ [RANK_DISCRIMINATOR, name || child_role.name]
1656
+
1657
+ when ValueField
1658
+ [RANK_IDENT]
1659
+
1660
+ when Injection
1661
+ [RANK_INJECTION, name] # REVISIT: Injection not fully elaborated. A different sub-key for ranking may be needed
1662
+
1663
+ when Absorption
1664
+ if is_type_inheritance
1665
+ # We are traversing a type inheritance fact type. Is this object_type the subtype or supertype?
1666
+ if is_supertype_absorption
1667
+ # What's the rank of this supertype?
1668
+ tis = parent_role.object_type.all_type_inheritance_as_subtype.sort_by{|ti| ti.provides_identification ? '' : ti.supertype.name }
1669
+ [RANK_SUPER, child_role.fact_type.provides_identification ? 0 : 1+tis.index(parent_role.fact_type)]
1670
+ else
1671
+ # What's the rank of this subtype?
1672
+ tis = parent_role.object_type.all_type_inheritance_as_supertype.sort_by{|ti| ti.subtype.name }
1673
+ [RANK_SUBTYPE, tis.index(parent_role.fact_type)]
1674
+ end
1675
+ elsif (p = parent_entity_type) and (position = p.rank_in_preferred_identifier(child_role.base_role))
1676
+ [RANK_IDENT, position]
1486
1677
  else
1487
- [RANK_MULTIPLE, name || child_role.role_name || object_type.name]
1678
+ if parent_role.is_unique
1679
+ [parent_role.is_mandatory ? RANK_MANDATORY : RANK_NON_MANDATORY, name || child_role.name]
1680
+ else
1681
+ [RANK_MULTIPLE, name || child_role.name, parent_role.name]
1682
+ end
1488
1683
  end
1489
- end
1490
1684
 
1491
- when Scoping
1492
- [RANK_SCOPING, name || object_type.name]
1685
+ when Scoping
1686
+ [RANK_SCOPING, name || object_type.name]
1493
1687
 
1494
- else
1495
- raise "unexpected #{self.class.basename} in Component#rank_key"
1496
- end
1688
+ else
1689
+ raise "unexpected #{self.class.basename} in Component#rank_key"
1690
+ end
1691
+ end
1692
+
1693
+ def parent_entity_type
1694
+ parent &&
1695
+ parent.object_type.is_a?(EntityType) &&
1696
+ parent.object_type
1497
1697
  end
1498
1698
 
1499
1699
  def rank_kind
1500
- return "composite" if self.class == Mapping
1700
+ return "top" unless parent # E.g. a Mapping that is a Composite
1501
1701
  case rank_key[0]
1502
- when RANK_SUPER; "supertype"
1503
- when RANK_IDENT; "existential"
1504
- when RANK_VALUE; "self-value"
1505
- when RANK_INJECTION; "injection"
1506
- when RANK_DISCRIMINATOR; "discriminator"
1507
- when RANK_FOREIGN; "foreignkey"
1508
- when RANK_INDICATOR; "indicator"
1509
- when RANK_MANDATORY; "mandatory"
1510
- when RANK_NON_MANDATORY; "optional"
1511
- when RANK_MULTIPLE; "multiple"
1512
- when RANK_SUBTYPE; "subtype"
1513
- when RANK_SCOPING; "scoping"
1702
+ when RANK_SUPER; "supertype"
1703
+ when RANK_IDENT; "existential"
1704
+ when RANK_VALUE; "self-value"
1705
+ when RANK_INJECTION; "injection"
1706
+ when RANK_DISCRIMINATOR;"discriminator"
1707
+ when RANK_FOREIGN; "foreignkey"
1708
+ when RANK_INDICATOR; "indicator"
1709
+ when RANK_MANDATORY; "mandatory"
1710
+ when RANK_NON_MANDATORY;"optional"
1711
+ when RANK_MULTIPLE; "multiple"
1712
+ when RANK_SUBTYPE; "subtype"
1713
+ when RANK_SCOPING; "scoping"
1514
1714
  end
1515
1715
  end
1516
1716
 
@@ -1519,7 +1719,8 @@ module ActiveFacts
1519
1719
  end
1520
1720
 
1521
1721
  def show_trace
1522
- trace :composition, "#{ordinal ? "#{ordinal}: " : ''}#{inspect}#{name ? " (as #{name})" : ''}"
1722
+ raise "Implemented in subclasses"
1723
+ # trace :composition, "#{ordinal ? "#{ordinal}: " : ''}#{inspect}#{name ? " (as #{name.inspect})" : ''}"
1523
1724
  end
1524
1725
  end
1525
1726
  end
@@ -1,5 +1,5 @@
1
1
  module ActiveFacts
2
2
  module Metamodel
3
- VERSION = "1.8.3"
3
+ VERSION = "1.9.0"
4
4
  end
5
5
  end
@@ -1,3 +1,4 @@
1
1
  require 'activefacts/metamodel/version'
2
+ require_relative 'support'
2
3
  require_relative 'metamodel/metamodel'
3
4
  require_relative 'metamodel/extensions'
data/orm/Metamodel.orm CHANGED
@@ -14365,15 +14365,15 @@
14365
14365
  <orm:Role id="_55655C95-CEBB-4F43-A278-5C6396BBD04A" ref="_BE744A85-0CE7-4C53-A1D9-1C63B9A5E19D" />
14366
14366
  <orm:Role id="_F4C84715-891B-4420-BD45-E7CDC2E7C5E9" ref="_ADDCA92F-8C0E-4290-A293-292FECBCED9D" />
14367
14367
  <orm:JoinRule>
14368
- <orm:JoinPath id="_E5699ACC-C908-4EA9-97FA-DDC84C413773" IsAutomatic="true">
14368
+ <orm:JoinPath id="_E5699ACC-C908-4EA9-97FA-DDC84C413773">
14369
14369
  <orm:PathComponents>
14370
14370
  <orm:RolePath id="_23C7A5CE-D3D6-43CB-BD7D-513DA6241068">
14371
- <orm:RootObjectType id="_52FACDE1-D9CD-49AF-BB0B-E29DD4803659" ref="_C4DE2415-F2F5-42AD-906B-50039DAE1DDF" />
14371
+ <orm:RootObjectType id="_52FACDE1-D9CD-49AF-BB0B-E29DD4803659" ref="_43DF94C6-2C2C-4CC8-8A40-D69D0F43598B" />
14372
14372
  <orm:PathedRoles>
14373
- <orm:PathedRole id="_EF910EC3-345E-4BC2-BFEB-6BCB3F0AAE12" ref="_BE744A85-0CE7-4C53-A1D9-1C63B9A5E19D" Purpose="PostInnerJoin" />
14374
- <orm:PathedRole id="_E33400C7-8355-4E99-BFE4-7F8AB4F53AB4" ref="_30290A84-BB41-49A9-9FF6-DB3C7E73CA3F" Purpose="SameFactType" />
14375
- <orm:PathedRole id="_43FF170C-1CA8-4D56-AA72-E531142469B4" ref="_8BD226F9-F7EE-4CFB-881B-0C4EF4686D2F" Purpose="PostInnerJoin" />
14376
- <orm:PathedRole id="_D0128322-E900-4294-82BF-74FD2337AC67" ref="_ADDCA92F-8C0E-4290-A293-292FECBCED9D" Purpose="SameFactType" />
14373
+ <orm:PathedRole id="_38DCA761-CC74-4DD3-B67F-30E81BE83DFE" ref="_BE744A85-0CE7-4C53-A1D9-1C63B9A5E19D" Purpose="PostInnerJoin" />
14374
+ <orm:PathedRole id="_6DB61B15-BAD0-40A6-9EAB-DA618A709B2E" ref="_30290A84-BB41-49A9-9FF6-DB3C7E73CA3F" Purpose="SameFactType" />
14375
+ <orm:PathedRole id="_6F827ACD-1F83-41FF-9F41-7405538CE940" ref="_8BD226F9-F7EE-4CFB-881B-0C4EF4686D2F" Purpose="PostInnerJoin" />
14376
+ <orm:PathedRole id="_34171070-C436-4F38-88B5-4936120D0050" ref="_ADDCA92F-8C0E-4290-A293-292FECBCED9D" Purpose="SameFactType" />
14377
14377
  </orm:PathedRoles>
14378
14378
  </orm:RolePath>
14379
14379
  </orm:PathComponents>
@@ -14384,9 +14384,9 @@
14384
14384
  <orm:PathRoot ref="_52FACDE1-D9CD-49AF-BB0B-E29DD4803659" />
14385
14385
  </orm:ProjectedFrom>
14386
14386
  </orm:ConstraintRoleProjection>
14387
- <orm:ConstraintRoleProjection id="_BC6E811F-B427-47DD-84ED-AC909E9251D8" ref="_F4C84715-891B-4420-BD45-E7CDC2E7C5E9">
14387
+ <orm:ConstraintRoleProjection id="_3920CDD5-B3EE-4B5C-B489-DAB1098E000A" ref="_F4C84715-891B-4420-BD45-E7CDC2E7C5E9">
14388
14388
  <orm:ProjectedFrom>
14389
- <orm:PathedRole ref="_D0128322-E900-4294-82BF-74FD2337AC67" />
14389
+ <orm:PathedRole ref="_34171070-C436-4F38-88B5-4936120D0050" />
14390
14390
  </orm:ProjectedFrom>
14391
14391
  </orm:ConstraintRoleProjection>
14392
14392
  </orm:JoinPathProjection>
@@ -14618,16 +14618,9 @@ culture and locale aspects.</orm:Text>
14618
14618
  <orm:ModelNote id="_B9AF43E9-C8B6-4F27-83C7-336BDD97C112">
14619
14619
  <orm:Text>Legacy Facets</orm:Text>
14620
14620
  </orm:ModelNote>
14621
- <orm:ModelNote id="_E9030C26-B3A3-4A37-882A-276C5A4DFC02">
14622
- <orm:Text>For each Component and Fact Type,
14623
- that Component is some Absorption that traverses to some child-Role1 that belongs to that Fact Type
14624
- if and only if
14625
- some Mapping1 contains that Component
14626
- and represents some Object Type that plays some Role2 that belongs to that Fact Type.</orm:Text>
14627
- </orm:ModelNote>
14628
14621
  <orm:ModelNote id="_39D1306F-6C1B-4FEC-ADF8-3959AEC77C2A">
14629
- <orm:Text>If some Absorption traverses to some child Role that is played by some Object Type
14630
- then some Mapping that is that Absorption represents that Object Type.</orm:Text>
14622
+ <orm:Text>If for some Mapping, that Mapping is some Absorption that traverses to some child Role
14623
+ that is played by some Object Type then that Mapping represents that Object Type.</orm:Text>
14631
14624
  <orm:ReferencedBy>
14632
14625
  <orm:SetComparisonConstraint ref="_07F24ACF-D8A5-40A0-92FC-BFC087225CB8" />
14633
14626
  </orm:ReferencedBy>
@@ -14646,30 +14639,31 @@ but merely passes down its parent's Object Type</orm:Text>
14646
14639
  </orm:ReferencedBy>
14647
14640
  </orm:ModelNote>
14648
14641
  <orm:ModelNote id="_E6F06CF4-44F6-42A8-BAA3-DC7088FBC488">
14649
- <orm:Text>An Injection is an object type added in the composition,
14650
- e.g. a surrogate key or audit field</orm:Text>
14642
+ <orm:Text>An Injection is an object type added in the composition, e.g.
14643
+ a surrogate key or audit field like a timestamp or data source name</orm:Text>
14651
14644
  <orm:ReferencedBy>
14652
14645
  <orm:ObjectType ref="_32350DBF-3941-4250-B316-1E369A866F3E" />
14653
14646
  </orm:ReferencedBy>
14654
14647
  </orm:ModelNote>
14655
14648
  <orm:ModelNote id="_B4F02530-8044-428F-A881-98A56E623EA1">
14656
- <orm:Text>A Discriminator is a value type that indicates
14657
- which of several alternate roles is played.</orm:Text>
14649
+ <orm:Text>A Discriminator is a value type that indicates which of several
14650
+ alternate roles is played. It replaces more than one Indicator</orm:Text>
14658
14651
  <orm:ReferencedBy>
14659
14652
  <orm:ObjectType ref="_B37F1E95-6872-4F0B-9A83-412C935929E7" />
14660
14653
  </orm:ReferencedBy>
14661
14654
  </orm:ModelNote>
14662
14655
  <orm:ModelNote id="_AE143400-FB85-429A-9C4C-09C081A2C86A">
14663
14656
  <orm:Text>An absorption always traverses a binary Fact Type
14664
- which is always either one-to-one or one-to-many</orm:Text>
14657
+ which is always either one-to-one or one-to-many.
14658
+ In an objectified Fact Type, LinkFactTypes are often traversed.</orm:Text>
14665
14659
  <orm:ReferencedBy>
14666
14660
  <orm:FactType ref="_6DB13E64-50B7-4C94-9594-D3EB5518413A" />
14667
14661
  <orm:FactType ref="_6096F661-5482-40E6-97AD-A4D3EBDF3187" />
14668
14662
  </orm:ReferencedBy>
14669
14663
  </orm:ModelNote>
14670
14664
  <orm:ModelNote id="_2E8601DA-1E1A-4EE0-9FD8-90A6434BAFF3">
14671
- <orm:Text>If some Absorption traverses from some parent Role that is played by some Object Type
14672
- then that Absorption is some Component that belongs to some parent Mapping that represents that Object Type.</orm:Text>
14665
+ <orm:Text>If some Absorption traverses from some parent Role that is played by some Object Type then
14666
+ that Absorption is some Component that belongs to some parent Mapping that represents that Object Type.</orm:Text>
14673
14667
  <orm:ReferencedBy>
14674
14668
  <orm:SetComparisonConstraint ref="_CC4F9EB2-1E67-4EDB-A6C1-50D4D144CF0B" />
14675
14669
  </orm:ReferencedBy>
@@ -14680,6 +14674,27 @@ then that Absorption is some Component that belongs to some parent Mapping that
14680
14674
  <orm:ObjectType ref="_8081637F-F1BE-4B58-BF6C-0359BFC7CD53" />
14681
14675
  </orm:ReferencedBy>
14682
14676
  </orm:ModelNote>
14677
+ <orm:ModelNote id="_E571EE2C-4AC2-477E-8BD1-6457D50EA7B6">
14678
+ <orm:Text>A Composite is e.g. a
14679
+ relational table or an
14680
+ XSD ComplexType</orm:Text>
14681
+ <orm:ReferencedBy>
14682
+ <orm:ObjectType ref="_EBB0CD65-AA67-4C13-AA05-777E0A5F5C2E" />
14683
+ </orm:ReferencedBy>
14684
+ </orm:ModelNote>
14685
+ <orm:ModelNote id="_42CD3236-A5DC-4E3A-84A7-DA06AD6FBA74">
14686
+ <orm:Text>Component Ordinal is provided to preserve a preferred ordering of members</orm:Text>
14687
+ <orm:ReferencedBy>
14688
+ <orm:FactType ref="_83DC2475-AC45-4AAE-9F06-A94E492D7C23" />
14689
+ </orm:ReferencedBy>
14690
+ </orm:ModelNote>
14691
+ <orm:ModelNote id="_519F86D3-A4F4-41CE-9F4B-F1A476C22426">
14692
+ <orm:Text>Nesting supports specific kinds of denormalised structures such as SQL repeated attributes, Set (no nesting role),
14693
+ Array (one small integer key role) and HSTORE (one or more key roles) composite data types.</orm:Text>
14694
+ <orm:ReferencedBy>
14695
+ <orm:ObjectType ref="_583079A2-FCCF-4B48-8E67-5193D9A5F427" />
14696
+ </orm:ReferencedBy>
14697
+ </orm:ModelNote>
14683
14698
  </orm:ModelNotes>
14684
14699
  <orm:ModelErrors>
14685
14700
  <orm:ExclusionContradictsMandatoryError id="_82777725-A6B9-4391-A823-CE723F796E2F" Name="Constraints 'ExclusiveOrConstraint1' and 'SimpleMandatoryConstraint113' in model 'Metamodel' are in a state of contradiction.">
@@ -17230,15 +17245,15 @@ then that Absorption is some Component that belongs to some parent Mapping that
17230
17245
  </ormDiagram:ORMDiagram>
17231
17246
  <ormDiagram:ORMDiagram id="_099D32BA-5B3C-4FD4-BFCE-C5B30ECB6683" IsCompleteView="true" Name="Composition" BaseFontName="Tahoma" BaseFontSize="0.0972222238779068">
17232
17247
  <ormDiagram:Shapes>
17233
- <ormDiagram:ObjectTypeShape id="_F4DBE782-737C-4D59-B873-32077D3DF06A" IsExpanded="true" AbsoluteBounds="0.519726776168214, 2.2005533499868521, 0.78098135709762573, 0.35900605320930479">
17248
+ <ormDiagram:ObjectTypeShape id="_F4DBE782-737C-4D59-B873-32077D3DF06A" IsExpanded="true" AbsoluteBounds="0.59974532341957087, 2.4422922389393196, 0.78098135709762573, 0.35900605320930479">
17234
17249
  <ormDiagram:Subject ref="_955A3766-115E-47CE-88B8-AC37518E989F" />
17235
17250
  </ormDiagram:ObjectTypeShape>
17236
- <ormDiagram:ObjectTypeShape id="_D78BFF97-36FB-46BC-9782-7355CC89D8FB" IsExpanded="true" AbsoluteBounds="0.56807681231247065, 3.5956256969628884, 0.68428128480911254, 0.22950302660465241">
17251
+ <ormDiagram:ObjectTypeShape id="_D78BFF97-36FB-46BC-9782-7355CC89D8FB" IsExpanded="true" AbsoluteBounds="0.64809535956382758, 3.8373645859153558, 0.68428128480911254, 0.22950302660465241">
17237
17252
  <ormDiagram:Subject ref="_EBB0CD65-AA67-4C13-AA05-777E0A5F5C2E" />
17238
17253
  </ormDiagram:ObjectTypeShape>
17239
- <ormDiagram:FactTypeShape id="_0075F5BD-36CF-41C7-9AB3-A05C55E7E38A" IsExpanded="true" AbsoluteBounds="0.71827301022084233, 2.9059714782711095, 0.38388888899236917, 0.24388888899236916">
17254
+ <ormDiagram:FactTypeShape id="_0075F5BD-36CF-41C7-9AB3-A05C55E7E38A" IsExpanded="true" AbsoluteBounds="0.79829155747219915, 3.1477103672235769, 0.38388888899236917, 0.24388888899236916">
17240
17255
  <ormDiagram:RelativeShapes>
17241
- <ormDiagram:ReadingShape id="_0E69AAD0-44C2-456C-96BB-6E373D6339E5" IsExpanded="true" AbsoluteBounds="0.36732973578356476, 3.2146118805658048, 0.95934152603149414, 0.12950302660465241">
17256
+ <ormDiagram:ReadingShape id="_0E69AAD0-44C2-456C-96BB-6E373D6339E5" IsExpanded="true" AbsoluteBounds="0.44734828303492158, 3.4563507695182722, 0.95934152603149414, 0.12950302660465241">
17242
17257
  <ormDiagram:Subject ref="_10F411DA-AE5D-4079-8467-BBA48668ACBC" />
17243
17258
  </ormDiagram:ReadingShape>
17244
17259
  </ormDiagram:RelativeShapes>
@@ -17248,12 +17263,12 @@ then that Absorption is some Component that belongs to some parent Mapping that
17248
17263
  <ormDiagram:Role ref="_6EF02438-FF3C-40D3-AAFD-743FBD48424E" />
17249
17264
  </ormDiagram:RoleDisplayOrder>
17250
17265
  </ormDiagram:FactTypeShape>
17251
- <ormDiagram:ObjectTypeShape id="_57F5AF2F-B4B4-432C-86C5-525814CF061F" IsExpanded="true" AbsoluteBounds="4.7720779980324561, 3.5956256969628884, 0.75373249769210815, 0.22950302660465241">
17266
+ <ormDiagram:ObjectTypeShape id="_57F5AF2F-B4B4-432C-86C5-525814CF061F" IsExpanded="true" AbsoluteBounds="4.9108185367691926, 3.8373645859153558, 0.75373249769210815, 0.22950302660465241">
17252
17267
  <ormDiagram:Subject ref="_6E038746-2591-4605-A6FE-AE888E8B2EB1" />
17253
17268
  </ormDiagram:ObjectTypeShape>
17254
- <ormDiagram:FactTypeShape id="_62619675-F31E-47F2-B81E-A8597972F6A7" IsExpanded="true" AbsoluteBounds="3.8228892673780166, 3.5534327657690294, 0.38388888899236917, 0.24388888899236916">
17269
+ <ormDiagram:FactTypeShape id="_62619675-F31E-47F2-B81E-A8597972F6A7" IsExpanded="true" AbsoluteBounds="3.8703505548759387, 3.7951716547214969, 0.38388888899236917, 0.24388888899236916">
17255
17270
  <ormDiagram:RelativeShapes>
17256
- <ormDiagram:ReadingShape id="_3C5F5917-402F-4A82-A589-0E783FF1F8BC" IsExpanded="true" AbsoluteBounds="3.8228892673780166, 3.8620731680637252, 0.49668148159980774, 0.12950302660465241">
17271
+ <ormDiagram:ReadingShape id="_3C5F5917-402F-4A82-A589-0E783FF1F8BC" IsExpanded="true" AbsoluteBounds="3.8703505548759387, 4.1038120570161922, 0.49668148159980774, 0.12950302660465241">
17257
17272
  <ormDiagram:Subject ref="_4C4ABB13-9C81-4BA3-B8B6-D48BE65E7F29" />
17258
17273
  </ormDiagram:ReadingShape>
17259
17274
  </ormDiagram:RelativeShapes>
@@ -17263,18 +17278,18 @@ then that Absorption is some Component that belongs to some parent Mapping that
17263
17278
  <ormDiagram:Role ref="_BE2BC553-EB41-48E4-BDE1-E5C6DEE057FC" />
17264
17279
  </ormDiagram:RoleDisplayOrder>
17265
17280
  </ormDiagram:FactTypeShape>
17266
- <ormDiagram:ObjectTypeShape id="_D876A3D9-9E30-4981-A80C-1803908D0405" IsExpanded="true" AbsoluteBounds="2.5762332192245547, 3.5956256969628884, 0.58525517106056224, 0.22950302660465241">
17281
+ <ormDiagram:ObjectTypeShape id="_D876A3D9-9E30-4981-A80C-1803908D0405" IsExpanded="true" AbsoluteBounds="2.6236945067224768, 3.8373645859153558, 0.58525517106056224, 0.22950302660465241">
17267
17282
  <ormDiagram:Subject ref="_43DF94C6-2C2C-4CC8-8A40-D69D0F43598B" />
17268
17283
  </ormDiagram:ObjectTypeShape>
17269
- <ormDiagram:ObjectTypeShape id="_6590BEC7-688C-431A-8280-677856D238E2" IsExpanded="true" AbsoluteBounds="2.5179378649774615, 4.8048441353486524, 0.70184587955474853, 0.22950302660465241">
17284
+ <ormDiagram:ObjectTypeShape id="_6590BEC7-688C-431A-8280-677856D238E2" IsExpanded="true" AbsoluteBounds="2.5653991524753836, 5.0465830243011176, 0.70184587955474853, 0.22950302660465241">
17270
17285
  <ormDiagram:Subject ref="_C4DE2415-F2F5-42AD-906B-50039DAE1DDF" />
17271
17286
  </ormDiagram:ObjectTypeShape>
17272
- <ormDiagram:ObjectTypeShape id="_13EED334-E840-46B3-BEC1-AD2A2BF5B05D" IsExpanded="true" AbsoluteBounds="5.1295059648840748, 4.8048441353486524, 0.37661665201187133, 0.22950302660465241">
17287
+ <ormDiagram:ObjectTypeShape id="_13EED334-E840-46B3-BEC1-AD2A2BF5B05D" IsExpanded="true" AbsoluteBounds="5.2622203889870214, 5.0465830243011176, 0.37661665201187133, 0.22950302660465241">
17273
17288
  <ormDiagram:Subject ref="_ABCDC9B2-822F-4E84-83D4-3732C029BB1B" />
17274
17289
  </ormDiagram:ObjectTypeShape>
17275
- <ormDiagram:FactTypeShape id="_299E11E0-1873-49F0-A3A1-F90AF6B8D3D2" IsExpanded="true" AbsoluteBounds="5.0426073699959293, 4.0273357792342335, 0.38388888899236917, 0.24388888899236916">
17290
+ <ormDiagram:FactTypeShape id="_299E11E0-1873-49F0-A3A1-F90AF6B8D3D2" IsExpanded="true" AbsoluteBounds="5.1753217940988758, 4.2690746681866987, 0.38388888899236917, 0.24388888899236916">
17276
17291
  <ormDiagram:RelativeShapes>
17277
- <ormDiagram:ReadingShape id="_B1BFD149-0F63-49CF-8331-66F49329F47C" IsExpanded="true" AbsoluteBounds="5.0426073699959293, 4.3359761815289311, 0.88267457485198975, 0.12950302660465241">
17292
+ <ormDiagram:ReadingShape id="_B1BFD149-0F63-49CF-8331-66F49329F47C" IsExpanded="true" AbsoluteBounds="5.1753217940988758, 4.5777150704813963, 0.88267457485198975, 0.12950302660465241">
17278
17293
  <ormDiagram:Subject ref="_D8E6C490-1154-4869-94F5-68E99D5CEADB" />
17279
17294
  </ormDiagram:ReadingShape>
17280
17295
  </ormDiagram:RelativeShapes>
@@ -17284,15 +17299,15 @@ then that Absorption is some Component that belongs to some parent Mapping that
17284
17299
  <ormDiagram:Role ref="_8BD226F9-F7EE-4CFB-881B-0C4EF4686D2F" />
17285
17300
  </ormDiagram:RoleDisplayOrder>
17286
17301
  </ormDiagram:FactTypeShape>
17287
- <ormDiagram:FactTypeShape id="_88AA4BF3-8549-4240-9E58-605BAA2603A4" IsExpanded="true" AbsoluteBounds="2.0586957105545567, 2.22311193209532, 0.38388888899236917, 0.24388888899236916">
17302
+ <ormDiagram:FactTypeShape id="_88AA4BF3-8549-4240-9E58-605BAA2603A4" IsExpanded="true" AbsoluteBounds="2.1061569980524788, 2.4648508210477873, 0.38388888899236917, 0.24388888899236916">
17288
17303
  <ormDiagram:RelativeShapes>
17289
- <ormDiagram:ReadingShape id="_2B3B04BB-6DBE-4732-9FCF-16382C3B2219" IsExpanded="true" AbsoluteBounds="1.6065485228233487, 2.5701556506856571, 1.3130062818527222, 0.12950302660465241">
17304
+ <ormDiagram:ReadingShape id="_2B3B04BB-6DBE-4732-9FCF-16382C3B2219" IsExpanded="true" AbsoluteBounds="1.6540098103212708, 2.8118945396381245, 1.3130062818527222, 0.12950302660465241">
17290
17305
  <ormDiagram:Subject ref="_AF22C1FF-1361-4556-B2C4-D6EF9FFC7B7C" />
17291
17306
  </ormDiagram:ReadingShape>
17292
- <ormDiagram:RoleNameShape id="_997DBF88-C467-4FB8-A321-8906598A6D5C" IsExpanded="true" AbsoluteBounds="2.0086957105545569, 1.8731119320953198, 0.46720150113105774, 0.12950302660465241">
17307
+ <ormDiagram:RoleNameShape id="_997DBF88-C467-4FB8-A321-8906598A6D5C" IsExpanded="true" AbsoluteBounds="2.056156998052479, 2.1148508210477872, 0.46720150113105774, 0.12950302660465241">
17293
17308
  <ormDiagram:Subject ref="_7E7A5CB5-5D07-4682-B0C5-F78ED445EDE1" />
17294
17309
  </ormDiagram:RoleNameShape>
17295
- <ormDiagram:RoleNameShape id="_EC18FD78-FA74-4A4D-8F81-6282557BD7AD" IsExpanded="true" AbsoluteBounds="2.0086957105545569, 1.8731119320953198, 0.05, 0.05">
17310
+ <ormDiagram:RoleNameShape id="_EC18FD78-FA74-4A4D-8F81-6282557BD7AD" IsExpanded="true" AbsoluteBounds="2.056156998052479, 2.1148508210477872, 0.05, 0.05">
17296
17311
  <ormDiagram:Subject ref="_8B6BC787-EB8A-4011-9B09-04E14CB3E3CC" />
17297
17312
  </ormDiagram:RoleNameShape>
17298
17313
  </ormDiagram:RelativeShapes>
@@ -17302,12 +17317,12 @@ then that Absorption is some Component that belongs to some parent Mapping that
17302
17317
  <ormDiagram:Role ref="_8B6BC787-EB8A-4011-9B09-04E14CB3E3CC" />
17303
17318
  </ormDiagram:RoleDisplayOrder>
17304
17319
  </ormDiagram:FactTypeShape>
17305
- <ormDiagram:ObjectTypeShape id="_3834D6A4-B4CA-4273-9C6F-BB0F168B4A66" IsExpanded="true" AbsoluteBounds="5.002261177624, 6.400779312952257, 0.69942479848861694, 0.22950302660465241">
17320
+ <ormDiagram:ObjectTypeShape id="_3834D6A4-B4CA-4273-9C6F-BB0F168B4A66" IsExpanded="true" AbsoluteBounds="5.1349756017269463, 6.6425182019047231, 0.69942479848861694, 0.22950302660465241">
17306
17321
  <ormDiagram:Subject ref="_4A49FC50-0CE4-49E8-8376-5B8590845541" />
17307
17322
  </ormDiagram:ObjectTypeShape>
17308
- <ormDiagram:FactTypeShape id="_5328B387-2226-4366-BC4A-C480BAA7570E" IsExpanded="true" AbsoluteBounds="5.0726207303868387, 5.3519685784035271, 0.38388888899236917, 0.24388888899236916">
17323
+ <ormDiagram:FactTypeShape id="_5328B387-2226-4366-BC4A-C480BAA7570E" IsExpanded="true" AbsoluteBounds="5.2053351544897852, 5.5937074673559923, 0.38388888899236917, 0.24388888899236916">
17309
17324
  <ormDiagram:RelativeShapes>
17310
- <ormDiagram:ReadingShape id="_7F8CD4FF-A474-4F82-91FE-784B657CB5C4" IsExpanded="true" AbsoluteBounds="4.9770262803888672, 5.6765413890312155, 0.95934152603149414, 0.12950302660465241">
17325
+ <ormDiagram:ReadingShape id="_7F8CD4FF-A474-4F82-91FE-784B657CB5C4" IsExpanded="true" AbsoluteBounds="5.1097407044918137, 5.9182802779836807, 0.95934152603149414, 0.12950302660465241">
17311
17326
  <ormDiagram:Subject ref="_1AC3F1A8-D2A0-4E44-BA7D-EC4259C54DDA" />
17312
17327
  </ormDiagram:ReadingShape>
17313
17328
  </ormDiagram:RelativeShapes>
@@ -17317,9 +17332,9 @@ then that Absorption is some Component that belongs to some parent Mapping that
17317
17332
  <ormDiagram:Role ref="_5B536D4B-03A4-43D1-8E21-BAA11B1915E1" />
17318
17333
  </ormDiagram:RoleDisplayOrder>
17319
17334
  </ormDiagram:FactTypeShape>
17320
- <ormDiagram:FactTypeShape id="_0968A420-A6C0-4411-9488-A591E755723A" IsExpanded="true" AbsoluteBounds="3.8228892673780162, 4.7626512041547935, 0.38388888899236917, 0.24388888899236916">
17335
+ <ormDiagram:FactTypeShape id="_0968A420-A6C0-4411-9488-A591E755723A" IsExpanded="true" AbsoluteBounds="3.8703505548759383, 5.00439009310726, 0.38388888899236917, 0.24388888899236916">
17321
17336
  <ormDiagram:RelativeShapes>
17322
- <ormDiagram:ReadingShape id="_56B559FB-B6BC-45E3-81FD-41CF4A55727F" IsExpanded="true" AbsoluteBounds="3.5538809723677649, 5.0402521877944588, 0.82518625259399414, 0.12950302660465241">
17337
+ <ormDiagram:ReadingShape id="_56B559FB-B6BC-45E3-81FD-41CF4A55727F" IsExpanded="true" AbsoluteBounds="3.601342259865687, 5.2819910767469249, 0.82518625259399414, 0.12950302660465241">
17323
17338
  <ormDiagram:Subject ref="_69894A4B-7A46-4D94-9A67-4AF39106C3C2" />
17324
17339
  </ormDiagram:ReadingShape>
17325
17340
  </ormDiagram:RelativeShapes>
@@ -17329,26 +17344,23 @@ then that Absorption is some Component that belongs to some parent Mapping that
17329
17344
  <ormDiagram:Role ref="_30290A84-BB41-49A9-9FF6-DB3C7E73CA3F" />
17330
17345
  </ormDiagram:RoleDisplayOrder>
17331
17346
  </ormDiagram:FactTypeShape>
17332
- <ormDiagram:ModelNoteShape id="_0A175D4A-A974-4C51-8A31-854E0FFD9F69" IsExpanded="true" AbsoluteBounds="0.5, 8.0027901630618, 4.54000178527832, 0.61090413284301759">
17333
- <ormDiagram:Subject ref="_E9030C26-B3A3-4A37-882A-276C5A4DFC02" />
17334
- </ormDiagram:ModelNoteShape>
17335
- <ormDiagram:ModelNoteShape id="_9A30A348-00B4-416E-85B3-708F9A9CE3BA" IsExpanded="true" AbsoluteBounds="4.2075254812812917, 4.4803482222152216, 3.7576192970275879, 0.2588533217906952">
17347
+ <ormDiagram:ModelNoteShape id="_9A30A348-00B4-416E-85B3-708F9A9CE3BA" IsExpanded="true" AbsoluteBounds="4.2794276725477092, 4.7220871111676868, 3.9374424571990971, 0.2588533217906952">
17336
17348
  <ormDiagram:Subject ref="_39D1306F-6C1B-4FEC-ADF8-3959AEC77C2A" />
17337
17349
  </ormDiagram:ModelNoteShape>
17338
- <ormDiagram:FactTypeShape id="_6C9AD75C-416E-4A8D-B699-F85C8E473BC2" IsExpanded="true" AbsoluteBounds="1.3577196616303391, 4.8326512041547938, 0.2238888889923692, 0.17388888899236918">
17350
+ <ormDiagram:FactTypeShape id="_6C9AD75C-416E-4A8D-B699-F85C8E473BC2" IsExpanded="true" AbsoluteBounds="1.4051809491282614, 5.07439009310726, 0.2238888889923692, 0.17388888899236918">
17339
17351
  <ormDiagram:RelativeShapes>
17340
- <ormDiagram:ReadingShape id="_00397F8D-944F-4EB5-9DCD-FD9F3BD4E225" IsExpanded="true" AbsoluteBounds="0.993264603660883, 4.8483793630712322, 0.35996273159980774, 0.12950302660465241">
17352
+ <ormDiagram:ReadingShape id="_00397F8D-944F-4EB5-9DCD-FD9F3BD4E225" IsExpanded="true" AbsoluteBounds="1.0407258911588053, 5.0901182520236983, 0.35996273159980774, 0.12950302660465241">
17341
17353
  <ormDiagram:Subject ref="_610C5D27-DAD2-4381-A75A-2214DA0C65A7" />
17342
17354
  </ormDiagram:ReadingShape>
17343
17355
  </ormDiagram:RelativeShapes>
17344
17356
  <ormDiagram:Subject ref="_DC8015D6-FB62-4DEB-BD7F-F473FFA6AC4C" />
17345
17357
  </ormDiagram:FactTypeShape>
17346
- <ormDiagram:ObjectTypeShape id="_C33617E7-73BB-4742-B1C5-B7BD90F8BFE8" IsExpanded="true" AbsoluteBounds="0.68799053935752985, 0.82626370342064082, 0.44445383071899414, 0.22950302660465241">
17358
+ <ormDiagram:ObjectTypeShape id="_C33617E7-73BB-4742-B1C5-B7BD90F8BFE8" IsExpanded="true" AbsoluteBounds="0.76800908660888667, 1.0680025923731082, 0.44445383071899414, 0.22950302660465241">
17347
17359
  <ormDiagram:Subject ref="_25D2C6A4-DE21-447E-BB72-3EF90026E125" />
17348
17360
  </ormDiagram:ObjectTypeShape>
17349
- <ormDiagram:FactTypeShape id="_7951F8A5-BAF7-407F-BD63-9A49DF0E9BE3" IsExpanded="true" AbsoluteBounds="1.6448359913264843, 0.78407077222678256, 0.38388888899236917, 0.24388888899236916">
17361
+ <ormDiagram:FactTypeShape id="_7951F8A5-BAF7-407F-BD63-9A49DF0E9BE3" IsExpanded="true" AbsoluteBounds="1.669856991078748, 1.02580966117925, 0.38388888899236917, 0.24388888899236916">
17350
17362
  <ormDiagram:RelativeShapes>
17351
- <ormDiagram:ReadingShape id="_DA583D60-7C0C-4F9D-AF48-6D085CF5E2FF" IsExpanded="true" AbsoluteBounds="1.6448359913264843, 1.0927111745214806, 0.43346126675605773, 0.12950302660465241">
17363
+ <ormDiagram:ReadingShape id="_DA583D60-7C0C-4F9D-AF48-6D085CF5E2FF" IsExpanded="true" AbsoluteBounds="1.669856991078748, 1.334450063473948, 0.43346126675605773, 0.12950302660465241">
17352
17364
  <ormDiagram:Subject ref="_8434C3D0-6DDE-4E01-BFBE-BDB8F54E6326" />
17353
17365
  </ormDiagram:ReadingShape>
17354
17366
  </ormDiagram:RelativeShapes>
@@ -17358,29 +17370,29 @@ then that Absorption is some Component that belongs to some parent Mapping that
17358
17370
  <ormDiagram:Role ref="_CE2B0AEC-BAEB-4902-BEE9-5CB79E065A1B" />
17359
17371
  </ormDiagram:RoleDisplayOrder>
17360
17372
  </ormDiagram:FactTypeShape>
17361
- <ormDiagram:ExternalConstraintShape id="_E802EC42-8F3B-48EC-ACA2-606F0A4B923A" IsExpanded="true" AbsoluteBounds="1.3896641061265238, 1.4338140589136375, 0.16, 0.16">
17373
+ <ormDiagram:ExternalConstraintShape id="_E802EC42-8F3B-48EC-ACA2-606F0A4B923A" IsExpanded="true" AbsoluteBounds="1.4371253936244459, 1.6755529478661049, 0.16, 0.16">
17362
17374
  <ormDiagram:Subject ref="_2E788E45-9073-467F-B7B9-96B0C0178B7E" />
17363
17375
  </ormDiagram:ExternalConstraintShape>
17364
- <ormDiagram:ExternalConstraintShape id="_E5224181-EAB7-4958-B7EC-8E66BAEB79C4" IsExpanded="true" AbsoluteBounds="2.1021323773257237, 4.2132999583029633, 0.16, 0.16">
17376
+ <ormDiagram:ExternalConstraintShape id="_E5224181-EAB7-4958-B7EC-8E66BAEB79C4" IsExpanded="true" AbsoluteBounds="2.1495936648236458, 4.4550388472554285, 0.16, 0.16">
17365
17377
  <ormDiagram:Subject ref="_8C8C66BF-B81C-4BA9-99DF-F2DE6B79E078" />
17366
17378
  </ormDiagram:ExternalConstraintShape>
17367
- <ormDiagram:FactTypeShape id="_7846684F-65AB-4CE8-976F-F02B99CA8466" IsExpanded="true" AbsoluteBounds="3.8228892673780162, 5.3519685784035271, 0.38388888899236917, 0.24388888899236916">
17379
+ <ormDiagram:FactTypeShape id="_7846684F-65AB-4CE8-976F-F02B99CA8466" IsExpanded="true" AbsoluteBounds="3.8703505548759383, 5.5937074673559923, 0.38388888899236917, 0.24388888899236916">
17368
17380
  <ormDiagram:RelativeShapes>
17369
- <ormDiagram:ReadingShape id="_0C4BC83B-2045-41E5-BB2F-69465D47769A" IsExpanded="true" AbsoluteBounds="3.4796513431419416, 5.6295695620431925, 1.0266565084457398, 0.12950302660465241">
17381
+ <ormDiagram:ReadingShape id="_0C4BC83B-2045-41E5-BB2F-69465D47769A" IsExpanded="true" AbsoluteBounds="3.5271126306398637, 5.8713084509956577, 1.0266565084457398, 0.12950302660465241">
17370
17382
  <ormDiagram:Subject ref="_E272B42C-EAC1-47EC-8042-37F2C843645C" />
17371
17383
  </ormDiagram:ReadingShape>
17372
17384
  </ormDiagram:RelativeShapes>
17373
17385
  <ormDiagram:Subject ref="_6096F661-5482-40E6-97AD-A4D3EBDF3187" />
17374
17386
  </ormDiagram:FactTypeShape>
17375
- <ormDiagram:ObjectTypeShape id="_413F1965-E2AF-4E7B-BFF2-8D9D9B6E0D0E" IsExpanded="true" AbsoluteBounds="3.7059233145830186, 0.8262637034206417, 0.617820794582367, 0.22950302660465241">
17387
+ <ormDiagram:ObjectTypeShape id="_413F1965-E2AF-4E7B-BFF2-8D9D9B6E0D0E" IsExpanded="true" AbsoluteBounds="3.7533846020809407, 1.0680025923731091, 0.617820794582367, 0.22950302660465241">
17376
17388
  <ormDiagram:Subject ref="_C79CB122-3E40-4199-9A78-0AB6E9CE2A79" />
17377
17389
  </ormDiagram:ObjectTypeShape>
17378
- <ormDiagram:ObjectTypeShape id="_231FDB42-C238-4809-B541-F1B3896DF26C" IsExpanded="true" AbsoluteBounds="3.598233576309398, 1.3990625456113122, 0.83320027112960815, 0.22950302660465241">
17390
+ <ormDiagram:ObjectTypeShape id="_231FDB42-C238-4809-B541-F1B3896DF26C" IsExpanded="true" AbsoluteBounds="3.64569486380732, 1.6408014345637796, 0.83320027112960815, 0.22950302660465241">
17379
17391
  <ormDiagram:Subject ref="_B37F1E95-6872-4F0B-9A83-412C935929E7" />
17380
17392
  </ormDiagram:ObjectTypeShape>
17381
- <ormDiagram:FactTypeShape id="_BC8FFB3A-0D4E-4FC9-85B2-2D9B79DED360" IsExpanded="true" AbsoluteBounds="4.9271443830942623, 0.78407077222678256, 0.38388888899236917, 0.24388888899236916">
17393
+ <ormDiagram:FactTypeShape id="_BC8FFB3A-0D4E-4FC9-85B2-2D9B79DED360" IsExpanded="true" AbsoluteBounds="5.0658849218309987, 1.02580966117925, 0.38388888899236917, 0.24388888899236916">
17382
17394
  <ormDiagram:RelativeShapes>
17383
- <ormDiagram:ReadingShape id="_2699095C-9318-4998-A32C-0CD8F9924973" IsExpanded="true" AbsoluteBounds="4.528834174769381, 1.0528801536889914, 0.96522802114486694, 0.12950302660465241">
17395
+ <ormDiagram:ReadingShape id="_2699095C-9318-4998-A32C-0CD8F9924973" IsExpanded="true" AbsoluteBounds="4.6675747135061174, 1.2946190426414588, 0.96522802114486694, 0.12950302660465241">
17384
17396
  <ormDiagram:Subject ref="_DBC31188-9EEF-4307-A3F6-B9ED0CCA07C7" />
17385
17397
  </ormDiagram:ReadingShape>
17386
17398
  </ormDiagram:RelativeShapes>
@@ -17390,9 +17402,9 @@ then that Absorption is some Component that belongs to some parent Mapping that
17390
17402
  <ormDiagram:Role ref="_5C2627FE-0158-4223-8854-145DE8BB0103" />
17391
17403
  </ormDiagram:RoleDisplayOrder>
17392
17404
  </ormDiagram:FactTypeShape>
17393
- <ormDiagram:FactTypeShape id="_90B59620-741C-4467-B190-F6A78164CB63" IsExpanded="true" AbsoluteBounds="4.861623070033934, 1.286869614417453, 0.5438888889923692, 0.31388888899236916">
17405
+ <ormDiagram:FactTypeShape id="_90B59620-741C-4467-B190-F6A78164CB63" IsExpanded="true" AbsoluteBounds="5.00036360877067, 1.5286085033699204, 0.5438888889923692, 0.31388888899236916">
17394
17406
  <ormDiagram:RelativeShapes>
17395
- <ormDiagram:ReadingShape id="_8BB0B1AB-EACF-48C9-94B5-3B217BAD27CE" IsExpanded="true" AbsoluteBounds="4.861623070033934, 1.6655100167121502, 1.2046756744384766, 0.12950302660465241">
17407
+ <ormDiagram:ReadingShape id="_8BB0B1AB-EACF-48C9-94B5-3B217BAD27CE" IsExpanded="true" AbsoluteBounds="5.00036360877067, 1.9072489056646176, 1.2046756744384766, 0.12950302660465241">
17396
17408
  <ormDiagram:Subject ref="_CAD3B786-5F32-449C-AE41-C7992C90B073" />
17397
17409
  </ormDiagram:ReadingShape>
17398
17410
  </ormDiagram:RelativeShapes>
@@ -17403,65 +17415,65 @@ then that Absorption is some Component that belongs to some parent Mapping that
17403
17415
  <ormDiagram:Role ref="_AA5D1430-6D4D-4A1B-ABB1-3FB7362F2F6E" />
17404
17416
  </ormDiagram:RoleDisplayOrder>
17405
17417
  </ormDiagram:FactTypeShape>
17406
- <ormDiagram:ObjectTypeShape id="_201461C6-F3E1-4477-9405-F491B48329FF" IsExpanded="true" AbsoluteBounds="3.7394146578428291, 2.2178435757912558, 0.55083810806274414, 0.22950302660465241">
17418
+ <ormDiagram:ObjectTypeShape id="_201461C6-F3E1-4477-9405-F491B48329FF" IsExpanded="true" AbsoluteBounds="3.7868759453407512, 2.4121211772458011, 0.55083810806274414, 0.22950302660465241">
17407
17419
  <ormDiagram:Subject ref="_57FC7F7E-5AB2-4DF0-A0FC-B01388581A98" />
17408
17420
  </ormDiagram:ObjectTypeShape>
17409
- <ormDiagram:FrequencyConstraintShape id="_70FD4EC4-B3F5-4E65-B1ED-22ADB76F97FB" IsExpanded="true" AbsoluteBounds="4.7518202449560718, 1.1356075452500112, 0.25681781768798828, 0.25681781768798828">
17421
+ <ormDiagram:FrequencyConstraintShape id="_70FD4EC4-B3F5-4E65-B1ED-22ADB76F97FB" IsExpanded="true" AbsoluteBounds="4.8905607836928082, 1.3773464342024786, 0.25681781768798828, 0.25681781768798828">
17410
17422
  <ormDiagram:Subject ref="_5C76D53E-E4BB-4F74-9979-47638D3DE6E0" />
17411
17423
  </ormDiagram:FrequencyConstraintShape>
17412
- <ormDiagram:ObjectTypeShape id="_D454A929-ABCB-4C19-B188-813518C06AEC" IsExpanded="true" AbsoluteBounds="3.7092225955841096, 2.7826368072879792, 0.611222232580185, 0.22950302660465241">
17424
+ <ormDiagram:ObjectTypeShape id="_D454A929-ABCB-4C19-B188-813518C06AEC" IsExpanded="true" AbsoluteBounds="3.7566838830820317, 3.0473790285021325, 0.611222232580185, 0.22950302660465241">
17413
17425
  <ormDiagram:Subject ref="_32350DBF-3941-4250-B316-1E369A866F3E" />
17414
17426
  </ormDiagram:ObjectTypeShape>
17415
- <ormDiagram:ObjectTypeShape id="_4BB65F3A-9425-4396-BB74-50F34D2FCFC4" IsExpanded="true" AbsoluteBounds="2.5035302004400317, 0.76151219011831417, 0.73066120862960815, 0.35900605320930479">
17427
+ <ormDiagram:ObjectTypeShape id="_4BB65F3A-9425-4396-BB74-50F34D2FCFC4" IsExpanded="true" AbsoluteBounds="2.5509914879379538, 1.0032510790707816, 0.73066120862960815, 0.35900605320930479">
17416
17428
  <ormDiagram:Subject ref="_A8280EA2-0613-4A3F-BC44-CE95D634779B" />
17417
17429
  </ormDiagram:ObjectTypeShape>
17418
- <ormDiagram:ModelNoteShape id="_B4A73FCC-3CEB-4975-8755-30BBCE0D976D" IsExpanded="true" AbsoluteBounds="3.228822619841206, 0.5, 3.7929696197509766, 0.14150302660465242">
17430
+ <ormDiagram:ModelNoteShape id="_B4A73FCC-3CEB-4975-8755-30BBCE0D976D" IsExpanded="true" AbsoluteBounds="2.936734266271134, 0.78785627367388011, 3.7929696197509766, 0.14150302660465242">
17419
17431
  <ormDiagram:Subject ref="_F81F3682-77FD-446B-A0FE-B392F6546B4B" />
17420
17432
  </ormDiagram:ModelNoteShape>
17421
- <ormDiagram:ObjectTypeShape id="_528C81B2-6B69-40E5-AD1E-133418B3A385" IsExpanded="true" AbsoluteBounds="5.6775495064909371, 0.83114159242902641, 0.37661665201187133, 0.22950302660465241">
17433
+ <ormDiagram:ObjectTypeShape id="_528C81B2-6B69-40E5-AD1E-133418B3A385" IsExpanded="true" AbsoluteBounds="5.8162900452276736, 1.0728804813814938, 0.37661665201187133, 0.22950302660465241">
17422
17434
  <ormDiagram:Subject ref="_ABCDC9B2-822F-4E84-83D4-3732C029BB1B" />
17423
17435
  </ormDiagram:ObjectTypeShape>
17424
- <ormDiagram:ExternalConstraintShape id="_3CB46EF6-C960-488E-A43B-2775717C32EF" IsExpanded="true" AbsoluteBounds="2.0899916608847038, 3.0630433149467717, 0.16, 0.16">
17436
+ <ormDiagram:ExternalConstraintShape id="_3CB46EF6-C960-488E-A43B-2775717C32EF" IsExpanded="true" AbsoluteBounds="2.1374529483826259, 3.3047822038992392, 0.16, 0.16">
17425
17437
  <ormDiagram:Subject ref="_DD3B5604-D38A-4939-8291-E64D24D0436A" />
17426
17438
  </ormDiagram:ExternalConstraintShape>
17427
- <ormDiagram:ExternalConstraintShape id="_98845C72-D28D-4D04-B3EC-5191FEBD45A8" IsExpanded="true" AbsoluteBounds="3.1540957952462114, 4.04585446444131, 0.16, 0.16">
17439
+ <ormDiagram:ExternalConstraintShape id="_98845C72-D28D-4D04-B3EC-5191FEBD45A8" IsExpanded="true" AbsoluteBounds="3.2015570827441335, 4.2875933533937758, 0.16, 0.16">
17428
17440
  <ormDiagram:Subject ref="_5F76BB6E-A761-4899-99BF-2A0C6869EE37" />
17429
17441
  </ormDiagram:ExternalConstraintShape>
17430
- <ormDiagram:ObjectTypeShape id="_D270317A-2BF4-476A-8487-4E81BCAEF2DA" IsExpanded="true" AbsoluteBounds="5.6490189684088143, 1.3990625456113113, 0.43367772817611694, 0.22950302660465241">
17442
+ <ormDiagram:ObjectTypeShape id="_D270317A-2BF4-476A-8487-4E81BCAEF2DA" IsExpanded="true" AbsoluteBounds="5.7877595071455508, 1.6408014345637787, 0.43367772817611694, 0.22950302660465241">
17431
17443
  <ormDiagram:Subject ref="_37D88A60-D029-4760-929B-038077D1A708" />
17432
17444
  </ormDiagram:ObjectTypeShape>
17433
- <ormDiagram:ExternalConstraintShape id="_40607EF9-4E39-4C02-B8E9-003585C8A2AE" IsExpanded="true" AbsoluteBounds="3.2987782403847592, 1.4338140589136383, 0.16, 0.16">
17445
+ <ormDiagram:ExternalConstraintShape id="_40607EF9-4E39-4C02-B8E9-003585C8A2AE" IsExpanded="true" AbsoluteBounds="3.3462395278826813, 1.6755529478661058, 0.16, 0.16">
17434
17446
  <ormDiagram:Subject ref="_2F17A7BC-306A-4462-80C4-3622D5493D01" />
17435
17447
  </ormDiagram:ExternalConstraintShape>
17436
- <ormDiagram:ModelNoteShape id="_B8AA3992-3832-45B4-B752-43A75D172890" IsExpanded="true" AbsoluteBounds="4.4074208172353746, 2.1814688476187931, 2.5590514297485352, 0.2588533217906952">
17448
+ <ormDiagram:ModelNoteShape id="_B8AA3992-3832-45B4-B752-43A75D172890" IsExpanded="true" AbsoluteBounds="4.4548821047332972, 2.3757464490733384, 2.5590514297485352, 0.2588533217906952">
17437
17449
  <ormDiagram:Subject ref="_FA2D77F6-B644-4F3F-BA22-BE5F74B88D49" />
17438
17450
  </ormDiagram:ModelNoteShape>
17439
- <ormDiagram:ModelNoteShape id="_E96A9244-CB5A-4992-9DE3-5B06B1B76A86" IsExpanded="true" AbsoluteBounds="4.5936133418318317, 2.7450777906634563, 2.5172287578582764, 0.2588533217906952">
17451
+ <ormDiagram:ModelNoteShape id="_E96A9244-CB5A-4992-9DE3-5B06B1B76A86" IsExpanded="true" AbsoluteBounds="4.0125535180533447, 2.7197333451346486, 3.0259365196228027, 0.2588533217906952">
17440
17452
  <ormDiagram:Subject ref="_E6F06CF4-44F6-42A8-BAA3-DC7088FBC488" />
17441
17453
  </ormDiagram:ModelNoteShape>
17442
- <ormDiagram:FactTypeShape id="_B4F7CD22-933F-4A9D-BBC8-B520855B0BC9" IsExpanded="true" AbsoluteBounds="0.71827301022084233, 1.356869614417453, 0.38388888899236917, 0.24388888899236916">
17454
+ <ormDiagram:FactTypeShape id="_B4F7CD22-933F-4A9D-BBC8-B520855B0BC9" IsExpanded="true" AbsoluteBounds="0.79829155747219915, 1.5986085033699204, 0.38388888899236917, 0.24388888899236916">
17443
17455
  <ormDiagram:RelativeShapes>
17444
- <ormDiagram:ReadingShape id="_F78473B2-3819-4DA6-9A22-4E485856BE15" IsExpanded="true" AbsoluteBounds="0.76827301022084238, 1.6655100167121493, 0.66971611976623535, 0.12950302660465241">
17456
+ <ormDiagram:ReadingShape id="_F78473B2-3819-4DA6-9A22-4E485856BE15" IsExpanded="true" AbsoluteBounds="0.8482915574721992, 1.9072489056646167, 0.66971611976623535, 0.12950302660465241">
17445
17457
  <ormDiagram:Subject ref="_39D0F45B-DC98-4B10-8026-EDEA761D0801" />
17446
17458
  </ormDiagram:ReadingShape>
17447
17459
  </ormDiagram:RelativeShapes>
17448
17460
  <ormDiagram:Subject ref="_DEC73244-39B9-4CFD-8356-CEBF4A034D10" />
17449
17461
  </ormDiagram:FactTypeShape>
17450
- <ormDiagram:ModelNoteShape id="_3B645FD2-0EB0-48A7-8309-7B1E94CCD6B8" IsExpanded="true" AbsoluteBounds="3.2924586507553184, 1.8161704221796733, 2.0107523555755615, 0.2588533217906952">
17462
+ <ormDiagram:ModelNoteShape id="_3B645FD2-0EB0-48A7-8309-7B1E94CCD6B8" IsExpanded="true" AbsoluteBounds="3.3399199382532405, 2.0579093111321405, 2.7573885078430176, 0.2588533217906952">
17451
17463
  <ormDiagram:Subject ref="_B4F02530-8044-428F-A881-98A56E623EA1" />
17452
17464
  </ormDiagram:ModelNoteShape>
17453
- <ormDiagram:ModelNoteShape id="_10199046-1B19-4193-89A5-921FC83B67E3" IsExpanded="true" AbsoluteBounds="3.8964478916335477, 5.8747443518037477, 2.2699481601715088, 0.2588533217906952">
17465
+ <ormDiagram:ModelNoteShape id="_10199046-1B19-4193-89A5-921FC83B67E3" IsExpanded="true" AbsoluteBounds="3.9439091791314698, 6.1164832407562137, 2.8209532852172852, 0.37620357227325441">
17454
17466
  <ormDiagram:Subject ref="_AE143400-FB85-429A-9C4C-09C081A2C86A" />
17455
17467
  </ormDiagram:ModelNoteShape>
17456
- <ormDiagram:RingConstraintShape id="_DD40E02F-5956-4297-8A04-7A04D5CE6AA9" IsExpanded="true" AbsoluteBounds="2.4600036619820269, 1.9096187618274905, 0.213333333, 0.213333333">
17468
+ <ormDiagram:RingConstraintShape id="_DD40E02F-5956-4297-8A04-7A04D5CE6AA9" IsExpanded="true" AbsoluteBounds="2.507464949479949, 2.1513576507799579, 0.213333333, 0.213333333">
17457
17469
  <ormDiagram:Subject ref="_CC25CC73-F5C3-4684-B944-B359A3117BCF" />
17458
17470
  </ormDiagram:RingConstraintShape>
17459
- <ormDiagram:FactTypeShape id="_AAE796D7-DB60-4452-9D1E-B49A22280472" IsExpanded="true" AbsoluteBounds="1.7878970274071033, 6.3275863817583984, 0.6738888889923691, 0.30588888899236916">
17471
+ <ormDiagram:FactTypeShape id="_AAE796D7-DB60-4452-9D1E-B49A22280472" IsExpanded="true" AbsoluteBounds="1.8353583149050254, 6.5693252707108645, 0.6738888889923691, 0.30588888899236916">
17460
17472
  <ormDiagram:RelativeShapes>
17461
- <ormDiagram:ReadingShape id="_70193934-3A37-4197-BB16-19365F635DD5" IsExpanded="true" AbsoluteBounds="1.5269859760755695, 6.6712359856394876, 1.4981937408447266, 0.12950302660465241">
17473
+ <ormDiagram:ReadingShape id="_70193934-3A37-4197-BB16-19365F635DD5" IsExpanded="true" AbsoluteBounds="1.5744472635734916, 6.9129748745919537, 1.4981937408447266, 0.12950302660465241">
17462
17474
  <ormDiagram:Subject ref="_CBDE86EE-A121-4312-8F4E-146B62633CFB" />
17463
17475
  </ormDiagram:ReadingShape>
17464
- <ormDiagram:ObjectifiedFactTypeNameShape id="_D4635F4A-5450-456B-8D6C-1AB1F84A6F01" IsExpanded="true" AbsoluteBounds="1.7878970274071033, 6.13333184185142, 0.44460493326187134, 0.12950302660465241">
17476
+ <ormDiagram:ObjectifiedFactTypeNameShape id="_D4635F4A-5450-456B-8D6C-1AB1F84A6F01" IsExpanded="true" AbsoluteBounds="1.8353583149050254, 6.3750707308038859, 0.44460493326187134, 0.12950302660465241">
17465
17477
  <ormDiagram:Subject ref="_583079A2-FCCF-4B48-8E67-5193D9A5F427" />
17466
17478
  </ormDiagram:ObjectifiedFactTypeNameShape>
17467
17479
  </ormDiagram:RelativeShapes>
@@ -17472,9 +17484,9 @@ then that Absorption is some Component that belongs to some parent Mapping that
17472
17484
  <ormDiagram:Role ref="_3ECA0267-A4E1-4210-B6A7-40F9F5364470" />
17473
17485
  </ormDiagram:RoleDisplayOrder>
17474
17486
  </ormDiagram:FactTypeShape>
17475
- <ormDiagram:FactTypeShape id="_ED92330D-3F74-4353-A61C-14AD0F0771B0" IsExpanded="true" AbsoluteBounds="1.889686242430459, 3.55343276576903, 0.38388888899236917, 0.24388888899236916">
17487
+ <ormDiagram:FactTypeShape id="_ED92330D-3F74-4353-A61C-14AD0F0771B0" IsExpanded="true" AbsoluteBounds="1.9371475299283811, 3.7951716547214973, 0.38388888899236917, 0.24388888899236916">
17476
17488
  <ormDiagram:RelativeShapes>
17477
- <ormDiagram:ReadingShape id="_1351CB97-884D-47DC-8A0D-C2AADA7176A7" IsExpanded="true" AbsoluteBounds="1.623691331907164, 3.8620731680637252, 0.94861292839050293, 0.12950302660465241">
17489
+ <ormDiagram:ReadingShape id="_1351CB97-884D-47DC-8A0D-C2AADA7176A7" IsExpanded="true" AbsoluteBounds="1.6711526194050861, 4.1038120570161922, 0.94861292839050293, 0.12950302660465241">
17478
17490
  <ormDiagram:Subject ref="_E8E764A4-7D72-401B-AA0E-2E2463506B8C" />
17479
17491
  </ormDiagram:ReadingShape>
17480
17492
  </ormDiagram:RelativeShapes>
@@ -17484,9 +17496,9 @@ then that Absorption is some Component that belongs to some parent Mapping that
17484
17496
  <ormDiagram:Role ref="_26D94604-0A10-41E4-8A8E-3F145C9AB03B" />
17485
17497
  </ormDiagram:RoleDisplayOrder>
17486
17498
  </ormDiagram:FactTypeShape>
17487
- <ormDiagram:FactTypeShape id="_D85B6573-6777-483C-9739-B6C5EA483FBF" IsExpanded="true" AbsoluteBounds="2.6825151450227143, 5.3519685784035271, 0.38388888899236917, 0.24388888899236916">
17499
+ <ormDiagram:FactTypeShape id="_D85B6573-6777-483C-9739-B6C5EA483FBF" IsExpanded="true" AbsoluteBounds="2.7299764325206364, 5.5937074673559923, 0.38388888899236917, 0.24388888899236916">
17488
17500
  <ormDiagram:RelativeShapes>
17489
- <ormDiagram:ReadingShape id="_477D1A4A-FEB6-4740-AD94-2DCC546F1B25" IsExpanded="true" AbsoluteBounds="2.383139738997794, 5.6606089806982229, 1.0404708385467529, 0.12950302660465241">
17501
+ <ormDiagram:ReadingShape id="_477D1A4A-FEB6-4740-AD94-2DCC546F1B25" IsExpanded="true" AbsoluteBounds="2.4306010264957161, 5.9023478696506881, 1.0404708385467529, 0.12950302660465241">
17490
17502
  <ormDiagram:Subject ref="_42202CEC-82BF-4475-AA2E-8A193D50C3CA" />
17491
17503
  </ormDiagram:ReadingShape>
17492
17504
  </ormDiagram:RelativeShapes>
@@ -17496,27 +17508,27 @@ then that Absorption is some Component that belongs to some parent Mapping that
17496
17508
  <ormDiagram:Role ref="_42115505-97E1-48B9-87D6-71DB1378ED86" />
17497
17509
  </ormDiagram:RoleDisplayOrder>
17498
17510
  </ormDiagram:FactTypeShape>
17499
- <ormDiagram:ExternalConstraintShape id="_53658C42-AA3E-43BF-89F5-E4186C1FFB73" IsExpanded="true" AbsoluteBounds="3.9348337118742007, 4.1042802237304183, 0.16, 0.16">
17511
+ <ormDiagram:ExternalConstraintShape id="_53658C42-AA3E-43BF-89F5-E4186C1FFB73" IsExpanded="true" AbsoluteBounds="3.9822949993721228, 4.3460191126828835, 0.16, 0.16">
17500
17512
  <ormDiagram:Subject ref="_07F24ACF-D8A5-40A0-92FC-BFC087225CB8" />
17501
17513
  </ormDiagram:ExternalConstraintShape>
17502
- <ormDiagram:ExternalConstraintShape id="_D6BA0B2F-03D9-4192-8723-9AC88F6E6C6E" IsExpanded="true" AbsoluteBounds="4.3772105581792458, 3.5022833652498631, 0.16, 0.16">
17514
+ <ormDiagram:ExternalConstraintShape id="_D6BA0B2F-03D9-4192-8723-9AC88F6E6C6E" IsExpanded="true" AbsoluteBounds="4.3772105581792458, 3.7440222542023305, 0.16, 0.16">
17503
17515
  <ormDiagram:Subject ref="_CC4F9EB2-1E67-4EDB-A6C1-50D4D144CF0B" />
17504
17516
  </ormDiagram:ExternalConstraintShape>
17505
- <ormDiagram:ModelNoteShape id="_289B6686-8BDE-453A-A99C-7F992AA3693A" IsExpanded="true" AbsoluteBounds="3.9946381479633652, 3.09246810306024, 5.0495642776489253, 0.2588533217906952">
17517
+ <ormDiagram:ModelNoteShape id="_289B6686-8BDE-453A-A99C-7F992AA3693A" IsExpanded="true" AbsoluteBounds="4.0420994354612878, 3.3342069920127075, 4.8204177970886226, 0.2588533217906952">
17506
17518
  <ormDiagram:Subject ref="_2E8601DA-1E1A-4EE0-9FD8-90A6434BAFF3" />
17507
17519
  </ormDiagram:ModelNoteShape>
17508
- <ormDiagram:ObjectTypeShape id="_9B2C9E3F-21DC-419B-923F-B9E10D046DCF" IsExpanded="true" AbsoluteBounds="2.7667595581288489, 6.400779312952257, 0.52050363540649414, 0.22950302660465241">
17520
+ <ormDiagram:ObjectTypeShape id="_9B2C9E3F-21DC-419B-923F-B9E10D046DCF" IsExpanded="true" AbsoluteBounds="2.814220845626771, 6.6425182019047231, 0.52050363540649414, 0.22950302660465241">
17509
17521
  <ormDiagram:Subject ref="_4674DAF9-EFB8-4C15-A06F-F75328A04FA0" />
17510
17522
  </ormDiagram:ObjectTypeShape>
17511
- <ormDiagram:ObjectTypeShape id="_1A10C89C-603B-42ED-905D-5D16A78F2C08" IsExpanded="true" AbsoluteBounds="1.064711456749381, 6.400779312952257, 0.37661665201187133, 0.22950302660465241">
17523
+ <ormDiagram:ObjectTypeShape id="_1A10C89C-603B-42ED-905D-5D16A78F2C08" IsExpanded="true" AbsoluteBounds="1.1121727442473031, 6.6425182019047231, 0.37661665201187133, 0.22950302660465241">
17512
17524
  <ormDiagram:Subject ref="_ABCDC9B2-822F-4E84-83D4-3732C029BB1B" />
17513
17525
  </ormDiagram:ObjectTypeShape>
17514
- <ormDiagram:ObjectTypeShape id="_CC0205D9-76B1-41DD-A68E-82A8373F23BC" IsExpanded="true" AbsoluteBounds="0.97589234798299018, 5.3941615095973861, 0.44445383071899414, 0.22950302660465241">
17526
+ <ormDiagram:ObjectTypeShape id="_CC0205D9-76B1-41DD-A68E-82A8373F23BC" IsExpanded="true" AbsoluteBounds="1.0782541548937417, 5.8776392875023173, 0.44445383071899414, 0.22950302660465241">
17515
17527
  <ormDiagram:Subject ref="_25D2C6A4-DE21-447E-BB72-3EF90026E125" />
17516
17528
  </ormDiagram:ObjectTypeShape>
17517
- <ormDiagram:FactTypeShape id="_2F4E527E-F0E5-4C92-A2C2-A2705DC0FD64" IsExpanded="true" AbsoluteBounds="1.7121301457746032, 5.3519685784035271, 0.38388888899236917, 0.24388888899236916">
17529
+ <ormDiagram:FactTypeShape id="_2F4E527E-F0E5-4C92-A2C2-A2705DC0FD64" IsExpanded="true" AbsoluteBounds="1.7595914332725253, 5.8354463563084575, 0.38388888899236917, 0.24388888899236916">
17518
17530
  <ormDiagram:RelativeShapes>
17519
- <ormDiagram:ReadingShape id="_6841E320-7567-4700-BE2F-2F909AC9D65A" IsExpanded="true" AbsoluteBounds="1.5771761537065685, 5.6426151150891517, 0.45558311343193053, 0.12950302660465241">
17531
+ <ormDiagram:ReadingShape id="_6841E320-7567-4700-BE2F-2F909AC9D65A" IsExpanded="true" AbsoluteBounds="1.6246374412044906, 6.1260928929940821, 0.45558311343193053, 0.12950302660465241">
17520
17532
  <ormDiagram:Subject ref="_2F6A444C-6935-4A45-A2DA-AD4E9DC7ADFA" />
17521
17533
  </ormDiagram:ReadingShape>
17522
17534
  </ormDiagram:RelativeShapes>
@@ -17526,17 +17538,17 @@ then that Absorption is some Component that belongs to some parent Mapping that
17526
17538
  <ormDiagram:Role ref="_E2E061D9-1236-4EBE-8C67-F8CC143D35C0" />
17527
17539
  </ormDiagram:RoleDisplayOrder>
17528
17540
  </ormDiagram:FactTypeShape>
17529
- <ormDiagram:ObjectTypeShape id="_F19C5C8F-D780-40D9-A909-077A11908C51" IsExpanded="true" AbsoluteBounds="3.65787333681728, 6.400779312952257, 0.84259968519210815, 0.22950302660465241">
17541
+ <ormDiagram:ObjectTypeShape id="_F19C5C8F-D780-40D9-A909-077A11908C51" IsExpanded="true" AbsoluteBounds="3.7053346243152023, 6.6425182019047231, 0.84259968519210815, 0.22950302660465241">
17530
17542
  <ormDiagram:RelativeShapes>
17531
- <ormDiagram:ValueConstraintShape id="_88602EC0-5C95-4AFD-8D34-1242936131C7" IsExpanded="true" AbsoluteBounds="3.7057644055785022, 6.658144396942637, 1.5149987936019898, 0.12950302660465241">
17543
+ <ormDiagram:ValueConstraintShape id="_88602EC0-5C95-4AFD-8D34-1242936131C7" IsExpanded="true" AbsoluteBounds="3.7532256930764243, 6.8998832858951031, 1.5149987936019898, 0.12950302660465241">
17532
17544
  <ormDiagram:Subject ref="_E8FEEEEE-7745-4028-93DC-3AF8B9410873" />
17533
17545
  </ormDiagram:ValueConstraintShape>
17534
17546
  </ormDiagram:RelativeShapes>
17535
17547
  <ormDiagram:Subject ref="_D26C9629-CD3D-4D1D-A67D-4A2BBA474EA8" />
17536
17548
  </ormDiagram:ObjectTypeShape>
17537
- <ormDiagram:FactTypeShape id="_CB9CDD14-6AC9-4C3F-B3D6-AAC39B436BFE" IsExpanded="true" AbsoluteBounds="3.4132518319373677, 5.8306130548171868, 0.38388888899236917, 0.24388888899236916">
17549
+ <ormDiagram:FactTypeShape id="_CB9CDD14-6AC9-4C3F-B3D6-AAC39B436BFE" IsExpanded="true" AbsoluteBounds="3.46071311943529, 6.072351943769652, 0.38388888899236917, 0.24388888899236916">
17538
17550
  <ormDiagram:RelativeShapes>
17539
- <ormDiagram:ReadingShape id="_749BC027-4E8A-404E-97E3-8EEBBE8F4F78" IsExpanded="true" AbsoluteBounds="3.4132518319373677, 6.1392534571118826, 0.23026981949806213, 0.12950302660465241">
17551
+ <ormDiagram:ReadingShape id="_749BC027-4E8A-404E-97E3-8EEBBE8F4F78" IsExpanded="true" AbsoluteBounds="3.46071311943529, 6.3809923460643478, 0.23026981949806213, 0.12950302660465241">
17540
17552
  <ormDiagram:Subject ref="_084515E1-433A-4B79-ADA4-220359AF7181" />
17541
17553
  </ormDiagram:ReadingShape>
17542
17554
  </ormDiagram:RelativeShapes>
@@ -17546,12 +17558,12 @@ then that Absorption is some Component that belongs to some parent Mapping that
17546
17558
  <ormDiagram:Role ref="_6F4289FB-F681-49E7-AE52-307D4E89B92D" />
17547
17559
  </ormDiagram:RoleDisplayOrder>
17548
17560
  </ormDiagram:FactTypeShape>
17549
- <ormDiagram:ExternalConstraintShape id="_82F4AB44-E393-481D-AA60-D99BA28331FE" IsExpanded="true" AbsoluteBounds="2.5396115778090378, 5.9134617085455243, 0.16, 0.16">
17561
+ <ormDiagram:ExternalConstraintShape id="_82F4AB44-E393-481D-AA60-D99BA28331FE" IsExpanded="true" AbsoluteBounds="2.58707286530696, 6.1552005974979895, 0.16, 0.16">
17550
17562
  <ormDiagram:Subject ref="_BBBECAC9-D1F7-44FA-B35A-7FD880625809" />
17551
17563
  </ormDiagram:ExternalConstraintShape>
17552
- <ormDiagram:FactTypeShape id="_8D7421C7-2A1A-438C-BCD1-6D4A7E4D760E" IsExpanded="true" AbsoluteBounds="1.7357538985951133, 1.356869614417453, 0.38388888899236917, 0.24388888899236916">
17564
+ <ormDiagram:FactTypeShape id="_8D7421C7-2A1A-438C-BCD1-6D4A7E4D760E" IsExpanded="true" AbsoluteBounds="1.669856991078748, 0.5, 0.38388888899236917, 0.24388888899236916">
17553
17565
  <ormDiagram:RelativeShapes>
17554
- <ormDiagram:ReadingShape id="_15A1392D-F273-4872-A1EF-F56FF9B68F8F" IsExpanded="true" AbsoluteBounds="1.7357538985951133, 1.6655100167121484, 0.68734036684036259, 0.12950302660465241">
17566
+ <ormDiagram:ReadingShape id="_15A1392D-F273-4872-A1EF-F56FF9B68F8F" IsExpanded="true" AbsoluteBounds="1.669856991078748, 0.80864040229469536, 0.68734036684036259, 0.12950302660465241">
17555
17567
  <ormDiagram:Subject ref="_B14CDB5C-FCD6-4A75-A508-294DED802DF9" />
17556
17568
  </ormDiagram:ReadingShape>
17557
17569
  </ormDiagram:RelativeShapes>
@@ -17561,15 +17573,24 @@ then that Absorption is some Component that belongs to some parent Mapping that
17561
17573
  <ormDiagram:Role ref="_31534373-6DA5-4ED9-8E05-3D542789DB8F" />
17562
17574
  </ormDiagram:RoleDisplayOrder>
17563
17575
  </ormDiagram:FactTypeShape>
17564
- <ormDiagram:ObjectTypeShape id="_6CB0BD23-80DC-4C83-8F45-D2F3BA0C5F62" IsExpanded="true" AbsoluteBounds="1.57916431201069, 1.9023128183084745, 0.52050363540649414, 0.22950302660465241">
17576
+ <ormDiagram:ObjectTypeShape id="_6CB0BD23-80DC-4C83-8F45-D2F3BA0C5F62" IsExpanded="true" AbsoluteBounds="0.72998418426513667, 0.54219293119385836, 0.52050363540649414, 0.22950302660465241">
17565
17577
  <ormDiagram:Subject ref="_4674DAF9-EFB8-4C15-A06F-F75328A04FA0" />
17566
17578
  </ormDiagram:ObjectTypeShape>
17567
- <ormDiagram:ObjectTypeShape id="_6506969F-2DEE-4C7B-856D-740693D13397" IsExpanded="true" AbsoluteBounds="4.4932869920115488, 2.483153350353632, 0.67483442544937133, 0.22950302660465241">
17579
+ <ormDiagram:ObjectTypeShape id="_6506969F-2DEE-4C7B-856D-740693D13397" IsExpanded="true" AbsoluteBounds="4.9704619752817365, 3.0473790285021325, 0.67483442544937133, 0.22950302660465241">
17568
17580
  <ormDiagram:Subject ref="_8081637F-F1BE-4B58-BF6C-0359BFC7CD53" />
17569
17581
  </ormDiagram:ObjectTypeShape>
17570
- <ormDiagram:ModelNoteShape id="_D947E81E-4B82-49B6-9D85-6E67D18791BC" IsExpanded="true" AbsoluteBounds="5.3441782754668452, 2.5271533503536316, 2.5330683345794678, 0.14150302660465242">
17582
+ <ormDiagram:ModelNoteShape id="_D947E81E-4B82-49B6-9D85-6E67D18791BC" IsExpanded="true" AbsoluteBounds="5.8213532587370329, 3.0913790285021321, 2.5330683345794678, 0.14150302660465242">
17571
17583
  <ormDiagram:Subject ref="_B42BE929-8E57-457F-B9AE-5E5BC2316BC0" />
17572
17584
  </ormDiagram:ModelNoteShape>
17585
+ <ormDiagram:ModelNoteShape id="_0A40F88A-8232-4E64-A6B2-07DD3C68812D" IsExpanded="true" AbsoluteBounds="0.5, 4.1913923988079329, 0.98047200393676759, 0.37620357227325441">
17586
+ <ormDiagram:Subject ref="_E571EE2C-4AC2-477E-8BD1-6457D50EA7B6" />
17587
+ </ormDiagram:ModelNoteShape>
17588
+ <ormDiagram:ModelNoteShape id="_84650E8B-4627-486D-94C0-C77B38C23D7E" IsExpanded="true" AbsoluteBounds="2.3143964218813831, 0.5861929311938584, 3.4234491939544678, 0.14150302660465242">
17589
+ <ormDiagram:Subject ref="_42CD3236-A5DC-4E3A-84A7-DA06AD6FBA74" />
17590
+ </ormDiagram:ModelNoteShape>
17591
+ <ormDiagram:ModelNoteShape id="_039A05D9-B8EC-428D-8CE8-3028EC081619" IsExpanded="true" AbsoluteBounds="0.596695555580987, 7.1226730346679688, 5.0554503555297847, 0.2588533217906952">
17592
+ <ormDiagram:Subject ref="_519F86D3-A4F4-41CE-9F4B-F1A476C22426" />
17593
+ </ormDiagram:ModelNoteShape>
17573
17594
  </ormDiagram:Shapes>
17574
17595
  <ormDiagram:Subject ref="_E99B1F8C-EF79-4A4B-8EBC-66FFD234E616" />
17575
17596
  </ormDiagram:ORMDiagram>
@@ -17633,9 +17654,9 @@ then that Absorption is some Component that belongs to some parent Mapping that
17633
17654
  <ormDiagram:Subject ref="_E99B1F8C-EF79-4A4B-8EBC-66FFD234E616" />
17634
17655
  </ormDiagram:ORMDiagram>
17635
17656
  <diagramDisplay:DiagramDisplay id="_36114BE7-E5F8-4043-B0F7-86F614309DA9" SaveDiagramPosition="true">
17636
- <diagramDisplay:Diagram id="_2BBFBCD4-5B03-4041-BDF3-C3D20F82230E" ref="_DA90097C-5E98-485C-B45D-0ADDC8EF660B" CenterPoint="5.3180388676557007, 3.0552385225894509" ZoomFactor="1.13704979" />
17637
- <diagramDisplay:Diagram id="_91C59B24-B619-4264-82BB-C5F0C17F0962" ref="_F37D50E6-A512-482F-A8D4-70334B31CAF2" CenterPoint="4.0212015596516828, 2.3101993456396834" ZoomFactor="1.5037483" />
17638
- <diagramDisplay:Diagram id="_F680603C-B795-49C1-8665-FF62A2C42E30" ref="_107EEF4C-2438-41D6-96FC-64110DC7F234" CenterPoint="4.0212015596516828, 2.5872847244270516" ZoomFactor="1.5037483" />
17657
+ <diagramDisplay:Diagram id="_2BBFBCD4-5B03-4041-BDF3-C3D20F82230E" ref="_DA90097C-5E98-485C-B45D-0ADDC8EF660B" CenterPoint="5.9089320751730012, 3.4171033551000454" ZoomFactor="1.13704979" />
17658
+ <diagramDisplay:Diagram id="_91C59B24-B619-4264-82BB-C5F0C17F0962" ref="_F37D50E6-A512-482F-A8D4-70334B31CAF2" CenterPoint="4.4680017329463144, 2.5838211571922094" ZoomFactor="1.5037483" />
17659
+ <diagramDisplay:Diagram id="_F680603C-B795-49C1-8665-FF62A2C42E30" ref="_107EEF4C-2438-41D6-96FC-64110DC7F234" CenterPoint="4.0212015596516828, 2.5838211571922094" ZoomFactor="1.5037483" />
17639
17660
  <diagramDisplay:Diagram id="_8A7EB9D9-9782-4B98-BEB8-4925A92F418E" ref="_E6507DF3-A512-482F-A8D4-70334B31CAF2" CenterPoint="4.9681002248616224, 2.6268116131452257" ZoomFactor="1.3225" />
17640
17661
  <diagramDisplay:Diagram id="_1BF33124-B049-4A79-8EEA-23EACFF57ADD" ref="_42D757AB-38DD-4061-8929-7BAEB5912A36" CenterPoint="5.0306579311432529, 2.7124925186924429" ZoomFactor="1.30760729" />
17641
17662
  <diagramDisplay:Diagram id="_9FD5F577-0352-412D-A2F3-708E9F81C997" ref="_89024882-AAC6-4033-9E04-41B22DA86FC4" CenterPoint="4.9740075973049773, 2.6819470892832067" ZoomFactor="1.3225" />
@@ -17643,10 +17664,10 @@ then that Absorption is some Component that belongs to some parent Mapping that
17643
17664
  <diagramDisplay:Diagram id="_B1F54A7E-3930-4803-B9CA-8762146921BF" ref="_E67D50F3-A512-482F-A8D4-70334B31CAF2" CenterPoint="5.0306579311432529, 2.7124925186924429" ZoomFactor="1.30760729" />
17644
17665
  <diagramDisplay:Diagram id="_D9EAA91F-2766-43C2-A029-2A9C308B0E77" ref="_ABD75742-38DD-4061-8929-7BAEB5912A36" CenterPoint="4.1659818166198779, 2.3321279220042226" ZoomFactor="1.520875" />
17645
17666
  <diagramDisplay:Diagram id="_82A4D73D-7B13-4881-A51F-8CAB1D52E40B" ref="_40EBB5F3-C265-444F-8FB0-E8240F9F2278" CenterPoint="4.3252240315584922, 2.3321279220042226" ZoomFactor="1.520875" />
17646
- <diagramDisplay:Diagram id="_2D90736A-0B96-49C0-A224-995D1259160E" ref="_190E178C-2240-4FB2-BC97-C46F01F5DE17" CenterPoint="4.624381518651874, 2.9753772561868645" ZoomFactor="1.30760729" />
17667
+ <diagramDisplay:Diagram id="_2D90736A-0B96-49C0-A224-995D1259160E" ref="_190E178C-2240-4FB2-BC97-C46F01F5DE17" CenterPoint="5.1382016873909713, 2.9713941541036157" ZoomFactor="1.30760729" />
17647
17668
  <diagramDisplay:Diagram id="_57E7F408-FBE8-4009-82EC-A3E88F0DA20A" ref="_86C40B76-3BD0-48A2-82AE-0249005503FC" CenterPoint="5.2581522829253213, 3.383152244052726" ZoomFactor="1.15" />
17648
- <diagramDisplay:Diagram id="_05371502-2ACB-43D7-8AE7-E8A19C0B2B13" ref="_6AEDDB43-BD63-487D-94C9-6E1E01CF1237" CenterPoint="4.3744854176055776, 2.5872847244270516" ZoomFactor="1.5037483" />
17649
- <diagramDisplay:Diagram id="_55A2B3F0-97C3-4FE2-84B3-5F34D393F77E" ref="_099D32BA-5B3C-4FD4-BFCE-C5B30ECB6683" CenterPoint="5.22271949303294, 3.7877087107095053" ZoomFactor="1.157802" IsActive="true" />
17669
+ <diagramDisplay:Diagram id="_05371502-2ACB-43D7-8AE7-E8A19C0B2B13" ref="_6AEDDB43-BD63-487D-94C9-6E1E01CF1237" CenterPoint="4.8212855909002093, 2.5838211571922094" ZoomFactor="1.5037483" />
17670
+ <diagramDisplay:Diagram id="_55A2B3F0-97C3-4FE2-84B3-5F34D393F77E" ref="_099D32BA-5B3C-4FD4-BFCE-C5B30ECB6683" CenterPoint="6.062191692357402, 4.041461128238268" ZoomFactor="1.10830379" IsActive="true" />
17650
17671
  </diagramDisplay:DiagramDisplay>
17651
17672
  <oial:model id="_2864B7FA-6FBE-4B7F-B519-EA46B095A655" name="Metamodel">
17652
17673
  <oial:informationTypeFormats>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activefacts-metamodel
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.3
4
+ version: 1.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Clifford Heath
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-11-11 00:00:00.000000000 Z
11
+ date: 2015-12-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -64,20 +64,20 @@ dependencies:
64
64
  requirements:
65
65
  - - ">="
66
66
  - !ruby/object:Gem::Version
67
- version: '1.8'
67
+ version: '1.9'
68
68
  - - "~>"
69
69
  - !ruby/object:Gem::Version
70
- version: 1.8.5
70
+ version: 1.9.0
71
71
  type: :runtime
72
72
  prerelease: false
73
73
  version_requirements: !ruby/object:Gem::Requirement
74
74
  requirements:
75
75
  - - ">="
76
76
  - !ruby/object:Gem::Version
77
- version: '1.8'
77
+ version: '1.9'
78
78
  - - "~>"
79
79
  - !ruby/object:Gem::Version
80
- version: 1.8.5
80
+ version: 1.9.0
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: activefacts
83
83
  requirement: !ruby/object:Gem::Requirement