xmi 0.1.0 → 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/.github/workflows/rake.yml +14 -0
- data/.github/workflows/release.yml +22 -0
- data/.rubocop.yml +6 -0
- data/README.adoc +87 -2
- data/lib/xmi/documentation.rb +6 -6
- data/lib/xmi/ea_root.rb +316 -0
- data/lib/xmi/extension.rb +5 -5
- data/lib/xmi/root.rb +43 -20
- data/lib/xmi/root13.rb +0 -1
- data/lib/xmi/sparx.rb +368 -154
- data/lib/xmi/uml.rb +422 -131
- data/lib/xmi/uml13/abstraction.rb +90 -88
- data/lib/xmi/uml13/action.rb +86 -84
- data/lib/xmi/uml13/action_sequence.rb +76 -74
- data/lib/xmi/uml13/action_sequenceaction.rb +23 -21
- data/lib/xmi/uml13/action_sequencestate.rb +7 -5
- data/lib/xmi/uml13/action_sequencestate2.rb +7 -5
- data/lib/xmi/uml13/action_sequencetransition.rb +7 -5
- data/lib/xmi/uml13/action_state.rb +89 -87
- data/lib/xmi/uml13/actionaction_sequence.rb +7 -5
- data/lib/xmi/uml13/actionactual_argument.rb +7 -5
- data/lib/xmi/uml13/actionis_asynchronous.rb +6 -4
- data/lib/xmi/uml13/actionmessage.rb +7 -5
- data/lib/xmi/uml13/actionrecurrence.rb +15 -13
- data/lib/xmi/uml13/actionrequest.rb +7 -5
- data/lib/xmi/uml13/actionscript.rb +7 -5
- data/lib/xmi/uml13/actiontarget.rb +7 -5
- data/lib/xmi/uml13/activity_model.rb +77 -75
- data/lib/xmi/uml13/activity_modelpartition.rb +7 -5
- data/lib/xmi/uml13/activity_state.rb +88 -86
- data/lib/xmi/uml13/actor.rb +113 -111
- data/lib/xmi/uml13/argument.rb +17 -15
- data/lib/xmi/uml13/argumentaction.rb +7 -5
- data/lib/xmi/uml13/argumentvalue.rb +15 -13
- data/lib/xmi/uml13/association.rb +90 -88
- data/lib/xmi/uml13/association_class.rb +120 -118
- data/lib/xmi/uml13/association_end.rb +100 -98
- data/lib/xmi/uml13/association_end_role.rb +106 -104
- data/lib/xmi/uml13/association_end_roleassociation_role.rb +7 -5
- data/lib/xmi/uml13/association_end_rolebase.rb +7 -5
- data/lib/xmi/uml13/association_endaggregation.rb +6 -4
- data/lib/xmi/uml13/association_endassociation.rb +7 -5
- data/lib/xmi/uml13/association_endassociation_end_role.rb +7 -5
- data/lib/xmi/uml13/association_endchangeable.rb +6 -4
- data/lib/xmi/uml13/association_endis_navigable.rb +6 -4
- data/lib/xmi/uml13/association_endis_ordered.rb +6 -4
- data/lib/xmi/uml13/association_endlink_end.rb +7 -5
- data/lib/xmi/uml13/association_endmultiplicity.rb +7 -5
- data/lib/xmi/uml13/association_endqualifier.rb +7 -5
- data/lib/xmi/uml13/association_endspecification.rb +7 -5
- data/lib/xmi/uml13/association_endtarget_scope.rb +6 -4
- data/lib/xmi/uml13/association_endtype.rb +7 -5
- data/lib/xmi/uml13/association_role.rb +95 -93
- data/lib/xmi/uml13/association_rolebase.rb +7 -5
- data/lib/xmi/uml13/association_rolemultiplicity.rb +7 -5
- data/lib/xmi/uml13/association_rolenamespace.rb +7 -5
- data/lib/xmi/uml13/associationassociation_end.rb +7 -5
- data/lib/xmi/uml13/associationconnection.rb +9 -7
- data/lib/xmi/uml13/associationlink.rb +7 -5
- data/lib/xmi/uml13/attribute.rb +94 -92
- data/lib/xmi/uml13/attribute_link.rb +74 -72
- data/lib/xmi/uml13/attribute_linkattribute.rb +7 -5
- data/lib/xmi/uml13/attribute_linkinstance.rb +7 -5
- data/lib/xmi/uml13/attribute_linkvalue.rb +7 -5
- data/lib/xmi/uml13/attributeassociation_end.rb +7 -5
- data/lib/xmi/uml13/attributeattribute_link.rb +7 -5
- data/lib/xmi/uml13/attributeinitial_value.rb +15 -13
- data/lib/xmi/uml13/auxiliary_elements.rb +28 -26
- data/lib/xmi/uml13/behavioral_elements.rb +18 -16
- data/lib/xmi/uml13/behavioral_feature.rb +82 -80
- data/lib/xmi/uml13/behavioral_featureis_query.rb +6 -4
- data/lib/xmi/uml13/behavioral_featureparameter.rb +7 -5
- data/lib/xmi/uml13/behavioral_featureraised_exception.rb +7 -5
- data/lib/xmi/uml13/binding.rb +81 -79
- data/lib/xmi/uml13/bindingargument.rb +175 -173
- data/lib/xmi/uml13/boolean_expression.rb +18 -16
- data/lib/xmi/uml13/call_action.rb +89 -87
- data/lib/xmi/uml13/call_actionmode.rb +6 -4
- data/lib/xmi/uml13/call_event.rb +74 -72
- data/lib/xmi/uml13/call_eventoperation.rb +7 -5
- data/lib/xmi/uml13/change_event.rb +73 -71
- data/lib/xmi/uml13/change_eventchange_expression.rb +7 -5
- data/lib/xmi/uml13/class.rb +116 -114
- data/lib/xmi/uml13/classifier.rb +113 -111
- data/lib/xmi/uml13/classifier_in_state.rb +122 -120
- data/lib/xmi/uml13/classifier_in_statein_state.rb +7 -5
- data/lib/xmi/uml13/classifier_in_stateobject_flow_state.rb +7 -5
- data/lib/xmi/uml13/classifier_in_statetype.rb +7 -5
- data/lib/xmi/uml13/classifier_role.rb +130 -128
- data/lib/xmi/uml13/classifier_roleassociation_end_role.rb +7 -5
- data/lib/xmi/uml13/classifier_roleavailable_feature.rb +7 -5
- data/lib/xmi/uml13/classifier_rolebase.rb +7 -5
- data/lib/xmi/uml13/classifier_rolemessage.rb +7 -5
- data/lib/xmi/uml13/classifier_rolemessage2.rb +7 -5
- data/lib/xmi/uml13/classifier_rolemultiplicity.rb +7 -5
- data/lib/xmi/uml13/classifier_rolenamespace.rb +7 -5
- data/lib/xmi/uml13/classifierassociation_end.rb +7 -5
- data/lib/xmi/uml13/classifierclassifier_in_state.rb +7 -5
- data/lib/xmi/uml13/classifierclassifier_role.rb +7 -5
- data/lib/xmi/uml13/classifiercollaboration.rb +7 -5
- data/lib/xmi/uml13/classifiercreate_action.rb +7 -5
- data/lib/xmi/uml13/classifierfeature.rb +19 -17
- data/lib/xmi/uml13/classifierinstance.rb +7 -5
- data/lib/xmi/uml13/classifierparameter.rb +7 -5
- data/lib/xmi/uml13/classifierparticipant.rb +7 -5
- data/lib/xmi/uml13/classifierrealization.rb +7 -5
- data/lib/xmi/uml13/classifierspecification.rb +7 -5
- data/lib/xmi/uml13/classifierstructural_feature.rb +7 -5
- data/lib/xmi/uml13/classis_active.rb +6 -4
- data/lib/xmi/uml13/collaboration.rb +78 -76
- data/lib/xmi/uml13/collaborationconstraining_element.rb +7 -5
- data/lib/xmi/uml13/collaborationinteraction.rb +7 -5
- data/lib/xmi/uml13/collaborationrepresented_classifier.rb +7 -5
- data/lib/xmi/uml13/collaborationrepresented_operation.rb +7 -5
- data/lib/xmi/uml13/collaborations.rb +22 -20
- data/lib/xmi/uml13/comment.rb +65 -63
- data/lib/xmi/uml13/common_behavior.rb +56 -54
- data/lib/xmi/uml13/component.rb +119 -117
- data/lib/xmi/uml13/componentdeployment.rb +7 -5
- data/lib/xmi/uml13/componentimplements.rb +7 -5
- data/lib/xmi/uml13/composite_state.rb +94 -92
- data/lib/xmi/uml13/composite_stateis_concurrent.rb +6 -4
- data/lib/xmi/uml13/composite_statesubstate.rb +23 -21
- data/lib/xmi/uml13/constraint.rb +73 -71
- data/lib/xmi/uml13/constraintbody.rb +7 -5
- data/lib/xmi/uml13/constraintconstrained_element.rb +7 -5
- data/lib/xmi/uml13/constraintconstrained_stereotype.rb +7 -5
- data/lib/xmi/uml13/core.rb +52 -50
- data/lib/xmi/uml13/create_action.rb +89 -87
- data/lib/xmi/uml13/create_actioninstantiation.rb +7 -5
- data/lib/xmi/uml13/data_type.rb +113 -111
- data/lib/xmi/uml13/data_types.rb +36 -34
- data/lib/xmi/uml13/data_value.rb +85 -83
- data/lib/xmi/uml13/dependency.rb +79 -77
- data/lib/xmi/uml13/dependencyclient.rb +7 -5
- data/lib/xmi/uml13/dependencydescription.rb +7 -5
- data/lib/xmi/uml13/dependencyowning_dependency.rb +7 -5
- data/lib/xmi/uml13/dependencysub_dependencies.rb +15 -13
- data/lib/xmi/uml13/dependencysupplier.rb +7 -5
- data/lib/xmi/uml13/destroy_action.rb +86 -84
- data/lib/xmi/uml13/diagram.rb +25 -23
- data/lib/xmi/uml13/diagram_compositions.rb +7 -5
- data/lib/xmi/uml13/diagram_element.rb +20 -18
- data/lib/xmi/uml13/diagram_element_properties.rb +9 -7
- data/lib/xmi/uml13/diagram_elementdiagram.rb +7 -5
- data/lib/xmi/uml13/diagram_elementgeometry.rb +7 -5
- data/lib/xmi/uml13/diagram_elementstyle.rb +7 -5
- data/lib/xmi/uml13/diagram_properties.rb +13 -11
- data/lib/xmi/uml13/diagramdiagram_type.rb +7 -5
- data/lib/xmi/uml13/diagramelement.rb +7 -5
- data/lib/xmi/uml13/diagramname.rb +7 -5
- data/lib/xmi/uml13/diagramowner.rb +157 -155
- data/lib/xmi/uml13/diagramstyle.rb +7 -5
- data/lib/xmi/uml13/diagramtool_name.rb +7 -5
- data/lib/xmi/uml13/element.rb +12 -10
- data/lib/xmi/uml13/element_reference.rb +24 -22
- data/lib/xmi/uml13/element_referencealias.rb +7 -5
- data/lib/xmi/uml13/element_referencepackage.rb +7 -5
- data/lib/xmi/uml13/element_referencereferenced_element.rb +7 -5
- data/lib/xmi/uml13/element_referencevisibility.rb +6 -4
- data/lib/xmi/uml13/enumeration.rb +115 -113
- data/lib/xmi/uml13/enumeration_literal.rb +18 -16
- data/lib/xmi/uml13/enumeration_literalenumeration.rb +7 -5
- data/lib/xmi/uml13/enumeration_literalname.rb +7 -5
- data/lib/xmi/uml13/enumerationliteral.rb +7 -5
- data/lib/xmi/uml13/event.rb +71 -69
- data/lib/xmi/uml13/eventstate.rb +7 -5
- data/lib/xmi/uml13/eventtransition.rb +7 -5
- data/lib/xmi/uml13/exception.rb +99 -97
- data/lib/xmi/uml13/exceptioncontext.rb +7 -5
- data/lib/xmi/uml13/expression.rb +18 -16
- data/lib/xmi/uml13/expressionbody.rb +7 -5
- data/lib/xmi/uml13/expressionlanguage.rb +7 -5
- data/lib/xmi/uml13/extension_mechanisms.rb +14 -12
- data/lib/xmi/uml13/feature.rb +74 -72
- data/lib/xmi/uml13/featureclassifier_role.rb +7 -5
- data/lib/xmi/uml13/featureowner.rb +7 -5
- data/lib/xmi/uml13/featureowner_scope.rb +6 -4
- data/lib/xmi/uml13/foundation.rb +18 -16
- data/lib/xmi/uml13/generalizable_element.rb +82 -80
- data/lib/xmi/uml13/generalizable_elementgeneralization.rb +7 -5
- data/lib/xmi/uml13/generalizable_elementis_abstract.rb +6 -4
- data/lib/xmi/uml13/generalizable_elementis_leaf.rb +6 -4
- data/lib/xmi/uml13/generalizable_elementis_root.rb +6 -4
- data/lib/xmi/uml13/generalizable_elementspecialization.rb +7 -5
- data/lib/xmi/uml13/generalization.rb +74 -72
- data/lib/xmi/uml13/generalizationdiscriminator.rb +7 -5
- data/lib/xmi/uml13/generalizationsubtype.rb +7 -5
- data/lib/xmi/uml13/generalizationsupertype.rb +7 -5
- data/lib/xmi/uml13/geometry.rb +15 -13
- data/lib/xmi/uml13/geometrybody.rb +7 -5
- data/lib/xmi/uml13/graphic_marker.rb +15 -13
- data/lib/xmi/uml13/graphic_markerbody.rb +7 -5
- data/lib/xmi/uml13/guard.rb +70 -68
- data/lib/xmi/uml13/guardexpression.rb +7 -5
- data/lib/xmi/uml13/guardtransition.rb +7 -5
- data/lib/xmi/uml13/instance.rb +85 -83
- data/lib/xmi/uml13/instanceattribute_link.rb +7 -5
- data/lib/xmi/uml13/instanceclassifier.rb +7 -5
- data/lib/xmi/uml13/instancelink_end.rb +7 -5
- data/lib/xmi/uml13/instancemessage_instance.rb +7 -5
- data/lib/xmi/uml13/instancemessage_instance2.rb +7 -5
- data/lib/xmi/uml13/instancemessage_instance3.rb +7 -5
- data/lib/xmi/uml13/instanceslot.rb +7 -5
- data/lib/xmi/uml13/interaction.rb +70 -68
- data/lib/xmi/uml13/interactioncontext.rb +7 -5
- data/lib/xmi/uml13/interactionmessage.rb +7 -5
- data/lib/xmi/uml13/interface.rb +113 -111
- data/lib/xmi/uml13/link.rb +70 -68
- data/lib/xmi/uml13/link_end.rb +74 -72
- data/lib/xmi/uml13/link_endassociation_end.rb +7 -5
- data/lib/xmi/uml13/link_endinstance.rb +7 -5
- data/lib/xmi/uml13/link_endlink.rb +7 -5
- data/lib/xmi/uml13/link_object.rb +90 -88
- data/lib/xmi/uml13/linkassociation.rb +7 -5
- data/lib/xmi/uml13/linklink_role.rb +7 -5
- data/lib/xmi/uml13/local_invocation.rb +86 -84
- data/lib/xmi/uml13/mapping.rb +15 -13
- data/lib/xmi/uml13/mappingbody.rb +7 -5
- data/lib/xmi/uml13/message.rb +89 -87
- data/lib/xmi/uml13/message_instance.rb +77 -75
- data/lib/xmi/uml13/message_instanceargument.rb +7 -5
- data/lib/xmi/uml13/message_instancereceiver.rb +7 -5
- data/lib/xmi/uml13/message_instancesender.rb +7 -5
- data/lib/xmi/uml13/message_instancespecification.rb +7 -5
- data/lib/xmi/uml13/messageaction.rb +7 -5
- data/lib/xmi/uml13/messageactivator.rb +7 -5
- data/lib/xmi/uml13/messageinteraction.rb +7 -5
- data/lib/xmi/uml13/messagemessage.rb +7 -5
- data/lib/xmi/uml13/messagemessage2.rb +7 -5
- data/lib/xmi/uml13/messagepredecessor.rb +7 -5
- data/lib/xmi/uml13/messagereceiver.rb +7 -5
- data/lib/xmi/uml13/messagesender.rb +7 -5
- data/lib/xmi/uml13/method.rb +87 -85
- data/lib/xmi/uml13/methodbody.rb +7 -5
- data/lib/xmi/uml13/methodspecification.rb +7 -5
- data/lib/xmi/uml13/model.rb +81 -79
- data/lib/xmi/uml13/model_element.rb +65 -63
- data/lib/xmi/uml13/model_element_owns_diagramowned_diagram.rb +7 -5
- data/lib/xmi/uml13/model_elementbehavior.rb +7 -5
- data/lib/xmi/uml13/model_elementbinding.rb +7 -5
- data/lib/xmi/uml13/model_elementcollaboration.rb +7 -5
- data/lib/xmi/uml13/model_elementconstraint.rb +7 -5
- data/lib/xmi/uml13/model_elementelement_reference.rb +7 -5
- data/lib/xmi/uml13/model_elementimplementation.rb +7 -5
- data/lib/xmi/uml13/model_elementname.rb +7 -5
- data/lib/xmi/uml13/model_elementnamespace.rb +7 -5
- data/lib/xmi/uml13/model_elementpartition.rb +7 -5
- data/lib/xmi/uml13/model_elementpresentation.rb +7 -5
- data/lib/xmi/uml13/model_elementprovision.rb +7 -5
- data/lib/xmi/uml13/model_elementrequirement.rb +7 -5
- data/lib/xmi/uml13/model_elementstereotype.rb +7 -5
- data/lib/xmi/uml13/model_elementtagged_value.rb +7 -5
- data/lib/xmi/uml13/model_elementtemplate.rb +7 -5
- data/lib/xmi/uml13/model_elementtemplate_parameter.rb +7 -5
- data/lib/xmi/uml13/model_elementview.rb +7 -5
- data/lib/xmi/uml13/model_elementvisibility.rb +6 -4
- data/lib/xmi/uml13/model_management.rb +18 -16
- data/lib/xmi/uml13/multiplicity_range.rb +18 -16
- data/lib/xmi/uml13/multiplicity_rangelower.rb +7 -5
- data/lib/xmi/uml13/multiplicity_rangeupper.rb +7 -5
- data/lib/xmi/uml13/namespace.rb +67 -65
- data/lib/xmi/uml13/namespaceowned_element.rb +175 -173
- data/lib/xmi/uml13/node.rb +116 -114
- data/lib/xmi/uml13/nodecomponent.rb +7 -5
- data/lib/xmi/uml13/object.rb +85 -83
- data/lib/xmi/uml13/object_flow_state.rb +92 -90
- data/lib/xmi/uml13/object_flow_statetype_state.rb +7 -5
- data/lib/xmi/uml13/object_set_expression.rb +18 -16
- data/lib/xmi/uml13/operation.rb +102 -100
- data/lib/xmi/uml13/operationcollaboration.rb +7 -5
- data/lib/xmi/uml13/operationconcurrency.rb +6 -4
- data/lib/xmi/uml13/operationis_polymorphic.rb +6 -4
- data/lib/xmi/uml13/operationmethod.rb +7 -5
- data/lib/xmi/uml13/operationoccurrence.rb +7 -5
- data/lib/xmi/uml13/operationspecification.rb +7 -5
- data/lib/xmi/uml13/package.rb +81 -79
- data/lib/xmi/uml13/packageelement_reference.rb +7 -5
- data/lib/xmi/uml13/parameter.rb +79 -77
- data/lib/xmi/uml13/parameterbehavioral_feature.rb +7 -5
- data/lib/xmi/uml13/parameterdefault_value.rb +15 -13
- data/lib/xmi/uml13/parameterkind.rb +6 -4
- data/lib/xmi/uml13/parametersignal.rb +7 -5
- data/lib/xmi/uml13/parametertype.rb +7 -5
- data/lib/xmi/uml13/partition.rb +71 -69
- data/lib/xmi/uml13/partitionactivity_model.rb +7 -5
- data/lib/xmi/uml13/partitioncontents.rb +7 -5
- data/lib/xmi/uml13/presentation.rb +22 -20
- data/lib/xmi/uml13/presentationgeometry.rb +7 -5
- data/lib/xmi/uml13/presentationmodel.rb +7 -5
- data/lib/xmi/uml13/presentationstyle.rb +7 -5
- data/lib/xmi/uml13/presentationview_element.rb +7 -5
- data/lib/xmi/uml13/primitive.rb +113 -111
- data/lib/xmi/uml13/procedure_expression.rb +18 -16
- data/lib/xmi/uml13/pseudo_state.rb +77 -75
- data/lib/xmi/uml13/pseudo_statekind.rb +6 -4
- data/lib/xmi/uml13/reception.rb +91 -89
- data/lib/xmi/uml13/receptionis_polymorphic.rb +6 -4
- data/lib/xmi/uml13/receptionsignal.rb +7 -5
- data/lib/xmi/uml13/receptionspecification.rb +7 -5
- data/lib/xmi/uml13/refinement.rb +81 -79
- data/lib/xmi/uml13/refinementmapping.rb +7 -5
- data/lib/xmi/uml13/request.rb +71 -69
- data/lib/xmi/uml13/requestaction.rb +7 -5
- data/lib/xmi/uml13/requestmessage_instance.rb +7 -5
- data/lib/xmi/uml13/return_action.rb +86 -84
- data/lib/xmi/uml13/send_action.rb +86 -84
- data/lib/xmi/uml13/signal.rb +96 -94
- data/lib/xmi/uml13/signal_event.rb +74 -72
- data/lib/xmi/uml13/signal_eventsignal.rb +7 -5
- data/lib/xmi/uml13/signaloccurrence.rb +7 -5
- data/lib/xmi/uml13/signalparameter.rb +7 -5
- data/lib/xmi/uml13/signalreception.rb +7 -5
- data/lib/xmi/uml13/simple_state.rb +89 -87
- data/lib/xmi/uml13/state.rb +89 -87
- data/lib/xmi/uml13/state_machine.rb +75 -73
- data/lib/xmi/uml13/state_machinecontext.rb +7 -5
- data/lib/xmi/uml13/state_machines.rb +50 -48
- data/lib/xmi/uml13/state_machinesubmachine_state.rb +7 -5
- data/lib/xmi/uml13/state_machinetop.rb +19 -17
- data/lib/xmi/uml13/state_machinetransitions.rb +7 -5
- data/lib/xmi/uml13/state_vertex.rb +74 -72
- data/lib/xmi/uml13/state_vertexincoming.rb +7 -5
- data/lib/xmi/uml13/state_vertexoutgoing.rb +7 -5
- data/lib/xmi/uml13/state_vertexparent.rb +7 -5
- data/lib/xmi/uml13/stateclassifier_in_state.rb +7 -5
- data/lib/xmi/uml13/statedeferred_event.rb +7 -5
- data/lib/xmi/uml13/stateentry.rb +7 -5
- data/lib/xmi/uml13/stateexit.rb +7 -5
- data/lib/xmi/uml13/stateinternal_transition.rb +7 -5
- data/lib/xmi/uml13/statestate_machine.rb +7 -5
- data/lib/xmi/uml13/stereotype.rb +95 -93
- data/lib/xmi/uml13/stereotypebase_class.rb +7 -5
- data/lib/xmi/uml13/stereotypeextended_element.rb +7 -5
- data/lib/xmi/uml13/stereotypeicon.rb +7 -5
- data/lib/xmi/uml13/stereotyperequired_tag.rb +7 -5
- data/lib/xmi/uml13/stereotypestereotype_constraint.rb +7 -5
- data/lib/xmi/uml13/structural_feature.rb +86 -84
- data/lib/xmi/uml13/structural_featurechangeable.rb +6 -4
- data/lib/xmi/uml13/structural_featuremultiplicity.rb +7 -5
- data/lib/xmi/uml13/structural_featuretarget_scope.rb +6 -4
- data/lib/xmi/uml13/structural_featuretype.rb +7 -5
- data/lib/xmi/uml13/structure.rb +113 -111
- data/lib/xmi/uml13/submachine_state.rb +88 -86
- data/lib/xmi/uml13/submachine_statestate_machine.rb +7 -5
- data/lib/xmi/uml13/subsystem.rb +115 -113
- data/lib/xmi/uml13/subsystemis_instantiable.rb +6 -4
- data/lib/xmi/uml13/tagged_value.rb +24 -22
- data/lib/xmi/uml13/tagged_valuemodel_element.rb +7 -5
- data/lib/xmi/uml13/tagged_valuestereotype.rb +7 -5
- data/lib/xmi/uml13/tagged_valuetag.rb +7 -5
- data/lib/xmi/uml13/tagged_valuevalue.rb +7 -5
- data/lib/xmi/uml13/terminate_action.rb +86 -84
- data/lib/xmi/uml13/time_event.rb +73 -71
- data/lib/xmi/uml13/time_eventduration.rb +7 -5
- data/lib/xmi/uml13/time_expression.rb +18 -16
- data/lib/xmi/uml13/trace.rb +79 -77
- data/lib/xmi/uml13/transition.rb +84 -82
- data/lib/xmi/uml13/transitioneffect.rb +7 -5
- data/lib/xmi/uml13/transitionguard.rb +7 -5
- data/lib/xmi/uml13/transitionsource.rb +7 -5
- data/lib/xmi/uml13/transitionstate.rb +7 -5
- data/lib/xmi/uml13/transitionstatemachine.rb +7 -5
- data/lib/xmi/uml13/transitiontarget.rb +7 -5
- data/lib/xmi/uml13/transitiontrigger.rb +7 -5
- data/lib/xmi/uml13/uninterpreted_action.rb +89 -87
- data/lib/xmi/uml13/uninterpreted_actionbody.rb +7 -5
- data/lib/xmi/uml13/usage.rb +79 -77
- data/lib/xmi/uml13/use_case.rb +116 -114
- data/lib/xmi/uml13/use_case_instance.rb +85 -83
- data/lib/xmi/uml13/use_caseextension_point.rb +7 -5
- data/lib/xmi/uml13/use_cases.rb +16 -14
- data/lib/xmi/uml13/view_element.rb +18 -16
- data/lib/xmi/uml13/view_elementmodel.rb +7 -5
- data/lib/xmi/uml13/view_elementpresentation.rb +7 -5
- data/lib/xmi/uml13/xm_iextension.rb +11 -9
- data/lib/xmi/uml13/xm_ireference.rb +6 -4
- data/lib/xmi/uml13.rb +2 -0
- data/lib/xmi/version.rb +1 -1
- data/lib/xmi.rb +10 -0
- data/xmi.gemspec +2 -2
- metadata +10 -22
- data/.github/workflows/main.yml +0 -27
data/lib/xmi/uml.rb
CHANGED
@@ -4,8 +4,10 @@ module Xmi
|
|
4
4
|
module Uml
|
5
5
|
class AnnotatedElement < Shale::Mapper
|
6
6
|
attribute :idref, Shale::Type::String
|
7
|
+
|
7
8
|
xml do
|
8
9
|
root "annotatedElement"
|
10
|
+
|
9
11
|
map_attribute "idref", to: :idref, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
10
12
|
end
|
11
13
|
end
|
@@ -16,6 +18,7 @@ module Xmi
|
|
16
18
|
|
17
19
|
xml do
|
18
20
|
root "type"
|
21
|
+
|
19
22
|
map_attribute "idref", to: :idref, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
20
23
|
map_attribute "href", to: :href
|
21
24
|
end
|
@@ -23,26 +26,36 @@ module Xmi
|
|
23
26
|
|
24
27
|
class MemberEnd < Shale::Mapper
|
25
28
|
attribute :idref, Shale::Type::String
|
29
|
+
|
26
30
|
xml do
|
27
31
|
root "memberEnd"
|
32
|
+
|
28
33
|
map_attribute "idref", to: :idref, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
29
34
|
end
|
30
35
|
end
|
31
36
|
|
32
|
-
|
37
|
+
module OwnedEndAttributes
|
38
|
+
def self.included(klass) # rubocop:disable Metrics/MethodLength
|
39
|
+
klass.class_eval do
|
40
|
+
attribute :type, Shale::Type::String
|
41
|
+
attribute :id, Shale::Type::String
|
42
|
+
attribute :association, Shale::Type::String
|
43
|
+
attribute :name, Shale::Type::String
|
44
|
+
attribute :uml_type, Uml::Type
|
45
|
+
attribute :member_end, MemberEnd
|
46
|
+
attribute :lower, Shale::Type::Integer
|
47
|
+
attribute :upper, Shale::Type::Integer
|
48
|
+
attribute :is_composite, Shale::Type::Boolean
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
33
53
|
class OwnedEnd < Shale::Mapper
|
34
|
-
|
35
|
-
attribute :id, Shale::Type::String
|
36
|
-
attribute :association, Shale::Type::String
|
37
|
-
attribute :name, Shale::Type::String
|
38
|
-
attribute :uml_type, Uml::Type
|
39
|
-
attribute :member_end, MemberEnd
|
40
|
-
attribute :lower, Shale::Type::Integer
|
41
|
-
attribute :upper, Shale::Type::Integer
|
42
|
-
attribute :is_composite, Shale::Type::Boolean
|
54
|
+
include OwnedEndAttributes
|
43
55
|
|
44
56
|
xml do
|
45
57
|
root "ownedEnd"
|
58
|
+
|
46
59
|
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
47
60
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
48
61
|
map_attribute "association", to: :association
|
@@ -55,21 +68,52 @@ module Xmi
|
|
55
68
|
end
|
56
69
|
end
|
57
70
|
|
58
|
-
class
|
71
|
+
class OwnedEnd2013 < Shale::Mapper
|
72
|
+
include OwnedEndAttributes
|
73
|
+
|
74
|
+
xml do
|
75
|
+
root "ownedEnd"
|
76
|
+
|
77
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
78
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
79
|
+
map_attribute "association", to: :association
|
80
|
+
map_attribute "name", to: :name
|
81
|
+
map_attribute "memberEnd", to: :member_end
|
82
|
+
map_attribute "type", to: :uml_type
|
83
|
+
map_attribute "lower", to: :lower
|
84
|
+
map_attribute "upper", to: :upper
|
85
|
+
map_attribute "isComposite", to: :is_composite
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
class DefaultValue < Shale::Mapper
|
59
90
|
attribute :type, Shale::Type::String
|
60
91
|
attribute :id, Shale::Type::String
|
61
92
|
attribute :value, Shale::Type::String
|
93
|
+
|
94
|
+
xml do
|
95
|
+
root "defaultValue"
|
96
|
+
|
97
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
98
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
99
|
+
map_attribute "value", to: :value
|
100
|
+
end
|
101
|
+
end
|
102
|
+
|
103
|
+
class UpperValue < DefaultValue
|
62
104
|
xml do
|
63
105
|
root "upperValue"
|
106
|
+
|
64
107
|
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
65
108
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
66
109
|
map_attribute "value", to: :value
|
67
110
|
end
|
68
111
|
end
|
69
112
|
|
70
|
-
class LowerValue <
|
113
|
+
class LowerValue < DefaultValue
|
71
114
|
xml do
|
72
115
|
root "lowerValue"
|
116
|
+
|
73
117
|
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
74
118
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
75
119
|
map_attribute "value", to: :value
|
@@ -83,27 +127,39 @@ module Xmi
|
|
83
127
|
|
84
128
|
xml do
|
85
129
|
root "ownedLiteral"
|
86
|
-
|
87
|
-
map_attribute "
|
130
|
+
|
131
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
132
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
88
133
|
map_attribute "name", to: :value
|
89
134
|
end
|
90
135
|
end
|
91
136
|
|
137
|
+
module OwnedAttributeAttributes
|
138
|
+
def self.included(klass)
|
139
|
+
klass.class_eval do
|
140
|
+
attribute :type, Shale::Type::String
|
141
|
+
attribute :id, Shale::Type::String
|
142
|
+
attribute :association, Shale::Type::String
|
143
|
+
attribute :name, Shale::Type::String
|
144
|
+
attribute :is_derived, Shale::Type::String
|
145
|
+
attribute :uml_type, Uml::Type
|
146
|
+
attribute :upper_value, UpperValue
|
147
|
+
attribute :lower_value, LowerValue
|
148
|
+
end
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
92
152
|
class OwnedAttribute < Shale::Mapper
|
93
|
-
|
94
|
-
attribute :id, Shale::Type::String
|
95
|
-
attribute :association, Shale::Type::String
|
96
|
-
attribute :name, Shale::Type::String
|
97
|
-
attribute :uml_type, Uml::Type, collection: true
|
98
|
-
attribute :upperValue, UpperValue
|
99
|
-
attribute :lowerValue, LowerValue
|
153
|
+
include OwnedAttributeAttributes
|
100
154
|
|
101
155
|
xml do
|
102
156
|
root "ownedAttribute"
|
157
|
+
|
103
158
|
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
104
159
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
105
160
|
map_attribute "association", to: :association
|
106
161
|
map_attribute "name", to: :name
|
162
|
+
map_attribute "isDerived", to: :is_derived
|
107
163
|
|
108
164
|
map_element "type", to: :uml_type
|
109
165
|
map_element "upperValue", to: :upper_value
|
@@ -111,55 +167,205 @@ module Xmi
|
|
111
167
|
end
|
112
168
|
end
|
113
169
|
|
114
|
-
class
|
170
|
+
class OwnedAttribute2013 < Shale::Mapper
|
171
|
+
include OwnedAttributeAttributes
|
172
|
+
|
173
|
+
xml do
|
174
|
+
root "ownedAttribute"
|
175
|
+
|
176
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
177
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
178
|
+
map_attribute "association", to: :association
|
179
|
+
map_attribute "name", to: :name
|
180
|
+
map_attribute "isDerived", to: :is_derived
|
181
|
+
|
182
|
+
map_element "type", to: :uml_type
|
183
|
+
map_element "upperValue", to: :upper_value
|
184
|
+
map_element "lowerValue", to: :lower_value
|
185
|
+
end
|
186
|
+
end
|
187
|
+
|
188
|
+
class OwnedParameter < Shale::Mapper
|
189
|
+
attribute :id, Shale::Type::String
|
190
|
+
attribute :name, Shale::Type::String
|
115
191
|
attribute :type, Shale::Type::String
|
192
|
+
attribute :direction, Shale::Type::String
|
193
|
+
attribute :upper_value, UpperValue
|
194
|
+
attribute :lower_value, LowerValue
|
195
|
+
attribute :default_value, DefaultValue
|
196
|
+
|
197
|
+
xml do
|
198
|
+
root "ownedParameter"
|
199
|
+
|
200
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
201
|
+
map_attribute "name", to: :name
|
202
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
203
|
+
map_attribute "direction", to: :direction
|
204
|
+
|
205
|
+
map_element "upperValue", to: :upper_value
|
206
|
+
map_element "lowerValue", to: :lower_value
|
207
|
+
map_element "defaultValue", to: :default_value
|
208
|
+
end
|
209
|
+
end
|
210
|
+
|
211
|
+
class Specification < Shale::Mapper
|
212
|
+
attribute :id, Shale::Type::String
|
213
|
+
attribute :type, Shale::Type::String
|
214
|
+
attribute :language, Shale::Type::String
|
215
|
+
|
216
|
+
xml do
|
217
|
+
root "specification"
|
218
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
219
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
220
|
+
map_attribute "language", to: :language
|
221
|
+
end
|
222
|
+
end
|
223
|
+
|
224
|
+
class Precondition < Shale::Mapper
|
116
225
|
attribute :id, Shale::Type::String
|
117
|
-
attribute :
|
118
|
-
attribute :
|
226
|
+
attribute :name, Shale::Type::String
|
227
|
+
attribute :type, Shale::Type::String
|
228
|
+
attribute :specification, Specification
|
229
|
+
|
230
|
+
xml do
|
231
|
+
root "precondition"
|
232
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
233
|
+
map_attribute "name", to: :name
|
234
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
235
|
+
map_element "specification", to: :specification
|
236
|
+
end
|
237
|
+
end
|
238
|
+
|
239
|
+
class OwnedOperation < Shale::Mapper
|
240
|
+
attribute :id, Shale::Type::String
|
241
|
+
attribute :name, Shale::Type::String
|
242
|
+
attribute :owned_parameter, OwnedParameter, collection: true
|
243
|
+
attribute :precondition, Precondition
|
244
|
+
attribute :uml_type, Uml::Type, collection: true
|
245
|
+
|
246
|
+
xml do
|
247
|
+
root "ownedOperation"
|
248
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
249
|
+
map_attribute "name", to: :name
|
250
|
+
map_element "ownedParameter", to: :owned_parameter
|
251
|
+
map_element "precondition", to: :precondition
|
252
|
+
map_element "type", to: :uml_type
|
253
|
+
end
|
254
|
+
end
|
255
|
+
|
256
|
+
module OwnedCommentAttributes
|
257
|
+
def self.included(klass)
|
258
|
+
klass.class_eval do
|
259
|
+
attribute :type, Shale::Type::String
|
260
|
+
attribute :id, Shale::Type::String
|
261
|
+
attribute :body_element, Shale::Type::String
|
262
|
+
attribute :body_attribute, Shale::Type::String
|
263
|
+
attribute :annotated_attribute, Shale::Type::String
|
264
|
+
attribute :annotated_element, AnnotatedElement
|
265
|
+
end
|
266
|
+
end
|
267
|
+
end
|
268
|
+
|
269
|
+
class OwnedComment < Shale::Mapper
|
270
|
+
include OwnedCommentAttributes
|
119
271
|
|
120
272
|
xml do
|
121
273
|
root "ownedComment"
|
274
|
+
|
275
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
122
276
|
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
277
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
123
278
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
124
279
|
map_attribute "name", to: :name
|
125
|
-
map_attribute "
|
280
|
+
map_attribute "body", to: :body_attribute
|
281
|
+
map_attribute "annotatedElement", to: :annotated_attribute
|
126
282
|
|
127
|
-
map_element "
|
283
|
+
map_element "annotatedElement", to: :annotated_element, prefix: nil, namespace: nil
|
284
|
+
map_element "body", to: :body_element
|
128
285
|
end
|
129
286
|
end
|
130
287
|
|
288
|
+
class OwnedComment2013 < Shale::Mapper
|
289
|
+
include OwnedCommentAttributes
|
290
|
+
|
291
|
+
xml do
|
292
|
+
root "ownedComment"
|
293
|
+
|
294
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
295
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
296
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
297
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
298
|
+
map_attribute "name", to: :name
|
299
|
+
map_attribute "body", to: :body_attribute
|
300
|
+
map_attribute "annotatedElement", to: :annotated_attribute
|
301
|
+
|
302
|
+
map_element "annotatedElement", to: :annotated_element, prefix: nil, namespace: nil
|
303
|
+
map_element "body", to: :body_element
|
304
|
+
end
|
305
|
+
end
|
306
|
+
|
307
|
+
module AssociationGeneralizationAttributes
|
308
|
+
def self.included(klass)
|
309
|
+
klass.class_eval do
|
310
|
+
attribute :type, Shale::Type::String
|
311
|
+
attribute :id, Shale::Type::String
|
312
|
+
attribute :general, Shale::Type::String
|
313
|
+
end
|
314
|
+
end
|
315
|
+
end
|
131
316
|
|
132
|
-
# <generalization xmi:type="uml:Generalization" xmi:id="ModelicaParameter_PhSConstant_generalization" general="PhSConstant"/>
|
133
317
|
class AssociationGeneralization < Shale::Mapper
|
134
|
-
|
135
|
-
|
136
|
-
attribute :general, Shale::Type::String
|
318
|
+
include AssociationGeneralizationAttributes
|
319
|
+
|
137
320
|
xml do
|
138
321
|
root "generalization"
|
322
|
+
|
139
323
|
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
140
324
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
141
325
|
map_attribute "general", to: :general
|
142
326
|
end
|
143
327
|
end
|
144
328
|
|
329
|
+
class AssociationGeneralization2013 < Shale::Mapper
|
330
|
+
include AssociationGeneralizationAttributes
|
331
|
+
|
332
|
+
xml do
|
333
|
+
root "generalization"
|
334
|
+
|
335
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
336
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
337
|
+
map_attribute "general", to: :general
|
338
|
+
end
|
339
|
+
end
|
340
|
+
|
341
|
+
module PackagedElementAttributes
|
342
|
+
def self.included(klass)
|
343
|
+
klass.class_eval do
|
344
|
+
attribute :type, Shale::Type::String
|
345
|
+
attribute :id, Shale::Type::String
|
346
|
+
attribute :name, Shale::Type::String
|
347
|
+
attribute :member_end, MemberEnd
|
348
|
+
attribute :owned_literal, OwnedLiteral, collection: true
|
349
|
+
attribute :owned_operation, OwnedOperation, collection: true
|
350
|
+
|
351
|
+
# EA specific
|
352
|
+
attribute :supplier, Shale::Type::String
|
353
|
+
attribute :client, Shale::Type::String
|
354
|
+
end
|
355
|
+
end
|
356
|
+
end
|
357
|
+
|
145
358
|
class PackagedElement < Shale::Mapper
|
146
|
-
|
147
|
-
attribute :
|
148
|
-
attribute :name, Shale::Type::String
|
149
|
-
attribute :member_end, MemberEnd
|
150
|
-
attribute :owned_comment, OwnedComment, collection: true
|
151
|
-
attribute :owned_literal, OwnedLiteral, collection: true
|
359
|
+
include PackagedElementAttributes
|
360
|
+
attribute :packaged_element, PackagedElement, collection: true
|
152
361
|
attribute :owned_end, OwnedEnd, collection: true
|
153
362
|
attribute :owned_attribute, OwnedAttribute, collection: true
|
154
|
-
attribute :
|
363
|
+
attribute :owned_comment, OwnedComment, collection: true
|
155
364
|
attribute :generalization, AssociationGeneralization, collection: true
|
156
365
|
|
157
|
-
# EA specific
|
158
|
-
attribute :supplier, Shale::Type::String
|
159
|
-
attribute :client, Shale::Type::String
|
160
|
-
|
161
366
|
xml do
|
162
367
|
root "packagedElement"
|
368
|
+
|
163
369
|
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
164
370
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
165
371
|
map_attribute "name", to: :name
|
@@ -174,6 +380,37 @@ module Xmi
|
|
174
380
|
map_element "ownedEnd", to: :owned_end
|
175
381
|
map_element "ownedLiteral", to: :owned_literal
|
176
382
|
map_element "ownedAttribute", to: :owned_attribute
|
383
|
+
map_element "ownedOperation", to: :owned_operation
|
384
|
+
map_element "packagedElement", to: :packaged_element
|
385
|
+
end
|
386
|
+
end
|
387
|
+
|
388
|
+
class PackagedElement2013 < Shale::Mapper
|
389
|
+
include PackagedElementAttributes
|
390
|
+
attribute :packaged_element, PackagedElement2013, collection: true
|
391
|
+
attribute :owned_end, OwnedEnd2013, collection: true
|
392
|
+
attribute :owned_attribute, OwnedAttribute2013, collection: true
|
393
|
+
attribute :owned_comment, OwnedComment2013, collection: true
|
394
|
+
attribute :generalization, AssociationGeneralization2013, collection: true
|
395
|
+
|
396
|
+
xml do
|
397
|
+
root "packagedElement"
|
398
|
+
|
399
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
400
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
401
|
+
map_attribute "name", to: :name
|
402
|
+
map_attribute "memberEnd", to: :member_end
|
403
|
+
|
404
|
+
# EA specific
|
405
|
+
map_attribute "supplier", to: :supplier
|
406
|
+
map_attribute "client", to: :client
|
407
|
+
|
408
|
+
map_element "generalization", to: :generalization
|
409
|
+
map_element "ownedComment", to: :owned_comment
|
410
|
+
map_element "ownedEnd", to: :owned_end
|
411
|
+
map_element "ownedLiteral", to: :owned_literal
|
412
|
+
map_element "ownedAttribute", to: :owned_attribute
|
413
|
+
map_element "ownedOperation", to: :owned_operation
|
177
414
|
map_element "packagedElement", to: :packaged_element
|
178
415
|
end
|
179
416
|
end
|
@@ -188,6 +425,7 @@ module Xmi
|
|
188
425
|
|
189
426
|
xml do
|
190
427
|
root "bounds"
|
428
|
+
|
191
429
|
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
192
430
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
193
431
|
map_attribute "x", to: :x
|
@@ -205,6 +443,7 @@ module Xmi
|
|
205
443
|
|
206
444
|
xml do
|
207
445
|
root "waypoint"
|
446
|
+
|
208
447
|
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
209
448
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
210
449
|
map_attribute "x", to: :x
|
@@ -212,7 +451,6 @@ module Xmi
|
|
212
451
|
end
|
213
452
|
end
|
214
453
|
|
215
|
-
# <ownedElement xmi:type="umldi:UMLShape" xmi:id="EAID_C4D531A8_EF26_4b23_BE60_58B1C55534CE" modelElement="EAID_FB86C623_9125_4d6d_BE60_58B1C55534CE">
|
216
454
|
class OwnedElement < Shale::Mapper
|
217
455
|
attribute :type, Shale::Type::String
|
218
456
|
attribute :id, Shale::Type::String
|
@@ -239,12 +477,20 @@ module Xmi
|
|
239
477
|
end
|
240
478
|
end
|
241
479
|
|
480
|
+
module DiagramAttributes
|
481
|
+
def self.included(klass)
|
482
|
+
klass.class_eval do
|
483
|
+
attribute :type, Shale::Type::String
|
484
|
+
attribute :id, Shale::Type::String
|
485
|
+
attribute :is_frame, Shale::Type::Boolean
|
486
|
+
attribute :model_element, Shale::Type::String
|
487
|
+
attribute :owned_element, OwnedElement, collection: true
|
488
|
+
end
|
489
|
+
end
|
490
|
+
end
|
491
|
+
|
242
492
|
class Diagram < Shale::Mapper
|
243
|
-
|
244
|
-
attribute :id, Shale::Type::String
|
245
|
-
attribute :is_frame, Shale::Type::Boolean
|
246
|
-
attribute :model_element, Shale::Type::String
|
247
|
-
attribute :owned_element, OwnedElement, collection: true
|
493
|
+
include DiagramAttributes
|
248
494
|
|
249
495
|
xml do
|
250
496
|
root "Diagram"
|
@@ -255,13 +501,30 @@ module Xmi
|
|
255
501
|
map_attribute "isFrame", to: :is_frame
|
256
502
|
map_attribute "modelElement", to: :model_element
|
257
503
|
|
258
|
-
map_element "ownedElement", to: :owned_element
|
504
|
+
map_element "ownedElement", to: :owned_element, namespace: nil, prefix: nil
|
505
|
+
end
|
506
|
+
end
|
507
|
+
|
508
|
+
class Diagram2013 < Shale::Mapper
|
509
|
+
include DiagramAttributes
|
510
|
+
|
511
|
+
xml do
|
512
|
+
root "Diagram"
|
513
|
+
namespace "http://www.omg.org/spec/UML/20131001/UMLDI", "umldi"
|
514
|
+
|
515
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
516
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
517
|
+
map_attribute "isFrame", to: :is_frame
|
518
|
+
map_attribute "modelElement", to: :model_element
|
519
|
+
|
520
|
+
map_element "ownedElement", to: :owned_element, namespace: nil, prefix: nil
|
259
521
|
end
|
260
522
|
end
|
261
523
|
|
262
524
|
class ProfileApplicationAppliedProfile < Shale::Mapper
|
263
525
|
attribute :type, Shale::Type::String
|
264
526
|
attribute :href, Shale::Type::String
|
527
|
+
|
265
528
|
xml do
|
266
529
|
root "appliedProfile"
|
267
530
|
|
@@ -270,13 +533,11 @@ module Xmi
|
|
270
533
|
end
|
271
534
|
end
|
272
535
|
|
273
|
-
# <profileApplication xmi:type="uml:ProfileApplication" xmi:id="profileap_thecustomprofile">
|
274
|
-
# <appliedProfile xmi:type="uml:Profile" href="http://www.sparxsystems.com/profiles/thecustomprofile/1.0#thecustomprofile"/>
|
275
|
-
# </profileApplication>
|
276
536
|
class ProfileApplication < Shale::Mapper
|
277
537
|
attribute :type, Shale::Type::String
|
278
538
|
attribute :id, Shale::Type::String
|
279
539
|
attribute :applied_profile, ProfileApplicationAppliedProfile
|
540
|
+
|
280
541
|
xml do
|
281
542
|
root "profileApplication"
|
282
543
|
|
@@ -287,120 +548,150 @@ module Xmi
|
|
287
548
|
end
|
288
549
|
end
|
289
550
|
|
551
|
+
class ImportedPackage < Shale::Mapper
|
552
|
+
attribute :href, Shale::Type::String
|
553
|
+
|
554
|
+
xml do
|
555
|
+
root "importedPackage"
|
556
|
+
|
557
|
+
map_attribute "href", to: :href, namespace: nil, prefix: nil
|
558
|
+
end
|
559
|
+
end
|
560
|
+
|
561
|
+
module PackageImportAttributes
|
562
|
+
def self.included(klass)
|
563
|
+
klass.class_eval do
|
564
|
+
attribute :id, Shale::Type::String
|
565
|
+
attribute :imported_package, ImportedPackage
|
566
|
+
end
|
567
|
+
end
|
568
|
+
end
|
569
|
+
|
290
570
|
class PackageImport < Shale::Mapper
|
291
|
-
|
292
|
-
attribute :imported_package, Shale::Type::String
|
571
|
+
include PackageImportAttributes
|
293
572
|
|
294
573
|
xml do
|
295
574
|
root "packageImport"
|
575
|
+
|
576
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
296
577
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
297
|
-
|
578
|
+
|
579
|
+
map_element "importedPackage", to: :imported_package, namespace: nil, prefix: nil
|
298
580
|
end
|
581
|
+
end
|
582
|
+
|
583
|
+
class PackageImport2013 < Shale::Mapper
|
584
|
+
include PackageImportAttributes
|
585
|
+
|
586
|
+
xml do
|
587
|
+
root "packageImport"
|
299
588
|
|
589
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
590
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
591
|
+
|
592
|
+
map_element "importedPackage", to: :imported_package, namespace: nil, prefix: nil
|
593
|
+
end
|
594
|
+
end
|
595
|
+
|
596
|
+
module UmlModelAttributes
|
597
|
+
def self.included(klass)
|
598
|
+
klass.class_eval do
|
599
|
+
attribute :type, Shale::Type::String
|
600
|
+
attribute :name, Shale::Type::String
|
601
|
+
attribute :profile_application, ProfileApplication, collection: true
|
602
|
+
end
|
603
|
+
end
|
300
604
|
end
|
301
605
|
|
302
606
|
class UmlModel < Shale::Mapper
|
303
|
-
|
304
|
-
attribute :name, Shale::Type::String
|
607
|
+
include UmlModelAttributes
|
305
608
|
attribute :packaged_element, PackagedElement, collection: true
|
306
609
|
attribute :package_import, PackageImport, collection: true
|
307
610
|
attribute :diagram, Diagram
|
308
|
-
attribute :profile_application, ProfileApplication, collection: true
|
309
611
|
|
310
612
|
xml do
|
311
613
|
root "Model"
|
312
|
-
|
614
|
+
namespace "http://www.omg.org/spec/UML/20161101", "uml"
|
313
615
|
|
314
616
|
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
315
617
|
map_attribute "name", to: :name
|
316
618
|
|
317
|
-
map_element "packageImport", to: :package_import
|
318
|
-
map_element "packagedElement", to: :packaged_element
|
319
|
-
map_element "Diagram", to: :diagram, namespace: "http://www.omg.org/spec/UML/20161101/UMLDI",
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
# </ownedAttribute>
|
359
|
-
# <ownedAttribute xmi:type="uml:Property" xmi:id="yearVersion-yearVersion" name="yearVersion">
|
360
|
-
# <type href="http://www.omg.org/spec/UML/20161101/UML.xmi#String"/>
|
361
|
-
# </ownedAttribute>
|
362
|
-
# </packagedElement>
|
363
|
-
# <packagedElement xmi:type="uml:Extension" xmi:id="Package_yearVersion" name="A_Package_yearVersion" memberEnd="extension_yearVersion yearVersion-base_Package">
|
364
|
-
# <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="extension_yearVersion" name="extension_yearVersion" type="yearVersion" isComposite="true" lower="0" upper="1" memberEnd="extension_yearVersion yearVersion-base_Package"/>
|
365
|
-
# </packagedElement>
|
366
|
-
# <packagedElement xmi:type="uml:Stereotype" xmi:id="publicationDate" name="publicationDate">
|
367
|
-
# <ownedAttribute xmi:type="uml:Property" xmi:id="publicationDate-base_Package" name="base_Package" association="Package_publicationDate">
|
368
|
-
# <type href="http://www.omg.org/spec/UML/20161101/UML.xmi#Package"/>
|
369
|
-
# </ownedAttribute>
|
370
|
-
# <ownedAttribute xmi:type="uml:Property" xmi:id="publicationDate-publicationDate" name="publicationDate">
|
371
|
-
# <type href="http://www.omg.org/spec/UML/20161101/UML.xmi#String"/>
|
372
|
-
# </ownedAttribute>
|
373
|
-
# </packagedElement>
|
374
|
-
# <packagedElement xmi:type="uml:Extension" xmi:id="Package_publicationDate" name="A_Package_publicationDate" memberEnd="extension_publicationDate publicationDate-base_Package">
|
375
|
-
# <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="extension_publicationDate" name="extension_publicationDate" type="publicationDate" isComposite="true" lower="0" upper="1" memberEnd="extension_publicationDate publicationDate-base_Package"/>
|
376
|
-
# </packagedElement>
|
377
|
-
# </uml:Profile>
|
619
|
+
map_element "packageImport", to: :package_import, namespace: nil, prefix: nil
|
620
|
+
map_element "packagedElement", to: :packaged_element, namespace: nil, prefix: nil
|
621
|
+
map_element "Diagram", to: :diagram, namespace: "http://www.omg.org/spec/UML/20161101/UMLDI", prefix: "umldi"
|
622
|
+
map_element "profileApplication", to: :profile_application, namespace: nil, prefix: nil
|
623
|
+
end
|
624
|
+
end
|
625
|
+
|
626
|
+
class UmlModel2013 < Shale::Mapper
|
627
|
+
include UmlModelAttributes
|
628
|
+
attribute :packaged_element, PackagedElement2013, collection: true
|
629
|
+
attribute :package_import, PackageImport2013, collection: true
|
630
|
+
attribute :diagram, Diagram2013
|
631
|
+
|
632
|
+
xml do
|
633
|
+
root "Model"
|
634
|
+
namespace "http://www.omg.org/spec/UML/20161101", "uml"
|
635
|
+
|
636
|
+
map_attribute "type", to: :type, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
637
|
+
map_attribute "name", to: :name
|
638
|
+
|
639
|
+
map_element "packageImport", to: :package_import, namespace: nil, prefix: nil
|
640
|
+
map_element "packagedElement", to: :packaged_element, namespace: nil, prefix: nil
|
641
|
+
map_element "Diagram", to: :diagram, namespace: "http://www.omg.org/spec/UML/20161101/UMLDI", prefix: "umldi"
|
642
|
+
map_element "profileApplication", to: :profile_application, namespace: nil, prefix: nil
|
643
|
+
end
|
644
|
+
end
|
645
|
+
|
646
|
+
module ProfileAttributes
|
647
|
+
def self.included(klass)
|
648
|
+
klass.class_eval do
|
649
|
+
attribute :packaged_element, PackagedElement, collection: true
|
650
|
+
attribute :package_import, PackageImport, collection: true
|
651
|
+
attribute :id, Shale::Type::String
|
652
|
+
attribute :name, Shale::Type::String
|
653
|
+
attribute :ns_prefix, Shale::Type::String
|
654
|
+
|
655
|
+
# Is this an EA thing?
|
656
|
+
attribute :metamodel_reference, Shale::Type::String
|
657
|
+
end
|
658
|
+
end
|
659
|
+
end
|
378
660
|
|
379
661
|
class Profile < Shale::Mapper
|
662
|
+
include ProfileAttributes
|
380
663
|
attribute :owned_comment, OwnedComment, collection: true
|
381
|
-
attribute :packaged_element, PackagedElement, collection: true
|
382
|
-
attribute :package_import, PackageImport, collection: true
|
383
|
-
attribute :id, Shale::Type::String
|
384
|
-
attribute :name, Shale::Type::String
|
385
|
-
attribute :ns_prefix, Shale::Type::String
|
386
|
-
|
387
|
-
# Is this an EA thing?
|
388
|
-
attribute :metamodel_reference, Shale::Type::String
|
389
664
|
|
390
665
|
xml do
|
391
666
|
root "Profile"
|
392
|
-
# namespace "http://www.omg.org/spec/UML/20161101", "uml"
|
393
667
|
|
394
668
|
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20161101", prefix: "xmi"
|
395
669
|
map_attribute "name", to: :name
|
396
670
|
map_attribute "metamodelReference", to: :metamodel_reference
|
397
671
|
map_attribute "nsPrefix", to: :ns_prefix
|
398
672
|
|
399
|
-
map_element
|
400
|
-
map_element
|
401
|
-
map_element "
|
673
|
+
map_element "ownedComment", to: :owned_comment
|
674
|
+
map_element "packageImport", to: :package_import, namespace: nil, prefix: nil
|
675
|
+
map_element "packagedElement", to: :packaged_element
|
402
676
|
end
|
403
677
|
end
|
404
678
|
|
679
|
+
class Profile2013 < Shale::Mapper
|
680
|
+
include ProfileAttributes
|
681
|
+
attribute :owned_comment, OwnedComment2013, collection: true
|
682
|
+
|
683
|
+
xml do
|
684
|
+
root "Profile"
|
685
|
+
|
686
|
+
map_attribute "id", to: :id, namespace: "http://www.omg.org/spec/XMI/20131001", prefix: "xmi"
|
687
|
+
map_attribute "name", to: :name
|
688
|
+
map_attribute "metamodelReference", to: :metamodel_reference
|
689
|
+
map_attribute "nsPrefix", to: :ns_prefix
|
690
|
+
|
691
|
+
map_element "ownedComment", to: :owned_comment
|
692
|
+
map_element "packageImport", to: :package_import, namespace: nil, prefix: nil
|
693
|
+
map_element "packagedElement", to: :packaged_element
|
694
|
+
end
|
695
|
+
end
|
405
696
|
end
|
406
697
|
end
|