reqif 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.github/workflows/rake.yml +18 -0
- data/.github/workflows/release.yml +25 -0
- data/.gitignore +11 -0
- data/.rspec +3 -0
- data/.rubocop.yml +8 -0
- data/Gemfile +13 -0
- data/README.adoc +73 -0
- data/Rakefile +12 -0
- data/bin/console +11 -0
- data/bin/setup +8 -0
- data/lib/reqif/alternative_id.rb +14 -0
- data/lib/reqif/attribute_definition_boolean.rb +28 -0
- data/lib/reqif/attribute_definition_date.rb +28 -0
- data/lib/reqif/attribute_definition_enumeration.rb +30 -0
- data/lib/reqif/attribute_definition_integer.rb +28 -0
- data/lib/reqif/attribute_definition_real.rb +28 -0
- data/lib/reqif/attribute_definition_string.rb +28 -0
- data/lib/reqif/attribute_definition_xhtml.rb +28 -0
- data/lib/reqif/attribute_value_boolean.rb +16 -0
- data/lib/reqif/attribute_value_date.rb +16 -0
- data/lib/reqif/attribute_value_enumeration.rb +16 -0
- data/lib/reqif/attribute_value_integer.rb +16 -0
- data/lib/reqif/attribute_value_real.rb +16 -0
- data/lib/reqif/attribute_value_string.rb +16 -0
- data/lib/reqif/attribute_value_xhtml.rb +20 -0
- data/lib/reqif/children.rb +14 -0
- data/lib/reqif/core_content.rb +14 -0
- data/lib/reqif/datatype_definition_boolean.rb +22 -0
- data/lib/reqif/datatype_definition_date.rb +22 -0
- data/lib/reqif/datatype_definition_enumeration.rb +24 -0
- data/lib/reqif/datatype_definition_integer.rb +26 -0
- data/lib/reqif/datatype_definition_real.rb +28 -0
- data/lib/reqif/datatype_definition_string.rb +24 -0
- data/lib/reqif/datatype_definition_xhtml.rb +22 -0
- data/lib/reqif/datatypes.rb +26 -0
- data/lib/reqif/default_value.rb +27 -0
- data/lib/reqif/definition.rb +27 -0
- data/lib/reqif/editable_atts.rb +26 -0
- data/lib/reqif/embedded_value.rb +16 -0
- data/lib/reqif/enum_value.rb +24 -0
- data/lib/reqif/object.rb +14 -0
- data/lib/reqif/properties.rb +14 -0
- data/lib/reqif/relation_group.rb +30 -0
- data/lib/reqif/relation_group_type.rb +24 -0
- data/lib/reqif/req_if.rb +18 -0
- data/lib/reqif/req_if_content.rb +24 -0
- data/lib/reqif/req_if_header.rb +28 -0
- data/lib/reqif/req_if_tool_extension.rb +10 -0
- data/lib/reqif/source.rb +14 -0
- data/lib/reqif/source_specification.rb +14 -0
- data/lib/reqif/spec_attributes.rb +26 -0
- data/lib/reqif/spec_hierarchy.rb +32 -0
- data/lib/reqif/spec_object.rb +26 -0
- data/lib/reqif/spec_object_type.rb +24 -0
- data/lib/reqif/spec_objects.rb +14 -0
- data/lib/reqif/spec_relation.rb +30 -0
- data/lib/reqif/spec_relation_groups.rb +14 -0
- data/lib/reqif/spec_relation_type.rb +24 -0
- data/lib/reqif/spec_relations.rb +17 -0
- data/lib/reqif/spec_types.rb +20 -0
- data/lib/reqif/specification.rb +28 -0
- data/lib/reqif/specification_type.rb +24 -0
- data/lib/reqif/specifications.rb +14 -0
- data/lib/reqif/specified_values.rb +14 -0
- data/lib/reqif/target.rb +14 -0
- data/lib/reqif/target_specification.rb +14 -0
- data/lib/reqif/the_header.rb +14 -0
- data/lib/reqif/tool_extensions.rb +14 -0
- data/lib/reqif/type.rb +35 -0
- data/lib/reqif/values.rb +30 -0
- data/lib/reqif/version.rb +5 -0
- data/lib/reqif/xhtml_content.rb +10 -0
- data/lib/reqif.rb +22 -0
- data/references/driver.xsd +270 -0
- data/references/reqif.xsd +893 -0
- data/reqif.gemspec +36 -0
- data/sig/reqif.rbs +4 -0
- metadata +151 -0
@@ -0,0 +1,26 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class DatatypeDefinitionInteger < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :last_change, :time
|
8
|
+
attribute :long_name, :string
|
9
|
+
attribute :max, :integer
|
10
|
+
attribute :min, :integer
|
11
|
+
attribute :alternative_id, AlternativeId
|
12
|
+
|
13
|
+
xml do
|
14
|
+
root "DATATYPE-DEFINITION-INTEGER"
|
15
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
16
|
+
|
17
|
+
map_attribute "DESC", to: :desc
|
18
|
+
map_attribute "IDENTIFIER", to: :identifier
|
19
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
20
|
+
map_attribute "LONG-NAME", to: :long_name
|
21
|
+
map_attribute "MAX", to: :max
|
22
|
+
map_attribute "MIN", to: :min
|
23
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class DatatypeDefinitionReal < Lutaml::Model::Serializable
|
5
|
+
attribute :accuracy, :integer
|
6
|
+
attribute :desc, :string
|
7
|
+
attribute :identifier, :string
|
8
|
+
attribute :last_change, :time
|
9
|
+
attribute :long_name, :string
|
10
|
+
attribute :max, :float
|
11
|
+
attribute :min, :float
|
12
|
+
attribute :alternative_id, AlternativeId
|
13
|
+
|
14
|
+
xml do
|
15
|
+
root "DATATYPE-DEFINITION-REAL"
|
16
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
17
|
+
|
18
|
+
map_attribute "ACCURACY", to: :accuracy
|
19
|
+
map_attribute "DESC", to: :desc
|
20
|
+
map_attribute "IDENTIFIER", to: :identifier
|
21
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
22
|
+
map_attribute "LONG-NAME", to: :long_name
|
23
|
+
map_attribute "MAX", to: :max
|
24
|
+
map_attribute "MIN", to: :min
|
25
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class DatatypeDefinitionString < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :last_change, :time
|
8
|
+
attribute :long_name, :string
|
9
|
+
attribute :max_length, :integer
|
10
|
+
attribute :alternative_id, AlternativeId
|
11
|
+
|
12
|
+
xml do
|
13
|
+
root "DATATYPE-DEFINITION-STRING"
|
14
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
15
|
+
|
16
|
+
map_attribute "DESC", to: :desc
|
17
|
+
map_attribute "IDENTIFIER", to: :identifier
|
18
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
19
|
+
map_attribute "LONG-NAME", to: :long_name
|
20
|
+
map_attribute "MAX-LENGTH", to: :max_length
|
21
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class DatatypeDefinitionXhtml < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :last_change, :time
|
8
|
+
attribute :long_name, :string
|
9
|
+
attribute :alternative_id, AlternativeId
|
10
|
+
|
11
|
+
xml do
|
12
|
+
root "DATATYPE-DEFINITION-XHTML"
|
13
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
14
|
+
|
15
|
+
map_attribute "DESC", to: :desc
|
16
|
+
map_attribute "IDENTIFIER", to: :identifier
|
17
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
18
|
+
map_attribute "LONG-NAME", to: :long_name
|
19
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class Datatypes < Lutaml::Model::Serializable
|
5
|
+
attribute :datatype_definition_boolean, DatatypeDefinitionBoolean, collection: true
|
6
|
+
attribute :datatype_definition_date, DatatypeDefinitionDate, collection: true
|
7
|
+
attribute :datatype_definition_enumeration, DatatypeDefinitionEnumeration, collection: true
|
8
|
+
attribute :datatype_definition_integer, DatatypeDefinitionInteger, collection: true
|
9
|
+
attribute :datatype_definition_real, DatatypeDefinitionReal, collection: true
|
10
|
+
attribute :datatype_definition_string, DatatypeDefinitionString, collection: true
|
11
|
+
attribute :datatype_definition_xhtml, DatatypeDefinitionXhtml, collection: true
|
12
|
+
|
13
|
+
xml do
|
14
|
+
root "DATATYPES"
|
15
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
16
|
+
|
17
|
+
map_element "DATATYPE-DEFINITION-BOOLEAN", to: :datatype_definition_boolean
|
18
|
+
map_element "DATATYPE-DEFINITION-DATE", to: :datatype_definition_date
|
19
|
+
map_element "DATATYPE-DEFINITION-ENUMERATION", to: :datatype_definition_enumeration
|
20
|
+
map_element "DATATYPE-DEFINITION-INTEGER", to: :datatype_definition_integer
|
21
|
+
map_element "DATATYPE-DEFINITION-REAL", to: :datatype_definition_real
|
22
|
+
map_element "DATATYPE-DEFINITION-STRING", to: :datatype_definition_string
|
23
|
+
map_element "DATATYPE-DEFINITION-XHTML", to: :datatype_definition_xhtml
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class DefaultValue < Lutaml::Model::Serializable
|
5
|
+
attribute :attribute_value_boolean, AttributeValueBoolean
|
6
|
+
attribute :attribute_value_date, AttributeValueDate
|
7
|
+
attribute :attribute_value_enumeration, AttributeValueEnumeration
|
8
|
+
attribute :attribute_value_integer, AttributeValueInteger
|
9
|
+
attribute :attribute_value_real, AttributeValueReal
|
10
|
+
attribute :attribute_value_string, AttributeValueString
|
11
|
+
attribute :attribute_value_xhtml, AttributeValueXhtml
|
12
|
+
|
13
|
+
xml do
|
14
|
+
root "DEFAULT-VALUE"
|
15
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
16
|
+
|
17
|
+
# TODO: Only one of these values can be active at the same time
|
18
|
+
map_element "ATTRIBUTE-VALUE-BOOLEAN", to: :attribute_value_boolean
|
19
|
+
map_element "ATTRIBUTE-VALUE-DATE", to: :attribute_value_date
|
20
|
+
map_element "ATTRIBUTE-VALUE-ENUMERATION", to: :attribute_value_enumeration
|
21
|
+
map_element "ATTRIBUTE-VALUE-INTEGER", to: :attribute_value_integer
|
22
|
+
map_element "ATTRIBUTE-VALUE-REAL", to: :attribute_value_real
|
23
|
+
map_element "ATTRIBUTE-VALUE-STRING", to: :attribute_value_string
|
24
|
+
map_element "ATTRIBUTE-VALUE-XHTML", to: :attribute_value_xhtml
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class Definition < Lutaml::Model::Serializable
|
5
|
+
attribute :attribute_definition_boolean_ref, :string
|
6
|
+
attribute :attribute_definition_date_ref, :string
|
7
|
+
attribute :attribute_definition_enumeration_ref, :string
|
8
|
+
attribute :attribute_definition_integer_ref, :string
|
9
|
+
attribute :attribute_definition_real_ref, :string
|
10
|
+
attribute :attribute_definition_string_ref, :string
|
11
|
+
attribute :attribute_definition_xhtml_ref, :string
|
12
|
+
|
13
|
+
xml do
|
14
|
+
root "DEFINITION"
|
15
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
16
|
+
|
17
|
+
# TODO: Only one of these values can be active at the same time
|
18
|
+
map_element "ATTRIBUTE-DEFINITION-BOOLEAN-REF", to: :attribute_definition_boolean_ref
|
19
|
+
map_element "ATTRIBUTE-DEFINITION-DATE-REF", to: :attribute_definition_date_ref
|
20
|
+
map_element "ATTRIBUTE-DEFINITION-ENUMERATION-REF", to: :attribute_definition_enumeration_ref
|
21
|
+
map_element "ATTRIBUTE-DEFINITION-INTEGER-REF", to: :attribute_definition_integer_ref
|
22
|
+
map_element "ATTRIBUTE-DEFINITION-REAL-REF", to: :attribute_definition_real_ref
|
23
|
+
map_element "ATTRIBUTE-DEFINITION-STRING-REF", to: :attribute_definition_string_ref
|
24
|
+
map_element "ATTRIBUTE-DEFINITION-XHTML-REF", to: :attribute_definition_xhtml_ref
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class EditableAtts < Lutaml::Model::Serializable
|
5
|
+
attribute :attribute_definition_boolean_ref, :string, collection: true
|
6
|
+
attribute :attribute_definition_date_ref, :string, collection: true
|
7
|
+
attribute :attribute_definition_enumeration_ref, :string, collection: true
|
8
|
+
attribute :attribute_definition_integer_ref, :string, collection: true
|
9
|
+
attribute :attribute_definition_real_ref, :string, collection: true
|
10
|
+
attribute :attribute_definition_string_ref, :string, collection: true
|
11
|
+
attribute :attribute_definition_xhtml_ref, :string, collection: true
|
12
|
+
|
13
|
+
xml do
|
14
|
+
root "EDITABLE-ATTS"
|
15
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
16
|
+
|
17
|
+
map_element "ATTRIBUTE-DEFINITION-BOOLEAN-REF", to: :attribute_definition_boolean_ref
|
18
|
+
map_element "ATTRIBUTE-DEFINITION-DATE-REF", to: :attribute_definition_date_ref
|
19
|
+
map_element "ATTRIBUTE-DEFINITION-ENUMERATION-REF", to: :attribute_definition_enumeration_ref
|
20
|
+
map_element "ATTRIBUTE-DEFINITION-INTEGER-REF", to: :attribute_definition_integer_ref
|
21
|
+
map_element "ATTRIBUTE-DEFINITION-REAL-REF", to: :attribute_definition_real_ref
|
22
|
+
map_element "ATTRIBUTE-DEFINITION-STRING-REF", to: :attribute_definition_string_ref
|
23
|
+
map_element "ATTRIBUTE-DEFINITION-XHTML-REF", to: :attribute_definition_xhtml_ref
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class EmbeddedValue < Lutaml::Model::Serializable
|
5
|
+
attribute :key, :integer
|
6
|
+
attribute :other_content, :string
|
7
|
+
|
8
|
+
xml do
|
9
|
+
root "EMBEDDED-VALUE"
|
10
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
11
|
+
|
12
|
+
map_attribute "KEY", to: :key
|
13
|
+
map_attribute "OTHER-CONTENT", to: :other_content
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class EnumValue < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :last_change, :time
|
8
|
+
attribute :long_name, :string
|
9
|
+
attribute :alternative_id, AlternativeId
|
10
|
+
attribute :properties, Properties
|
11
|
+
|
12
|
+
xml do
|
13
|
+
root "ENUM-VALUE"
|
14
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
15
|
+
|
16
|
+
map_attribute "DESC", to: :desc
|
17
|
+
map_attribute "IDENTIFIER", to: :identifier
|
18
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
19
|
+
map_attribute "LONG-NAME", to: :long_name
|
20
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
21
|
+
map_element "PROPERTIES", to: :properties
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
data/lib/reqif/object.rb
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class Object < Lutaml::Model::Serializable
|
5
|
+
attribute :spec_object_ref, :string
|
6
|
+
|
7
|
+
xml do
|
8
|
+
root "OBJECT"
|
9
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
10
|
+
|
11
|
+
map_element "SPEC-OBJECT-REF", to: :spec_object_ref
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class Properties < Lutaml::Model::Serializable
|
5
|
+
attribute :embedded_value, EmbeddedValue
|
6
|
+
|
7
|
+
xml do
|
8
|
+
root "PROPERTIES"
|
9
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
10
|
+
|
11
|
+
map_element "EMBEDDED-VALUE", to: :embedded_value
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class RelationGroup < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :last_change, :time
|
8
|
+
attribute :long_name, :string
|
9
|
+
attribute :alternative_id, AlternativeId
|
10
|
+
attribute :source_specification, SourceSpecification
|
11
|
+
attribute :spec_relations, SpecRelations
|
12
|
+
attribute :target_specification, TargetSpecification
|
13
|
+
attribute :type, Type
|
14
|
+
|
15
|
+
xml do
|
16
|
+
root "RELATION-GROUP"
|
17
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
18
|
+
|
19
|
+
map_attribute "DESC", to: :desc
|
20
|
+
map_attribute "IDENTIFIER", to: :identifier
|
21
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
22
|
+
map_attribute "LONG-NAME", to: :long_name
|
23
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
24
|
+
map_element "SOURCE-SPECIFICATION", to: :source_specification
|
25
|
+
map_element "SPEC-RELATIONS", to: :spec_relations
|
26
|
+
map_element "TARGET-SPECIFICATION", to: :target_specification
|
27
|
+
map_element "TYPE", to: :type
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class RelationGroupType < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :last_change, :time
|
8
|
+
attribute :long_name, :string
|
9
|
+
attribute :alternative_id, AlternativeId
|
10
|
+
attribute :spec_attributes, SpecAttributes
|
11
|
+
|
12
|
+
xml do
|
13
|
+
root "RELATION-GROUP-TYPE"
|
14
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
15
|
+
|
16
|
+
map_attribute "DESC", to: :desc
|
17
|
+
map_attribute "IDENTIFIER", to: :identifier
|
18
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
19
|
+
map_attribute "LONG-NAME", to: :long_name
|
20
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
21
|
+
map_element "SPEC-ATTRIBUTES", to: :spec_attributes
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
data/lib/reqif/req_if.rb
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class ReqIf < Lutaml::Model::Serializable
|
5
|
+
attribute :the_header, TheHeader
|
6
|
+
attribute :core_content, CoreContent
|
7
|
+
attribute :tool_extensions, ToolExtensions
|
8
|
+
|
9
|
+
xml do
|
10
|
+
root "REQ-IF"
|
11
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
12
|
+
|
13
|
+
map_element "THE-HEADER", to: :the_header
|
14
|
+
map_element "CORE-CONTENT", to: :core_content
|
15
|
+
map_element "TOOL-EXTENSIONS", to: :tool_extensions
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class ReqIfContent < Lutaml::Model::Serializable
|
5
|
+
attribute :datatypes, Datatypes
|
6
|
+
attribute :spec_types, SpecTypes
|
7
|
+
attribute :spec_objects, SpecObjects
|
8
|
+
attribute :spec_relations, SpecRelations
|
9
|
+
attribute :specifications, Specifications
|
10
|
+
attribute :spec_relation_groups, SpecRelationGroups
|
11
|
+
|
12
|
+
xml do
|
13
|
+
root "REQ-IF-CONTENT"
|
14
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
15
|
+
|
16
|
+
map_element "DATATYPES", to: :datatypes
|
17
|
+
map_element "SPEC-TYPES", to: :spec_types
|
18
|
+
map_element "SPEC-OBJECTS", to: :spec_objects
|
19
|
+
map_element "SPEC-RELATIONS", to: :spec_relations
|
20
|
+
map_element "SPECIFICATIONS", to: :specifications
|
21
|
+
map_element "SPEC-RELATION-GROUPS", to: :spec_relation_groups
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class ReqIfHeader < Lutaml::Model::Serializable
|
5
|
+
attribute :identifier, :string
|
6
|
+
attribute :comment, :string
|
7
|
+
attribute :creation_time, :time
|
8
|
+
attribute :repository_id, :string
|
9
|
+
attribute :req_if_tool_id, :string
|
10
|
+
attribute :req_if_version, :string
|
11
|
+
attribute :source_tool_id, :string
|
12
|
+
attribute :title, :string
|
13
|
+
|
14
|
+
xml do
|
15
|
+
root "REQ-IF-HEADER"
|
16
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
17
|
+
|
18
|
+
map_attribute "IDENTIFIER", to: :identifier
|
19
|
+
map_element "COMMENT", to: :comment
|
20
|
+
map_element "CREATION-TIME", to: :creation_time
|
21
|
+
map_element "REPOSITORY-ID", to: :repository_id
|
22
|
+
map_element "REQ-IF-TOOL-ID", to: :req_if_tool_id
|
23
|
+
map_element "REQ-IF-VERSION", to: :req_if_version
|
24
|
+
map_element "SOURCE-TOOL-ID", to: :source_tool_id
|
25
|
+
map_element "TITLE", to: :title
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/lib/reqif/source.rb
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class Source < Lutaml::Model::Serializable
|
5
|
+
attribute :spec_object_ref, :string
|
6
|
+
|
7
|
+
xml do
|
8
|
+
root "SOURCE"
|
9
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
10
|
+
|
11
|
+
map_element "SPEC-OBJECT-REF", to: :spec_object_ref
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class SourceSpecification < Lutaml::Model::Serializable
|
5
|
+
attribute :specification_ref, :string
|
6
|
+
|
7
|
+
xml do
|
8
|
+
root "SOURCE-SPECIFICATION"
|
9
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
10
|
+
|
11
|
+
map_element "SPECIFICATION-REF", to: :specification_ref
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class SpecAttributes < Lutaml::Model::Serializable
|
5
|
+
attribute :attribute_definition_boolean, AttributeDefinitionBoolean, collection: true
|
6
|
+
attribute :attribute_definition_date, AttributeDefinitionDate, collection: true
|
7
|
+
attribute :attribute_definition_enumeration, AttributeDefinitionEnumeration, collection: true
|
8
|
+
attribute :attribute_definition_integer, AttributeDefinitionInteger, collection: true
|
9
|
+
attribute :attribute_definition_real, AttributeDefinitionReal, collection: true
|
10
|
+
attribute :attribute_definition_string, AttributeDefinitionString, collection: true
|
11
|
+
attribute :attribute_definition_xhtml, AttributeDefinitionXhtml, collection: true
|
12
|
+
|
13
|
+
xml do
|
14
|
+
root "SPEC-ATTRIBUTES"
|
15
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
16
|
+
|
17
|
+
map_element "ATTRIBUTE-DEFINITION-BOOLEAN", to: :attribute_definition_boolean
|
18
|
+
map_element "ATTRIBUTE-DEFINITION-DATE", to: :attribute_definition_date
|
19
|
+
map_element "ATTRIBUTE-DEFINITION-ENUMERATION", to: :attribute_definition_enumeration
|
20
|
+
map_element "ATTRIBUTE-DEFINITION-INTEGER", to: :attribute_definition_integer
|
21
|
+
map_element "ATTRIBUTE-DEFINITION-REAL", to: :attribute_definition_real
|
22
|
+
map_element "ATTRIBUTE-DEFINITION-STRING", to: :attribute_definition_string
|
23
|
+
map_element "ATTRIBUTE-DEFINITION-XHTML", to: :attribute_definition_xhtml
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class SpecHierarchy < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :is_editable, :boolean
|
8
|
+
attribute :is_table_internal, :boolean
|
9
|
+
attribute :last_change, :time
|
10
|
+
attribute :long_name, :string
|
11
|
+
attribute :alternative_id, AlternativeId
|
12
|
+
attribute :children, Children
|
13
|
+
attribute :editable_atts, EditableAtts
|
14
|
+
attribute :object, Object
|
15
|
+
|
16
|
+
xml do
|
17
|
+
root "SPEC-HIERARCHY"
|
18
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
19
|
+
|
20
|
+
map_attribute "DESC", to: :desc
|
21
|
+
map_attribute "IDENTIFIER", to: :identifier
|
22
|
+
map_attribute "IS-EDITABLE", to: :is_editable
|
23
|
+
map_attribute "IS-TABLE-INTERNAL", to: :is_table_internal
|
24
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
25
|
+
map_attribute "LONG-NAME", to: :long_name
|
26
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
27
|
+
map_element "CHILDREN", to: :children
|
28
|
+
map_element "EDITABLE-ATTS", to: :editable_atts
|
29
|
+
map_element "OBJECT", to: :object
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class SpecObject < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :last_change, :time
|
8
|
+
attribute :long_name, :string
|
9
|
+
attribute :alternative_id, AlternativeId
|
10
|
+
attribute :values, Values
|
11
|
+
attribute :type, Type
|
12
|
+
|
13
|
+
xml do
|
14
|
+
root "SPEC-OBJECT"
|
15
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
16
|
+
|
17
|
+
map_attribute "DESC", to: :desc
|
18
|
+
map_attribute "IDENTIFIER", to: :identifier
|
19
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
20
|
+
map_attribute "LONG-NAME", to: :long_name
|
21
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
22
|
+
map_element "VALUES", to: :values
|
23
|
+
map_element "TYPE", to: :type
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class SpecObjectType < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :last_change, :time
|
8
|
+
attribute :long_name, :string
|
9
|
+
attribute :alternative_id, AlternativeId
|
10
|
+
attribute :spec_attributes, SpecAttributes
|
11
|
+
|
12
|
+
xml do
|
13
|
+
root "SPEC-OBJECT-TYPE"
|
14
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
15
|
+
|
16
|
+
map_attribute "DESC", to: :desc
|
17
|
+
map_attribute "IDENTIFIER", to: :identifier
|
18
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
19
|
+
map_attribute "LONG-NAME", to: :long_name
|
20
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
21
|
+
map_element "SPEC-ATTRIBUTES", to: :spec_attributes
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class SpecObjects < Lutaml::Model::Serializable
|
5
|
+
attribute :spec_object, SpecObject, collection: true
|
6
|
+
|
7
|
+
xml do
|
8
|
+
root "SPEC-OBJECTS"
|
9
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
10
|
+
|
11
|
+
map_element "SPEC-OBJECT", to: :spec_object
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class SpecRelation < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :last_change, :time
|
8
|
+
attribute :long_name, :string
|
9
|
+
attribute :alternative_id, AlternativeId
|
10
|
+
attribute :values, Values
|
11
|
+
attribute :source, Source
|
12
|
+
attribute :target, Target
|
13
|
+
attribute :type, Type
|
14
|
+
|
15
|
+
xml do
|
16
|
+
root "SPEC-RELATION"
|
17
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
18
|
+
|
19
|
+
map_attribute "DESC", to: :desc
|
20
|
+
map_attribute "IDENTIFIER", to: :identifier
|
21
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
22
|
+
map_attribute "LONG-NAME", to: :long_name
|
23
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
24
|
+
map_element "VALUES", to: :values
|
25
|
+
map_element "SOURCE", to: :source
|
26
|
+
map_element "TARGET", to: :target
|
27
|
+
map_element "TYPE", to: :type
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class SpecRelationGroups < Lutaml::Model::Serializable
|
5
|
+
attribute :relation_group, RelationGroup, collection: true
|
6
|
+
|
7
|
+
xml do
|
8
|
+
root "SPEC-RELATION-GROUPS"
|
9
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
10
|
+
|
11
|
+
map_element "RELATION-GROUP", to: :relation_group
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require "lutaml/model"
|
2
|
+
|
3
|
+
module Reqif
|
4
|
+
class SpecRelationType < Lutaml::Model::Serializable
|
5
|
+
attribute :desc, :string
|
6
|
+
attribute :identifier, :string
|
7
|
+
attribute :last_change, :time
|
8
|
+
attribute :long_name, :string
|
9
|
+
attribute :alternative_id, AlternativeId
|
10
|
+
attribute :spec_attributes, SpecAttributes
|
11
|
+
|
12
|
+
xml do
|
13
|
+
root "SPEC-RELATION-TYPE"
|
14
|
+
namespace "http://www.omg.org/spec/ReqIF/20110401/reqif.xsd", "REQIF"
|
15
|
+
|
16
|
+
map_attribute "DESC", to: :desc
|
17
|
+
map_attribute "IDENTIFIER", to: :identifier
|
18
|
+
map_attribute "LAST-CHANGE", to: :last_change
|
19
|
+
map_attribute "LONG-NAME", to: :long_name
|
20
|
+
map_element "ALTERNATIVE-ID", to: :alternative_id
|
21
|
+
map_element "SPEC-ATTRIBUTES", to: :spec_attributes
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|