Home » Modeling » UML2 » Reapplying a profile after its has be re-defined
Reapplying a profile after its has be re-defined [message #476763] |
Sat, 15 December 2007 15:11  |
Eclipse User |
|
|
|
Hi,
Im still trying to get the hang of how profiles work and Im in cycle of
changing a profile with many redefines.
How ever when I drop and replace the file "bsc.profile.uml" and opens an
existing '*.uml' file where i have applied the profile, the
connection /references to applied stereotypes seems lost
And at the top level in the my1.uml file there are now extra elements
outside the <uml:Model> element.
Such as:
<BusinessSemanticComponent:SemanticComponent
xmi:id="_pSRaEKs9Edypn7TO-27LDg" base_Classifier="_oZuiAKpMEdy6V5U3TuHlaQ"/>
More over in the ProfileApplication element in *.uml file the
UML::Reference is now = "null"
I always define the profile after changed and I keep the
annotation:nsURI to the same value between defines.
I also keep the latest annotation in profile file (i.e I remove the last
one since I make soo many changed/addition)
thanks for any hints
/anders
|
|
| | | | | |
Re: Reapplying a profile after its has be re-defined [message #476775 is a reply to message #476774] |
Mon, 17 December 2007 13:10   |
Eclipse User |
|
|
|
Anders,
The UML specification doesn't dictate how tools are supposed to behave in
this area, so yes, it's conformant.
To update applied stereotypes to a new definition of a profile, simply
reapply the profile; tag values will be automatically be migrated on a
best-effort basis.
IDs shouldn't change every time the profie is saved; how are you saving the
profile: using the editor or from a Java program?
Kenn
"Anders W.Tell" <opensource@toolsmiths.se> wrote in message
news:fk6de6$6il$3@build.eclipse.org...
> Kenn,
>
> Ok, is this behavior conformant with OMG profiling? Does this work
> portable with profiles expressed in plain XMI?
>
> How to one automatically update an existing applied profile (in an *.uml)
> to a newer and improved one?
>
> One problem (for me) seems that the ID of stereotypes changes when one
> save the profile.uml. Is it possible to prevent the saving of new ID for
> stereotype?
>
> /anders
>
>
> Kenn Hussey wrote:
>> Anders,
>>
>> If you're deleting annotations, you're deleting the metadata that is
>> needed in order to successfully recognize stereotype applications based
>> on older versions of the profile... So if you want to keep your
>> stereotype applications, don't delete the annotations.
>>
>> Kenn
>>
>> "Anders W.Tell" <opensource@toolsmiths.se> wrote in message
>> news:fk1cdf$40j$1@build.eclipse.org...
>>> Hi,
>>>
>>> Im still trying to get the hang of how profiles work and Im in cycle of
>>> changing a profile with many redefines.
>>>
>>> How ever when I drop and replace the file "bsc.profile.uml" and opens an
>>> existing '*.uml' file where i have applied the profile, the connection
>>> /references to applied stereotypes seems lost
>>>
>>> And at the top level in the my1.uml file there are now extra elements
>>> outside the <uml:Model> element.
>>>
>>> Such as:
>>> <BusinessSemanticComponent:SemanticComponent
>>> xmi:id="_pSRaEKs9Edypn7TO-27LDg"
>>> base_Classifier="_oZuiAKpMEdy6V5U3TuHlaQ"/>
>>>
>>> More over in the ProfileApplication element in *.uml file the
>>> UML::Reference is now = "null"
>>>
>>> I always define the profile after changed and I keep the
>>> annotation:nsURI to the same value between defines.
>>>
>>> I also keep the latest annotation in profile file (i.e I remove the last
>>> one since I make soo many changed/addition)
>>>
>>>
>>> thanks for any hints
>>> /anders
>>
|
|
|
Re: Reapplying a profile after its has be re-defined [message #476784 is a reply to message #476773] |
Tue, 18 December 2007 09:17   |
Eclipse User |
|
|
|
This is a multi-part message in MIME format.
--------------020808090907040606030806
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Anders W.Tell schrieb:
> Interesting is it difficult?
> /anders
>
Not really, you can use this transformation as a base.
--------------020808090907040606030806
Content-Type: text/plain;
name="uml2copy_direct_with_Stereotypes.atl"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="uml2copy_direct_with_Stereotypes.atl"
-- @atlcompiler atl2006
module Transformation;
create OUT : UML2 from IN : UML2,PRO:UML2;
helper def : inElements : Set(UML2!"ecore::EObject") = UML2!"ecore::EObject"->allInstancesFrom('IN');
helper def : isIncluded(invar : OclAny) : Boolean =
true
;
helper def : CommentGuard(invar : UML2!"uml::Comment") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Comment") ;
helper def : PackageGuard(invar : UML2!"uml::Package") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Package") ;
helper def : DependencyGuard(invar : UML2!"uml::Dependency") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Dependency") ;
helper def : ElementImportGuard(invar : UML2!"uml::ElementImport") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ElementImport") ;
helper def : PackageImportGuard(invar : UML2!"uml::PackageImport") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::PackageImport") ;
helper def : ConstraintGuard(invar : UML2!"uml::Constraint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Constraint") ;
helper def : AssociationGuard(invar : UML2!"uml::Association") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Association") ;
helper def : TemplateBindingGuard(invar : UML2!"uml::TemplateBinding") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TemplateBinding") ;
helper def : TemplateSignatureGuard(invar : UML2!"uml::TemplateSignature") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TemplateSignature") ;
helper def : TemplateParameterGuard(invar : UML2!"uml::TemplateParameter") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TemplateParameter") ;
helper def : TemplateParameterSubstitutionGuard(invar : UML2!"uml::TemplateParameterSubstitution") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TemplateParameterSubstitution") ;
helper def : GeneralizationGuard(invar : UML2!"uml::Generalization") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Generalization") ;
helper def : GeneralizationSetGuard(invar : UML2!"uml::GeneralizationSet") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::GeneralizationSet") ;
helper def : SubstitutionGuard(invar : UML2!"uml::Substitution") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Substitution") ;
helper def : RealizationGuard(invar : UML2!"uml::Realization") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Realization") ;
helper def : AbstractionGuard(invar : UML2!"uml::Abstraction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Abstraction") ;
helper def : OpaqueExpressionGuard(invar : UML2!"uml::OpaqueExpression") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OpaqueExpression") ;
helper def : ParameterGuard(invar : UML2!"uml::Parameter") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Parameter") ;
helper def : ConnectableElementTemplateParameterGuard(invar : UML2!"uml::ConnectableElementTemplateParameter") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ConnectableElementTemplateParameter ") ;
helper def : ConnectorEndGuard(invar : UML2!"uml::ConnectorEnd") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ConnectorEnd") ;
helper def : PropertyGuard(invar : UML2!"uml::Property") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Property") ;
helper def : DeploymentGuard(invar : UML2!"uml::Deployment") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Deployment") ;
helper def : DeploymentSpecificationGuard(invar : UML2!"uml::DeploymentSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DeploymentSpecification") ;
helper def : ArtifactGuard(invar : UML2!"uml::Artifact") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Artifact") ;
helper def : ManifestationGuard(invar : UML2!"uml::Manifestation") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Manifestation") ;
helper def : OperationGuard(invar : UML2!"uml::Operation") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Operation") ;
helper def : ClassGuard(invar : UML2!"uml::Class") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Class") ;
helper def : InterfaceRealizationGuard(invar : UML2!"uml::InterfaceRealization") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InterfaceRealization") ;
helper def : InterfaceGuard(invar : UML2!"uml::Interface") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Interface") ;
helper def : ReceptionGuard(invar : UML2!"uml::Reception") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Reception") ;
helper def : SignalGuard(invar : UML2!"uml::Signal") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Signal") ;
helper def : ProtocolStateMachineGuard(invar : UML2!"uml::ProtocolStateMachine") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ProtocolStateMachine") ;
helper def : StateMachineGuard(invar : UML2!"uml::StateMachine") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::StateMachine") ;
helper def : RegionGuard(invar : UML2!"uml::Region") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Region") ;
helper def : TransitionGuard(invar : UML2!"uml::Transition") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Transition") ;
helper def : TriggerGuard(invar : UML2!"uml::Trigger") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Trigger") ;
helper def : PortGuard(invar : UML2!"uml::Port") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Port") ;
helper def : StateGuard(invar : UML2!"uml::State") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::State") ;
helper def : ConnectionPointReferenceGuard(invar : UML2!"uml::ConnectionPointReference") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ConnectionPointReference") ;
helper def : PseudostateGuard(invar : UML2!"uml::Pseudostate") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Pseudostate") ;
helper def : ProtocolConformanceGuard(invar : UML2!"uml::ProtocolConformance") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ProtocolConformance") ;
helper def : ConnectorGuard(invar : UML2!"uml::Connector") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Connector") ;
helper def : ExtensionGuard(invar : UML2!"uml::Extension") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Extension") ;
helper def : ExtensionEndGuard(invar : UML2!"uml::ExtensionEnd") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExtensionEnd") ;
helper def : StereotypeGuard(invar : UML2!"uml::Stereotype") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Stereotype") ;
helper def : ImageGuard(invar : UML2!"uml::Image") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Image") ;
helper def : ProfileGuard(invar : UML2!"uml::Profile") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Profile") ;
helper def : ModelGuard(invar : UML2!"uml::Model") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Model") ;
helper def : ParameterSetGuard(invar : UML2!"uml::ParameterSet") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ParameterSet") ;
helper def : DataTypeGuard(invar : UML2!"uml::DataType") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DataType") ;
helper def : OperationTemplateParameterGuard(invar : UML2!"uml::OperationTemplateParameter") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OperationTemplateParameter") ;
helper def : CollaborationUseGuard(invar : UML2!"uml::CollaborationUse") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CollaborationUse") ;
helper def : CollaborationGuard(invar : UML2!"uml::Collaboration") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Collaboration") ;
helper def : UseCaseGuard(invar : UML2!"uml::UseCase") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::UseCase") ;
helper def : IncludeGuard(invar : UML2!"uml::Include") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Include") ;
helper def : ExtendGuard(invar : UML2!"uml::Extend") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Extend") ;
helper def : ExtensionPointGuard(invar : UML2!"uml::ExtensionPoint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExtensionPoint") ;
helper def : RedefinableTemplateSignatureGuard(invar : UML2!"uml::RedefinableTemplateSignature") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::RedefinableTemplateSignature") ;
helper def : ClassifierTemplateParameterGuard(invar : UML2!"uml::ClassifierTemplateParameter") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ClassifierTemplateParameter") ;
helper def : StringExpressionGuard(invar : UML2!"uml::StringExpression") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::StringExpression") ;
helper def : ExpressionGuard(invar : UML2!"uml::Expression") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Expression") ;
helper def : UsageGuard(invar : UML2!"uml::Usage") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Usage") ;
helper def : PackageMergeGuard(invar : UML2!"uml::PackageMerge") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::PackageMerge") ;
helper def : ProfileApplicationGuard(invar : UML2!"uml::ProfileApplication") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ProfileApplication") ;
helper def : EnumerationGuard(invar : UML2!"uml::Enumeration") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Enumeration") ;
helper def : EnumerationLiteralGuard(invar : UML2!"uml::EnumerationLiteral") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::EnumerationLiteral") ;
helper def : InstanceSpecificationGuard(invar : UML2!"uml::InstanceSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InstanceSpecification") ;
helper def : SlotGuard(invar : UML2!"uml::Slot") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Slot") ;
helper def : PrimitiveTypeGuard(invar : UML2!"uml::PrimitiveType") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::PrimitiveType") ;
helper def : LiteralIntegerGuard(invar : UML2!"uml::LiteralInteger") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LiteralInteger") ;
helper def : LiteralStringGuard(invar : UML2!"uml::LiteralString") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LiteralString") ;
helper def : LiteralBooleanGuard(invar : UML2!"uml::LiteralBoolean") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LiteralBoolean") ;
helper def : LiteralNullGuard(invar : UML2!"uml::LiteralNull") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LiteralNull") ;
helper def : InstanceValueGuard(invar : UML2!"uml::InstanceValue") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InstanceValue") ;
helper def : LiteralUnlimitedNaturalGuard(invar : UML2!"uml::LiteralUnlimitedNatural") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LiteralUnlimitedNatural") ;
helper def : OpaqueBehaviorGuard(invar : UML2!"uml::OpaqueBehavior") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OpaqueBehavior") ;
helper def : FunctionBehaviorGuard(invar : UML2!"uml::FunctionBehavior") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::FunctionBehavior") ;
helper def : OpaqueActionGuard(invar : UML2!"uml::OpaqueAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OpaqueAction") ;
helper def : StructuredActivityNodeGuard(invar : UML2!"uml::StructuredActivityNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::StructuredActivityNode") ;
helper def : ActivityGuard(invar : UML2!"uml::Activity") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Activity") ;
helper def : VariableGuard(invar : UML2!"uml::Variable") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Variable") ;
helper def : ActivityPartitionGuard(invar : UML2!"uml::ActivityPartition") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ActivityPartition") ;
helper def : InterruptibleActivityRegionGuard(invar : UML2!"uml::InterruptibleActivityRegion") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InterruptibleActivityRegion") ;
helper def : ExceptionHandlerGuard(invar : UML2!"uml::ExceptionHandler") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExceptionHandler") ;
helper def : OutputPinGuard(invar : UML2!"uml::OutputPin") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OutputPin") ;
helper def : PinGuard(invar : UML2!"uml::Pin") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Pin") ;
helper def : InputPinGuard(invar : UML2!"uml::InputPin") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InputPin") ;
helper def : SendSignalActionGuard(invar : UML2!"uml::SendSignalAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SendSignalAction") ;
helper def : CallOperationActionGuard(invar : UML2!"uml::CallOperationAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CallOperationAction") ;
helper def : CallBehaviorActionGuard(invar : UML2!"uml::CallBehaviorAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CallBehaviorAction") ;
helper def : SequenceNodeGuard(invar : UML2!"uml::SequenceNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SequenceNode") ;
helper def : ControlFlowGuard(invar : UML2!"uml::ControlFlow") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ControlFlow") ;
helper def : InitialNodeGuard(invar : UML2!"uml::InitialNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InitialNode") ;
helper def : ActivityParameterNodeGuard(invar : UML2!"uml::ActivityParameterNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ActivityParameterNode") ;
helper def : ValuePinGuard(invar : UML2!"uml::ValuePin") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ValuePin") ;
helper def : MessageGuard(invar : UML2!"uml::Message") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Message") ;
helper def : InteractionGuard(invar : UML2!"uml::Interaction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Interaction") ;
helper def : LifelineGuard(invar : UML2!"uml::Lifeline") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Lifeline") ;
helper def : PartDecompositionGuard(invar : UML2!"uml::PartDecomposition") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::PartDecomposition") ;
helper def : InteractionUseGuard(invar : UML2!"uml::InteractionUse") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InteractionUse") ;
helper def : GateGuard(invar : UML2!"uml::Gate") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Gate") ;
helper def : GeneralOrderingGuard(invar : UML2!"uml::GeneralOrdering") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::GeneralOrdering") ;
helper def : OccurrenceSpecificationGuard(invar : UML2!"uml::OccurrenceSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OccurrenceSpecification") ;
helper def : InteractionOperandGuard(invar : UML2!"uml::InteractionOperand") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InteractionOperand") ;
helper def : InteractionConstraintGuard(invar : UML2!"uml::InteractionConstraint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InteractionConstraint") ;
helper def : StateInvariantGuard(invar : UML2!"uml::StateInvariant") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::StateInvariant") ;
helper def : ActionExecutionSpecificationGuard(invar : UML2!"uml::ActionExecutionSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ActionExecutionSpecification") ;
helper def : BehaviorExecutionSpecificationGuard(invar : UML2!"uml::BehaviorExecutionSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::BehaviorExecutionSpecification ") ;
helper def : ExecutionEventGuard(invar : UML2!"uml::ExecutionEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExecutionEvent") ;
helper def : CreationEventGuard(invar : UML2!"uml::CreationEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CreationEvent") ;
helper def : DestructionEventGuard(invar : UML2!"uml::DestructionEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DestructionEvent") ;
helper def : SendOperationEventGuard(invar : UML2!"uml::SendOperationEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SendOperationEvent") ;
helper def : SendSignalEventGuard(invar : UML2!"uml::SendSignalEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SendSignalEvent") ;
helper def : MessageOccurrenceSpecificationGuard(invar : UML2!"uml::MessageOccurrenceSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::MessageOccurrenceSpecification ") ;
helper def : ExecutionOccurrenceSpecificationGuard(invar : UML2!"uml::ExecutionOccurrenceSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExecutionOccurrenceSpecification ") ;
helper def : ReceiveOperationEventGuard(invar : UML2!"uml::ReceiveOperationEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReceiveOperationEvent") ;
helper def : ReceiveSignalEventGuard(invar : UML2!"uml::ReceiveSignalEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReceiveSignalEvent") ;
helper def : ActorGuard(invar : UML2!"uml::Actor") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Actor") ;
helper def : CallEventGuard(invar : UML2!"uml::CallEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CallEvent") ;
helper def : ChangeEventGuard(invar : UML2!"uml::ChangeEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ChangeEvent") ;
helper def : SignalEventGuard(invar : UML2!"uml::SignalEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SignalEvent") ;
helper def : AnyReceiveEventGuard(invar : UML2!"uml::AnyReceiveEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AnyReceiveEvent") ;
helper def : ForkNodeGuard(invar : UML2!"uml::ForkNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ForkNode") ;
helper def : FlowFinalNodeGuard(invar : UML2!"uml::FlowFinalNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::FlowFinalNode") ;
helper def : CentralBufferNodeGuard(invar : UML2!"uml::CentralBufferNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CentralBufferNode") ;
helper def : MergeNodeGuard(invar : UML2!"uml::MergeNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::MergeNode") ;
helper def : DecisionNodeGuard(invar : UML2!"uml::DecisionNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DecisionNode") ;
helper def : ActivityFinalNodeGuard(invar : UML2!"uml::ActivityFinalNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ActivityFinalNode") ;
helper def : ComponentRealizationGuard(invar : UML2!"uml::ComponentRealization") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ComponentRealization") ;
helper def : ComponentGuard(invar : UML2!"uml::Component") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Component") ;
helper def : NodeGuard(invar : UML2!"uml::Node") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Node") ;
helper def : DeviceGuard(invar : UML2!"uml::Device") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Device") ;
helper def : ExecutionEnvironmentGuard(invar : UML2!"uml::ExecutionEnvironment") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExecutionEnvironment") ;
helper def : CommunicationPathGuard(invar : UML2!"uml::CommunicationPath") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CommunicationPath") ;
helper def : CombinedFragmentGuard(invar : UML2!"uml::CombinedFragment") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CombinedFragment") ;
helper def : ContinuationGuard(invar : UML2!"uml::Continuation") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Continuation") ;
helper def : ConsiderIgnoreFragmentGuard(invar : UML2!"uml::ConsiderIgnoreFragment") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ConsiderIgnoreFragment") ;
helper def : CreateObjectActionGuard(invar : UML2!"uml::CreateObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CreateObjectAction") ;
helper def : DestroyObjectActionGuard(invar : UML2!"uml::DestroyObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DestroyObjectAction") ;
helper def : TestIdentityActionGuard(invar : UML2!"uml::TestIdentityAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TestIdentityAction") ;
helper def : ReadSelfActionGuard(invar : UML2!"uml::ReadSelfAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadSelfAction") ;
helper def : ReadStructuralFeatureActionGuard(invar : UML2!"uml::ReadStructuralFeatureAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadStructuralFeatureAction") ;
helper def : ClearStructuralFeatureActionGuard(invar : UML2!"uml::ClearStructuralFeatureAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ClearStructuralFeatureAction") ;
helper def : RemoveStructuralFeatureValueActionGuard(invar : UML2!"uml::RemoveStructuralFeatureValueAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::RemoveStructuralFeatureValueAction ") ;
helper def : AddStructuralFeatureValueActionGuard(invar : UML2!"uml::AddStructuralFeatureValueAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AddStructuralFeatureValueAction ") ;
helper def : LinkEndDataGuard(invar : UML2!"uml::LinkEndData") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LinkEndData") ;
helper def : QualifierValueGuard(invar : UML2!"uml::QualifierValue") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::QualifierValue") ;
helper def : ReadLinkActionGuard(invar : UML2!"uml::ReadLinkAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadLinkAction") ;
helper def : LinkEndCreationDataGuard(invar : UML2!"uml::LinkEndCreationData") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LinkEndCreationData") ;
helper def : CreateLinkActionGuard(invar : UML2!"uml::CreateLinkAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CreateLinkAction") ;
helper def : DestroyLinkActionGuard(invar : UML2!"uml::DestroyLinkAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DestroyLinkAction") ;
helper def : LinkEndDestructionDataGuard(invar : UML2!"uml::LinkEndDestructionData") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LinkEndDestructionData") ;
helper def : ClearAssociationActionGuard(invar : UML2!"uml::ClearAssociationAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ClearAssociationAction") ;
helper def : BroadcastSignalActionGuard(invar : UML2!"uml::BroadcastSignalAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::BroadcastSignalAction") ;
helper def : SendObjectActionGuard(invar : UML2!"uml::SendObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SendObjectAction") ;
helper def : ValueSpecificationActionGuard(invar : UML2!"uml::ValueSpecificationAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ValueSpecificationAction") ;
helper def : TimeExpressionGuard(invar : UML2!"uml::TimeExpression") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TimeExpression") ;
helper def : DurationGuard(invar : UML2!"uml::Duration") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Duration") ;
helper def : DurationIntervalGuard(invar : UML2!"uml::DurationInterval") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DurationInterval") ;
helper def : IntervalGuard(invar : UML2!"uml::Interval") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Interval") ;
helper def : TimeConstraintGuard(invar : UML2!"uml::TimeConstraint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TimeConstraint") ;
helper def : IntervalConstraintGuard(invar : UML2!"uml::IntervalConstraint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::IntervalConstraint") ;
helper def : TimeIntervalGuard(invar : UML2!"uml::TimeInterval") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TimeInterval") ;
helper def : DurationConstraintGuard(invar : UML2!"uml::DurationConstraint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DurationConstraint") ;
helper def : TimeObservationGuard(invar : UML2!"uml::TimeObservation") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TimeObservation") ;
helper def : DurationObservationGuard(invar : UML2!"uml::DurationObservation") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DurationObservation") ;
helper def : FinalStateGuard(invar : UML2!"uml::FinalState") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::FinalState") ;
helper def : TimeEventGuard(invar : UML2!"uml::TimeEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TimeEvent") ;
helper def : ReadVariableActionGuard(invar : UML2!"uml::ReadVariableAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadVariableAction") ;
helper def : ClearVariableActionGuard(invar : UML2!"uml::ClearVariableAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ClearVariableAction") ;
helper def : AddVariableValueActionGuard(invar : UML2!"uml::AddVariableValueAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AddVariableValueAction") ;
helper def : RemoveVariableValueActionGuard(invar : UML2!"uml::RemoveVariableValueAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::RemoveVariableValueAction") ;
helper def : RaiseExceptionActionGuard(invar : UML2!"uml::RaiseExceptionAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::RaiseExceptionAction") ;
helper def : ActionInputPinGuard(invar : UML2!"uml::ActionInputPin") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ActionInputPin") ;
helper def : InformationItemGuard(invar : UML2!"uml::InformationItem") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InformationItem") ;
helper def : InformationFlowGuard(invar : UML2!"uml::InformationFlow") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InformationFlow") ;
helper def : ReadExtentActionGuard(invar : UML2!"uml::ReadExtentAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadExtentAction") ;
helper def : ReclassifyObjectActionGuard(invar : UML2!"uml::ReclassifyObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReclassifyObjectAction") ;
helper def : ReadIsClassifiedObjectActionGuard(invar : UML2!"uml::ReadIsClassifiedObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadIsClassifiedObjectAction") ;
helper def : StartClassifierBehaviorActionGuard(invar : UML2!"uml::StartClassifierBehaviorAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::StartClassifierBehaviorAction") ;
helper def : ReadLinkObjectEndActionGuard(invar : UML2!"uml::ReadLinkObjectEndAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadLinkObjectEndAction") ;
helper def : ReadLinkObjectEndQualifierActionGuard(invar : UML2!"uml::ReadLinkObjectEndQualifierAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadLinkObjectEndQualifierAction ") ;
helper def : CreateLinkObjectActionGuard(invar : UML2!"uml::CreateLinkObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CreateLinkObjectAction") ;
helper def : AcceptEventActionGuard(invar : UML2!"uml::AcceptEventAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AcceptEventAction") ;
helper def : AcceptCallActionGuard(invar : UML2!"uml::AcceptCallAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AcceptCallAction") ;
helper def : ReplyActionGuard(invar : UML2!"uml::ReplyAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReplyAction") ;
helper def : UnmarshallActionGuard(invar : UML2!"uml::UnmarshallAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::UnmarshallAction") ;
helper def : ReduceActionGuard(invar : UML2!"uml::ReduceAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReduceAction") ;
helper def : JoinNodeGuard(invar : UML2!"uml::JoinNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::JoinNode") ;
helper def : DataStoreNodeGuard(invar : UML2!"uml::DataStoreNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DataStoreNode") ;
helper def : ObjectFlowGuard(invar : UML2!"uml::ObjectFlow") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ObjectFlow") ;
helper def : ConditionalNodeGuard(invar : UML2!"uml::ConditionalNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ConditionalNode") ;
helper def : ClauseGuard(invar : UML2!"uml::Clause") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Clause") ;
helper def : LoopNodeGuard(invar : UML2!"uml::LoopNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LoopNode") ;
helper def : ExpansionNodeGuard(invar : UML2!"uml::ExpansionNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExpansionNode") ;
helper def : ExpansionRegionGuard(invar : UML2!"uml::ExpansionRegion") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExpansionRegion") ;
helper def : ProtocolTransitionGuard(invar : UML2!"uml::ProtocolTransition") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ProtocolTransition") ;
helper def : AssociationClassGuard(invar : UML2!"uml::AssociationClass") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AssociationClass") ;
rule copyStereoType(invar : UML2!"uml::Element",outvar : UML2!"uml::Element"){
do{
--invar.getAppliedStereotypes().debug('applied stereotypes');
for(st in invar.getAppliedStereotypes()){
-- st.getName().debug('stereotype working on');
outvar.applyStereotype(st);
for (a in st.getAllAttributes()){
-- a.debug('attribute :');
-- invar.getValue(st,a.name).debug('value for '+a.name);
if(not invar.getValue(st,a.name).oclIsUndefined()){
if ( not a.name.startsWith('base_') ){
outvar.setValue(st,a.name, invar.getValue(st,a.name) );
}
}else{
if(a.name='tableName'){
outvar.setValue(st,a.name, invar.name.toLower() );
}
}
}
}
}--do
}
endpoint rule endpointRule() {
do {
}
}
entrypoint rule entrypointRule() {
do {
}
}
rule CommentRule {
from invar : UML2!"uml::Comment" (thisModule.CommentGuard(invar))
to Commentvar : UML2!Comment (
body <- invar.body,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
annotatedElement <- invar.annotatedElement
)
do {
--invar.debug('CommentRule');
}
}
rule PackageRule {
from invar : UML2!"uml::Package" (thisModule.PackageGuard(invar))
to Packagevar : UML2!Package (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
elementImport <- invar.elementImport,
packageImport <- invar.packageImport,
ownedRule <- invar.ownedRule,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
templateBinding <- invar.templateBinding,
ownedTemplateSignature <- invar.ownedTemplateSignature,
ownedType <- invar.ownedType,
packageMerge <- invar.packageMerge,
packagedElement <- invar.packagedElement,
-- nestedPackage <- invar.nestedPackage,
nestingPackage <- invar.nestingPackage,
profileApplication <- invar.profileApplication
)
do {
invar.debug('PackageRule');
}
}
rule DependencyRule {
from invar : UML2!"uml::Dependency" (thisModule.DependencyGuard(invar))
to Dependencyvar : UML2!Dependency (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
supplier <- invar.supplier,
client <- invar.client
)
do {
thisModule.copyStereoType(invar,Dependencyvar);
invar.debug('DependencyRule');
}
}
rule ElementImportRule {
from invar : UML2!"uml::ElementImport" (thisModule.ElementImportGuard(invar))
to ElementImportvar : UML2!ElementImport (
visibility <- invar.visibility,
alias <- invar.alias,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
importedElement <- invar.importedElement,
importingNamespace <- invar.importingNamespace
)
do {
thisModule.copyStereoType(invar,ElementImportvar);
invar.debug('ElementImportRule');
}
}
rule PackageImportRule {
from invar : UML2!"uml::PackageImport" (thisModule.PackageImportGuard(invar))
to PackageImportvar : UML2!PackageImport (
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
importedPackage <- invar.importedPackage,
importingNamespace <- invar.importingNamespace
)
do {
thisModule.copyStereoType(invar,PackageImportvar);
invar.debug('PackageImportRule');
}
}
rule ConstraintRule {
from invar : UML2!"uml::Constraint" (thisModule.ConstraintGuard(invar))
to Constraintvar : UML2!Constraint (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
constrainedElement <- invar.constrainedElement,
specification <- invar.specification,
"context" <- invar."context"
)
do {
thisModule.copyStereoType(invar,Constraintvar);
invar.debug('ConstraintRule');
}
}
rule AssociationRule {
from invar : UML2!"uml::Association" (thisModule.AssociationGuard(invar))
to Associationvar : UML2!Association (
name <- invar.name,
visibility <- invar.visibility,
isLeaf <- invar.isLeaf,
isAbstract <- invar.isAbstract,
isDerived <- invar.isDerived,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
elementImport <- invar.elementImport,
packageImport <- invar.packageImport,
ownedRule <- invar.ownedRule,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
package <- invar.package,
templateBinding <- invar.templateBinding,
ownedTemplateSignature <- invar.ownedTemplateSignature,
generalization <- invar.generalization,
powertypeExtent <- invar.powertypeExtent,
redefinedClassifier <- invar.redefinedClassifier,
general <- invar.general,
substitution <- invar.substitution,
representation <- invar.representation,
collaborationUse <- invar.collaborationUse,
ownedUseCase <- invar.ownedUseCase,
useCase <- invar.useCase,
ownedEnd <- invar.ownedEnd,
memberEnd <- invar.memberEnd,
navigableOwnedEnd <- invar.navigableOwnedEnd
)
do {
thisModule.copyStereoType(invar,Associationvar);
invar.debug('AssociationRule');
}
}
rule TemplateBindingRule {
from invar : UML2!"uml::TemplateBinding" (thisModule.TemplateBindingGuard(invar))
to TemplateBindingvar : UML2!TemplateBinding (
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
signature <- invar.signature,
parameterSubstitution <- invar.parameterSubstitution,
boundElement <- invar.boundElement
)
do {
thisModule.copyStereoType(invar,TemplateBindingvar);
invar.debug('TemplateBindingRule');
}
}
rule TemplateSignatureRule {
from invar : UML2!"uml::TemplateSignature" (thisModule.TemplateSignatureGuard(invar))
to TemplateSignaturevar : UML2!TemplateSignature (
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
parameter <- invar.parameter,
ownedParameter <- invar.ownedParameter,
template <- invar.template
)
do {
thisModule.copyStereoType(invar,TemplateSignaturevar);
invar.debug('TemplateSignatureRule');
}
}
rule TemplateParameterRule {
from invar : UML2!"uml::TemplateParameter" (thisModule.TemplateParameterGuard(invar))
to TemplateParametervar : UML2!TemplateParameter (
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
signature <- invar.signature,
parameteredElement <- invar.parameteredElement,
ownedParameteredElement <- invar.ownedParameteredElement,
default <- invar.default,
ownedDefault <- invar.ownedDefault
)
do {
thisModule.copyStereoType(invar,TemplateParametervar);
invar.debug('TemplateParameterRule');
}
}
rule TemplateParameterSubstitutionRule {
from invar : UML2!"uml::TemplateParameterSubstitution" (thisModule.TemplateParameterSubstitutionGuard(invar))
to TemplateParameterSubstitutionvar : UML2!TemplateParameterSubstitution (
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
formal <- invar.formal,
actual <- invar.actual,
ownedActual <- invar.ownedActual,
templateBinding <- invar.templateBinding
)
do {
thisModule.copyStereoType(invar,TemplateParameterSubstitutio nvar);
invar.debug('TemplateParameterSubstitutionRule');
}
}
rule GeneralizationRule {
from invar : UML2!"uml::Generalization" (thisModule.GeneralizationGuard(invar))
to Generalizationvar : UML2!Generalization (
isSubstitutable <- invar.isSubstitutable,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
general <- invar.general,
generalizationSet <- invar.generalizationSet,
specific <- invar.specific
)
do {
thisModule.copyStereoType(invar,Generalizationvar);
invar.debug('GeneralizationRule');
}
}
rule GeneralizationSetRule {
from invar : UML2!"uml::GeneralizationSet" (thisModule.GeneralizationSetGuard(invar))
to GeneralizationSetvar : UML2!GeneralizationSet (
name <- invar.name,
visibility <- invar.visibility,
isCovering <- invar.isCovering,
isDisjoint <- invar.isDisjoint,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
powertype <- invar.powertype,
generalization <- invar.generalization
)
do {
thisModule.copyStereoType(invar,GeneralizationSetvar);
invar.debug('GeneralizationSetRule');
}
}
rule SubstitutionRule {
from invar : UML2!"uml::Substitution" (thisModule.SubstitutionGuard(invar))
to Substitutionvar : UML2!Substitution (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
supplier <- invar.supplier,
client <- invar.client,
mapping <- invar.mapping,
contract <- invar.contract,
substitutingClassifier <- invar.substitutingClassifier
)
do {
thisModule.copyStereoType(invar,Substitutionvar);
invar.debug('SubstitutionRule');
}
}
rule RealizationRule {
from invar : UML2!"uml::Realization" (thisModule.RealizationGuard(invar))
to Realizationvar : UML2!Realization (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
supplier <- invar.supplier,
client <- invar.client,
mapping <- invar.mapping
)
do {
thisModule.copyStereoType(invar,Realizationvar);
invar.debug('RealizationRule');
}
}
rule AbstractionRule {
from invar : UML2!"uml::Abstraction" (thisModule.AbstractionGuard(invar))
to Abstractionvar : UML2!Abstraction (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
supplier <- invar.supplier,
client <- invar.client,
mapping <- invar.mapping
)
do {
thisModule.copyStereoType(invar,Abstractionvar);
invar.debug('AbstractionRule');
}
}
rule OpaqueExpressionRule {
from invar : UML2!"uml::OpaqueExpression" (thisModule.OpaqueExpressionGuard(invar))
to OpaqueExpressionvar : UML2!OpaqueExpression (
name <- invar.name,
visibility <- invar.visibility,
body <- invar.body,
language <- invar.language,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
type <- invar.type,
behavior <- invar.behavior
)
do {
thisModule.copyStereoType(invar,OpaqueExpressionvar);
invar.debug('OpaqueExpressionRule');
}
}
rule ParameterRule {
from invar : UML2!"uml::Parameter" (thisModule.ParameterGuard(invar))
to Parametervar : UML2!Parameter (
name <- invar.name,
visibility <- invar.visibility,
isOrdered <- invar.isOrdered,
isUnique <- invar.isUnique,
upper <- invar.upper,
lower <- invar.lower,
direction <- invar.direction,
default <- invar.default,
isException <- invar.isException,
isStream <- invar.isStream,
effect <- invar.effect,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
type <- invar.type,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
end <- invar.end,
upperValue <- invar.upperValue,
lowerValue <- invar.lowerValue,
parameterSet <- invar.parameterSet,
defaultValue <- invar.defaultValue
)
do {
thisModule.copyStereoType(invar,Parametervar);
invar.debug('ParameterRule');
}
}
rule ConnectableElementTemplateParameterRule {
from invar : UML2!"uml::ConnectableElementTemplateParameter" (thisModule.ConnectableElementTemplateParameterGuard(invar))
to ConnectableElementTemplateParametervar : UML2!ConnectableElementTemplateParameter (
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
signature <- invar.signature,
parameteredElement <- invar.parameteredElement,
ownedParameteredElement <- invar.ownedParameteredElement,
default <- invar.default,
ownedDefault <- invar.ownedDefault
)
do {
thisModule.copyStereoType(invar,ConnectableElementTemplatePa rametervar);
invar.debug('ConnectableElementTemplateParameterRule');
}
}
rule ConnectorEndRule {
from invar : UML2!"uml::ConnectorEnd" (thisModule.ConnectorEndGuard(invar))
to ConnectorEndvar : UML2!ConnectorEnd (
isOrdered <- invar.isOrdered,
isUnique <- invar.isUnique,
upper <- invar.upper,
lower <- invar.lower,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
upperValue <- invar.upperValue,
lowerValue <- invar.lowerValue,
partWithPort <- invar.partWithPort,
role <- invar.role
)
do {
thisModule.copyStereoType(invar,ConnectorEndvar);
invar.debug('ConnectorEndRule');
}
}
rule PropertyRule {
from invar : UML2!"uml::Property" (thisModule.PropertyGuard(invar))
to Propertyvar : UML2!Property (
name <- invar.name,
visibility <- invar.visibility,
isLeaf <- invar.isLeaf,
isStatic <- invar.isStatic,
isOrdered <- invar.isOrdered,
isUnique <- invar.isUnique,
upper <- invar.upper,
lower <- invar.lower,
isReadOnly <- invar.isReadOnly,
isDerived <- invar.isDerived,
isDerivedUnion <- invar.isDerivedUnion,
default <- invar.default,
aggregation <- invar.aggregation,
isComposite <- invar.isComposite,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
type <- invar.type,
upperValue <- invar.upperValue,
lowerValue <- invar.lowerValue,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
end <- invar.end,
deployment <- invar.deployment,
templateBinding <- invar.templateBinding,
ownedTemplateSignature <- invar.ownedTemplateSignature,
datatype <-invar.datatype,
redefinedProperty <- invar.redefinedProperty,
owningAssociation <- invar.owningAssociation,
defaultValue <- invar.defaultValue,
--opposite <- invar.opposite,
subsettedProperty <- invar.subsettedProperty,
association <- invar.association,
qualifier <- invar.qualifier,
associationEnd <- invar.associationEnd
)
do {
thisModule.copyStereoType(invar,Propertyvar);
invar.debug('PropertyRule');
}
}
rule DeploymentRule {
from invar : UML2!"uml::Deployment" (thisModule.DeploymentGuard(invar))
to Deploymentvar : UML2!Deployment (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
supplier <- invar.supplier,
client <- invar.client,
deployedArtifact <- invar.deployedArtifact,
configuration <- invar.configuration,
location <- invar.location
)
do {
thisModule.copyStereoType(invar,Deploymentvar);
invar.debug('DeploymentRule');
}
}
rule DeploymentSpecificationRule {
from invar : UML2!"uml::DeploymentSpecification" (thisModule.DeploymentSpecificationGuard(invar))
to DeploymentSpecificationvar : UML2!DeploymentSpecification (
name <- invar.name,
visibility <- invar.visibility,
isLeaf <- invar.isLeaf,
isAbstract <- invar.isAbstract,
fileName <- invar.fileName,
deploymentLocation <- invar.deploymentLocation,
executionLocation <- invar.executionLocation,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
elementImport <- invar.elementImport,
packageImport <- invar.packageImport,
ownedRule <- invar.ownedRule,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
package <- invar.package,
templateBinding <- invar.templateBinding,
ownedTemplateSignature <- invar.ownedTemplateSignature,
generalization <- invar.generalization,
powertypeExtent <- invar.powertypeExtent,
redefinedClassifier <- invar.redefinedClassifier,
general <- invar.general,
substitution <- invar.substitution,
representation <- invar.representation,
collaborationUse <- invar.collaborationUse,
ownedUseCase <- invar.ownedUseCase,
useCase <- invar.useCase,
nestedArtifact <- invar.nestedArtifact,
manifestation <- invar.manifestation,
ownedOperation <- invar.ownedOperation,
ownedAttribute <- invar.ownedAttribute,
deployment <- invar.deployment
)
do {
thisModule.copyStereoType(invar,DeploymentSpecificationvar);
invar.debug('DeploymentSpecificationRule');
}
}
rul
|
|
| |
Re: Reapplying a profile after its has be re-defined [message #476849 is a reply to message #476847] |
Mon, 14 January 2008 09:52  |
Eclipse User |
|
|
|
Anders,
Just apply it again using the same menu item you used when you first applied
it...
Kenn
"Anders W.Tell" <opensource@toolsmiths.se> wrote in message
news:fmaj6q$r6b$1@build.eclipse.org...
> Kenn,
>>
>> To update applied stereotypes to a new definition of a profile, simply
>> reapply the profile; tag values will be automatically be migrated on a
>> best-effort basis.
>
> Ok, how does one "Re-apply" the profile? (I cant see any menu item for
> reapply, only unapply an apply) Do I have to make my own menu?
>
>
>
> thanks for any help.
>
> /anders
|
|
|
Re: Reapplying a profile after its has be re-defined [message #625738 is a reply to message #476763] |
Mon, 17 December 2007 09:02  |
Eclipse User |
|
|
|
Anders W.Tell schrieb:
> Hi,
>
> Im still trying to get the hang of how profiles work and Im in cycle of
> changing a profile with many redefines.
>
> How ever when I drop and replace the file "bsc.profile.uml" and opens an
> existing '*.uml' file where i have applied the profile, the connection
> /references to applied stereotypes seems lost
>
> And at the top level in the my1.uml file there are now extra elements
> outside the <uml:Model> element.
>
> Such as:
> <BusinessSemanticComponent:SemanticComponent
> xmi:id="_pSRaEKs9Edypn7TO-27LDg"
> base_Classifier="_oZuiAKpMEdy6V5U3TuHlaQ"/>
>
> More over in the ProfileApplication element in *.uml file the
> UML::Reference is now = "null"
>
> I always define the profile after changed and I keep the
> annotation:nsURI to the same value between defines.
>
> I also keep the latest annotation in profile file (i.e I remove the last
> one since I make soo many changed/addition)
>
>
> thanks for any hints
> /anders
I have achieved this with a transformation in ATL.
|
|
|
Re: Reapplying a profile after its has be re-defined [message #625739 is a reply to message #476763] |
Mon, 17 December 2007 10:03  |
Eclipse User |
|
|
|
Anders,
If you're deleting annotations, you're deleting the metadata that is needed
in order to successfully recognize stereotype applications based on older
versions of the profile... So if you want to keep your stereotype
applications, don't delete the annotations.
Kenn
"Anders W.Tell" <opensource@toolsmiths.se> wrote in message
news:fk1cdf$40j$1@build.eclipse.org...
> Hi,
>
> Im still trying to get the hang of how profiles work and Im in cycle of
> changing a profile with many redefines.
>
> How ever when I drop and replace the file "bsc.profile.uml" and opens an
> existing '*.uml' file where i have applied the profile, the connection
> /references to applied stereotypes seems lost
>
> And at the top level in the my1.uml file there are now extra elements
> outside the <uml:Model> element.
>
> Such as:
> <BusinessSemanticComponent:SemanticComponent
> xmi:id="_pSRaEKs9Edypn7TO-27LDg"
> base_Classifier="_oZuiAKpMEdy6V5U3TuHlaQ"/>
>
> More over in the ProfileApplication element in *.uml file the
> UML::Reference is now = "null"
>
> I always define the profile after changed and I keep the annotation:nsURI
> to the same value between defines.
>
> I also keep the latest annotation in profile file (i.e I remove the last
> one since I make soo many changed/addition)
>
>
> thanks for any hints
> /anders
|
|
|
Re: Reapplying a profile after its has be re-defined [message #625745 is a reply to message #476765] |
Mon, 17 December 2007 12:54  |
Eclipse User |
|
|
|
Interesting is it difficult?
/anders
urs zeidler wrote:
> Anders W.Tell schrieb:
>> Hi,
>>
>> Im still trying to get the hang of how profiles work and Im in cycle
>> of changing a profile with many redefines.
>>
>> How ever when I drop and replace the file "bsc.profile.uml" and opens
>> an existing '*.uml' file where i have applied the profile, the
>> connection /references to applied stereotypes seems lost
>>
>> And at the top level in the my1.uml file there are now extra elements
>> outside the <uml:Model> element.
>>
>> Such as:
>> <BusinessSemanticComponent:SemanticComponent
>> xmi:id="_pSRaEKs9Edypn7TO-27LDg"
>> base_Classifier="_oZuiAKpMEdy6V5U3TuHlaQ"/>
>>
>> More over in the ProfileApplication element in *.uml file the
>> UML::Reference is now = "null"
>>
>> I always define the profile after changed and I keep the
>> annotation:nsURI to the same value between defines.
>>
>> I also keep the latest annotation in profile file (i.e I remove the
>> last one since I make soo many changed/addition)
>>
>>
>> thanks for any hints
>> /anders
> I have achieved this with a transformation in ATL.
|
|
|
Re: Reapplying a profile after its has be re-defined [message #625746 is a reply to message #476765] |
Mon, 17 December 2007 12:56  |
Eclipse User |
|
|
|
Interesting is it difficult?
/anders
urs zeidler wrote:
> Anders W.Tell schrieb:
>> Hi,
>>
>> Im still trying to get the hang of how profiles work and Im in cycle
>> of changing a profile with many redefines.
>>
>> How ever when I drop and replace the file "bsc.profile.uml" and opens
>> an existing '*.uml' file where i have applied the profile, the
>> connection /references to applied stereotypes seems lost
>>
>> And at the top level in the my1.uml file there are now extra elements
>> outside the <uml:Model> element.
>>
>> Such as:
>> <BusinessSemanticComponent:SemanticComponent
>> xmi:id="_pSRaEKs9Edypn7TO-27LDg"
>> base_Classifier="_oZuiAKpMEdy6V5U3TuHlaQ"/>
>>
>> More over in the ProfileApplication element in *.uml file the
>> UML::Reference is now = "null"
>>
>> I always define the profile after changed and I keep the
>> annotation:nsURI to the same value between defines.
>>
>> I also keep the latest annotation in profile file (i.e I remove the
>> last one since I make soo many changed/addition)
>>
>>
>> thanks for any hints
>> /anders
> I have achieved this with a transformation in ATL.
|
|
|
Re: Reapplying a profile after its has be re-defined [message #625747 is a reply to message #476766] |
Mon, 17 December 2007 12:59  |
Eclipse User |
|
|
|
Kenn,
Ok, is this behavior conformant with OMG profiling? Does this work
portable with profiles expressed in plain XMI?
How to one automatically update an existing applied profile (in an
*.uml) to a newer and improved one?
One problem (for me) seems that the ID of stereotypes changes when one
save the profile.uml. Is it possible to prevent the saving of new ID for
stereotype?
/anders
Kenn Hussey wrote:
> Anders,
>
> If you're deleting annotations, you're deleting the metadata that is needed
> in order to successfully recognize stereotype applications based on older
> versions of the profile... So if you want to keep your stereotype
> applications, don't delete the annotations.
>
> Kenn
>
> "Anders W.Tell" <opensource@toolsmiths.se> wrote in message
> news:fk1cdf$40j$1@build.eclipse.org...
>> Hi,
>>
>> Im still trying to get the hang of how profiles work and Im in cycle of
>> changing a profile with many redefines.
>>
>> How ever when I drop and replace the file "bsc.profile.uml" and opens an
>> existing '*.uml' file where i have applied the profile, the connection
>> /references to applied stereotypes seems lost
>>
>> And at the top level in the my1.uml file there are now extra elements
>> outside the <uml:Model> element.
>>
>> Such as:
>> <BusinessSemanticComponent:SemanticComponent
>> xmi:id="_pSRaEKs9Edypn7TO-27LDg"
>> base_Classifier="_oZuiAKpMEdy6V5U3TuHlaQ"/>
>>
>> More over in the ProfileApplication element in *.uml file the
>> UML::Reference is now = "null"
>>
>> I always define the profile after changed and I keep the annotation:nsURI
>> to the same value between defines.
>>
>> I also keep the latest annotation in profile file (i.e I remove the last
>> one since I make soo many changed/addition)
>>
>>
>> thanks for any hints
>> /anders
>
>
|
|
|
Re: Reapplying a profile after its has be re-defined [message #625748 is a reply to message #476774] |
Mon, 17 December 2007 13:10  |
Eclipse User |
|
|
|
Anders,
The UML specification doesn't dictate how tools are supposed to behave in
this area, so yes, it's conformant.
To update applied stereotypes to a new definition of a profile, simply
reapply the profile; tag values will be automatically be migrated on a
best-effort basis.
IDs shouldn't change every time the profie is saved; how are you saving the
profile: using the editor or from a Java program?
Kenn
"Anders W.Tell" <opensource@toolsmiths.se> wrote in message
news:fk6de6$6il$3@build.eclipse.org...
> Kenn,
>
> Ok, is this behavior conformant with OMG profiling? Does this work
> portable with profiles expressed in plain XMI?
>
> How to one automatically update an existing applied profile (in an *.uml)
> to a newer and improved one?
>
> One problem (for me) seems that the ID of stereotypes changes when one
> save the profile.uml. Is it possible to prevent the saving of new ID for
> stereotype?
>
> /anders
>
>
> Kenn Hussey wrote:
>> Anders,
>>
>> If you're deleting annotations, you're deleting the metadata that is
>> needed in order to successfully recognize stereotype applications based
>> on older versions of the profile... So if you want to keep your
>> stereotype applications, don't delete the annotations.
>>
>> Kenn
>>
>> "Anders W.Tell" <opensource@toolsmiths.se> wrote in message
>> news:fk1cdf$40j$1@build.eclipse.org...
>>> Hi,
>>>
>>> Im still trying to get the hang of how profiles work and Im in cycle of
>>> changing a profile with many redefines.
>>>
>>> How ever when I drop and replace the file "bsc.profile.uml" and opens an
>>> existing '*.uml' file where i have applied the profile, the connection
>>> /references to applied stereotypes seems lost
>>>
>>> And at the top level in the my1.uml file there are now extra elements
>>> outside the <uml:Model> element.
>>>
>>> Such as:
>>> <BusinessSemanticComponent:SemanticComponent
>>> xmi:id="_pSRaEKs9Edypn7TO-27LDg"
>>> base_Classifier="_oZuiAKpMEdy6V5U3TuHlaQ"/>
>>>
>>> More over in the ProfileApplication element in *.uml file the
>>> UML::Reference is now = "null"
>>>
>>> I always define the profile after changed and I keep the
>>> annotation:nsURI to the same value between defines.
>>>
>>> I also keep the latest annotation in profile file (i.e I remove the last
>>> one since I make soo many changed/addition)
>>>
>>>
>>> thanks for any hints
>>> /anders
>>
|
|
|
Re: Reapplying a profile after its has be re-defined [message #625759 is a reply to message #476773] |
Tue, 18 December 2007 09:17  |
Eclipse User |
|
|
|
This is a multi-part message in MIME format.
--------------020808090907040606030806
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Anders W.Tell schrieb:
> Interesting is it difficult?
> /anders
>
Not really, you can use this transformation as a base.
--------------020808090907040606030806
Content-Type: text/plain;
name="uml2copy_direct_with_Stereotypes.atl"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="uml2copy_direct_with_Stereotypes.atl"
-- @atlcompiler atl2006
module Transformation;
create OUT : UML2 from IN : UML2,PRO:UML2;
helper def : inElements : Set(UML2!"ecore::EObject") = UML2!"ecore::EObject"->allInstancesFrom('IN');
helper def : isIncluded(invar : OclAny) : Boolean =
true
;
helper def : CommentGuard(invar : UML2!"uml::Comment") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Comment") ;
helper def : PackageGuard(invar : UML2!"uml::Package") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Package") ;
helper def : DependencyGuard(invar : UML2!"uml::Dependency") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Dependency") ;
helper def : ElementImportGuard(invar : UML2!"uml::ElementImport") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ElementImport") ;
helper def : PackageImportGuard(invar : UML2!"uml::PackageImport") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::PackageImport") ;
helper def : ConstraintGuard(invar : UML2!"uml::Constraint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Constraint") ;
helper def : AssociationGuard(invar : UML2!"uml::Association") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Association") ;
helper def : TemplateBindingGuard(invar : UML2!"uml::TemplateBinding") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TemplateBinding") ;
helper def : TemplateSignatureGuard(invar : UML2!"uml::TemplateSignature") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TemplateSignature") ;
helper def : TemplateParameterGuard(invar : UML2!"uml::TemplateParameter") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TemplateParameter") ;
helper def : TemplateParameterSubstitutionGuard(invar : UML2!"uml::TemplateParameterSubstitution") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TemplateParameterSubstitution") ;
helper def : GeneralizationGuard(invar : UML2!"uml::Generalization") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Generalization") ;
helper def : GeneralizationSetGuard(invar : UML2!"uml::GeneralizationSet") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::GeneralizationSet") ;
helper def : SubstitutionGuard(invar : UML2!"uml::Substitution") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Substitution") ;
helper def : RealizationGuard(invar : UML2!"uml::Realization") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Realization") ;
helper def : AbstractionGuard(invar : UML2!"uml::Abstraction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Abstraction") ;
helper def : OpaqueExpressionGuard(invar : UML2!"uml::OpaqueExpression") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OpaqueExpression") ;
helper def : ParameterGuard(invar : UML2!"uml::Parameter") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Parameter") ;
helper def : ConnectableElementTemplateParameterGuard(invar : UML2!"uml::ConnectableElementTemplateParameter") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ConnectableElementTemplateParameter ") ;
helper def : ConnectorEndGuard(invar : UML2!"uml::ConnectorEnd") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ConnectorEnd") ;
helper def : PropertyGuard(invar : UML2!"uml::Property") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Property") ;
helper def : DeploymentGuard(invar : UML2!"uml::Deployment") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Deployment") ;
helper def : DeploymentSpecificationGuard(invar : UML2!"uml::DeploymentSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DeploymentSpecification") ;
helper def : ArtifactGuard(invar : UML2!"uml::Artifact") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Artifact") ;
helper def : ManifestationGuard(invar : UML2!"uml::Manifestation") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Manifestation") ;
helper def : OperationGuard(invar : UML2!"uml::Operation") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Operation") ;
helper def : ClassGuard(invar : UML2!"uml::Class") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Class") ;
helper def : InterfaceRealizationGuard(invar : UML2!"uml::InterfaceRealization") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InterfaceRealization") ;
helper def : InterfaceGuard(invar : UML2!"uml::Interface") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Interface") ;
helper def : ReceptionGuard(invar : UML2!"uml::Reception") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Reception") ;
helper def : SignalGuard(invar : UML2!"uml::Signal") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Signal") ;
helper def : ProtocolStateMachineGuard(invar : UML2!"uml::ProtocolStateMachine") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ProtocolStateMachine") ;
helper def : StateMachineGuard(invar : UML2!"uml::StateMachine") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::StateMachine") ;
helper def : RegionGuard(invar : UML2!"uml::Region") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Region") ;
helper def : TransitionGuard(invar : UML2!"uml::Transition") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Transition") ;
helper def : TriggerGuard(invar : UML2!"uml::Trigger") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Trigger") ;
helper def : PortGuard(invar : UML2!"uml::Port") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Port") ;
helper def : StateGuard(invar : UML2!"uml::State") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::State") ;
helper def : ConnectionPointReferenceGuard(invar : UML2!"uml::ConnectionPointReference") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ConnectionPointReference") ;
helper def : PseudostateGuard(invar : UML2!"uml::Pseudostate") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Pseudostate") ;
helper def : ProtocolConformanceGuard(invar : UML2!"uml::ProtocolConformance") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ProtocolConformance") ;
helper def : ConnectorGuard(invar : UML2!"uml::Connector") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Connector") ;
helper def : ExtensionGuard(invar : UML2!"uml::Extension") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Extension") ;
helper def : ExtensionEndGuard(invar : UML2!"uml::ExtensionEnd") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExtensionEnd") ;
helper def : StereotypeGuard(invar : UML2!"uml::Stereotype") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Stereotype") ;
helper def : ImageGuard(invar : UML2!"uml::Image") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Image") ;
helper def : ProfileGuard(invar : UML2!"uml::Profile") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Profile") ;
helper def : ModelGuard(invar : UML2!"uml::Model") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Model") ;
helper def : ParameterSetGuard(invar : UML2!"uml::ParameterSet") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ParameterSet") ;
helper def : DataTypeGuard(invar : UML2!"uml::DataType") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DataType") ;
helper def : OperationTemplateParameterGuard(invar : UML2!"uml::OperationTemplateParameter") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OperationTemplateParameter") ;
helper def : CollaborationUseGuard(invar : UML2!"uml::CollaborationUse") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CollaborationUse") ;
helper def : CollaborationGuard(invar : UML2!"uml::Collaboration") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Collaboration") ;
helper def : UseCaseGuard(invar : UML2!"uml::UseCase") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::UseCase") ;
helper def : IncludeGuard(invar : UML2!"uml::Include") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Include") ;
helper def : ExtendGuard(invar : UML2!"uml::Extend") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Extend") ;
helper def : ExtensionPointGuard(invar : UML2!"uml::ExtensionPoint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExtensionPoint") ;
helper def : RedefinableTemplateSignatureGuard(invar : UML2!"uml::RedefinableTemplateSignature") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::RedefinableTemplateSignature") ;
helper def : ClassifierTemplateParameterGuard(invar : UML2!"uml::ClassifierTemplateParameter") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ClassifierTemplateParameter") ;
helper def : StringExpressionGuard(invar : UML2!"uml::StringExpression") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::StringExpression") ;
helper def : ExpressionGuard(invar : UML2!"uml::Expression") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Expression") ;
helper def : UsageGuard(invar : UML2!"uml::Usage") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Usage") ;
helper def : PackageMergeGuard(invar : UML2!"uml::PackageMerge") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::PackageMerge") ;
helper def : ProfileApplicationGuard(invar : UML2!"uml::ProfileApplication") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ProfileApplication") ;
helper def : EnumerationGuard(invar : UML2!"uml::Enumeration") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Enumeration") ;
helper def : EnumerationLiteralGuard(invar : UML2!"uml::EnumerationLiteral") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::EnumerationLiteral") ;
helper def : InstanceSpecificationGuard(invar : UML2!"uml::InstanceSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InstanceSpecification") ;
helper def : SlotGuard(invar : UML2!"uml::Slot") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Slot") ;
helper def : PrimitiveTypeGuard(invar : UML2!"uml::PrimitiveType") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::PrimitiveType") ;
helper def : LiteralIntegerGuard(invar : UML2!"uml::LiteralInteger") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LiteralInteger") ;
helper def : LiteralStringGuard(invar : UML2!"uml::LiteralString") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LiteralString") ;
helper def : LiteralBooleanGuard(invar : UML2!"uml::LiteralBoolean") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LiteralBoolean") ;
helper def : LiteralNullGuard(invar : UML2!"uml::LiteralNull") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LiteralNull") ;
helper def : InstanceValueGuard(invar : UML2!"uml::InstanceValue") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InstanceValue") ;
helper def : LiteralUnlimitedNaturalGuard(invar : UML2!"uml::LiteralUnlimitedNatural") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LiteralUnlimitedNatural") ;
helper def : OpaqueBehaviorGuard(invar : UML2!"uml::OpaqueBehavior") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OpaqueBehavior") ;
helper def : FunctionBehaviorGuard(invar : UML2!"uml::FunctionBehavior") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::FunctionBehavior") ;
helper def : OpaqueActionGuard(invar : UML2!"uml::OpaqueAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OpaqueAction") ;
helper def : StructuredActivityNodeGuard(invar : UML2!"uml::StructuredActivityNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::StructuredActivityNode") ;
helper def : ActivityGuard(invar : UML2!"uml::Activity") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Activity") ;
helper def : VariableGuard(invar : UML2!"uml::Variable") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Variable") ;
helper def : ActivityPartitionGuard(invar : UML2!"uml::ActivityPartition") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ActivityPartition") ;
helper def : InterruptibleActivityRegionGuard(invar : UML2!"uml::InterruptibleActivityRegion") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InterruptibleActivityRegion") ;
helper def : ExceptionHandlerGuard(invar : UML2!"uml::ExceptionHandler") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExceptionHandler") ;
helper def : OutputPinGuard(invar : UML2!"uml::OutputPin") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OutputPin") ;
helper def : PinGuard(invar : UML2!"uml::Pin") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Pin") ;
helper def : InputPinGuard(invar : UML2!"uml::InputPin") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InputPin") ;
helper def : SendSignalActionGuard(invar : UML2!"uml::SendSignalAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SendSignalAction") ;
helper def : CallOperationActionGuard(invar : UML2!"uml::CallOperationAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CallOperationAction") ;
helper def : CallBehaviorActionGuard(invar : UML2!"uml::CallBehaviorAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CallBehaviorAction") ;
helper def : SequenceNodeGuard(invar : UML2!"uml::SequenceNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SequenceNode") ;
helper def : ControlFlowGuard(invar : UML2!"uml::ControlFlow") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ControlFlow") ;
helper def : InitialNodeGuard(invar : UML2!"uml::InitialNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InitialNode") ;
helper def : ActivityParameterNodeGuard(invar : UML2!"uml::ActivityParameterNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ActivityParameterNode") ;
helper def : ValuePinGuard(invar : UML2!"uml::ValuePin") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ValuePin") ;
helper def : MessageGuard(invar : UML2!"uml::Message") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Message") ;
helper def : InteractionGuard(invar : UML2!"uml::Interaction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Interaction") ;
helper def : LifelineGuard(invar : UML2!"uml::Lifeline") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Lifeline") ;
helper def : PartDecompositionGuard(invar : UML2!"uml::PartDecomposition") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::PartDecomposition") ;
helper def : InteractionUseGuard(invar : UML2!"uml::InteractionUse") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InteractionUse") ;
helper def : GateGuard(invar : UML2!"uml::Gate") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Gate") ;
helper def : GeneralOrderingGuard(invar : UML2!"uml::GeneralOrdering") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::GeneralOrdering") ;
helper def : OccurrenceSpecificationGuard(invar : UML2!"uml::OccurrenceSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::OccurrenceSpecification") ;
helper def : InteractionOperandGuard(invar : UML2!"uml::InteractionOperand") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InteractionOperand") ;
helper def : InteractionConstraintGuard(invar : UML2!"uml::InteractionConstraint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InteractionConstraint") ;
helper def : StateInvariantGuard(invar : UML2!"uml::StateInvariant") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::StateInvariant") ;
helper def : ActionExecutionSpecificationGuard(invar : UML2!"uml::ActionExecutionSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ActionExecutionSpecification") ;
helper def : BehaviorExecutionSpecificationGuard(invar : UML2!"uml::BehaviorExecutionSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::BehaviorExecutionSpecification ") ;
helper def : ExecutionEventGuard(invar : UML2!"uml::ExecutionEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExecutionEvent") ;
helper def : CreationEventGuard(invar : UML2!"uml::CreationEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CreationEvent") ;
helper def : DestructionEventGuard(invar : UML2!"uml::DestructionEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DestructionEvent") ;
helper def : SendOperationEventGuard(invar : UML2!"uml::SendOperationEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SendOperationEvent") ;
helper def : SendSignalEventGuard(invar : UML2!"uml::SendSignalEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SendSignalEvent") ;
helper def : MessageOccurrenceSpecificationGuard(invar : UML2!"uml::MessageOccurrenceSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::MessageOccurrenceSpecification ") ;
helper def : ExecutionOccurrenceSpecificationGuard(invar : UML2!"uml::ExecutionOccurrenceSpecification") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExecutionOccurrenceSpecification ") ;
helper def : ReceiveOperationEventGuard(invar : UML2!"uml::ReceiveOperationEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReceiveOperationEvent") ;
helper def : ReceiveSignalEventGuard(invar : UML2!"uml::ReceiveSignalEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReceiveSignalEvent") ;
helper def : ActorGuard(invar : UML2!"uml::Actor") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Actor") ;
helper def : CallEventGuard(invar : UML2!"uml::CallEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CallEvent") ;
helper def : ChangeEventGuard(invar : UML2!"uml::ChangeEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ChangeEvent") ;
helper def : SignalEventGuard(invar : UML2!"uml::SignalEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SignalEvent") ;
helper def : AnyReceiveEventGuard(invar : UML2!"uml::AnyReceiveEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AnyReceiveEvent") ;
helper def : ForkNodeGuard(invar : UML2!"uml::ForkNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ForkNode") ;
helper def : FlowFinalNodeGuard(invar : UML2!"uml::FlowFinalNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::FlowFinalNode") ;
helper def : CentralBufferNodeGuard(invar : UML2!"uml::CentralBufferNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CentralBufferNode") ;
helper def : MergeNodeGuard(invar : UML2!"uml::MergeNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::MergeNode") ;
helper def : DecisionNodeGuard(invar : UML2!"uml::DecisionNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DecisionNode") ;
helper def : ActivityFinalNodeGuard(invar : UML2!"uml::ActivityFinalNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ActivityFinalNode") ;
helper def : ComponentRealizationGuard(invar : UML2!"uml::ComponentRealization") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ComponentRealization") ;
helper def : ComponentGuard(invar : UML2!"uml::Component") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Component") ;
helper def : NodeGuard(invar : UML2!"uml::Node") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Node") ;
helper def : DeviceGuard(invar : UML2!"uml::Device") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Device") ;
helper def : ExecutionEnvironmentGuard(invar : UML2!"uml::ExecutionEnvironment") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExecutionEnvironment") ;
helper def : CommunicationPathGuard(invar : UML2!"uml::CommunicationPath") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CommunicationPath") ;
helper def : CombinedFragmentGuard(invar : UML2!"uml::CombinedFragment") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CombinedFragment") ;
helper def : ContinuationGuard(invar : UML2!"uml::Continuation") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Continuation") ;
helper def : ConsiderIgnoreFragmentGuard(invar : UML2!"uml::ConsiderIgnoreFragment") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ConsiderIgnoreFragment") ;
helper def : CreateObjectActionGuard(invar : UML2!"uml::CreateObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CreateObjectAction") ;
helper def : DestroyObjectActionGuard(invar : UML2!"uml::DestroyObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DestroyObjectAction") ;
helper def : TestIdentityActionGuard(invar : UML2!"uml::TestIdentityAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TestIdentityAction") ;
helper def : ReadSelfActionGuard(invar : UML2!"uml::ReadSelfAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadSelfAction") ;
helper def : ReadStructuralFeatureActionGuard(invar : UML2!"uml::ReadStructuralFeatureAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadStructuralFeatureAction") ;
helper def : ClearStructuralFeatureActionGuard(invar : UML2!"uml::ClearStructuralFeatureAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ClearStructuralFeatureAction") ;
helper def : RemoveStructuralFeatureValueActionGuard(invar : UML2!"uml::RemoveStructuralFeatureValueAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::RemoveStructuralFeatureValueAction ") ;
helper def : AddStructuralFeatureValueActionGuard(invar : UML2!"uml::AddStructuralFeatureValueAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AddStructuralFeatureValueAction ") ;
helper def : LinkEndDataGuard(invar : UML2!"uml::LinkEndData") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LinkEndData") ;
helper def : QualifierValueGuard(invar : UML2!"uml::QualifierValue") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::QualifierValue") ;
helper def : ReadLinkActionGuard(invar : UML2!"uml::ReadLinkAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadLinkAction") ;
helper def : LinkEndCreationDataGuard(invar : UML2!"uml::LinkEndCreationData") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LinkEndCreationData") ;
helper def : CreateLinkActionGuard(invar : UML2!"uml::CreateLinkAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CreateLinkAction") ;
helper def : DestroyLinkActionGuard(invar : UML2!"uml::DestroyLinkAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DestroyLinkAction") ;
helper def : LinkEndDestructionDataGuard(invar : UML2!"uml::LinkEndDestructionData") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LinkEndDestructionData") ;
helper def : ClearAssociationActionGuard(invar : UML2!"uml::ClearAssociationAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ClearAssociationAction") ;
helper def : BroadcastSignalActionGuard(invar : UML2!"uml::BroadcastSignalAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::BroadcastSignalAction") ;
helper def : SendObjectActionGuard(invar : UML2!"uml::SendObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::SendObjectAction") ;
helper def : ValueSpecificationActionGuard(invar : UML2!"uml::ValueSpecificationAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ValueSpecificationAction") ;
helper def : TimeExpressionGuard(invar : UML2!"uml::TimeExpression") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TimeExpression") ;
helper def : DurationGuard(invar : UML2!"uml::Duration") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Duration") ;
helper def : DurationIntervalGuard(invar : UML2!"uml::DurationInterval") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DurationInterval") ;
helper def : IntervalGuard(invar : UML2!"uml::Interval") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Interval") ;
helper def : TimeConstraintGuard(invar : UML2!"uml::TimeConstraint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TimeConstraint") ;
helper def : IntervalConstraintGuard(invar : UML2!"uml::IntervalConstraint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::IntervalConstraint") ;
helper def : TimeIntervalGuard(invar : UML2!"uml::TimeInterval") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TimeInterval") ;
helper def : DurationConstraintGuard(invar : UML2!"uml::DurationConstraint") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DurationConstraint") ;
helper def : TimeObservationGuard(invar : UML2!"uml::TimeObservation") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TimeObservation") ;
helper def : DurationObservationGuard(invar : UML2!"uml::DurationObservation") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DurationObservation") ;
helper def : FinalStateGuard(invar : UML2!"uml::FinalState") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::FinalState") ;
helper def : TimeEventGuard(invar : UML2!"uml::TimeEvent") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::TimeEvent") ;
helper def : ReadVariableActionGuard(invar : UML2!"uml::ReadVariableAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadVariableAction") ;
helper def : ClearVariableActionGuard(invar : UML2!"uml::ClearVariableAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ClearVariableAction") ;
helper def : AddVariableValueActionGuard(invar : UML2!"uml::AddVariableValueAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AddVariableValueAction") ;
helper def : RemoveVariableValueActionGuard(invar : UML2!"uml::RemoveVariableValueAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::RemoveVariableValueAction") ;
helper def : RaiseExceptionActionGuard(invar : UML2!"uml::RaiseExceptionAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::RaiseExceptionAction") ;
helper def : ActionInputPinGuard(invar : UML2!"uml::ActionInputPin") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ActionInputPin") ;
helper def : InformationItemGuard(invar : UML2!"uml::InformationItem") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InformationItem") ;
helper def : InformationFlowGuard(invar : UML2!"uml::InformationFlow") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::InformationFlow") ;
helper def : ReadExtentActionGuard(invar : UML2!"uml::ReadExtentAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadExtentAction") ;
helper def : ReclassifyObjectActionGuard(invar : UML2!"uml::ReclassifyObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReclassifyObjectAction") ;
helper def : ReadIsClassifiedObjectActionGuard(invar : UML2!"uml::ReadIsClassifiedObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadIsClassifiedObjectAction") ;
helper def : StartClassifierBehaviorActionGuard(invar : UML2!"uml::StartClassifierBehaviorAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::StartClassifierBehaviorAction") ;
helper def : ReadLinkObjectEndActionGuard(invar : UML2!"uml::ReadLinkObjectEndAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadLinkObjectEndAction") ;
helper def : ReadLinkObjectEndQualifierActionGuard(invar : UML2!"uml::ReadLinkObjectEndQualifierAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReadLinkObjectEndQualifierAction ") ;
helper def : CreateLinkObjectActionGuard(invar : UML2!"uml::CreateLinkObjectAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::CreateLinkObjectAction") ;
helper def : AcceptEventActionGuard(invar : UML2!"uml::AcceptEventAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AcceptEventAction") ;
helper def : AcceptCallActionGuard(invar : UML2!"uml::AcceptCallAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AcceptCallAction") ;
helper def : ReplyActionGuard(invar : UML2!"uml::ReplyAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReplyAction") ;
helper def : UnmarshallActionGuard(invar : UML2!"uml::UnmarshallAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::UnmarshallAction") ;
helper def : ReduceActionGuard(invar : UML2!"uml::ReduceAction") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ReduceAction") ;
helper def : JoinNodeGuard(invar : UML2!"uml::JoinNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::JoinNode") ;
helper def : DataStoreNodeGuard(invar : UML2!"uml::DataStoreNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::DataStoreNode") ;
helper def : ObjectFlowGuard(invar : UML2!"uml::ObjectFlow") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ObjectFlow") ;
helper def : ConditionalNodeGuard(invar : UML2!"uml::ConditionalNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ConditionalNode") ;
helper def : ClauseGuard(invar : UML2!"uml::Clause") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::Clause") ;
helper def : LoopNodeGuard(invar : UML2!"uml::LoopNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::LoopNode") ;
helper def : ExpansionNodeGuard(invar : UML2!"uml::ExpansionNode") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExpansionNode") ;
helper def : ExpansionRegionGuard(invar : UML2!"uml::ExpansionRegion") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ExpansionRegion") ;
helper def : ProtocolTransitionGuard(invar : UML2!"uml::ProtocolTransition") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::ProtocolTransition") ;
helper def : AssociationClassGuard(invar : UML2!"uml::AssociationClass") : Boolean = thisModule.isIncluded(invar) and
invar.oclIsTypeOf(UML2!"uml::AssociationClass") ;
rule copyStereoType(invar : UML2!"uml::Element",outvar : UML2!"uml::Element"){
do{
--invar.getAppliedStereotypes().debug('applied stereotypes');
for(st in invar.getAppliedStereotypes()){
-- st.getName().debug('stereotype working on');
outvar.applyStereotype(st);
for (a in st.getAllAttributes()){
-- a.debug('attribute :');
-- invar.getValue(st,a.name).debug('value for '+a.name);
if(not invar.getValue(st,a.name).oclIsUndefined()){
if ( not a.name.startsWith('base_') ){
outvar.setValue(st,a.name, invar.getValue(st,a.name) );
}
}else{
if(a.name='tableName'){
outvar.setValue(st,a.name, invar.name.toLower() );
}
}
}
}
}--do
}
endpoint rule endpointRule() {
do {
}
}
entrypoint rule entrypointRule() {
do {
}
}
rule CommentRule {
from invar : UML2!"uml::Comment" (thisModule.CommentGuard(invar))
to Commentvar : UML2!Comment (
body <- invar.body,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
annotatedElement <- invar.annotatedElement
)
do {
--invar.debug('CommentRule');
}
}
rule PackageRule {
from invar : UML2!"uml::Package" (thisModule.PackageGuard(invar))
to Packagevar : UML2!Package (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
elementImport <- invar.elementImport,
packageImport <- invar.packageImport,
ownedRule <- invar.ownedRule,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
templateBinding <- invar.templateBinding,
ownedTemplateSignature <- invar.ownedTemplateSignature,
ownedType <- invar.ownedType,
packageMerge <- invar.packageMerge,
packagedElement <- invar.packagedElement,
-- nestedPackage <- invar.nestedPackage,
nestingPackage <- invar.nestingPackage,
profileApplication <- invar.profileApplication
)
do {
invar.debug('PackageRule');
}
}
rule DependencyRule {
from invar : UML2!"uml::Dependency" (thisModule.DependencyGuard(invar))
to Dependencyvar : UML2!Dependency (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
supplier <- invar.supplier,
client <- invar.client
)
do {
thisModule.copyStereoType(invar,Dependencyvar);
invar.debug('DependencyRule');
}
}
rule ElementImportRule {
from invar : UML2!"uml::ElementImport" (thisModule.ElementImportGuard(invar))
to ElementImportvar : UML2!ElementImport (
visibility <- invar.visibility,
alias <- invar.alias,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
importedElement <- invar.importedElement,
importingNamespace <- invar.importingNamespace
)
do {
thisModule.copyStereoType(invar,ElementImportvar);
invar.debug('ElementImportRule');
}
}
rule PackageImportRule {
from invar : UML2!"uml::PackageImport" (thisModule.PackageImportGuard(invar))
to PackageImportvar : UML2!PackageImport (
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
importedPackage <- invar.importedPackage,
importingNamespace <- invar.importingNamespace
)
do {
thisModule.copyStereoType(invar,PackageImportvar);
invar.debug('PackageImportRule');
}
}
rule ConstraintRule {
from invar : UML2!"uml::Constraint" (thisModule.ConstraintGuard(invar))
to Constraintvar : UML2!Constraint (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
constrainedElement <- invar.constrainedElement,
specification <- invar.specification,
"context" <- invar."context"
)
do {
thisModule.copyStereoType(invar,Constraintvar);
invar.debug('ConstraintRule');
}
}
rule AssociationRule {
from invar : UML2!"uml::Association" (thisModule.AssociationGuard(invar))
to Associationvar : UML2!Association (
name <- invar.name,
visibility <- invar.visibility,
isLeaf <- invar.isLeaf,
isAbstract <- invar.isAbstract,
isDerived <- invar.isDerived,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
elementImport <- invar.elementImport,
packageImport <- invar.packageImport,
ownedRule <- invar.ownedRule,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
package <- invar.package,
templateBinding <- invar.templateBinding,
ownedTemplateSignature <- invar.ownedTemplateSignature,
generalization <- invar.generalization,
powertypeExtent <- invar.powertypeExtent,
redefinedClassifier <- invar.redefinedClassifier,
general <- invar.general,
substitution <- invar.substitution,
representation <- invar.representation,
collaborationUse <- invar.collaborationUse,
ownedUseCase <- invar.ownedUseCase,
useCase <- invar.useCase,
ownedEnd <- invar.ownedEnd,
memberEnd <- invar.memberEnd,
navigableOwnedEnd <- invar.navigableOwnedEnd
)
do {
thisModule.copyStereoType(invar,Associationvar);
invar.debug('AssociationRule');
}
}
rule TemplateBindingRule {
from invar : UML2!"uml::TemplateBinding" (thisModule.TemplateBindingGuard(invar))
to TemplateBindingvar : UML2!TemplateBinding (
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
signature <- invar.signature,
parameterSubstitution <- invar.parameterSubstitution,
boundElement <- invar.boundElement
)
do {
thisModule.copyStereoType(invar,TemplateBindingvar);
invar.debug('TemplateBindingRule');
}
}
rule TemplateSignatureRule {
from invar : UML2!"uml::TemplateSignature" (thisModule.TemplateSignatureGuard(invar))
to TemplateSignaturevar : UML2!TemplateSignature (
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
parameter <- invar.parameter,
ownedParameter <- invar.ownedParameter,
template <- invar.template
)
do {
thisModule.copyStereoType(invar,TemplateSignaturevar);
invar.debug('TemplateSignatureRule');
}
}
rule TemplateParameterRule {
from invar : UML2!"uml::TemplateParameter" (thisModule.TemplateParameterGuard(invar))
to TemplateParametervar : UML2!TemplateParameter (
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
signature <- invar.signature,
parameteredElement <- invar.parameteredElement,
ownedParameteredElement <- invar.ownedParameteredElement,
default <- invar.default,
ownedDefault <- invar.ownedDefault
)
do {
thisModule.copyStereoType(invar,TemplateParametervar);
invar.debug('TemplateParameterRule');
}
}
rule TemplateParameterSubstitutionRule {
from invar : UML2!"uml::TemplateParameterSubstitution" (thisModule.TemplateParameterSubstitutionGuard(invar))
to TemplateParameterSubstitutionvar : UML2!TemplateParameterSubstitution (
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
formal <- invar.formal,
actual <- invar.actual,
ownedActual <- invar.ownedActual,
templateBinding <- invar.templateBinding
)
do {
thisModule.copyStereoType(invar,TemplateParameterSubstitutio nvar);
invar.debug('TemplateParameterSubstitutionRule');
}
}
rule GeneralizationRule {
from invar : UML2!"uml::Generalization" (thisModule.GeneralizationGuard(invar))
to Generalizationvar : UML2!Generalization (
isSubstitutable <- invar.isSubstitutable,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
general <- invar.general,
generalizationSet <- invar.generalizationSet,
specific <- invar.specific
)
do {
thisModule.copyStereoType(invar,Generalizationvar);
invar.debug('GeneralizationRule');
}
}
rule GeneralizationSetRule {
from invar : UML2!"uml::GeneralizationSet" (thisModule.GeneralizationSetGuard(invar))
to GeneralizationSetvar : UML2!GeneralizationSet (
name <- invar.name,
visibility <- invar.visibility,
isCovering <- invar.isCovering,
isDisjoint <- invar.isDisjoint,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
powertype <- invar.powertype,
generalization <- invar.generalization
)
do {
thisModule.copyStereoType(invar,GeneralizationSetvar);
invar.debug('GeneralizationSetRule');
}
}
rule SubstitutionRule {
from invar : UML2!"uml::Substitution" (thisModule.SubstitutionGuard(invar))
to Substitutionvar : UML2!Substitution (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
supplier <- invar.supplier,
client <- invar.client,
mapping <- invar.mapping,
contract <- invar.contract,
substitutingClassifier <- invar.substitutingClassifier
)
do {
thisModule.copyStereoType(invar,Substitutionvar);
invar.debug('SubstitutionRule');
}
}
rule RealizationRule {
from invar : UML2!"uml::Realization" (thisModule.RealizationGuard(invar))
to Realizationvar : UML2!Realization (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
supplier <- invar.supplier,
client <- invar.client,
mapping <- invar.mapping
)
do {
thisModule.copyStereoType(invar,Realizationvar);
invar.debug('RealizationRule');
}
}
rule AbstractionRule {
from invar : UML2!"uml::Abstraction" (thisModule.AbstractionGuard(invar))
to Abstractionvar : UML2!Abstraction (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
supplier <- invar.supplier,
client <- invar.client,
mapping <- invar.mapping
)
do {
thisModule.copyStereoType(invar,Abstractionvar);
invar.debug('AbstractionRule');
}
}
rule OpaqueExpressionRule {
from invar : UML2!"uml::OpaqueExpression" (thisModule.OpaqueExpressionGuard(invar))
to OpaqueExpressionvar : UML2!OpaqueExpression (
name <- invar.name,
visibility <- invar.visibility,
body <- invar.body,
language <- invar.language,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
type <- invar.type,
behavior <- invar.behavior
)
do {
thisModule.copyStereoType(invar,OpaqueExpressionvar);
invar.debug('OpaqueExpressionRule');
}
}
rule ParameterRule {
from invar : UML2!"uml::Parameter" (thisModule.ParameterGuard(invar))
to Parametervar : UML2!Parameter (
name <- invar.name,
visibility <- invar.visibility,
isOrdered <- invar.isOrdered,
isUnique <- invar.isUnique,
upper <- invar.upper,
lower <- invar.lower,
direction <- invar.direction,
default <- invar.default,
isException <- invar.isException,
isStream <- invar.isStream,
effect <- invar.effect,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
type <- invar.type,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
end <- invar.end,
upperValue <- invar.upperValue,
lowerValue <- invar.lowerValue,
parameterSet <- invar.parameterSet,
defaultValue <- invar.defaultValue
)
do {
thisModule.copyStereoType(invar,Parametervar);
invar.debug('ParameterRule');
}
}
rule ConnectableElementTemplateParameterRule {
from invar : UML2!"uml::ConnectableElementTemplateParameter" (thisModule.ConnectableElementTemplateParameterGuard(invar))
to ConnectableElementTemplateParametervar : UML2!ConnectableElementTemplateParameter (
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
signature <- invar.signature,
parameteredElement <- invar.parameteredElement,
ownedParameteredElement <- invar.ownedParameteredElement,
default <- invar.default,
ownedDefault <- invar.ownedDefault
)
do {
thisModule.copyStereoType(invar,ConnectableElementTemplatePa rametervar);
invar.debug('ConnectableElementTemplateParameterRule');
}
}
rule ConnectorEndRule {
from invar : UML2!"uml::ConnectorEnd" (thisModule.ConnectorEndGuard(invar))
to ConnectorEndvar : UML2!ConnectorEnd (
isOrdered <- invar.isOrdered,
isUnique <- invar.isUnique,
upper <- invar.upper,
lower <- invar.lower,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
upperValue <- invar.upperValue,
lowerValue <- invar.lowerValue,
partWithPort <- invar.partWithPort,
role <- invar.role
)
do {
thisModule.copyStereoType(invar,ConnectorEndvar);
invar.debug('ConnectorEndRule');
}
}
rule PropertyRule {
from invar : UML2!"uml::Property" (thisModule.PropertyGuard(invar))
to Propertyvar : UML2!Property (
name <- invar.name,
visibility <- invar.visibility,
isLeaf <- invar.isLeaf,
isStatic <- invar.isStatic,
isOrdered <- invar.isOrdered,
isUnique <- invar.isUnique,
upper <- invar.upper,
lower <- invar.lower,
isReadOnly <- invar.isReadOnly,
isDerived <- invar.isDerived,
isDerivedUnion <- invar.isDerivedUnion,
default <- invar.default,
aggregation <- invar.aggregation,
isComposite <- invar.isComposite,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
type <- invar.type,
upperValue <- invar.upperValue,
lowerValue <- invar.lowerValue,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
end <- invar.end,
deployment <- invar.deployment,
templateBinding <- invar.templateBinding,
ownedTemplateSignature <- invar.ownedTemplateSignature,
datatype <-invar.datatype,
redefinedProperty <- invar.redefinedProperty,
owningAssociation <- invar.owningAssociation,
defaultValue <- invar.defaultValue,
--opposite <- invar.opposite,
subsettedProperty <- invar.subsettedProperty,
association <- invar.association,
qualifier <- invar.qualifier,
associationEnd <- invar.associationEnd
)
do {
thisModule.copyStereoType(invar,Propertyvar);
invar.debug('PropertyRule');
}
}
rule DeploymentRule {
from invar : UML2!"uml::Deployment" (thisModule.DeploymentGuard(invar))
to Deploymentvar : UML2!Deployment (
name <- invar.name,
visibility <- invar.visibility,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
supplier <- invar.supplier,
client <- invar.client,
deployedArtifact <- invar.deployedArtifact,
configuration <- invar.configuration,
location <- invar.location
)
do {
thisModule.copyStereoType(invar,Deploymentvar);
invar.debug('DeploymentRule');
}
}
rule DeploymentSpecificationRule {
from invar : UML2!"uml::DeploymentSpecification" (thisModule.DeploymentSpecificationGuard(invar))
to DeploymentSpecificationvar : UML2!DeploymentSpecification (
name <- invar.name,
visibility <- invar.visibility,
isLeaf <- invar.isLeaf,
isAbstract <- invar.isAbstract,
fileName <- invar.fileName,
deploymentLocation <- invar.deploymentLocation,
executionLocation <- invar.executionLocation,
eAnnotations <- invar.eAnnotations,
ownedComment <- invar.ownedComment,
clientDependency <- invar.clientDependency,
nameExpression <- invar.nameExpression,
elementImport <- invar.elementImport,
packageImport <- invar.packageImport,
ownedRule <- invar.ownedRule,
owningTemplateParameter <- invar.owningTemplateParameter,
templateParameter <- invar.templateParameter,
package <- invar.package,
templateBinding <- invar.templateBinding,
ownedTemplateSignature <- invar.ownedTemplateSignature,
generalization <- invar.generalization,
powertypeExtent <- invar.powertypeExtent,
redefinedClassifier <- invar.redefinedClassifier,
general <- invar.general,
substitution <- invar.substitution,
representation <- invar.representation,
collaborationUse <- invar.collaborationUse,
ownedUseCase <- invar.ownedUseCase,
useCase <- invar.useCase,
nestedArtifact <- invar.nestedArtifact,
manifestation <- invar.manifestation,
ownedOperation <- invar.ownedOperation,
ownedAttribute <- invar.ownedAttribute,
deployment <- invar.deployment
)
do {
thisModule.copyStereoType(invar,DeploymentSpecificationvar);
invar.debug('DeploymentSpecificationRule');
}
}
rul
|
|
|
Re: Reapplying a profile after its has be re-defined [message #625895 is a reply to message #476775] |
Sat, 12 January 2008 09:35  |
Eclipse User |
|
|
|
Kenn,
>
> To update applied stereotypes to a new definition of a profile, simply
> reapply the profile; tag values will be automatically be migrated on a
> best-effort basis.
Ok, how does one "Re-apply" the profile? (I cant see any menu item for
reapply, only unapply an apply) Do I have to make my own menu?
thanks for any help.
/anders
|
|
|
Re: Reapplying a profile after its has be re-defined [message #625897 is a reply to message #476847] |
Mon, 14 January 2008 09:52  |
Eclipse User |
|
|
|
Anders,
Just apply it again using the same menu item you used when you first applied
it...
Kenn
"Anders W.Tell" <opensource@toolsmiths.se> wrote in message
news:fmaj6q$r6b$1@build.eclipse.org...
> Kenn,
>>
>> To update applied stereotypes to a new definition of a profile, simply
>> reapply the profile; tag values will be automatically be migrated on a
>> best-effort basis.
>
> Ok, how does one "Re-apply" the profile? (I cant see any menu item for
> reapply, only unapply an apply) Do I have to make my own menu?
>
>
>
> thanks for any help.
>
> /anders
|
|
|
Goto Forum:
Current Time: Sun Jul 06 09:34:30 EDT 2025
Powered by FUDForum. Page generated in 0.11130 seconds
|