lutaml 0.9.39 → 0.9.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.adoc +7 -1
- data/docs/lutaml-express.adoc +35 -0
- data/docs/lutaml-sysml.adoc +10 -0
- data/docs/lutaml-uml.adoc +111 -0
- data/docs/lutaml-xmi.adoc +33 -0
- data/exe/lutaml-yaml2uml +1 -1
- data/lib/lutaml/command_line.rb +1 -1
- data/lib/lutaml/converter/dsl_to_uml.rb +235 -0
- data/lib/lutaml/converter/xmi_hash_to_uml.rb +196 -0
- data/lib/lutaml/express.rb +0 -1
- data/lib/lutaml/formatter/base.rb +7 -7
- data/lib/lutaml/formatter/graphviz.rb +19 -8
- data/lib/lutaml/formatter.rb +0 -2
- data/lib/lutaml/parser.rb +1 -1
- data/lib/lutaml/sysml/allocate.rb +1 -1
- data/lib/lutaml/sysml/allocated.rb +1 -1
- data/lib/lutaml/sysml/binding_connector.rb +1 -1
- data/lib/lutaml/sysml/block.rb +1 -1
- data/lib/lutaml/sysml/constraint_block.rb +1 -1
- data/lib/lutaml/sysml/copy.rb +1 -1
- data/lib/lutaml/sysml/derive_requirement.rb +1 -1
- data/lib/lutaml/sysml/nested_connector_end.rb +1 -1
- data/lib/lutaml/sysml/refine.rb +1 -1
- data/lib/lutaml/sysml/requirement_related.rb +1 -1
- data/lib/lutaml/sysml/satisfy.rb +1 -1
- data/lib/lutaml/sysml/test_case.rb +1 -1
- data/lib/lutaml/sysml/trace.rb +1 -1
- data/lib/lutaml/sysml/verify.rb +1 -1
- data/lib/lutaml/sysml/xmi_file.rb +1 -1
- data/lib/lutaml/sysml.rb +0 -1
- data/lib/lutaml/uml/action.rb +15 -0
- data/lib/lutaml/uml/actor.rb +0 -8
- data/lib/lutaml/uml/association.rb +25 -34
- data/lib/lutaml/uml/cardinality.rb +10 -0
- data/lib/lutaml/uml/class.rb +43 -68
- data/lib/lutaml/uml/classifier.rb +5 -3
- data/lib/lutaml/uml/connector.rb +5 -8
- data/lib/lutaml/uml/connector_end.rb +20 -0
- data/lib/lutaml/uml/constraint.rb +11 -1
- data/lib/lutaml/uml/data_type.rb +48 -64
- data/lib/lutaml/uml/dependency.rb +5 -8
- data/lib/lutaml/uml/document.rb +46 -73
- data/lib/lutaml/uml/enum.rb +12 -35
- data/lib/lutaml/uml/event.rb +0 -1
- data/lib/lutaml/uml/fidelity.rb +10 -0
- data/lib/lutaml/uml/group.rb +17 -0
- data/lib/lutaml/uml/instance.rb +5 -7
- data/lib/lutaml/uml/model.rb +3 -3
- data/lib/lutaml/uml/namespace.rb +10 -0
- data/lib/lutaml/uml/node/base.rb +1 -1
- data/lib/lutaml/uml/operation.rb +6 -22
- data/lib/lutaml/uml/package.rb +23 -44
- data/lib/lutaml/uml/parsers/dsl.rb +5 -2
- data/lib/lutaml/uml/parsers/yaml.rb +2 -28
- data/lib/lutaml/uml/primitive_type.rb +3 -4
- data/lib/lutaml/uml/property.rb +15 -17
- data/lib/lutaml/uml/region.rb +0 -1
- data/lib/lutaml/uml/state.rb +9 -1
- data/lib/lutaml/uml/state_machine.rb +0 -1
- data/lib/lutaml/uml/top_element.rb +61 -39
- data/lib/lutaml/uml/top_element_attribute.rb +33 -22
- data/lib/lutaml/uml/transition.rb +11 -1
- data/lib/lutaml/uml/trigger.rb +5 -1
- data/lib/lutaml/uml/value.rb +18 -14
- data/lib/lutaml/uml.rb +40 -2
- data/lib/lutaml/version.rb +1 -1
- data/lib/lutaml/xmi/liquid_drops/enum_drop.rb +1 -1
- data/lib/lutaml/xmi/liquid_drops/klass_drop.rb +2 -1
- data/lib/lutaml/xmi/parsers/xmi_base.rb +20 -2
- data/lib/lutaml/xmi/parsers/xml.rb +5 -4
- metadata +15 -19
- data/lib/lutaml/express/README.adoc +0 -55
- data/lib/lutaml/express/version.rb +0 -7
- data/lib/lutaml/sysml/README.md +0 -40
- data/lib/lutaml/sysml/version.rb +0 -5
- data/lib/lutaml/uml/README.adoc +0 -44
- data/lib/lutaml/uml/constructor_end.rb +0 -16
- data/lib/lutaml/uml/formatter/base.rb +0 -67
- data/lib/lutaml/uml/formatter/graphviz.rb +0 -332
- data/lib/lutaml/uml/formatter.rb +0 -21
- data/lib/lutaml/uml/serializers/association.rb +0 -58
- data/lib/lutaml/uml/serializers/base.rb +0 -16
- data/lib/lutaml/uml/serializers/class.rb +0 -29
- data/lib/lutaml/uml/serializers/top_element_attribute.rb +0 -14
- data/lib/lutaml/uml/serializers/yaml_view.rb +0 -18
- data/lib/lutaml/uml/version.rb +0 -7
- data/lib/lutaml/xmi/README.adoc +0 -24
- /data/{LUTAML.adoc → docs/lutaml_syntax.adoc} +0 -0
data/lib/lutaml/uml/property.rb
CHANGED
@@ -3,24 +3,22 @@
|
|
3
3
|
module Lutaml
|
4
4
|
module Uml
|
5
5
|
class Property < TopElement
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
6
|
+
attribute :type, :string
|
7
|
+
attribute :aggregation, :string
|
8
|
+
attribute :association, :string
|
9
|
+
attribute :is_derived, :boolean, default: false
|
10
|
+
attribute :visibility, :string, default: "public"
|
11
|
+
attribute :lowerValue, :string, default: "1"
|
12
|
+
attribute :upperValue, :string, default: "1"
|
12
13
|
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
@visibility = "public"
|
22
|
-
@lowerValue = "1" # rubocop:disable Naming/VariableName
|
23
|
-
@upperValue = "1" # rubocop:disable Naming/VariableName
|
14
|
+
yaml do
|
15
|
+
map "type", to: :type
|
16
|
+
map "aggregation", to: :aggregation
|
17
|
+
map "association", to: :association
|
18
|
+
map "is_derived", to: :is_derived
|
19
|
+
map "visibility", to: :visibility
|
20
|
+
map "lowerValue", to: :lowerValue
|
21
|
+
map "upperValue", to: :upperValue
|
24
22
|
end
|
25
23
|
end
|
26
24
|
end
|
data/lib/lutaml/uml/region.rb
CHANGED
data/lib/lutaml/uml/state.rb
CHANGED
@@ -6,7 +6,15 @@
|
|
6
6
|
module Lutaml
|
7
7
|
module Uml
|
8
8
|
class State < Vertex
|
9
|
-
|
9
|
+
attribute :exit, :string
|
10
|
+
attribute :entry, :string
|
11
|
+
attribute :do_activity, :string
|
12
|
+
|
13
|
+
yaml do
|
14
|
+
map "exit", to: :exit
|
15
|
+
map "entry", to: :entry
|
16
|
+
map "do_activity", to: :do_activity
|
17
|
+
end
|
10
18
|
end
|
11
19
|
end
|
12
20
|
end
|
@@ -2,57 +2,79 @@
|
|
2
2
|
|
3
3
|
module Lutaml
|
4
4
|
module Uml
|
5
|
-
class TopElement
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
:href,
|
16
|
-
:visibility,
|
17
|
-
:comments
|
18
|
-
|
19
|
-
# rubocop:disable Rails/ActiveRecordAliases
|
20
|
-
def initialize(attributes = {})
|
21
|
-
@visibility = "public"
|
22
|
-
@name = attributes["name"]
|
23
|
-
update_attributes(attributes)
|
24
|
-
end
|
25
|
-
# rubocop:enable Rails/ActiveRecordAliases
|
5
|
+
class TopElement < Lutaml::Model::Serializable
|
6
|
+
attribute :name, :string
|
7
|
+
attribute :xmi_id, :string
|
8
|
+
attribute :xmi_uuid, :string
|
9
|
+
attribute :namespace, NameSpace
|
10
|
+
attribute :keyword, :string
|
11
|
+
attribute :stereotype, :string, collection: true, default: -> { [] }
|
12
|
+
attribute :href, :string
|
13
|
+
attribute :visibility, :string, default: "public"
|
14
|
+
attribute :comments, :string, collection: true
|
26
15
|
|
27
|
-
|
28
|
-
|
29
|
-
return nil
|
30
|
-
end
|
16
|
+
attribute :definition, :string
|
17
|
+
attribute :full_name, :string
|
31
18
|
|
32
|
-
|
33
|
-
|
19
|
+
yaml do
|
20
|
+
map "name", to: :name
|
21
|
+
map "xmi_id", to: :xmi_id
|
22
|
+
map "xmi_uuid", to: :xmi_uuid
|
23
|
+
map "namespace", to: :namespace
|
24
|
+
map "keyword", to: :keyword
|
25
|
+
map "stereotype", to: :stereotype
|
26
|
+
map "href", to: :href
|
27
|
+
map "visibility", to: :visibility
|
28
|
+
map "comments", to: :comments
|
34
29
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
end
|
30
|
+
map "definition", to: :definition, with: {
|
31
|
+
to: :definition_to_yaml, from: :definition_from_yaml
|
32
|
+
}
|
33
|
+
map "full_name", with: {
|
34
|
+
to: :full_name_to_yaml, from: :full_name_from_yaml
|
35
|
+
}
|
36
|
+
end
|
43
37
|
|
44
|
-
|
38
|
+
def definition_to_yaml(model, doc)
|
39
|
+
doc["definition"] = model.definition if model.definition
|
45
40
|
end
|
46
41
|
|
47
|
-
def
|
48
|
-
|
49
|
-
.to_s
|
42
|
+
def definition_from_yaml(model, value)
|
43
|
+
model.definition = value.to_s
|
50
44
|
.gsub(/\\}/, "}")
|
51
45
|
.gsub(/\\{/, "{")
|
52
46
|
.split("\n")
|
53
47
|
.map(&:strip)
|
54
48
|
.join("\n")
|
55
49
|
end
|
50
|
+
|
51
|
+
def full_name_to_yaml(model, doc) # rubocop:disable Metrics/MethodLength
|
52
|
+
return model.full_name if model.full_name
|
53
|
+
|
54
|
+
# If full_name is not set, calculate it
|
55
|
+
full_name = nil
|
56
|
+
if model.name == nil
|
57
|
+
return full_name
|
58
|
+
end
|
59
|
+
|
60
|
+
full_name = model.name
|
61
|
+
next_namespace = model.namespace
|
62
|
+
|
63
|
+
while !next_namespace.nil?
|
64
|
+
full_name = if next_namespace.name.nil?
|
65
|
+
"::#{full_name}"
|
66
|
+
else
|
67
|
+
"#{next_namespace.name}::#{full_name}"
|
68
|
+
end
|
69
|
+
next_namespace = next_namespace.namespace
|
70
|
+
end
|
71
|
+
|
72
|
+
doc["full_name"] = full_name
|
73
|
+
end
|
74
|
+
|
75
|
+
def full_name_from_yaml(model, value)
|
76
|
+
model.full_name = value
|
77
|
+
end
|
56
78
|
end
|
57
79
|
end
|
58
80
|
end
|
@@ -2,32 +2,43 @@
|
|
2
2
|
|
3
3
|
module Lutaml
|
4
4
|
module Uml
|
5
|
-
class TopElementAttribute
|
6
|
-
|
7
|
-
|
5
|
+
class TopElementAttribute < Lutaml::Model::Serializable
|
6
|
+
attribute :name, :string
|
7
|
+
attribute :visibility, :string, default: "public"
|
8
|
+
attribute :type, :string
|
9
|
+
attribute :id, :string
|
10
|
+
attribute :xmi_id, :string
|
11
|
+
attribute :contain, :string
|
12
|
+
attribute :static, :string
|
13
|
+
attribute :cardinality, Cardinality
|
14
|
+
attribute :keyword, :string
|
15
|
+
attribute :is_derived, :boolean, default: false
|
8
16
|
|
9
|
-
|
10
|
-
attr_accessor :name,
|
11
|
-
:visibility,
|
12
|
-
:type,
|
13
|
-
:id,
|
14
|
-
:xmi_id,
|
15
|
-
:contain,
|
16
|
-
:static,
|
17
|
-
:cardinality,
|
18
|
-
:keyword,
|
19
|
-
:is_derived
|
17
|
+
attribute :definition, :string
|
20
18
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
19
|
+
yaml do
|
20
|
+
map "name", to: :name
|
21
|
+
map "visibility", to: :visibility
|
22
|
+
map "type", to: :type
|
23
|
+
map "id", to: :id
|
24
|
+
map "xmi_id", to: :xmi_id
|
25
|
+
map "contain", to: :contain
|
26
|
+
map "static", to: :static
|
27
|
+
map "cardinality", to: :cardinality
|
28
|
+
map "keyword", to: :keyword
|
29
|
+
map "is_derived", to: :is_derived
|
30
|
+
|
31
|
+
map "definition", to: :definition, with: {
|
32
|
+
to: :definition_to_yaml, from: :definition_from_yaml
|
33
|
+
}
|
34
|
+
end
|
35
|
+
|
36
|
+
def definition_to_yaml(model, doc)
|
37
|
+
doc["definition"] = model.definition if model.definition
|
25
38
|
end
|
26
|
-
# rubocop:enable Rails/ActiveRecordAliases
|
27
39
|
|
28
|
-
def
|
29
|
-
|
30
|
-
.to_s
|
40
|
+
def definition_from_yaml(model, value)
|
41
|
+
model.definition = value.to_s
|
31
42
|
.gsub(/\\}/, "}")
|
32
43
|
.gsub(/\\{/, "{")
|
33
44
|
.split("\n")
|
@@ -6,7 +6,17 @@
|
|
6
6
|
module Lutaml
|
7
7
|
module Uml
|
8
8
|
class Transition < TopElement
|
9
|
-
|
9
|
+
attribute :source, :string
|
10
|
+
attribute :target, :string
|
11
|
+
attribute :guard, :string
|
12
|
+
attribute :effect, :string
|
13
|
+
|
14
|
+
yaml do
|
15
|
+
map "source", to: :source
|
16
|
+
map "target", to: :target
|
17
|
+
map "guard", to: :guard
|
18
|
+
map "effect", to: :effect
|
19
|
+
end
|
10
20
|
end
|
11
21
|
end
|
12
22
|
end
|
data/lib/lutaml/uml/trigger.rb
CHANGED
data/lib/lutaml/uml/value.rb
CHANGED
@@ -2,24 +2,28 @@
|
|
2
2
|
|
3
3
|
module Lutaml
|
4
4
|
module Uml
|
5
|
-
class Value
|
6
|
-
|
7
|
-
|
5
|
+
class Value < Lutaml::Model::Serializable
|
6
|
+
attribute :definition, :string
|
7
|
+
attribute :name, :string
|
8
|
+
attribute :id, :string
|
9
|
+
attribute :type, :string
|
8
10
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
11
|
+
yaml do
|
12
|
+
map "name", to: :name
|
13
|
+
map "id", to: :id
|
14
|
+
map "type", to: :type
|
13
15
|
|
14
|
-
|
15
|
-
|
16
|
-
|
16
|
+
map "definition", to: :definition, with: {
|
17
|
+
to: :definition_to_yaml, from: :definition_from_yaml
|
18
|
+
}
|
17
19
|
end
|
18
|
-
# rubocop:enable Rails/ActiveRecordAliases
|
19
20
|
|
20
|
-
def
|
21
|
-
|
22
|
-
|
21
|
+
def definition_to_yaml(model, doc)
|
22
|
+
doc["definition"] = model.definition if model.definition
|
23
|
+
end
|
24
|
+
|
25
|
+
def definition_from_yaml(model, value)
|
26
|
+
model.definition = value.to_s
|
23
27
|
.gsub(/\\}/, "}")
|
24
28
|
.gsub(/\\{/, "{")
|
25
29
|
.split("\n")
|
data/lib/lutaml/uml.rb
CHANGED
@@ -1,10 +1,48 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require "lutaml/
|
3
|
+
require "lutaml/model"
|
4
|
+
|
5
|
+
require "lutaml/uml/has_attributes"
|
6
|
+
require "lutaml/uml/has_members"
|
7
|
+
require "lutaml/uml/namespace"
|
8
|
+
require "lutaml/uml/cardinality"
|
9
|
+
require "lutaml/uml/fidelity"
|
10
|
+
require "lutaml/uml/top_element"
|
11
|
+
require "lutaml/uml/top_element_attribute"
|
12
|
+
require "lutaml/uml/value"
|
13
|
+
require "lutaml/uml/action"
|
14
|
+
require "lutaml/uml/classifier"
|
15
|
+
require "lutaml/uml/dependency"
|
16
|
+
require "lutaml/uml/association"
|
17
|
+
require "lutaml/uml/constraint"
|
18
|
+
require "lutaml/uml/operation"
|
19
|
+
require "lutaml/uml/class"
|
20
|
+
require "lutaml/uml/data_type"
|
21
|
+
require "lutaml/uml/enum"
|
22
|
+
require "lutaml/uml/diagram"
|
23
|
+
require "lutaml/uml/package"
|
24
|
+
require "lutaml/uml/primitive_type"
|
25
|
+
require "lutaml/uml/group"
|
26
|
+
require "lutaml/uml/connector"
|
27
|
+
require "lutaml/uml/connector_end"
|
28
|
+
require "lutaml/uml/behavior"
|
29
|
+
require "lutaml/uml/activity"
|
30
|
+
require "lutaml/uml/vertex"
|
31
|
+
require "lutaml/uml/state"
|
32
|
+
require "lutaml/uml/final_state"
|
33
|
+
require "lutaml/uml/property"
|
34
|
+
require "lutaml/uml/port"
|
35
|
+
require "lutaml/uml/document"
|
36
|
+
|
4
37
|
require "lutaml/uml/parsers/dsl"
|
5
38
|
require "lutaml/uml/parsers/yaml"
|
6
39
|
require "lutaml/uml/parsers/attribute"
|
7
|
-
require "lutaml/
|
40
|
+
require "lutaml/formatter"
|
41
|
+
require "lutaml/formatter/graphviz"
|
42
|
+
|
43
|
+
Dir.glob(File.expand_path("./uml/**/*.rb", __dir__)).sort.each do |file|
|
44
|
+
require file
|
45
|
+
end
|
8
46
|
|
9
47
|
module Lutaml
|
10
48
|
module Uml
|
data/lib/lutaml/version.rb
CHANGED
@@ -297,7 +297,7 @@ module Lutaml
|
|
297
297
|
@upper_level_cache[klass_id]
|
298
298
|
end
|
299
299
|
|
300
|
-
def
|
300
|
+
def find_subtype_of_from_owned_attribute_type(id) # rubocop:disable Metrics/AbcSize,Metrics/CyclomaticComplexity,Metrics/MethodLength,Metrics/PerceivedComplexity
|
301
301
|
@pkg_elements_owned_attributes ||= all_packaged_elements.map do |e|
|
302
302
|
{
|
303
303
|
name: e.name,
|
@@ -306,7 +306,6 @@ module Lutaml
|
|
306
306
|
end || [],
|
307
307
|
}
|
308
308
|
end
|
309
|
-
|
310
309
|
result = @pkg_elements_owned_attributes.find do |e|
|
311
310
|
e[:idrefs].include?(id)
|
312
311
|
end
|
@@ -314,6 +313,25 @@ module Lutaml
|
|
314
313
|
result[:name] if result
|
315
314
|
end
|
316
315
|
|
316
|
+
def find_subtype_of_from_generalization(id) # rubocop:disable Metrics/AbcSize,Metrics/CyclomaticComplexity,Metrics/MethodLength,Metrics/PerceivedComplexity
|
317
|
+
matched_element = @xmi_root_model.extension.elements.element
|
318
|
+
.find { |e| e.idref == id }
|
319
|
+
|
320
|
+
return if !matched_element || !matched_element.links
|
321
|
+
|
322
|
+
matched_generalization = nil
|
323
|
+
matched_element.links.each do |link|
|
324
|
+
matched_generalization = link&.generalization&.find do |g|
|
325
|
+
g.start == id
|
326
|
+
end
|
327
|
+
break if matched_generalization
|
328
|
+
end
|
329
|
+
|
330
|
+
return if matched_generalization&.end.nil?
|
331
|
+
|
332
|
+
lookup_entity_name(matched_generalization.end)
|
333
|
+
end
|
334
|
+
|
317
335
|
# Build cache once for all packaged elements
|
318
336
|
def build_upper_level_cache
|
319
337
|
@upper_level_cache = {}
|
@@ -1,16 +1,18 @@
|
|
1
1
|
require "nokogiri"
|
2
2
|
require "htmlentities"
|
3
|
-
require "lutaml/uml/has_attributes"
|
4
|
-
require "lutaml/uml/document"
|
5
3
|
require "lutaml/xmi"
|
6
4
|
require "xmi"
|
7
5
|
require "lutaml/xmi/parsers/xmi_base"
|
6
|
+
require "lutaml/uml"
|
7
|
+
require "lutaml/converter/xmi_hash_to_uml"
|
8
8
|
|
9
9
|
module Lutaml
|
10
10
|
module XMI
|
11
11
|
module Parsers
|
12
12
|
# Class for parsing .xmi schema files into ::Lutaml::Uml::Document
|
13
13
|
class XML
|
14
|
+
include Lutaml::Converter::XmiHashToUml
|
15
|
+
|
14
16
|
@id_name_mapping_static = {}
|
15
17
|
@xmi_root_model_cache_static = {}
|
16
18
|
|
@@ -98,8 +100,7 @@ module Lutaml
|
|
98
100
|
def parse(xmi_model)
|
99
101
|
set_xmi_model(xmi_model)
|
100
102
|
serialized_hash = serialize_xmi(xmi_model)
|
101
|
-
|
102
|
-
::Lutaml::Uml::Document.new(serialized_hash)
|
103
|
+
create_uml_document(serialized_hash)
|
103
104
|
end
|
104
105
|
|
105
106
|
# @param xmi_model [Lutaml::Model::Serializable]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lutaml
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.41
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-09-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: expressir
|
@@ -197,7 +197,6 @@ files:
|
|
197
197
|
- ".rubocop.yml"
|
198
198
|
- CODE_OF_CONDUCT.md
|
199
199
|
- Gemfile
|
200
|
-
- LUTAML.adoc
|
201
200
|
- Makefile
|
202
201
|
- README.adoc
|
203
202
|
- Rakefile
|
@@ -206,16 +205,21 @@ files:
|
|
206
205
|
- bin/plantuml2lutaml
|
207
206
|
- bin/setup
|
208
207
|
- bin/yaml2lutaml
|
208
|
+
- docs/lutaml-express.adoc
|
209
|
+
- docs/lutaml-sysml.adoc
|
210
|
+
- docs/lutaml-uml.adoc
|
211
|
+
- docs/lutaml-xmi.adoc
|
212
|
+
- docs/lutaml_syntax.adoc
|
209
213
|
- exe/lutaml
|
210
214
|
- exe/lutaml-sysml
|
211
215
|
- exe/lutaml-wsd2uml
|
212
216
|
- exe/lutaml-yaml2uml
|
213
217
|
- lib/lutaml.rb
|
214
218
|
- lib/lutaml/command_line.rb
|
219
|
+
- lib/lutaml/converter/dsl_to_uml.rb
|
220
|
+
- lib/lutaml/converter/xmi_hash_to_uml.rb
|
215
221
|
- lib/lutaml/express.rb
|
216
|
-
- lib/lutaml/express/README.adoc
|
217
222
|
- lib/lutaml/express/parsers/exp.rb
|
218
|
-
- lib/lutaml/express/version.rb
|
219
223
|
- lib/lutaml/formatter.rb
|
220
224
|
- lib/lutaml/formatter/base.rb
|
221
225
|
- lib/lutaml/formatter/graphviz.rb
|
@@ -223,7 +227,6 @@ files:
|
|
223
227
|
- lib/lutaml/layout/graph_viz_engine.rb
|
224
228
|
- lib/lutaml/parser.rb
|
225
229
|
- lib/lutaml/sysml.rb
|
226
|
-
- lib/lutaml/sysml/README.md
|
227
230
|
- lib/lutaml/sysml/allocate.rb
|
228
231
|
- lib/lutaml/sysml/allocated.rb
|
229
232
|
- lib/lutaml/sysml/binding_connector.rb
|
@@ -239,34 +242,34 @@ files:
|
|
239
242
|
- lib/lutaml/sysml/test_case.rb
|
240
243
|
- lib/lutaml/sysml/trace.rb
|
241
244
|
- lib/lutaml/sysml/verify.rb
|
242
|
-
- lib/lutaml/sysml/version.rb
|
243
245
|
- lib/lutaml/sysml/xmi_file.rb
|
244
246
|
- lib/lutaml/uml.rb
|
245
|
-
- lib/lutaml/uml/README.adoc
|
246
247
|
- lib/lutaml/uml/abstraction.rb
|
248
|
+
- lib/lutaml/uml/action.rb
|
247
249
|
- lib/lutaml/uml/activity.rb
|
248
250
|
- lib/lutaml/uml/actor.rb
|
249
251
|
- lib/lutaml/uml/association.rb
|
250
252
|
- lib/lutaml/uml/behavior.rb
|
253
|
+
- lib/lutaml/uml/cardinality.rb
|
251
254
|
- lib/lutaml/uml/class.rb
|
252
255
|
- lib/lutaml/uml/classifier.rb
|
253
256
|
- lib/lutaml/uml/connector.rb
|
257
|
+
- lib/lutaml/uml/connector_end.rb
|
254
258
|
- lib/lutaml/uml/constraint.rb
|
255
|
-
- lib/lutaml/uml/constructor_end.rb
|
256
259
|
- lib/lutaml/uml/data_type.rb
|
257
260
|
- lib/lutaml/uml/dependency.rb
|
258
261
|
- lib/lutaml/uml/diagram.rb
|
259
262
|
- lib/lutaml/uml/document.rb
|
260
263
|
- lib/lutaml/uml/enum.rb
|
261
264
|
- lib/lutaml/uml/event.rb
|
265
|
+
- lib/lutaml/uml/fidelity.rb
|
262
266
|
- lib/lutaml/uml/final_state.rb
|
263
|
-
- lib/lutaml/uml/
|
264
|
-
- lib/lutaml/uml/formatter/base.rb
|
265
|
-
- lib/lutaml/uml/formatter/graphviz.rb
|
267
|
+
- lib/lutaml/uml/group.rb
|
266
268
|
- lib/lutaml/uml/has_attributes.rb
|
267
269
|
- lib/lutaml/uml/has_members.rb
|
268
270
|
- lib/lutaml/uml/instance.rb
|
269
271
|
- lib/lutaml/uml/model.rb
|
272
|
+
- lib/lutaml/uml/namespace.rb
|
270
273
|
- lib/lutaml/uml/node/base.rb
|
271
274
|
- lib/lutaml/uml/node/class_node.rb
|
272
275
|
- lib/lutaml/uml/node/class_relationship.rb
|
@@ -291,11 +294,6 @@ files:
|
|
291
294
|
- lib/lutaml/uml/pseudostate.rb
|
292
295
|
- lib/lutaml/uml/realization.rb
|
293
296
|
- lib/lutaml/uml/region.rb
|
294
|
-
- lib/lutaml/uml/serializers/association.rb
|
295
|
-
- lib/lutaml/uml/serializers/base.rb
|
296
|
-
- lib/lutaml/uml/serializers/class.rb
|
297
|
-
- lib/lutaml/uml/serializers/top_element_attribute.rb
|
298
|
-
- lib/lutaml/uml/serializers/yaml_view.rb
|
299
297
|
- lib/lutaml/uml/state.rb
|
300
298
|
- lib/lutaml/uml/state_machine.rb
|
301
299
|
- lib/lutaml/uml/top_element.rb
|
@@ -303,11 +301,9 @@ files:
|
|
303
301
|
- lib/lutaml/uml/transition.rb
|
304
302
|
- lib/lutaml/uml/trigger.rb
|
305
303
|
- lib/lutaml/uml/value.rb
|
306
|
-
- lib/lutaml/uml/version.rb
|
307
304
|
- lib/lutaml/uml/vertex.rb
|
308
305
|
- lib/lutaml/version.rb
|
309
306
|
- lib/lutaml/xmi.rb
|
310
|
-
- lib/lutaml/xmi/README.adoc
|
311
307
|
- lib/lutaml/xmi/liquid_drops/association_drop.rb
|
312
308
|
- lib/lutaml/xmi/liquid_drops/attribute_drop.rb
|
313
309
|
- lib/lutaml/xmi/liquid_drops/cardinality_drop.rb
|
@@ -1,55 +0,0 @@
|
|
1
|
-
image:https://img.shields.io/gem/v/lutaml-express.svg["Gem Version", link="https://rubygems.org/gems/lutaml-express"]
|
2
|
-
// image:https://codeclimate.com/github/lutaml/lutaml-express/badges/gpa.svg["Code Climate", link="https://codeclimate.com/github/lutaml/lutaml-express"]
|
3
|
-
image:https://github.com/lutaml/lutaml-express/workflows/rake/badge.svg["Build Status", link="https://github.com/lutaml/lutaml-express/actions?workflow=rake"]
|
4
|
-
|
5
|
-
= lutaml-express
|
6
|
-
|
7
|
-
== Functionality
|
8
|
-
|
9
|
-
Gem-extention for lutaml, works with EXPRESS files
|
10
|
-
|
11
|
-
=== Installation
|
12
|
-
|
13
|
-
With bundler:
|
14
|
-
|
15
|
-
[source,ruby]
|
16
|
-
----
|
17
|
-
# Gemfile
|
18
|
-
gem "lutaml-express"
|
19
|
-
----
|
20
|
-
|
21
|
-
Then in console:
|
22
|
-
|
23
|
-
[source,console]
|
24
|
-
----
|
25
|
-
$ bundle
|
26
|
-
----
|
27
|
-
|
28
|
-
With RubyGems:
|
29
|
-
|
30
|
-
[source,console]
|
31
|
-
----
|
32
|
-
$ gem install lutaml-express
|
33
|
-
----
|
34
|
-
|
35
|
-
=== Usage
|
36
|
-
|
37
|
-
[source,ruby]
|
38
|
-
----
|
39
|
-
Lutaml::Express::Parsers::Exp.parse(File.new('/path/to/file.exp')) # => Expressir::Model::Repository
|
40
|
-
----
|
41
|
-
|
42
|
-
== Development
|
43
|
-
|
44
|
-
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
45
|
-
|
46
|
-
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
47
|
-
|
48
|
-
## Contributing
|
49
|
-
|
50
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/lutaml-express. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/[USERNAME]/lutaml-express/blob/master/CODE_OF_CONDUCT.md).
|
51
|
-
|
52
|
-
|
53
|
-
== Code of Conduct
|
54
|
-
|
55
|
-
Everyone interacting in the Lutaml::Uml project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/lutaml-express/blob/master/CODE_OF_CONDUCT.md).
|