lutaml-xmi 0.1.1 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Makefile +2 -0
- data/lib/lutaml/xmi/parsers/xml.rb +253 -57
- data/lib/lutaml/xmi/version.rb +1 -1
- data/lutaml-xmi.gemspec +1 -1
- data/spec/fixtures/ea-xmi-2.4.2.xmi +406 -0
- data/spec/lutaml/parsers/xmi_spec.rb +29 -2
- metadata +18 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a8097eb270cce873bbed9f698a85383bc579844db4729be05923d2866bb2d47a
|
4
|
+
data.tar.gz: 327a2b1dfe675de37dc5ba0cffeb502581c8889dc62193ac0fa96ad166bea477
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b222a705723f2f07767955f17f4a3789dce863697d865937708c3abdf0c59fa100dfdd754f188930a131950e9ab5e033ebb3be8d447ddf06f9c400157837f984
|
7
|
+
data.tar.gz: 8772040cc940d2de1389592ea7a3fb3b06c2d114d17511072d8bb4abe748d26111d58b4bcff626e1d3b55bb6b98a9ba017a52572b6853be399dfd650721d36ba
|
data/Makefile
ADDED
@@ -7,17 +7,17 @@ module Lutaml
|
|
7
7
|
module Parsers
|
8
8
|
# Class for parsing .xmi schema files into ::Lutaml::Uml::Document
|
9
9
|
class XML
|
10
|
-
|
11
|
-
"
|
12
|
-
"
|
13
|
-
}
|
10
|
+
LOVER_VALUE_MAPPINGS = {
|
11
|
+
"0" => "C",
|
12
|
+
"1" => "M",
|
13
|
+
}.freeze
|
14
14
|
attr_reader :main_model, :xmi_cache
|
15
15
|
|
16
16
|
# @param [String] io - file object with path to .xmi file
|
17
17
|
# [Hash] options - options for parsing
|
18
18
|
#
|
19
19
|
# @return [Lutaml::XMI::Model::Document]
|
20
|
-
def self.parse(io,
|
20
|
+
def self.parse(io, _options = {})
|
21
21
|
new.parse(Nokogiri::XML(io.read))
|
22
22
|
end
|
23
23
|
|
@@ -31,20 +31,25 @@ module Lutaml
|
|
31
31
|
private
|
32
32
|
|
33
33
|
def serialize_to_hash(xmi_doc)
|
34
|
-
|
34
|
+
model = xmi_doc.xpath('//uml:Model[@xmi:type="uml:Model"]').first
|
35
35
|
{
|
36
|
-
name:
|
37
|
-
packages: serialize_model_packages(
|
36
|
+
name: model["name"],
|
37
|
+
packages: serialize_model_packages(model)
|
38
38
|
}
|
39
39
|
end
|
40
40
|
|
41
|
-
def serialize_model_packages(
|
42
|
-
|
41
|
+
def serialize_model_packages(model)
|
42
|
+
model.xpath('./packagedElement[@xmi:type="uml:Package"]').map do |package|
|
43
43
|
{
|
44
|
+
xmi_id: package["xmi:id"],
|
44
45
|
name: package["name"],
|
45
|
-
packages: serialize_model_packages(package),
|
46
46
|
classes: serialize_model_classes(package),
|
47
|
-
enums: serialize_model_enums(package)
|
47
|
+
enums: serialize_model_enums(package),
|
48
|
+
data_types: serialize_model_data_types(package),
|
49
|
+
diagrams: serialize_model_diagrams(package),
|
50
|
+
packages: serialize_model_packages(package),
|
51
|
+
definition: doc_node_attribute_value(package, "documentation"),
|
52
|
+
stereotype: doc_node_attribute_value(package, "stereotype")
|
48
53
|
}
|
49
54
|
end
|
50
55
|
end
|
@@ -52,12 +57,17 @@ module Lutaml
|
|
52
57
|
def serialize_model_classes(model)
|
53
58
|
model.xpath('./packagedElement[@xmi:type="uml:Class"]').map do |klass|
|
54
59
|
{
|
55
|
-
xmi_id: klass[
|
56
|
-
xmi_uuid: klass[
|
57
|
-
name: klass[
|
60
|
+
xmi_id: klass["xmi:id"],
|
61
|
+
xmi_uuid: klass["xmi:uuid"],
|
62
|
+
name: klass["name"],
|
63
|
+
package: model,
|
58
64
|
attributes: serialize_class_attributes(klass),
|
59
65
|
associations: serialize_model_associations(klass),
|
60
|
-
|
66
|
+
operations: serialize_class_operations(klass),
|
67
|
+
constraints: serialize_class_constraints(klass),
|
68
|
+
is_abstract: doc_node_attribute_value(klass, "isAbstract"),
|
69
|
+
definition: doc_node_attribute_value(klass, "documentation"),
|
70
|
+
stereotype: doc_node_attribute_value(klass, "stereotype")
|
61
71
|
}
|
62
72
|
end
|
63
73
|
end
|
@@ -65,63 +75,235 @@ module Lutaml
|
|
65
75
|
def serialize_model_enums(model)
|
66
76
|
model.xpath('./packagedElement[@xmi:type="uml:Enumeration"]').map do |enum|
|
67
77
|
attributes = enum
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
78
|
+
.xpath('.//ownedLiteral[@xmi:type="uml:EnumerationLiteral"]')
|
79
|
+
.map do |value|
|
80
|
+
type = value.xpath(".//type").first || {}
|
81
|
+
{
|
82
|
+
name: value["name"],
|
83
|
+
type: lookup_entity_name(type["xmi:idref"]) || type["xmi:idref"],
|
84
|
+
definition: lookup_attribute_definition(value),
|
85
|
+
}
|
86
|
+
end
|
76
87
|
{
|
77
|
-
xmi_id: enum[
|
78
|
-
xmi_uuid: enum[
|
79
|
-
name: enum[
|
80
|
-
|
88
|
+
xmi_id: enum["xmi:id"],
|
89
|
+
xmi_uuid: enum["xmi:uuid"],
|
90
|
+
name: enum["name"],
|
91
|
+
values: attributes,
|
92
|
+
definition: doc_node_attribute_value(enum, "documentation"),
|
93
|
+
stereotype: doc_node_attribute_value(enum, "stereotype"),
|
81
94
|
}
|
82
95
|
end
|
83
96
|
end
|
84
97
|
|
85
|
-
def
|
86
|
-
|
98
|
+
def serialize_model_data_types(model)
|
99
|
+
model.xpath('./packagedElement[@xmi:type="uml:DataType"]').map do |klass|
|
100
|
+
{
|
101
|
+
xmi_id: klass["xmi:id"],
|
102
|
+
xmi_uuid: klass["xmi:uuid"],
|
103
|
+
name: klass["name"],
|
104
|
+
attributes: serialize_class_attributes(klass),
|
105
|
+
operations: serialize_class_operations(klass),
|
106
|
+
associations: serialize_model_associations(klass),
|
107
|
+
constraints: serialize_class_constraints(klass),
|
108
|
+
is_abstract: doc_node_attribute_value(klass, "isAbstract"),
|
109
|
+
definition: doc_node_attribute_value(klass, "documentation"),
|
110
|
+
stereotype: doc_node_attribute_value(klass, "stereotype"),
|
111
|
+
}
|
112
|
+
end
|
113
|
+
end
|
87
114
|
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
115
|
+
def serialize_model_diagrams(node)
|
116
|
+
main_model.xpath(%(//diagrams/diagram/model[@package="#{node['xmi:id']}"])).map do |diagram_model|
|
117
|
+
diagram = diagram_model.parent
|
118
|
+
properties = diagram.children.find {|n| n.name == 'properties' }
|
119
|
+
{
|
120
|
+
xmi_id: diagram["xmi:id"],
|
121
|
+
name: properties["name"],
|
122
|
+
definition: properties.attributes['documentation']&.value
|
123
|
+
}
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
def serialize_model_associations(klass)
|
128
|
+
xmi_id = klass["xmi:id"]
|
129
|
+
main_model.xpath(%(//element[@xmi:idref="#{xmi_id}"]/links/*)).map do |link|
|
130
|
+
member_end, member_end_type, member_end_cardinality, member_end_attribute_name = serialize_member_type(xmi_id, link)
|
131
|
+
owned_end_cardinality, owned_end_attribute_name = serialize_owned_type(xmi_id, link)
|
132
|
+
if member_end && ((member_end_type != 'aggregation') || (member_end_type == 'aggregation' && member_end_attribute_name))
|
133
|
+
definition_node = main_model.xpath(%(//connector[@xmi:idref="#{link['xmi:id']}"]/target/documentation)).first
|
134
|
+
definition = definition_node.attributes['value']&.value if definition_node
|
135
|
+
{
|
136
|
+
xmi_id: link["xmi:id"],
|
137
|
+
member_end: member_end,
|
138
|
+
member_end_type: member_end_type,
|
139
|
+
member_end_cardinality: member_end_cardinality,
|
140
|
+
member_end_attribute_name: member_end_attribute_name,
|
141
|
+
definition: definition
|
142
|
+
}
|
92
143
|
end
|
93
|
-
|
144
|
+
end
|
145
|
+
end
|
146
|
+
|
147
|
+
def serialize_class_operations(klass)
|
148
|
+
klass.xpath('.//ownedOperation').map do |attribute|
|
149
|
+
type = attribute.xpath(".//type").first || {}
|
150
|
+
if attribute.attributes["association"].nil?
|
94
151
|
{
|
95
|
-
|
96
|
-
|
97
|
-
name:
|
98
|
-
|
152
|
+
# TODO: xmi_id
|
153
|
+
# xmi_id: klass['xmi:id'],
|
154
|
+
name: attribute["name"],
|
155
|
+
definition: lookup_attribute_definition(attribute),
|
99
156
|
}
|
100
157
|
end
|
101
158
|
end.compact
|
102
159
|
end
|
103
160
|
|
104
|
-
def
|
105
|
-
klass.xpath(
|
106
|
-
type = attribute.xpath('.//type').first || {}
|
107
|
-
lowerValue = attribute.xpath('.//lowerValue').first || {}
|
108
|
-
upperValue = attribute.xpath('.//upperValue').first || {}
|
161
|
+
def serialize_class_constraints(klass)
|
162
|
+
class_element_metadata(klass).xpath("./constraints/constraint").map do |constraint|
|
109
163
|
{
|
110
|
-
|
111
|
-
|
112
|
-
name: attribute['name'],
|
113
|
-
type: lookup_entity_name(type['xmi:idref']) || type['xmi:idref'],
|
114
|
-
cardinality: [ATTRIBUTE_MAPPINGS[lowerValue["xmi:type"]], ATTRIBUTE_MAPPINGS[upperValue["xmi:type"]]].compact
|
164
|
+
xmi_id: constraint["xmi:id"],
|
165
|
+
body: constraint["name"],
|
115
166
|
}
|
116
167
|
end
|
117
168
|
end
|
118
169
|
|
119
|
-
def
|
120
|
-
|
121
|
-
|
122
|
-
|
170
|
+
def serialize_owned_type(owned_xmi_id, link)
|
171
|
+
return if link.name == 'NoteLink'
|
172
|
+
return generalization_association(owned_xmi_id, link) if link.name == "Generalization"
|
173
|
+
|
174
|
+
xmi_id = link.attributes["start"].value
|
175
|
+
|
176
|
+
if link.name == "Association"
|
177
|
+
assoc_connector = main_model.xpath(%(//connector[@xmi:idref="#{link['xmi:id']}"]/source)).first
|
178
|
+
if assoc_connector
|
179
|
+
connector_type = assoc_connector.children.find { |node| node.name == 'type' }
|
180
|
+
if connector_type && connector_type.attributes['multiplicity']
|
181
|
+
cardinality = connector_type.attributes['multiplicity']&.value&.split('..')
|
182
|
+
cardinality.unshift('1') if cardinality.length == 1
|
183
|
+
min, max = cardinality
|
184
|
+
end
|
185
|
+
connector_role = assoc_connector.children.find { |node| node.name == 'role' }
|
186
|
+
if connector_role
|
187
|
+
owned_attribute_name = connector_role.attributes["name"]&.value
|
188
|
+
end
|
189
|
+
owned_cardinality = { "min" => LOVER_VALUE_MAPPINGS[min], "max" => max }
|
190
|
+
end
|
191
|
+
else
|
192
|
+
owned_node = main_model.xpath(%(//ownedAttribute[@association]/type[@xmi:idref="#{xmi_id}"])).first
|
193
|
+
if owned_node
|
194
|
+
assoc = owned_node.parent
|
195
|
+
owned_cardinality = { "min" => cardinality_min_value(assoc), "max" => cardinality_max_value(assoc) }
|
196
|
+
owned_attribute_name = assoc.attributes["name"]&.value
|
197
|
+
end
|
198
|
+
end
|
199
|
+
|
200
|
+
[owned_cardinality, owned_attribute_name]
|
201
|
+
end
|
202
|
+
|
203
|
+
def serialize_member_type(owned_xmi_id, link)
|
204
|
+
return if link.name == 'NoteLink'
|
205
|
+
return generalization_association(owned_xmi_id, link) if link.name == "Generalization"
|
206
|
+
|
207
|
+
xmi_id = link.attributes["start"].value
|
208
|
+
member_end = lookup_entity_name(xmi_id) || connector_source_name(xmi_id)
|
209
|
+
|
210
|
+
if link.name == "Association"
|
211
|
+
assoc_connector = main_model.xpath(%(//connector[@xmi:idref="#{link['xmi:id']}"]/target)).first
|
212
|
+
if assoc_connector
|
213
|
+
connector_type = assoc_connector.children.find { |node| node.name == 'type' }
|
214
|
+
if connector_type && connector_type.attributes['multiplicity']
|
215
|
+
cardinality = connector_type.attributes['multiplicity']&.value&.split('..')
|
216
|
+
cardinality.unshift('1') if cardinality.length == 1
|
217
|
+
min, max = cardinality
|
218
|
+
end
|
219
|
+
connector_role = assoc_connector.children.find { |node| node.name == 'role' }
|
220
|
+
if connector_role
|
221
|
+
member_end_attribute_name = connector_role.attributes["name"]&.value
|
222
|
+
end
|
223
|
+
member_end_cardinality = { "min" => LOVER_VALUE_MAPPINGS[min], "max" => max }
|
224
|
+
end
|
225
|
+
else
|
226
|
+
member_end_node = main_model.xpath(%(//ownedAttribute[@association]/type[@xmi:idref="#{xmi_id}"])).first
|
227
|
+
if member_end_node
|
228
|
+
assoc = member_end_node.parent
|
229
|
+
member_end_cardinality = { "min" => cardinality_min_value(assoc), "max" => cardinality_max_value(assoc) }
|
230
|
+
member_end_attribute_name = assoc.attributes["name"]&.value
|
231
|
+
end
|
232
|
+
end
|
123
233
|
|
124
|
-
|
234
|
+
[member_end, "aggregation", member_end_cardinality, member_end_attribute_name]
|
235
|
+
end
|
236
|
+
|
237
|
+
def generalization_association(owned_xmi_id, link)
|
238
|
+
if link.attributes["start"].value == owned_xmi_id
|
239
|
+
xmi_id = link.attributes["end"].value
|
240
|
+
member_end_type = "inheritance"
|
241
|
+
member_end = lookup_entity_name(xmi_id) || connector_target_name(xmi_id)
|
242
|
+
else
|
243
|
+
xmi_id = link.attributes["start"].value
|
244
|
+
member_end_type = "generalization"
|
245
|
+
member_end = lookup_entity_name(xmi_id) || connector_source_name(xmi_id)
|
246
|
+
end
|
247
|
+
|
248
|
+
member_end_node = main_model.xpath(%(//ownedAttribute[@association]/type[@xmi:idref="#{xmi_id}"])).first
|
249
|
+
if member_end_node
|
250
|
+
assoc = member_end_node.parent
|
251
|
+
member_end_cardinality = { "min" => cardinality_min_value(assoc), "max" => cardinality_max_value(assoc) }
|
252
|
+
end
|
253
|
+
|
254
|
+
[member_end, member_end_type, member_end_cardinality, nil]
|
255
|
+
end
|
256
|
+
|
257
|
+
def class_element_metadata(klass)
|
258
|
+
main_model.xpath(%(//element[@xmi:idref="#{klass['xmi:id']}"]))
|
259
|
+
end
|
260
|
+
|
261
|
+
def serialize_class_attributes(klass)
|
262
|
+
klass.xpath('.//ownedAttribute[@xmi:type="uml:Property"]').map do |attribute|
|
263
|
+
type = attribute.xpath(".//type").first || {}
|
264
|
+
if attribute.attributes["association"].nil?
|
265
|
+
{
|
266
|
+
# TODO: xmi_id
|
267
|
+
# xmi_id: klass['xmi:id'],
|
268
|
+
name: attribute["name"],
|
269
|
+
type: lookup_entity_name(type["xmi:idref"]) || type["xmi:idref"],
|
270
|
+
is_derived: attribute["isDerived"],
|
271
|
+
cardinality: { "min" => cardinality_min_value(attribute), "max" => cardinality_max_value(attribute) },
|
272
|
+
definition: lookup_attribute_definition(attribute),
|
273
|
+
}
|
274
|
+
end
|
275
|
+
end.compact
|
276
|
+
end
|
277
|
+
|
278
|
+
def cardinality_min_value(node)
|
279
|
+
lower_value_node = node.xpath(".//lowerValue").first
|
280
|
+
return unless lower_value_node
|
281
|
+
|
282
|
+
lower_value = lower_value_node.attributes["value"]&.value
|
283
|
+
LOVER_VALUE_MAPPINGS[lower_value]
|
284
|
+
end
|
285
|
+
|
286
|
+
def cardinality_max_value(node)
|
287
|
+
upper_value_node = node.xpath(".//upperValue").first
|
288
|
+
return unless upper_value_node
|
289
|
+
|
290
|
+
upper_value_node.attributes["value"]&.value
|
291
|
+
end
|
292
|
+
|
293
|
+
def doc_node_attribute_value(node, attr_name)
|
294
|
+
xmi_id = node["xmi:id"]
|
295
|
+
doc_node = main_model.xpath(%(//element[@xmi:idref="#{xmi_id}"]/properties)).first
|
296
|
+
return unless doc_node
|
297
|
+
|
298
|
+
doc_node.attributes[attr_name]&.value
|
299
|
+
end
|
300
|
+
|
301
|
+
def lookup_attribute_definition(node)
|
302
|
+
xmi_id = node["xmi:id"]
|
303
|
+
doc_node = main_model.xpath(%(//attribute[@xmi:idref="#{xmi_id}"]/documentation)).first
|
304
|
+
return unless doc_node
|
305
|
+
|
306
|
+
doc_node.attributes["value"]&.value
|
125
307
|
end
|
126
308
|
|
127
309
|
def lookup_entity_name(xmi_id)
|
@@ -129,13 +311,27 @@ module Lutaml
|
|
129
311
|
xmi_cache[xmi_id]
|
130
312
|
end
|
131
313
|
|
314
|
+
def connector_source_name(xmi_id)
|
315
|
+
node = main_model.xpath(%(//source[@xmi:idref="#{xmi_id}"]/model)).first
|
316
|
+
return unless node
|
317
|
+
|
318
|
+
node.attributes["name"]&.value
|
319
|
+
end
|
320
|
+
|
321
|
+
def connector_target_name(xmi_id)
|
322
|
+
node = main_model.xpath(%(//target[@xmi:idref="#{xmi_id}"]/model)).first
|
323
|
+
return unless node
|
324
|
+
|
325
|
+
node.attributes["name"]&.value
|
326
|
+
end
|
327
|
+
|
132
328
|
def model_node_name_by_xmi_id(xmi_id)
|
133
|
-
node = main_model.xpath(%
|
329
|
+
node = main_model.xpath(%(//*[@xmi:id="#{xmi_id}"])).first
|
134
330
|
return unless node
|
135
331
|
|
136
|
-
node.attributes[
|
332
|
+
node.attributes["name"]&.value
|
137
333
|
end
|
138
334
|
end
|
139
335
|
end
|
140
336
|
end
|
141
|
-
end
|
337
|
+
end
|
data/lib/lutaml/xmi/version.rb
CHANGED
data/lutaml-xmi.gemspec
CHANGED
@@ -26,10 +26,10 @@ Gem::Specification.new do |spec|
|
|
26
26
|
spec.add_runtime_dependency "hashie", "~> 4.1.0"
|
27
27
|
spec.add_runtime_dependency "thor", "~> 1.0"
|
28
28
|
spec.add_runtime_dependency "lutaml-uml"
|
29
|
+
spec.add_runtime_dependency "nokogiri", "~> 1.10"
|
29
30
|
|
30
31
|
spec.add_development_dependency "bundler", "~> 2.0"
|
31
32
|
spec.add_development_dependency "byebug"
|
32
|
-
spec.add_development_dependency "nokogiri", "~> 1.10"
|
33
33
|
spec.add_development_dependency "pry", "~> 0.12.2"
|
34
34
|
spec.add_development_dependency "rake", "~> 10.0"
|
35
35
|
spec.add_development_dependency "rspec", "~> 3.0"
|
@@ -244,6 +244,41 @@
|
|
244
244
|
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="EAID_LI000064_49E6_4725_AC7B_382A34BB8935" value="1"/>
|
245
245
|
</ownedAttribute>
|
246
246
|
</packagedElement>
|
247
|
+
<packagedElement xmi:type="uml:Association" xmi:id="EAID_7F310A6F_F068_4c1d_8FFD_B01FE62D6D1C">
|
248
|
+
<memberEnd xmi:idref="EAID_dst310A6F_F068_4c1d_8FFD_B01FE62D6D1C"/>
|
249
|
+
<ownedEnd xmi:type="uml:Property" xmi:id="EAID_dst310A6F_F068_4c1d_8FFD_B01FE62D6D1C" association="EAID_7F310A6F_F068_4c1d_8FFD_B01FE62D6D1C">
|
250
|
+
<type xmi:idref="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA"/>
|
251
|
+
</ownedEnd>
|
252
|
+
<memberEnd xmi:idref="EAID_src310A6F_F068_4c1d_8FFD_B01FE62D6D1C"/>
|
253
|
+
</packagedElement>
|
254
|
+
<packagedElement xmi:type="uml:Class" xmi:id="EAID_37BF1557_0370_435d_94BB_8FCC4574561B" name="TemporalGeometricPrimitive" isAbstract="true">
|
255
|
+
<ownedAttribute xmi:type="uml:Property" xmi:id="EAID_43D3DBAC_3887_4b74_8DBB_949F1AFDE20E" name="spatialDimension">
|
256
|
+
<type xmi:idref="EAID_12886CE2_182E_4081_8D05_E09B06F51177"/>
|
257
|
+
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="EAID_LI000011_3887_4b74_8DBB_949F1AFDE20E" value="1"/>
|
258
|
+
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="EAID_LI000012_3887_4b74_8DBB_949F1AFDE20E" value="1"/>
|
259
|
+
</ownedAttribute>
|
260
|
+
<ownedAttribute xmi:type="uml:Property" xmi:id="EAID_5085D691_2244_4232_ACA0_CB0C32654079" name="temporalDimension">
|
261
|
+
<type xmi:idref="EAID_12886CE2_182E_4081_8D05_E09B06F51177"/>
|
262
|
+
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="EAID_LI000013_2244_4232_ACA0_CB0C32654079" value="1"/>
|
263
|
+
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="EAID_LI000014_2244_4232_ACA0_CB0C32654079" value="1"/>
|
264
|
+
</ownedAttribute>
|
265
|
+
<generalization xmi:type="uml:Generalization" xmi:id="EAID_84688F21_D758_44ab_870D_69D890029769" general="EAID_AF08B23A_D40E_4e8a_B258_60C53D27E384"/>
|
266
|
+
<generalization xmi:type="uml:Generalization" xmi:id="EAID_AD6CE071_3261_4681_B8E1_25AE657BBCD2" general="EAID_82DA65AB_212B_44fd_BCDC_232A2AA22542"/>
|
267
|
+
</packagedElement>
|
268
|
+
<packagedElement xmi:type="uml:Association" xmi:id="EAID_25C1510D_9559_406f_867E_2A350C45C8A5" name="Realisation">
|
269
|
+
<memberEnd xmi:idref="EAID_dstC1510D_9559_406f_867E_2A350C45C8A5"/>
|
270
|
+
<memberEnd xmi:idref="EAID_srcC1510D_9559_406f_867E_2A350C45C8A5"/>
|
271
|
+
<ownedEnd xmi:type="uml:Property" xmi:id="EAID_srcC1510D_9559_406f_867E_2A350C45C8A5" name="topology" association="EAID_25C1510D_9559_406f_867E_2A350C45C8A5">
|
272
|
+
<type xmi:idref="EAID_AE0137BF_A059_4c07_B438_75C5D3A3705D"/>
|
273
|
+
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="EAID_LI000015__9559_406f_867E_2A350C45C8A5" value="0"/>
|
274
|
+
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="EAID_LI000016__9559_406f_867E_2A350C45C8A5" value="*"/>
|
275
|
+
</ownedEnd>
|
276
|
+
<ownedEnd xmi:type="uml:Property" xmi:id="EAID_dstC1510D_9559_406f_867E_2A350C45C8A5" name="geometry" association="EAID_25C1510D_9559_406f_867E_2A350C45C8A5">
|
277
|
+
<type xmi:idref="EAID_37BF1557_0370_435d_94BB_8FCC4574561B"/>
|
278
|
+
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="EAID_LI000029__9559_406f_867E_2A350C45C8A5" value="0"/>
|
279
|
+
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="EAID_LI000030__9559_406f_867E_2A350C45C8A5" value="1"/>
|
280
|
+
</ownedEnd>
|
281
|
+
</packagedElement>
|
247
282
|
</packagedElement>
|
248
283
|
<packagedElement xmi:type="uml:Package" xmi:id="EAPK_6FEDD31A_6F40_4ed8_9230_600BB66D2296" name="Common Spatio-temporal Classes">
|
249
284
|
<packagedElement xmi:type="uml:Package" xmi:id="EAPK_C93A8CD8_53C7_4d95_8BC7_591AE2BB7563" name="Temporal and Zonal Geometry">
|
@@ -1216,6 +1251,377 @@
|
|
1216
1251
|
<appliedProfile xmi:type="uml:Profile" href="http://www.sparxsystems.com/profiles/thecustomprofile/1.0#thecustomprofile"/>
|
1217
1252
|
</profileApplication>
|
1218
1253
|
</uml:Model>
|
1254
|
+
<xmi:Extension extender="Enterprise Architect" extenderID="6.5">
|
1255
|
+
<elements>
|
1256
|
+
<element xmi:idref="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA" xmi:type="uml:Class" name="TemporalGeometricComplex" scope="public">
|
1257
|
+
<model package="EAPK_A6E46DCC_4D34_4dc0_AD3E_D006699DC90B" tpos="8" ea_localid="195" ea_eleType="element"/>
|
1258
|
+
<properties documentation="<b>Temporal Geometric Complex</b> implements geometric <b>Complex</b> for <b>Temporal Geometry.</b>" isSpecification="false" sType="Class" nType="0" scope="public" stereotype="interface" isRoot="false" isLeaf="false" isAbstract="true" isActive="false"/>
|
1259
|
+
<project author="Gibb Robert" version="1.0" phase="1.0" created="2019-12-28 17:33:48" modified="2020-12-04 15:29:48" complexity="1" status="Proposed"/>
|
1260
|
+
<code gentype="Java"/>
|
1261
|
+
<style appearance="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=1;HSwimLanes=1;BorderStyle=0;"/>
|
1262
|
+
<tags>
|
1263
|
+
<tag xmi:id="EAID_1538380D_5A39_4652_A61F_E3A59A665D40" name="callableElement" modelElement="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA"/>
|
1264
|
+
<tag xmi:id="EAID_99754119_9123_4fff_B8D8_4A3959990702" name="documentation" modelElement="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA"/>
|
1265
|
+
<tag xmi:id="EAID_D30569CC_A71F_406c_8270_173E28C03FBC" name="implementationRef" modelElement="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA"/>
|
1266
|
+
<tag xmi:id="EAID_36A4E32B_02A7_4ba2_B8DF_2C05DDD08030" name="operationRefs" modelElement="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA"/>
|
1267
|
+
</tags>
|
1268
|
+
<xrefs value="$XREFPROP=$XID={0FF4F100-7C89-4d8e-85B8-2A94D1E7D5B1}$XID;$NAM=Stereotypes$NAM;$TYP=element property$TYP;$VIS=Public$VIS;$PAR=0$PAR;$DES=@STEREO;Name=interface;GUID={5053837D-425B-435d-8D8B-C0487035B858};@ENDSTEREO;$DES;$CLT={60A00B1F-43C3-433b-8060-2EB473EEE6BA}$CLT;$SUP=<none>$SUP;$ENDXREF;"/>
|
1269
|
+
<extendedProperties tagged="0" package_name="Temporal Geometry and Topology"/>
|
1270
|
+
<links>
|
1271
|
+
<Generalization xmi:id="EAID_FBC084CC_4070_4dd5_8276_8A47DE1A72CD" start="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA" end="EAID_66ADAA69_93B4_4837_A00D_1AE9BB6FB53B"/>
|
1272
|
+
<Association xmi:id="EAID_7EB3B4C8_5C04_473c_A4D8_DE460008BE7F" start="EAID_00ACADD9_EF9A_4ac8_8257_3DB6227AF948" end="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA"/>
|
1273
|
+
<Aggregation xmi:id="EAID_7F310A6F_F068_4c1d_8FFD_B01FE62D6D1C" start="EAID_37BF1557_0370_435d_94BB_8FCC4574561B" end="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA"/>
|
1274
|
+
<Aggregation xmi:id="EAID_F502A1E3_E24C_4549_8B9F_8AF1E3F428C6" start="EAID_B1233577_2573_4def_A92F_1C0E83443842" end="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA"/>
|
1275
|
+
</links>
|
1276
|
+
</element>
|
1277
|
+
<element xmi:idref="EAID_66ADAA69_93B4_4837_A00D_1AE9BB6FB53B" xmi:type="uml:Class" name="TemporalGeometricCollection" scope="public">
|
1278
|
+
<model package="EAPK_A6E46DCC_4D34_4dc0_AD3E_D006699DC90B" tpos="9" ea_localid="201" ea_eleType="element"/>
|
1279
|
+
<properties documentation="<b>Temporal Geometric Collection</b> implements geometric <b>Collection</b> for <b>Temporal Geometry.</b>
" isSpecification="false" sType="Class" nType="0" scope="public" stereotype="interface" isRoot="false" isLeaf="false" isAbstract="true" isActive="false"/>
|
1280
|
+
<project author="Gibb Robert" version="1.0" phase="1.0" created="2020-02-18 09:35:33" modified="2020-12-04 15:29:52" complexity="1" status="Proposed"/>
|
1281
|
+
<code gentype="Java"/>
|
1282
|
+
<style appearance="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=1;HSwimLanes=1;BorderStyle=0;"/>
|
1283
|
+
<tags>
|
1284
|
+
<tag xmi:id="EAID_70343355_16F7_406d_82A7_D63CA70124F7" name="callableElement" modelElement="EAID_66ADAA69_93B4_4837_A00D_1AE9BB6FB53B"/>
|
1285
|
+
<tag xmi:id="EAID_9F0A2876_7854_4928_A1F7_B7F0CB465185" name="documentation" modelElement="EAID_66ADAA69_93B4_4837_A00D_1AE9BB6FB53B"/>
|
1286
|
+
<tag xmi:id="EAID_DAEED741_8AB5_4e19_8B96_2DBD158591E3" name="implementationRef" modelElement="EAID_66ADAA69_93B4_4837_A00D_1AE9BB6FB53B"/>
|
1287
|
+
<tag xmi:id="EAID_B9494DCD_1447_4e75_9679_BA9F22C0C8F5" name="operationRefs" modelElement="EAID_66ADAA69_93B4_4837_A00D_1AE9BB6FB53B"/>
|
1288
|
+
</tags>
|
1289
|
+
<xrefs value="$XREFPROP=$XID={53451E9A-C43C-4342-BA8D-969F2BAACB3A}$XID;$NAM=Stereotypes$NAM;$TYP=element property$TYP;$VIS=Public$VIS;$PAR=0$PAR;$DES=@STEREO;Name=interface;GUID={5053837D-425B-435d-8D8B-C0487035B858};@ENDSTEREO;$DES;$CLT={66ADAA69-93B4-4837-A00D-1AE9BB6FB53B}$CLT;$SUP=<none>$SUP;$ENDXREF;"/>
|
1290
|
+
<extendedProperties tagged="0" package_name="Temporal Geometry and Topology"/>
|
1291
|
+
<links>
|
1292
|
+
<Generalization xmi:id="EAID_3B3D9500_1668_4529_A500_03753B605AA9" start="EAID_66ADAA69_93B4_4837_A00D_1AE9BB6FB53B" end="EAID_82DA65AB_212B_44fd_BCDC_232A2AA22542"/>
|
1293
|
+
<Aggregation xmi:id="EAID_AD3FB2D7_370B_45ea_A98B_40B5B296E946" start="EAID_82DA65AB_212B_44fd_BCDC_232A2AA22542" end="EAID_66ADAA69_93B4_4837_A00D_1AE9BB6FB53B"/>
|
1294
|
+
<Generalization xmi:id="EAID_FBC084CC_4070_4dd5_8276_8A47DE1A72CD" start="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA" end="EAID_66ADAA69_93B4_4837_A00D_1AE9BB6FB53B"/>
|
1295
|
+
</links>
|
1296
|
+
</element>
|
1297
|
+
</elements>
|
1298
|
+
<element xmi:idref="EAID_37BF1557_0370_435d_94BB_8FCC4574561B" xmi:type="uml:Class" name="TemporalGeometricPrimitive" scope="public">
|
1299
|
+
<model package="EAPK_A6E46DCC_4D34_4dc0_AD3E_D006699DC90B" tpos="5" ea_localid="200" ea_eleType="element"/>
|
1300
|
+
<properties documentation="<b>Temporal Geometric Primitive </b>implements geometric <b>Primitive </b>for <b>Temporal Geometry.</b>" isSpecification="false" sType="Class" nType="0" scope="public" stereotype="interface" isRoot="false" isLeaf="false" isAbstract="true" isActive="false"/>
|
1301
|
+
<project version="2006" phase="IS" created="2020-03-09 13:56:11" modified="2020-12-04 15:28:44" complexity="2" status="Approved"/>
|
1302
|
+
<code/>
|
1303
|
+
<style appearance="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=1;HSwimLanes=1;BorderStyle=0;"/>
|
1304
|
+
<tags>
|
1305
|
+
<tag xmi:id="EAID_F96414D6_F8FE_4936_8DC7_D9B30AED6A66" name="callableElement" modelElement="EAID_37BF1557_0370_435d_94BB_8FCC4574561B"/>
|
1306
|
+
<tag xmi:id="EAID_5CE471BA_BDEB_4b9b_B372_B503E8873A6B" name="documentation" modelElement="EAID_37BF1557_0370_435d_94BB_8FCC4574561B"/>
|
1307
|
+
<tag xmi:id="EAID_268A14D8_E953_4ca3_9CCF_E0C12A3156B4" name="implementationRef" modelElement="EAID_37BF1557_0370_435d_94BB_8FCC4574561B"/>
|
1308
|
+
<tag xmi:id="EAID_0A68E48A_B8F4_4012_8D7C_B0EA4CDA134A" name="operationRefs" modelElement="EAID_37BF1557_0370_435d_94BB_8FCC4574561B"/>
|
1309
|
+
<tag xmi:id="EAID_2B2032F4_C702_40ce_8058_A02DBBF614CD" name="persistence" value="persistent" modelElement="EAID_37BF1557_0370_435d_94BB_8FCC4574561B"/>
|
1310
|
+
</tags>
|
1311
|
+
<xrefs value="$XREFPROP=$XID={6A6ED87F-D2CD-406e-940C-7AE9E61D24FB}$XID;$NAM=Stereotypes$NAM;$TYP=element property$TYP;$VIS=Public$VIS;$PAR=0$PAR;$DES=@STEREO;Name=interface;GUID={5053837D-425B-435d-8D8B-C0487035B858};@ENDSTEREO;$DES;$CLT={37BF1557-0370-435d-94BB-8FCC4574561B}$CLT;$SUP=<none>$SUP;$ENDXREF;$XREFPROP=$XID={93706A91-553C-4a70-9F58-5D3E7B865678}$XID;$NAM=CustomProperties$NAM;$TYP=element property$TYP;$VIS=Public$VIS;$DES=@PROP=@NAME=isActive@ENDNAME;@TYPE=Boolean@ENDTYPE;@VALU=@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;$DES;$CLT={37BF1557-0370-435d-94BB-8FCC4574561B}$CLT;$SUP=<none>$SUP;$ENDXREF;"/>
|
1312
|
+
<extendedProperties tagged="0" package_name="Temporal Geometry and Topology" persistence="Persistent"/>
|
1313
|
+
<attributes>
|
1314
|
+
<attribute xmi:idref="EAID_43D3DBAC_3887_4b74_8DBB_949F1AFDE20E" name="spatialDimension" scope="Public">
|
1315
|
+
<initial/>
|
1316
|
+
<documentation value="Dimension of its spatial geometry component."/>
|
1317
|
+
<model ea_localid="417" ea_guid="{43D3DBAC-3887-4b74-8DBB-949F1AFDE20E}"/>
|
1318
|
+
<properties type="Integer" derived="0" precision="0" collection="false" length="0" static="0" duplicates="0" changeability="changeable"/>
|
1319
|
+
<coords ordered="0" scale="0"/>
|
1320
|
+
<containment containment="Not Specified" position="0"/>
|
1321
|
+
<stereotype/>
|
1322
|
+
<bounds lower="1" upper="1"/>
|
1323
|
+
<options/>
|
1324
|
+
<style/>
|
1325
|
+
<styleex value="volatile=0;union=0;"/>
|
1326
|
+
<tags/>
|
1327
|
+
<xrefs/>
|
1328
|
+
</attribute>
|
1329
|
+
<attribute xmi:idref="EAID_5085D691_2244_4232_ACA0_CB0C32654079" name="temporalDimension" scope="Public">
|
1330
|
+
<initial/>
|
1331
|
+
<documentation value="Dimension of its temporal geometry component."/>
|
1332
|
+
<model ea_localid="418" ea_guid="{5085D691-2244-4232-ACA0-CB0C32654079}"/>
|
1333
|
+
<properties type="Integer" derived="0" precision="0" collection="false" length="0" static="0" duplicates="0" changeability="changeable"/>
|
1334
|
+
<coords ordered="0" scale="0"/>
|
1335
|
+
<containment containment="Not Specified" position="1"/>
|
1336
|
+
<stereotype/>
|
1337
|
+
<bounds lower="1" upper="1"/>
|
1338
|
+
<options/>
|
1339
|
+
<style/>
|
1340
|
+
<styleex value="volatile=0;union=0;"/>
|
1341
|
+
<tags/>
|
1342
|
+
<xrefs/>
|
1343
|
+
</attribute>
|
1344
|
+
</attributes>
|
1345
|
+
<constraints>
|
1346
|
+
<constraint name="self.coordinateDimension <= 1

" type="Invariant" weight="0.00" status="Approved"/>
|
1347
|
+
<constraint name="self.rsid.CoordinateSystem = TemporalCS" type="Invariant" weight="0.00" status="Approved"/>
|
1348
|
+
<constraint name="self.spatialDimension.isEmpty = True" type="Invariant" weight="0.00" status="Approved"/>
|
1349
|
+
<constraint name="self.type.in{point,line} = True" type="Invariant" weight="0.00" status="Approved"/>
|
1350
|
+
</constraints>
|
1351
|
+
<links>
|
1352
|
+
<Aggregation xmi:id="EAID_7F310A6F_F068_4c1d_8FFD_B01FE62D6D1C" start="EAID_37BF1557_0370_435d_94BB_8FCC4574561B" end="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA"/>
|
1353
|
+
<Generalization xmi:id="EAID_84688F21_D758_44ab_870D_69D890029769" start="EAID_37BF1557_0370_435d_94BB_8FCC4574561B" end="EAID_AF08B23A_D40E_4e8a_B258_60C53D27E384"/>
|
1354
|
+
<Generalization xmi:id="EAID_AD6CE071_3261_4681_B8E1_25AE657BBCD2" start="EAID_37BF1557_0370_435d_94BB_8FCC4574561B" end="EAID_82DA65AB_212B_44fd_BCDC_232A2AA22542"/>
|
1355
|
+
<Association xmi:id="EAID_25C1510D_9559_406f_867E_2A350C45C8A5" start="EAID_AE0137BF_A059_4c07_B438_75C5D3A3705D" end="EAID_37BF1557_0370_435d_94BB_8FCC4574561B"/>
|
1356
|
+
<Generalization xmi:id="EAID_60129D98_D599_4e3c_9DC3_37724601FFD7" start="EAID_37ED45D9_A247_40c2_A156_6546916DA8BB" end="EAID_37BF1557_0370_435d_94BB_8FCC4574561B"/>
|
1357
|
+
<Generalization xmi:id="EAID_F43854F6_4D07_4e42_834F_434CCAAF0E4B" start="EAID_60BA6F15_2E36_4995_B3A8_C5389797D9A2" end="EAID_37BF1557_0370_435d_94BB_8FCC4574561B"/>
|
1358
|
+
</links>
|
1359
|
+
</element>
|
1360
|
+
<connector xmi:idref="EAID_84688F21_D758_44ab_870D_69D890029769">
|
1361
|
+
<source xmi:idref="EAID_37BF1557_0370_435d_94BB_8FCC4574561B">
|
1362
|
+
<model ea_localid="200" type="Class" name="TemporalGeometricPrimitive"/>
|
1363
|
+
<role visibility="Public" targetScope="instance"/>
|
1364
|
+
<type aggregation="none" containment="Unspecified"/>
|
1365
|
+
<constraints/>
|
1366
|
+
<modifiers isOrdered="false" changeable="none" isNavigable="false"/>
|
1367
|
+
<style value="Union=0;Derived=0;AllowDuplicates=0;"/>
|
1368
|
+
<documentation/>
|
1369
|
+
<xrefs/>
|
1370
|
+
<tags/>
|
1371
|
+
</source>
|
1372
|
+
<target xmi:idref="EAID_AF08B23A_D40E_4e8a_B258_60C53D27E384">
|
1373
|
+
<model ea_localid="898" type="Interface" name="Primitive"/>
|
1374
|
+
<role visibility="Public" targetScope="instance"/>
|
1375
|
+
<type aggregation="none" containment="Unspecified"/>
|
1376
|
+
<constraints/>
|
1377
|
+
<modifiers isOrdered="false" changeable="none" isNavigable="true"/>
|
1378
|
+
<style value="Union=0;Derived=0;AllowDuplicates=0;"/>
|
1379
|
+
<documentation/>
|
1380
|
+
<xrefs/>
|
1381
|
+
<tags/>
|
1382
|
+
</target>
|
1383
|
+
<model ea_localid="729"/>
|
1384
|
+
<properties ea_type="Generalization" direction="Source -> Destination"/>
|
1385
|
+
<parameterSubstitutions/>
|
1386
|
+
<documentation/>
|
1387
|
+
<appearance linemode="3" linecolor="-1" linewidth="0" seqno="0" headStyle="0" lineStyle="0"/>
|
1388
|
+
<labels/>
|
1389
|
+
<extendedProperties virtualInheritance="0"/>
|
1390
|
+
<style/>
|
1391
|
+
<xrefs/>
|
1392
|
+
<tags/>
|
1393
|
+
</connector>
|
1394
|
+
<connector xmi:idref="EAID_AD6CE071_3261_4681_B8E1_25AE657BBCD2">
|
1395
|
+
<source xmi:idref="EAID_37BF1557_0370_435d_94BB_8FCC4574561B">
|
1396
|
+
<model ea_localid="200" type="Class" name="TemporalGeometricPrimitive"/>
|
1397
|
+
<role visibility="Public" targetScope="instance"/>
|
1398
|
+
<type aggregation="none" containment="Unspecified"/>
|
1399
|
+
<constraints/>
|
1400
|
+
<modifiers isOrdered="false" changeable="none" isNavigable="false"/>
|
1401
|
+
<style value="Union=0;Derived=0;AllowDuplicates=0;"/>
|
1402
|
+
<documentation/>
|
1403
|
+
<xrefs/>
|
1404
|
+
<tags/>
|
1405
|
+
</source>
|
1406
|
+
<target xmi:idref="EAID_82DA65AB_212B_44fd_BCDC_232A2AA22542">
|
1407
|
+
<model ea_localid="199" type="Class" name="TemporalGeometry"/>
|
1408
|
+
<role visibility="Public" targetScope="instance"/>
|
1409
|
+
<type aggregation="none" containment="Unspecified"/>
|
1410
|
+
<constraints/>
|
1411
|
+
<modifiers isOrdered="false" changeable="none" isNavigable="true"/>
|
1412
|
+
<style value="Union=0;Derived=0;AllowDuplicates=0;"/>
|
1413
|
+
<documentation/>
|
1414
|
+
<xrefs/>
|
1415
|
+
<tags/>
|
1416
|
+
</target>
|
1417
|
+
<model ea_localid="734"/>
|
1418
|
+
<properties ea_type="Generalization" direction="Source -> Destination"/>
|
1419
|
+
<parameterSubstitutions/>
|
1420
|
+
<documentation/>
|
1421
|
+
<appearance linemode="3" linecolor="-1" linewidth="0" seqno="0" headStyle="0" lineStyle="0"/>
|
1422
|
+
<labels/>
|
1423
|
+
<extendedProperties virtualInheritance="0"/>
|
1424
|
+
<style/>
|
1425
|
+
<xrefs/>
|
1426
|
+
<tags/>
|
1427
|
+
</connector>
|
1428
|
+
<connector xmi:idref="EAID_60129D98_D599_4e3c_9DC3_37724601FFD7">
|
1429
|
+
<source xmi:idref="EAID_37ED45D9_A247_40c2_A156_6546916DA8BB">
|
1430
|
+
<model ea_localid="194" type="Class" name="Interval"/>
|
1431
|
+
<role visibility="Public" targetScope="instance"/>
|
1432
|
+
<type aggregation="none" containment="Unspecified"/>
|
1433
|
+
<constraints/>
|
1434
|
+
<modifiers isOrdered="false" changeable="none" isNavigable="false"/>
|
1435
|
+
<style value="Union=0;Derived=0;AllowDuplicates=0;"/>
|
1436
|
+
<documentation/>
|
1437
|
+
<xrefs/>
|
1438
|
+
<tags/>
|
1439
|
+
</source>
|
1440
|
+
<target xmi:idref="EAID_37BF1557_0370_435d_94BB_8FCC4574561B">
|
1441
|
+
<model ea_localid="200" type="Class" name="TemporalGeometricPrimitive"/>
|
1442
|
+
<role visibility="Public" targetScope="instance"/>
|
1443
|
+
<type aggregation="none" containment="Unspecified"/>
|
1444
|
+
<constraints/>
|
1445
|
+
<modifiers isOrdered="false" changeable="none" isNavigable="true"/>
|
1446
|
+
<style value="Union=0;Derived=0;AllowDuplicates=0;"/>
|
1447
|
+
<documentation/>
|
1448
|
+
<xrefs/>
|
1449
|
+
<tags/>
|
1450
|
+
</target>
|
1451
|
+
<model ea_localid="746"/>
|
1452
|
+
<properties ea_type="Generalization" direction="Source -> Destination"/>
|
1453
|
+
<parameterSubstitutions/>
|
1454
|
+
<documentation/>
|
1455
|
+
<appearance linemode="3" linecolor="-1" linewidth="0" seqno="0" headStyle="0" lineStyle="0"/>
|
1456
|
+
<labels/>
|
1457
|
+
<extendedProperties virtualInheritance="0"/>
|
1458
|
+
<style/>
|
1459
|
+
<xrefs/>
|
1460
|
+
<tags/>
|
1461
|
+
</connector>
|
1462
|
+
<connector xmi:idref="EAID_F43854F6_4D07_4e42_834F_434CCAAF0E4B">
|
1463
|
+
<source xmi:idref="EAID_60BA6F15_2E36_4995_B3A8_C5389797D9A2">
|
1464
|
+
<model ea_localid="196" type="Class" name="Instant"/>
|
1465
|
+
<role visibility="Public" targetScope="instance"/>
|
1466
|
+
<type aggregation="none" containment="Unspecified"/>
|
1467
|
+
<constraints/>
|
1468
|
+
<modifiers isOrdered="false" changeable="none" isNavigable="false"/>
|
1469
|
+
<style value="Union=0;Derived=0;AllowDuplicates=0;"/>
|
1470
|
+
<documentation/>
|
1471
|
+
<xrefs/>
|
1472
|
+
<tags/>
|
1473
|
+
</source>
|
1474
|
+
<target xmi:idref="EAID_37BF1557_0370_435d_94BB_8FCC4574561B">
|
1475
|
+
<model ea_localid="200" type="Class" name="TemporalGeometricPrimitive"/>
|
1476
|
+
<role visibility="Public" targetScope="instance"/>
|
1477
|
+
<type aggregation="none" containment="Unspecified"/>
|
1478
|
+
<constraints/>
|
1479
|
+
<modifiers isOrdered="false" changeable="none" isNavigable="true"/>
|
1480
|
+
<style value="Union=0;Derived=0;AllowDuplicates=0;"/>
|
1481
|
+
<documentation/>
|
1482
|
+
<xrefs/>
|
1483
|
+
<tags/>
|
1484
|
+
</target>
|
1485
|
+
<model ea_localid="741"/>
|
1486
|
+
<properties ea_type="Generalization" direction="Source -> Destination"/>
|
1487
|
+
<parameterSubstitutions/>
|
1488
|
+
<documentation/>
|
1489
|
+
<appearance linemode="3" linecolor="-1" linewidth="0" seqno="0" headStyle="0" lineStyle="0"/>
|
1490
|
+
<labels/>
|
1491
|
+
<extendedProperties virtualInheritance="0"/>
|
1492
|
+
<style/>
|
1493
|
+
<xrefs/>
|
1494
|
+
<tags/>
|
1495
|
+
</connector>
|
1496
|
+
<diagrams>
|
1497
|
+
<diagram xmi:id="EAID_E9201FDF_B8D6_48cb_B683_3A3FE2170BDD">
|
1498
|
+
<model package="EAPK_04AA6D68_5225_400f_818D_4772E5A132EB" localID="1" owner="EAPK_04AA6D68_5225_400f_818D_4772E5A132EB" tpos="0"/>
|
1499
|
+
<properties name="Fig: DGGS Package Diagram" type="Logical" documentation="this is a documentation"/>
|
1500
|
+
<project author="Robert Gibb" version="2019" created="2019-10-21 16:18:34" modified="2020-12-05 23:55:38"/>
|
1501
|
+
<style1 value="ShowPrivate=1;ShowProtected=1;ShowPublic=1;HideRelationships=0;Locked=0;Border=0;HighlightForeign=1;PackageContents=0;SequenceNotes=0;ScalePrintImage=0;PPgs.cx=0;PPgs.cy=0;DocSize.cx=795;DocSize.cy=1138;ShowDetails=0;Orientation=P;Zoom=100;ShowTags=0;OpParams=1;VisibleAttributeDetail=0;ShowOpRetType=1;ShowIcons=1;CollabNums=0;HideProps=0;ShowReqs=0;ShowCons=0;PaperSize=9;HideParents=0;UseAlias=0;HideAtts=1;HideOps=1;HideStereo=1;HideElemStereo=1;ShowTests=0;ShowMaint=0;ConnectorNotation=UML 2.1;ExplicitNavigability=0;ShowShape=1;AllDockable=0;AdvancedElementProps=1;AdvancedFeatureProps=1;AdvancedConnectorProps=0;m_bElementClassifier=1;SPT=1;ShowNotes=0;SuppressBrackets=0;SuppConnectorLabels=0;PrintPageHeadFoot=0;ShowAsList=0;HideConnStereotype=1;ShowFQN=1;"/>
|
1502
|
+
<style2 value="ExcludeRTF=0;DocAll=0;HideQuals=0;AttPkg=1;ShowTests=0;ShowMaint=0;SuppressFOC=1;MatrixActive=0;SwimlanesActive=1;KanbanActive=0;MatrixLineWidth=1;MatrixLineClr=0;MatrixLocked=0;TConnectorNotation=UML 2.1;TExplicitNavigability=0;AdvancedElementProps=1;AdvancedFeatureProps=1;AdvancedConnectorProps=0;m_bElementClassifier=1;SPT=1;MDGDgm=;STBLDgm=;ShowNotes=0;VisibleAttributeDetail=0;ShowOpRetType=1;SuppressBrackets=0;SuppConnectorLabels=0;PrintPageHeadFoot=0;ShowAsList=0;HideConnStereotype=1;ShowFQN=1;SuppressedCompartments=;Theme=Monochrome for printing:119;HideFeatLink=1;SaveTag=FF8D95FE;"/>
|
1503
|
+
<swimlanes value="locked=false;orientation=0;width=0;inbar=false;names=false;color=0;bold=false;fcol=0;tcol=16777215;ofCol=-1;ufCol=-1;hl=0;ufh=0;hh=0;cls=0;bw=0;hli=0;SwimlaneFont=lfh:-10,lfw:0,lfi:0,lfu:0,lfs:0,lfface:Carlito,lfe:0,lfo:0,lfchar:1,lfop:0,lfcp:0,lfq:0,lfpf=0,lfWidth=0;"/>
|
1504
|
+
<matrixitems value="locked=false;matrixactive=false;swimlanesactive=true;kanbanactive=false;width=1;clrLine=0;"/>
|
1505
|
+
<extendedProperties/>
|
1506
|
+
<elements>
|
1507
|
+
<element geometry="Left=90;Top=890;Right=195;Bottom=949;imgL=98;imgT=906;imgR=203;imgB=965;" subject="EAID_D87CFCD1_E6FA_40b1_8DF4_582457AAE03E" seqno="1" style="NSL=0;BCol=-1;BFol=-1;LCol=-1;LWth=-1;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;DUID=A614872E;"/>
|
1508
|
+
<element geometry="Left=600;Top=890;Right=686;Bottom=947;imgL=608;imgT=906;imgR=694;imgB=963;" subject="EAID_AC202A78_2895_4f28_B947_B92AF0AD3051" seqno="2" style="NSL=0;BCol=-1;BFol=-1;LCol=-1;LWth=-1;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;DUID=99DF6365;"/>
|
1509
|
+
<element geometry="Left=715;Top=890;Right=809;Bottom=949;imgL=723;imgT=906;imgR=817;imgB=965;" subject="EAID_0D462D6E_4097_44ae_AAEC_FA91FD6F6988" seqno="3" style="NSL=0;BCol=-1;BFol=-1;LCol=-1;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;LWth=0;DUID=56F0EC08;"/>
|
1510
|
+
<element geometry="Left=73;Top=283;Right=322;Bottom=324;imgL=81;imgT=299;imgR=330;imgB=340;" subject="EAID_91372B9D_392D_4e8f_8935_AF840790A1D3" seqno="4" style=" DUID=A2D3ACE3;NSL=0;bold=0;black=0;italic=0;ul=0;charset=0;LCol=3329330;BFol=0;font=Calibri;BCol=16777215;LWth=2;fontsz=90;pitch=34;DUID=414AD010;"/>
|
1511
|
+
<element geometry="Left=465;Top=706;Right=753;Bottom=746;imgL=473;imgT=722;imgR=761;imgB=762;" subject="EAID_AC035E38_542D_4eca_87EB_CE687A3C69D7" seqno="5" style=" DUID=EC55C00E;NSL=0;BCol=-1;BFol=-1;LCol=-1;bold=0;black=0;italic=0;ul=0;charset=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;RzO=1;LWth=0;font=Calibri;fontsz=90;pitch=34;DUID=F8049856;"/>
|
1512
|
+
<element geometry="Left=90;Top=560;Right=347;Bottom=601;imgL=98;imgT=576;imgR=355;imgB=617;" subject="EAID_C93A8CD8_53C7_4d95_8BC7_591AE2BB7563" seqno="6" style=" DUID=7C7D5F0D;NSL=0;BCol=-1;BFol=-1;LCol=-1;bold=0;black=0;italic=0;ul=0;charset=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;RzO=1;pitch=34;font=Calibri;LWth=2;fontsz=90;DUID=9AA052D2;"/>
|
1513
|
+
<element geometry="Left=90;Top=460;Right=347;Bottom=501;imgL=98;imgT=476;imgR=355;imgB=517;" subject="EAID_308C1C4A_8DC9_4e2c_88CD_2B08506CABF6" seqno="7" style=" DUID=D015E04E;NSL=0;BCol=-1;BFol=-1;LCol=-1;bold=0;black=0;italic=0;ul=0;charset=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;RzO=1;pitch=34;font=Calibri;LWth=2;fontsz=90;DUID=1BDF6B75;"/>
|
1514
|
+
<element geometry="Left=60;Top=411;Right=376;Bottom=651;imgL=68;imgT=427;imgR=384;imgB=667;" subject="EAID_6FEDD31A_6F40_4ed8_9230_600BB66D2296" seqno="8" style=" DUID=28200C96;NSL=0;BCol=-1;LCol=-1;bold=0;black=0;italic=0;ul=0;charset=0;BFol=0;font=Calibri;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;RzO=1;LWth=0;fontsz=90;pitch=34;DUID=225AD012;"/>
|
1515
|
+
<element geometry="Left=462;Top=524;Right=774;Bottom=587;imgL=470;imgT=540;imgR=782;imgB=603;" subject="EAID_48946985_6B5B_4ed9_B66D_C3AE45D93CA2" seqno="9" style=" DUID=FBD0AD13;NSL=0;BCol=-1;BFol=-1;LCol=-1;bold=0;black=0;italic=0;ul=0;charset=0;LWth=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;pitch=34;RzO=2;font=Calibri;fontsz=90;DUID=46FDB905;"/>
|
1516
|
+
<element geometry="Left=485;Top=19;Right=790;Bottom=60;imgL=493;imgT=35;imgR=798;imgB=76;" subject="EAID_6F4DCF8C_E51D_4645_B579_A802BF70796D" seqno="10" style=" DUID=1DCA28CD;NSL=0;bold=0;black=0;italic=0;ul=0;charset=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;BCol=16777215;BFol=0;LWth=2;pitch=34;font=Calibri;LCol=3107669;fontsz=90;DUID=AED27AB9;"/>
|
1517
|
+
<element geometry="Left=466;Top=780;Right=754;Bottom=822;imgL=474;imgT=796;imgR=762;imgB=838;" subject="EAID_7C88ECAD_27B4_4211_83D4_ED24E5CF4E84" seqno="11" style=" DUID=1D3BA107;NSL=0;BCol=-1;BFol=-1;LCol=-1;LWth=-1;bold=0;black=0;italic=0;ul=0;charset=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;pitch=34;font=Calibri;fontsz=90;DUID=C0A13AD6;"/>
|
1518
|
+
<element geometry="Left=465;Top=630;Right=753;Bottom=671;imgL=473;imgT=646;imgR=761;imgB=687;" subject="EAID_8EBFE6FE_6049_4b85_9A81_1EF5B098BAFB" seqno="12" style=" DUID=A705F8CF;NSL=0;BCol=-1;BFol=-1;LCol=-1;bold=0;black=0;italic=0;ul=0;charset=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;pitch=34;LWth=0;font=Calibri;fontsz=90;DUID=36F9BF02;"/>
|
1519
|
+
<element geometry="Left=430;Top=483;Right=791;Bottom=859;imgL=438;imgT=499;imgR=799;imgB=875;" subject="EAID_30110D27_B617_47d1_B6F0_6F1A3E9D9AA4" seqno="13" style=" DUID=65DCE573;NSL=0;BCol=-1;BFol=-1;LCol=-1;bold=0;black=0;italic=0;ul=0;charset=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;pitch=34;LWth=2;font=Calibri;fontsz=90;DUID=641BB11A;"/>
|
1520
|
+
<element geometry="Left=73;Top=186;Right=322;Bottom=227;imgL=81;imgT=202;imgR=330;imgB=243;" subject="EAID_A6E1BC79_B072_451f_AAD5_D914E44B941A" seqno="14" style=" DUID=FD6FF5AF;NSL=0;bold=0;black=0;italic=0;ul=0;charset=0;BFol=0;LWth=2;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;LCol=6717674;pitch=34;font=Calibri;BCol=16777215;fontsz=90;DUID=89C9883D;"/>
|
1521
|
+
<element geometry="Left=73;Top=102;Right=322;Bottom=143;imgL=81;imgT=118;imgR=330;imgB=159;" subject="EAID_1BD723DA_7A8F_4092_8396_B9AB3C916ADE" seqno="15" style=" NSL=0;bold=0;black=0;italic=0;ul=0;charset=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;LCol=16734039;BFol=0;pitch=34;font=Calibri;BCol=16777215;LWth=2;fontsz=90;DUID=A8EB1B43;"/>
|
1522
|
+
<element geometry="Left=485;Top=102;Right=790;Bottom=143;imgL=493;imgT=118;imgR=798;imgB=159;" subject="EAID_877217FC_8B39_4d2d_87D9_B7116CA4109E" seqno="16" style="NSL=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;LCol=3329330;BFol=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=34;font=Calibri;BCol=16777215;LWth=2;fontsz=90;DUID=26308E53;"/>
|
1523
|
+
<element geometry="Left=485;Top=185;Right=790;Bottom=226;imgL=493;imgT=201;imgR=798;imgB=242;" subject="EAID_E1339BBA_2C02_4df1_ABA9_EB9DE78622CE" seqno="17" style="NSL=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;LCol=3329330;BFol=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=34;font=Calibri;BCol=16777215;LWth=2;fontsz=90;DUID=29194FDD;"/>
|
1524
|
+
<element geometry="Left=73;Top=19;Right=322;Bottom=60;imgL=81;imgT=35;imgR=330;imgB=76;" subject="EAID_BACD4C75_AA34_4201_B129_E5D8533F8DC8" seqno="18" style="NSL=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;LCol=3329330;BFol=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=34;font=Calibri;BCol=16777215;LWth=2;fontsz=90;DUID=16290BBA;"/>
|
1525
|
+
<element geometry="Left=485;Top=267;Right=790;Bottom=324;imgL=493;imgT=283;imgR=798;imgB=340;" subject="EAID_97DF41C5_745A_4794_8FA4_288EF531AD7D" seqno="19" style=" DUID=DFF9D1D0;NSL=0;bold=0;black=0;italic=0;ul=0;charset=0;BFol=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;LCol=-1;BCol=5301246;pitch=34;font=Calibri;fontsz=90;LWth=0;DUID=E17F0DCC;"/>
|
1526
|
+
<element geometry="Left=485;Top=407;Right=792;Bottom=466;imgL=493;imgT=423;imgR=800;imgB=482;" subject="EAID_A603DED3_3EF2_4ad5_AD2C_E724773DA860" seqno="20" style=" DUID=78DE671C;bold=0;black=0;italic=0;ul=0;charset=0;pitch=34;BFol=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;OpPro=0;OpPri=0;OpPub=0;OpPkg=0;AttCustom=0;OpCustom=0;PType=0;RzO=1;LWth=2;font=Calibri;fontsz=90;DUID=E878E011;"/>
|
1527
|
+
<element geometry="Left=45;Top=366;Right=810;Bottom=880;imgL=53;imgT=382;imgR=818;imgB=896;" subject="EAID_04AA6D68_5225_400f_818D_4772E5A132EB" seqno="21" style=" DUID=407A9D7B;NSL=0;BCol=-1;BFol=-1;LCol=-1;bold=0;black=0;italic=0;ul=0;charset=0;AttPro=0;AttPri=0;AttPub=0;AttPkg=0;AttCustom=0;OpCustom=0;RzO=1;pitch=34;font=Calibri;LWth=4;fontsz=90;DUID=84120163;"/>
|
1528
|
+
<element geometry="Left=224;Top=890;Right=329;Bottom=949;imgL=232;imgT=906;imgR=337;imgB=965;" subject="EAID_1CB40178_1C4B_4fe9_9164_60277DDBE8C9" seqno="22" style="NSL=0;BCol=-1;BFol=-1;LCol=-1;LWth=-1;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;DUID=0313BEC0;"/>
|
1529
|
+
<element geometry="Left=358;Top=890;Right=446;Bottom=949;imgL=366;imgT=906;imgR=454;imgB=965;" subject="EAID_83CE8700_5125_43f8_A2AC_732E0332D8B0" seqno="23" style="NSL=0;BCol=-1;BFol=-1;LCol=-1;LWth=-1;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;DUID=CFADB72C;"/>
|
1530
|
+
<element geometry="Left=475;Top=890;Right=571;Bottom=949;imgL=483;imgT=906;imgR=579;imgB=965;" subject="EAID_D585DDCF_D101_47de_ABA6_1DEDFD2781FF" seqno="24" style="NSL=0;BCol=-1;BFol=-1;LCol=-1;LWth=-1;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;DUID=B1095BCA;"/>
|
1531
|
+
<element geometry="Left=50;Top=909;Right=190;Bottom=949;imgL=58;imgT=925;imgR=198;imgB=965;" subject="EAID_84245574_3005_4626_89CE_CAF1B29F159A" seqno="25" style="LCol=16777215;DUID=57E555C3;"/>
|
1532
|
+
<element geometry=" 1908, 611, 54, 661,;EDGE=3;SX=31;SY=-5;EX=31;EY=-5;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_C7D219C2_5DDC_4e27_9DF7_C5B9AAD61BAA" style="Mode=2;Color=-1;LWidth=0;SOID=29194FDD;EOID=26308E53;Hidden=1;"/>
|
1533
|
+
<element geometry="SX=0;SY=-7;EX=0;EY=-13;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=27:-587$27:-316$;" subject="EAID_79BA4C65_14E1_4545_82D1_B940BE09BBD8" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=9AA052D2;EOID=414AD010;Hidden=0;"/>
|
1534
|
+
<element geometry="SX=0;SY=-3;EX=0;EY=-13;EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=380:-483$380:-316$;" subject="EAID_68020FA0_9BD2_409d_9B77_A4A79729E6CC" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=1BDF6B75;EOID=414AD010;Hidden=0;"/>
|
1535
|
+
<element geometry="SX=-1;SY=-16;EX=-2;EY=8;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=401:-579$401:-570$;" subject="EAID_60D5446C_1B6E_42f3_80CC_1DA77A7D6098" style="Mode=1;Color=-1;LWidth=0;SOID=46FDB905;EOID=9AA052D2;Hidden=0;"/>
|
1536
|
+
<element geometry="SX=0;SY=-11;EX=0;EY=-16;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=402:-566$402:-496$;" subject="EAID_859DDADE_39C5_4448_A842_DE38F9F6924A" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=46FDB905;EOID=1BDF6B75;Hidden=0;"/>
|
1537
|
+
<element geometry="SX=0;SY=-4;EX=0;EY=-11;EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=781:-654$781:-566$;" subject="EAID_ADD4CE1F_C175_410d_8653_DC9FEF4BCCA2" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=36F9BF02;EOID=46FDB905;Hidden=0;"/>
|
1538
|
+
<element geometry="SX=-168;SY=0;EX=0;EY=-15;EDGE=1;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=603:-561$;" subject="EAID_A66E48D5_955B_4163_82F7_53F3F5B8DC2D" style="Mode=3;Color=0;LWidth=0;TREE=OS;SOID=641BB11A;EOID=46FDB905;Hidden=1;"/>
|
1539
|
+
<element geometry="SX=0;SY=-9;EX=0;EY=-24;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=437:-735$437:-579$;" subject="EAID_BBD43D58_63B4_447c_8112_AFE932D329AF" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=F8049856;EOID=46FDB905;Hidden=0;"/>
|
1540
|
+
<element geometry="SX=23;SY=1;EX=-35;EY=-16;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_2D0A8A53_1233_43d0_AC93_AEE320786982" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=E878E011;EOID=46FDB905;Hidden=0;"/>
|
1541
|
+
<element geometry="SX=0;SY=3;EX=0;EY=-12;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=419:-552$419:-51$;" subject="EAID_AD2F75AD_A76F_4a42_A12A_A5B0D004A57F" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=46FDB905;EOID=AED27AB9;Hidden=0;"/>
|
1542
|
+
<element geometry="SX=0;SY=-7;EX=0;EY=-10;EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=385:-487$385:-216$;" subject="EAID_831A9407_E7B2_41af_80EF_2B7E4C8860F0" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=1BDF6B75;EOID=89C9883D;Hidden=0;"/>
|
1543
|
+
<element geometry="SX=0;SY=-15;EX=0;EY=-7;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=17:-741$17:-129$;" subject="EAID_8349BC7D_5A79_4813_A9C8_7CA791416343" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=F8049856;EOID=A8EB1B43;Hidden=0;"/>
|
1544
|
+
<element geometry="EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_9BE0DFD4_BEA9_465a_B70C_A22E35136D6F" style="Mode=3;Color=-1;LWidth=0;SOID=16290BBA;EOID=414AD010;Hidden=1;"/>
|
1545
|
+
<element geometry="SX=0;SY=-12;EX=0;EY=-14;EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=389:-492$389:-136$;" subject="EAID_FC1C2A04_5C04_4483_BD6F_316B63C1D961" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=1BDF6B75;EOID=A8EB1B43;Hidden=0;"/>
|
1546
|
+
<element geometry="EDGE=4;EX=-76;EY=0;SX=0;SY=-8;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=333:-781$;" subject="EAID_30995DCB_E854_4993_8DEE_99E0B0ABFD39" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=C0A13AD6;EOID=641BB11A;Hidden=1;"/>
|
1547
|
+
<element geometry="SX=0;SY=-13;EX=0;EY=-10;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=451:-449$451:-132$;" subject="EAID_1BACFF38_7714_4ba6_A560_D5DA1E9BBD0E" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=E878E011;EOID=26308E53;Hidden=0;"/>
|
1548
|
+
<element geometry=" 1434, 611, 696, 661,;EDGE=3;SX=-1;SY=0;EX=0;EY=-1;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=73:-123$;" subject="EAID_8D5F3DB1_4D9D_4fc0_B044_272F36C71167" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=16290BBA;EOID=26308E53;Hidden=1;"/>
|
1549
|
+
<element geometry="EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_EA827FFC_A874_459d_8636_4113B59553EE" style="Mode=3;Color=-1;LWidth=0;SOID=414AD010;EOID=26308E53;Hidden=1;"/>
|
1550
|
+
<element geometry=" 1488, 218, 410, 54,;EDGE=3;SX=2;SY=9;EX=2;EY=9;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_7D9D4C1B_3E79_49bf_A50C_6E13615C6221" style="Mode=2;Color=-1;LWidth=0;SOID=16290BBA;EOID=29194FDD;Hidden=1;"/>
|
1551
|
+
<element geometry="SX=0;SY=-9;EX=0;EY=-11;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=454:-445$454:-216$;" subject="EAID_B0FCE72D_E3D0_4c2e_89E3_89241094B044" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=E878E011;EOID=29194FDD;Hidden=0;"/>
|
1552
|
+
<element geometry=" 1488, 218, 410, 54,;SX=2;SY=-7;EX=2;EY=-7;EDGE=1;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_2FD79E8A_8C87_4be2_AE91_ADF297622808" style="Mode=2;Color=-1;LWidth=0;SOID=29194FDD;EOID=16290BBA;Hidden=1;"/>
|
1553
|
+
<element geometry="SX=0;SY=-1;EX=0;EY=-13;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=416:-556$416:-52$;" subject="EAID_0C5D0603_FB2C_4b84_AE3A_9A945414BA2C" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=46FDB905;EOID=16290BBA;Hidden=0;"/>
|
1554
|
+
<element geometry="SX=0;SY=-11;EX=0;EY=-12;EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=834:-661$834:-307$;" subject="EAID_54F3C9AD_BB0F_4c2e_9B3F_0350EF4CC994" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=36F9BF02;EOID=E17F0DCC;Hidden=0;"/>
|
1555
|
+
<element geometry="SX=0;SY=-8;EX=0;EY=2;EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=838:-809$838:-293$;" subject="EAID_7BAD95D2_AC1C_4128_BBFF_362A0C1907EB" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=C0A13AD6;EOID=E17F0DCC;Hidden=0;"/>
|
1556
|
+
<element geometry="SX=0;SY=-27;EX=0;EY=-13;EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=823:-322$823:-449$;" subject="EAID_CF7DC355_4D6C_4d92_AAEA_8CC59FBB2726" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=E17F0DCC;EOID=E878E011;Hidden=0;"/>
|
1557
|
+
<element geometry="SX=0;SY=-2;EX=0;EY=-19;EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=781:-803$781:-669$;" subject="EAID_16E25BEA_7582_4763_B9E5_D1577608CEC2" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=C0A13AD6;EOID=36F9BF02;Hidden=0;"/>
|
1558
|
+
<element geometry="SX=0;SY=-10;EX=-91;EY=0;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=319:-633$;" subject="EAID_15B546ED_EE91_42ce_BFB9_9F12D9528240" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=36F9BF02;EOID=641BB11A;Hidden=1;"/>
|
1559
|
+
<element geometry="SX=0;SY=-10;EX=0;EY=-15;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=24:-590$24:-137$;" subject="EAID_79B744E8_144A_4a02_BD1F_84E93F0155B0" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=9AA052D2;EOID=A8EB1B43;Hidden=0;"/>
|
1560
|
+
</elements>
|
1561
|
+
</diagram>
|
1562
|
+
<diagram xmi:id="EAID_9A40024C_98DA_4a01_8F0B_CB65A4208AFA">
|
1563
|
+
<model package="EAPK_04AA6D68_5225_400f_818D_4772E5A132EB" localID="2" owner="EAPK_04AA6D68_5225_400f_818D_4772E5A132EB" tpos="1"/>
|
1564
|
+
<properties name="Fig: Context for Temporal Geometry and Topology" type="Logical"/>
|
1565
|
+
<project author="Gibb Robert" version="2019" created="2020-01-28 10:19:25" modified="2020-11-08 14:14:17"/>
|
1566
|
+
<style1 value="ShowPrivate=1;ShowProtected=1;ShowPublic=1;HideRelationships=0;Locked=0;Border=1;HighlightForeign=1;PackageContents=0;SequenceNotes=0;ScalePrintImage=1;PPgs.cx=1;PPgs.cy=1;DocSize.cx=1000;DocSize.cy=1000;ShowDetails=0;Orientation=P;Zoom=100;ShowTags=0;OpParams=1;VisibleAttributeDetail=0;ShowOpRetType=1;ShowIcons=0;CollabNums=1;HideProps=1;ShowReqs=0;ShowCons=0;PaperSize=1;HideParents=1;UseAlias=0;HideAtts=1;HideOps=1;HideStereo=0;HideElemStereo=0;ShowTests=0;ShowMaint=0;ConnectorNotation=UML 2.1;ExplicitNavigability=0;ShowShape=1;AllDockable=0;AdvancedElementProps=1;AdvancedFeatureProps=1;AdvancedConnectorProps=1;m_bElementClassifier=1;SPT=1;ShowNotes=0;SuppressBrackets=0;SuppConnectorLabels=0;PrintPageHeadFoot=0;ShowAsList=0;"/>
|
1567
|
+
<style2 value="ExcludeRTF=0;DocAll=0;HideQuals=0;AttPkg=1;ShowTests=0;ShowMaint=0;SuppressFOC=1;MatrixActive=0;SwimlanesActive=1;KanbanActive=0;MatrixLineWidth=1;MatrixLineClr=0;MatrixLocked=0;TConnectorNotation=UML 2.1;TExplicitNavigability=0;AdvancedElementProps=1;AdvancedFeatureProps=1;AdvancedConnectorProps=1;m_bElementClassifier=1;SPT=1;MDGDgm=;STBLDgm=;ShowNotes=0;VisibleAttributeDetail=0;ShowOpRetType=1;SuppressBrackets=0;SuppConnectorLabels=0;PrintPageHeadFoot=0;ShowAsList=0;SuppressedCompartments=;Theme=:119;SaveTag=4C82CA42;"/>
|
1568
|
+
<swimlanes value="locked=false;orientation=0;width=0;inbar=false;names=false;color=0;bold=false;fcol=0;tcol=16777215;ofCol=-1;ufCol=-1;hl=1;ufh=0;hh=0;cls=0;bw=0;hli=0;SwimlaneFont=lfh:-10,lfw:0,lfi:0,lfu:0,lfs:0,lfface:Carlito,lfe:0,lfo:0,lfchar:1,lfop:0,lfcp:0,lfq:0,lfpf=0,lfWidth=0;"/>
|
1569
|
+
<matrixitems value="locked=false;matrixactive=false;swimlanesactive=true;kanbanactive=false;width=1;clrLine=0;"/>
|
1570
|
+
<extendedProperties/>
|
1571
|
+
<elements>
|
1572
|
+
<element geometry="Left=441;Top=480;Right=535;Bottom=539;imgL=451;imgT=480;imgR=545;imgB=539;" subject="EAID_0D462D6E_4097_44ae_AAEC_FA91FD6F6988" seqno="1" style="NSL=0;DUID=D60311E4;"/>
|
1573
|
+
<element geometry="Left=446;Top=274;Right=591;Bottom=314;imgL=456;imgT=274;imgR=601;imgB=314;" subject="EAID_37BF1557_0370_435d_94BB_8FCC4574561B" seqno="2" style="NSL=0;LWth=2;ImageID=0;LCol=-1;BCol=-1;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;DUID=A3BC5E9A;"/>
|
1574
|
+
<element geometry="Left=680;Top=146;Right=825;Bottom=186;imgL=690;imgT=146;imgR=835;imgB=186;" subject="EAID_00ACADD9_EF9A_4ac8_8257_3DB6227AF948" seqno="3" style="NSL=0;LWth=2;ImageID=0;LCol=-1;BCol=-1;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;DUID=6986BBE2;"/>
|
1575
|
+
<element geometry="Left=446;Top=146;Right=591;Bottom=186;imgL=456;imgT=146;imgR=601;imgB=186;" subject="EAID_AE0137BF_A059_4c07_B438_75C5D3A3705D" seqno="4" style="NSL=0;LWth=2;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;ImageID=0;LCol=-1;BCol=-1;DUID=4763B4B4;"/>
|
1576
|
+
<element geometry="Left=680;Top=342;Right=825;Bottom=382;imgL=690;imgT=342;imgR=835;imgB=382;" subject="EAID_66ADAA69_93B4_4837_A00D_1AE9BB6FB53B" seqno="5" style="LWth=2;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;DUID=6E5CED2A;"/>
|
1577
|
+
<element geometry="Left=563;Top=434;Right=708;Bottom=474;imgL=573;imgT=434;imgR=718;imgB=474;" subject="EAID_82DA65AB_212B_44fd_BCDC_232A2AA22542" seqno="6" style="LWth=2;DUID=A81F3A31;"/>
|
1578
|
+
<element geometry="Left=680;Top=275;Right=825;Bottom=315;imgL=690;imgT=275;imgR=835;imgB=315;" subject="EAID_60A00B1F_43C3_433b_8060_2EB473EEE6BA" seqno="7" style="LWth=2;DUID=786A6260;"/>
|
1579
|
+
<element geometry="Left=23;Top=273;Right=154;Bottom=313;imgL=33;imgT=273;imgR=164;imgB=313;" subject="EAID_01B77106_CDCD_48b5_B2C4_7F7D7BA580B0" seqno="8" style="NSL=0;BCol=-1;BFol=-1;fontsz=0;bold=0;black=0;italic=0;ul=0;charset=0;pitch=0;LCol=13434880;LWth=2;DUID=41A330B2;"/>
|
1580
|
+
<element geometry="Left=25;Top=342;Right=156;Bottom=382;imgL=35;imgT=342;imgR=166;imgB=382;" subject="EAID_F6BDF73A_8DA5_46a3_A9A3_2A7FD1A2C8F8" seqno="9" style="NSL=0;LCol=13434880;LWth=2;DUID=E4FF4727;"/>
|
1581
|
+
<element geometry="Left=165;Top=42;Right=296;Bottom=82;imgL=175;imgT=42;imgR=306;imgB=82;" subject="EAID_AC45299B_86E2_47eb_927D_7FE310183720" seqno="10" style="LCol=13434880;LWth=2;DUID=2F28AF81;"/>
|
1582
|
+
<element geometry="Left=161;Top=434;Right=292;Bottom=474;imgL=171;imgT=434;imgR=302;imgB=474;" subject="EAID_DACE19A6_B083_45f1_94BB_C21991A59743" seqno="11" style="LCol=13434880;LWth=2;DUID=E150D01C;"/>
|
1583
|
+
<element geometry="Left=256;Top=146;Right=387;Bottom=186;imgL=266;imgT=146;imgR=397;imgB=186;" subject="EAID_D945EB6B_A750_4c1e_8D82_3887CB767926" seqno="12" style="LCol=13434880;LWth=2;DUID=A06A9902;"/>
|
1584
|
+
<element geometry="Left=23;Top=145;Right=154;Bottom=185;imgL=33;imgT=145;imgR=164;imgB=185;" subject="EAID_651CCB2E_D9C9_4f7e_A86C_9F838844FB82" seqno="13" style="LCol=13434880;LWth=2;DUID=8B25BE79;"/>
|
1585
|
+
<element geometry="Left=258;Top=274;Right=389;Bottom=314;imgL=268;imgT=274;imgR=399;imgB=314;" subject="EAID_AF08B23A_D40E_4e8a_B258_60C53D27E384" seqno="14" style="LCol=13434880;LWth=2;DUID=7974BD9C;"/>
|
1586
|
+
<element geometry="Left=15;Top=35;Right=415;Bottom=482;imgL=25;imgT=35;imgR=425;imgB=482;" subject="EAID_2D12FCDB_B942_481b_B734_C7FCD5A69ED4" seqno="15" style="LCol=13434880;LWth=2;BCol=16777215;DUID=A90123E2;"/>
|
1587
|
+
<element geometry="Left=563;Top=41;Right=708;Bottom=81;imgL=573;imgT=41;imgR=718;imgB=81;" subject="EAID_F11508A8_6635_4f8f_B49D_A398A8FEF552" seqno="16" style="LWth=2;DUID=98422238;"/>
|
1588
|
+
<element geometry="Left=331;Top=480;Right=436;Bottom=539;imgL=341;imgT=480;imgR=446;imgB=539;" subject="EAID_D87CFCD1_E6FA_40b1_8DF4_582457AAE03E" seqno="17" style="NSL=0;DUID=8DA5B6F0;"/>
|
1589
|
+
<element geometry="Left=300;Top=498;Right=436;Bottom=539;imgL=310;imgT=498;imgR=446;imgB=539;" subject="EAID_4BBD93AA_D52B_4dbf_830E_D139E6D357B5" seqno="18" style="NSL=0;LCol=16777215;DUID=42AF37DB;"/>
|
1590
|
+
<element geometry="SX=-53;SY=-8;EX=-53;EY=-8;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_26E10788_3269_4006_81AB_2A129D7712EF" style="Mode=3;Color=-1;LWidth=0;SOID=98422238;EOID=A81F3A31;Hidden=1;"/>
|
1591
|
+
<element geometry="SX=7;SY=-1;EX=7;EY=-1;EDGE=3;$LLB=CX=17:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LLT=CX=41:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMT=CX=44:CY=14:OX=-36:OY=8:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMB=;LRT=CX=45:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LRB=CX=17:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;IRHS=;ILHS=;Path=;" subject="EAID_25C1510D_9559_406f_867E_2A350C45C8A5" style="Mode=3;Color=-1;LWidth=0;SOID=4763B4B4;EOID=A3BC5E9A;Hidden=0;"/>
|
1592
|
+
<element geometry="EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_4F8C2F5C_1CA1_4bef_8D51_3FD8FAB35372" style="Mode=3;Color=-1;LWidth=0;SOID=41A330B2;EOID=E4FF4727;Hidden=0;"/>
|
1593
|
+
<element geometry="SX=-8;SY=3;EX=0;EY=0;EDGE=3;$LLB=CX=17:CY=14:OX=-2:OY=-2:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LLT=CX=41:CY=14:OX=-3:OY=-4:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMT=CX=44:CY=14:OX=-34:OY=14:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMB=;LRT=CX=45:CY=14:OX=62:OY=1:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LRB=CX=17:CY=14:OX=-32:OY=3:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;IRHS=;ILHS=;Path=;" subject="EAID_418BE1AF_A85D_414f_BFE5_80D5049C6F1F" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=8B25BE79;EOID=41A330B2;Hidden=0;"/>
|
1594
|
+
<element geometry="SX=0;SY=0;EDGE=4;$LLB=CX=56:CY=14:OX=-3:OY=3:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LLT=CX=39:CY=14:OX=-3:OY=2:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_E84CD5B2_B1B4_44c9_9A37_84FB39C5D005" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=7974BD9C;EOID=41A330B2;Hidden=0;"/>
|
1595
|
+
<element geometry="SCTR=1;SCME=1;SX=0;SY=0;EX=0;EY=0;EDGE=2;SCTR.LEFT=153;SCTR.TOP=-293;SCTR.RIGHT=184;SCTR.BOTTOM=-278;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=154:-293$184:-293$184:-278$154:-278$;" subject="EAID_C6CF49BF_D770_45f3_9987_BB6C45B69CD3" style="Mode=3;Color=-1;LWidth=0;SOID=41A330B2;EOID=41A330B2;Hidden=1;"/>
|
1596
|
+
<element geometry="EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_0C675C03_2E90_4df7_9F5E_33654F1BC174" style="Mode=3;Color=-1;LWidth=0;SOID=98422238;EOID=2F28AF81;Hidden=1;"/>
|
1597
|
+
<element geometry="SX=0;SY=0;EX=0;EY=0;EDGE=2;$LLB=CX=56:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LLT=CX=39:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_7F310A6F_F068_4c1d_8FFD_B01FE62D6D1C" style="Mode=3;Color=-1;LWidth=0;SOID=A3BC5E9A;EOID=786A6260;Hidden=0;"/>
|
1598
|
+
<element geometry="SX=4;SY=0;EX=-3;EY=0;EDGE=1;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=325:-109$227:-109$;" subject="EAID_7DBD7567_3726_49de_B154_DD048B3872A4" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=A06A9902;EOID=2F28AF81;Hidden=0;"/>
|
1599
|
+
<element geometry="EX=0;EY=0;SX=7;SY=0;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=525:-403$635:-403$;" subject="EAID_AD6CE071_3261_4681_B8E1_25AE657BBCD2" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=A3BC5E9A;EOID=A81F3A31;Hidden=0;"/>
|
1600
|
+
<element geometry="SX=0;SY=0;EX=1;EY=0;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=752:-403$636:-403$;" subject="EAID_3B3D9500_1668_4529_A500_03753B605AA9" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=6E5CED2A;EOID=A81F3A31;Hidden=0;"/>
|
1601
|
+
<element geometry="SX=0;SY=-1;EX=0;EY=-1;SCME=0;SCTR=0;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=CX=24:CY=14:OX=-5:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LRB=CX=17:CY=14:OX=-4:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;IRHS=;ILHS=;Path=434:-62$434:-455$;" subject="EAID_95DCF977_3EB4_46dd_B0F5_152B18F6B749" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=98422238;EOID=A81F3A31;Hidden=0;"/>
|
1602
|
+
<element geometry="SX=0;SY=4;EX=37;EY=0;EDGE=2;$LLB=CX=17:CY=14:OX=18:OY=-2:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LLT=CX=39:CY=14:OX=16:OY=1:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=789:-450$;" subject="EAID_AD3FB2D7_370B_45ea_A98B_40B5B296E946" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=A81F3A31;EOID=6E5CED2A;Hidden=0;"/>
|
1603
|
+
<element geometry="SX=-2;SY=0;EX=0;EY=8;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_FBC084CC_4070_4dd5_8276_8A47DE1A72CD" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=786A6260;EOID=6E5CED2A;Hidden=0;"/>
|
1604
|
+
<element geometry="SX=0;SY=0;EX=0;EY=0;EDGE=2;$LLB=CX=17:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LLT=CX=39:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMT=CX=35:CY=14:OX=20:OY=26:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_BCE15BAC_CC31_4dbd_8D10_5FED82BC83D0" style="Mode=3;Color=-1;LWidth=0;SOID=4763B4B4;EOID=6986BBE2;Hidden=0;"/>
|
1605
|
+
<element geometry="SX=0;SY=0;EX=0;EY=0;EDGE=3;$LLB=CX=17:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LLT=CX=41:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMT=CX=44:CY=14:OX=30:OY=7:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LMB=;LRT=CX=45:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LRB=CX=17:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;IRHS=;ILHS=;Path=;" subject="EAID_7EB3B4C8_5C04_473c_A4D8_DE460008BE7F" style="Mode=3;Color=-1;LWidth=0;SOID=6986BBE2;EOID=786A6260;Hidden=0;"/>
|
1606
|
+
<element geometry="SX=0;SY=0;EX=0;EY=0;EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_342FB517_D9A8_493f_84CB_FF20C2C49703" style="Mode=3;Color=-1;LWidth=0;SOID=A06A9902;EOID=A06A9902;Hidden=1;"/>
|
1607
|
+
<element geometry="EDGE=1;SX=6;SY=0;EX=1;EY=0;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=524:-113$636:-113$;" subject="EAID_C764348C_3F86_457b_B81A_3CF2A18495A7" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=4763B4B4;EOID=98422238;Hidden=0;"/>
|
1608
|
+
<element geometry="SX=0;SY=0;EX=0;EY=0;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_84688F21_D758_44ab_870D_69D890029769" style="Mode=3;Color=-1;LWidth=0;SOID=A3BC5E9A;EOID=7974BD9C;Hidden=1;"/>
|
1609
|
+
<element geometry="SCTR=1;SCME=1;SX=0;SY=0;EX=0;EY=0;EDGE=2;SCTR.LEFT=388;SCTR.TOP=-299;SCTR.RIGHT=419;SCTR.BOTTOM=-284;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=389:-299$419:-299$419:-284$389:-284$;" subject="EAID_DDA4933C_60B6_4438_8A66_D43E7E158EEE" style="Mode=3;Color=-1;LWidth=0;SOID=7974BD9C;EOID=7974BD9C;Hidden=1;"/>
|
1610
|
+
<element geometry=" 1008, 560, 713, 54,;EDGE=4;SX=0;SY=-1;EX=0;EY=-1;$LLB=CX=17:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:ROT=0;LLT=CX=39:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:ROT=0;LMT=CX=35:CY=14:OX=-11:OY=15:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:ROT=0;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_CCDA7037_E124_4f24_B640_1101A2EAD20B" style="Mode=3;Color=-1;LWidth=0;SOID=A06A9902;EOID=8B25BE79;Hidden=0;"/>
|
1611
|
+
<element geometry=" 2245, 544, 525, 166,;EDGE=4;SCTR=1;SCME=1;SX=0;SY=0;EX=0;EY=0;SCTR.LEFT=-72;SCTR.TOP=-170;SCTR.RIGHT=96;SCTR.BOTTOM=-153;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=23:-153$-72:-153$-72:-170$23:-170$;" subject="EAID_25E1654C_081D_40e4_BAD6_D7CFCDA4D7CF" style="Mode=3;Color=-1;LWidth=0;SOID=8B25BE79;EOID=8B25BE79;Hidden=1;"/>
|
1612
|
+
<element geometry="SX=0;SY=0;EX=-3;EY=0;EDGE=1;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=88:-109$227:-109$;" subject="EAID_C489F217_9243_4465_A2E7_0031EEE43FF7" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=8B25BE79;EOID=2F28AF81;Hidden=0;"/>
|
1613
|
+
<element geometry=" 304, 851, 54, 458,;EDGE=1;SX=1;SY=18;EX=3;EY=-19;$LLB=CX=17:CY=14:OX=-25:OY=2:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:ROT=0;LLT=CX=45:CY=14:OX=56:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:ROT=0;LMT=CX=44:CY=14:OX=27:OY=9:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:ROT=0;LMB=;LRT=CX=41:CY=14:OX=57:OY=-2:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:ROT=0;LRB=CX=17:CY=14:OX=-31:OY=-4:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:ROT=0;IRHS=;ILHS=;Path=;" subject="EAID_4CD5EE6F_45C8_4128_963A_1E1174556192" style="Mode=3;Color=-1;LWidth=0;SOID=7974BD9C;EOID=A06A9902;Hidden=0;"/>
|
1614
|
+
<element geometry="EDGE=1;SX=-3;SY=0;EX=0;EY=0;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=749:-113$635:-113$;" subject="EAID_2DD1F079_8C74_49d3_82B5_984A3AE10DF5" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=6986BBE2;EOID=98422238;Hidden=0;"/>
|
1615
|
+
<element geometry="EDGE=2;SX=0;SY=-3;EX=0;EY=1;$LLB=;LLT=;LMT=;LMB=;LRT=CX=37:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;LRB=CX=17:CY=14:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=1:DIR=0:ROT=0;IRHS=;ILHS=;Path=402:-65$402:-453$;" subject="EAID_ECA16392_6B77_4555_8D79_386CD1E0E920" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=2F28AF81;EOID=E150D01C;Hidden=0;"/>
|
1616
|
+
<element geometry="SX=3;SY=0;EX=2;EY=0;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=326:-405$228:-405$;" subject="EAID_D8EC6DF9_2F7E_4011_8AF9_399FB8FDD5C3" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=7974BD9C;EOID=E150D01C;Hidden=0;"/>
|
1617
|
+
<element geometry="SX=0;SY=0;EX=0;EY=0;EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_C745CC59_CA14_4859_9264_F77798F25D24" style="Mode=3;Color=-1;LWidth=0;SOID=E150D01C;EOID=E150D01C;Hidden=1;"/>
|
1618
|
+
<element geometry="SX=-22;SY=0;EX=0;EY=2;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=CX=39:CY=14:OX=-13:OY=3:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:ROT=0;LRB=CX=17:CY=14:OX=-17:OY=-1:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:ROT=0;IRHS=;ILHS=;Path=68:-452$;" subject="EAID_BE3E23F1_C488_4145_ABE9_5316AA296387" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=E4FF4727;EOID=E150D01C;Hidden=0;"/>
|
1619
|
+
<element geometry="SX=1;SY=0;EX=2;EY=0;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=91:-405$228:-405$;" subject="EAID_F30CF839_83A9_4154_B274_6AA69EFFF811" style="Mode=3;Color=-1;LWidth=0;TREE=OS;SOID=E4FF4727;EOID=E150D01C;Hidden=0;"/>
|
1620
|
+
<element geometry="SX=8;SY=-21;EX=8;EY=-21;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_E250C61E_661C_4f55_8BDF_2467B454E385" style="Mode=3;Color=-1;LWidth=0;SOID=A81F3A31;EOID=E150D01C;Hidden=1;"/>
|
1621
|
+
<element geometry="SX=0;SY=0;EX=0;EY=0;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;IRHS=;ILHS=;Path=;" subject="EAID_DC71C19F_9309_41ec_954B_B0B1847F386F" style="Mode=3;Color=-1;LWidth=0;SOID=2F28AF81;EOID=8B25BE79;Hidden=1;"/>
|
1622
|
+
</elements>
|
1623
|
+
</diagram>
|
1624
|
+
</xmi:Extension>
|
1219
1625
|
<thecustomprofile:Bibliography base_Class="EAID_D832D6D8_0518_43f7_9166_7A4E3E8605AA"/>
|
1220
1626
|
<thecustomprofile:BasicDoc base_Class="EAID_10AD8D60_9972_475a_AB7E_FA40212D5297"/>
|
1221
1627
|
<thecustomprofile:enumeration base_Enumeration="EAID_E497ABDA_05EF_416a_A461_03535864970D"/>
|
@@ -16,6 +16,7 @@ RSpec.describe Lutaml::XMI::Parsers::XML do
|
|
16
16
|
Requirement
|
17
17
|
RequirementSubpart
|
18
18
|
RequirementType
|
19
|
+
TemporalGeometricPrimitive
|
19
20
|
]
|
20
21
|
end
|
21
22
|
let(:expected_class_xmi_ids) do
|
@@ -28,6 +29,7 @@ RSpec.describe Lutaml::XMI::Parsers::XML do
|
|
28
29
|
EAID_2AC20C81_1E83_400d_B098_BAB784395E06
|
29
30
|
EAID_035D8176_5E9E_42c8_B447_64411AE96F57
|
30
31
|
EAID_C1155D80_E68B_46d5_ADE5_F5639486163D
|
32
|
+
EAID_37BF1557_0370_435d_94BB_8FCC4574561B
|
31
33
|
]
|
32
34
|
end
|
33
35
|
let(:expected_enum_names) { ["ObligationType"] }
|
@@ -84,6 +86,15 @@ RSpec.describe Lutaml::XMI::Parsers::XML do
|
|
84
86
|
EAJava_RequirementSubpart_0..___
|
85
87
|
]
|
86
88
|
end
|
89
|
+
let(:expected_association_names) do
|
90
|
+
%w[
|
91
|
+
TemporalGeometricPrimitive
|
92
|
+
Primitive
|
93
|
+
TemporalGeometry
|
94
|
+
Interval
|
95
|
+
Instant
|
96
|
+
]
|
97
|
+
end
|
87
98
|
let(:first_package) { parse.packages.first }
|
88
99
|
let(:first_nested_package) { parse.packages.first.packages.first }
|
89
100
|
|
@@ -116,8 +127,24 @@ RSpec.describe Lutaml::XMI::Parsers::XML do
|
|
116
127
|
end
|
117
128
|
|
118
129
|
it "correctly parses associations for class" do
|
119
|
-
klass = first_nested_package.classes.find { |entity| entity.name == '
|
120
|
-
expect(klass.associations.map(&:member_end)).to(eq(
|
130
|
+
klass = first_nested_package.classes.find { |entity| entity.name == 'TemporalGeometricPrimitive' }
|
131
|
+
expect(klass.associations.map(&:member_end).compact).to(eq(expected_association_names))
|
132
|
+
|
133
|
+
inheritance = klass.associations.find { |entity| entity.member_end == 'TemporalGeometry' }
|
134
|
+
expect(inheritance.member_end_type).to eq('inheritance')
|
135
|
+
expect(inheritance.member_end_cardinality).to eq({"min"=>"C", "max"=>"*"})
|
136
|
+
|
137
|
+
aggregation = klass.associations.find { |entity| entity.member_end == 'TemporalGeometricPrimitive' }
|
138
|
+
expect(aggregation.member_end_attribute_name).to eq('element')
|
139
|
+
expect(aggregation.member_end_type).to eq('aggregation')
|
140
|
+
expect(aggregation.member_end_cardinality).to eq({"min"=>"C", "max"=>"*"})
|
141
|
+
end
|
142
|
+
|
143
|
+
it "correctly parses diagrams for package" do
|
144
|
+
root_package = parse.packages.first
|
145
|
+
expect(root_package.diagrams.length).to(eq(2))
|
146
|
+
expect(root_package.diagrams.map(&:name)).to(eq(['Fig: DGGS Package Diagram', 'Fig: Context for Temporal Geometry and Topology']))
|
147
|
+
expect(root_package.diagrams.map(&:definition)).to(eq(['this is a documentation', '']))
|
121
148
|
end
|
122
149
|
end
|
123
150
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lutaml-xmi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-06-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: hashie
|
@@ -53,47 +53,47 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: nokogiri
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
62
|
-
type: :
|
61
|
+
version: '1.10'
|
62
|
+
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
68
|
+
version: '1.10'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: bundler
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
75
|
+
version: '2.0'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
82
|
+
version: '2.0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: byebug
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - "
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '
|
89
|
+
version: '0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - "
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
96
|
+
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: pry
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -165,6 +165,7 @@ files:
|
|
165
165
|
- ".rspec"
|
166
166
|
- CODE_OF_CONDUCT.md
|
167
167
|
- Gemfile
|
168
|
+
- Makefile
|
168
169
|
- README.adoc
|
169
170
|
- Rakefile
|
170
171
|
- bin/console
|
@@ -201,7 +202,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
201
202
|
- !ruby/object:Gem::Version
|
202
203
|
version: '0'
|
203
204
|
requirements: []
|
204
|
-
rubygems_version: 3.
|
205
|
+
rubygems_version: 3.1.6
|
205
206
|
signing_key:
|
206
207
|
specification_version: 4
|
207
208
|
summary: XML Metadata Interchange (XMI) Specification parser in Ruby, tools for accessing
|