ConditionalControlLogic

Fully qualified class name: DDICDIModels::DDICDILibrary::Classes::Process::ConditionalControlLogic

Definition

A set of decision points which determine the flow between the steps used to perform an activity.

Examples

Loop, IfThenElse, RepeatWhile, etc.

Diagram

Inheritance
    ᐊ── Process::ConditionalControlLogic
Attributes

Name

Inherited from

Description

Data Type

Multiplicity

Default value

condition

- own class -

A condition associated with the construct property of the ConditionalControlLogic. It is a logical expression which can be evaluated as either true or false to determine the specific execution of the associated construct.

CommandCode

1..1

construct

- own class -

controlConstruct is an enumeration of type ControlConstructType. The enumeration consists of IfThen, Else, Loop, RepeatUntil and RepeatWhile.

ControlConstruct

1..1

description

Process::ControlLogic

A description of the control logic in human-readable language.

String

0..1

displayLabel

Process::ControlLogic

A human-readable display label for the object. Supports the use of multiple languages. Repeat for labels with different content, for example, labels with differing length limitations.

LabelForDisplay

0..*

identifier

Process::ControlLogic

Identifier for objects requiring short- or long-lasting referencing and management.

Identifier

0..1

name

Process::ControlLogic

Human understandable name (linguistic signifier, word, phrase, or mnemonic). May follow ISO/IEC 11179-5 naming principles, and have context provided to specify usage.

ObjectName

0..*

workflow

Process::ControlLogic

Reference to the system or standard from which the workflow was taken.

ControlledVocabularyEntry

0..1

Associations

Direction

Association

Description

Multiplicity of ConditionalControlLogic

Package of Other Class

Other Class

Multiplicity of other class

Aggregation Kind

Inherited from

to

Activity hasInternal ControlLogic

An activity is embedded in the control construct which launches it.

0..*

- own package -

Activity

0..*

none

Process::ControlLogic

from

ControlLogic has InformationFlowDefinition

A control construct has zero or more information flow definitions each of which provides the control construct with zero or more input and output parameters used or produced in the step/sub-step with which it is associated.

0..*

- own package -

InformationFlowDefinition

0..*

shared

Process::ControlLogic

to

ControlLogic hasSubControlLogic ControlLogic

Control logic is a container of control logic which is in turn a container of control logic ad infinitum so that it is able to represent the structure of a program.

0..*

- own package -

ControlLogic

0..1

none

Process::ControlLogic

from

ControlLogic informs ProcessingAgent

Control logic informs a processing agent. The information may be deterministic or non-deterministic.

0..*

- own package -

ProcessingAgent

0..*

none

Process::ControlLogic

from

ControlLogic invokes Activity

Control logic invokes an activity deterministically (either conditionally or unconditionally) or non-derministically (based on temporal constraints or rule-based scheduling).

0..*

- own package -

Activity

1..*

none

Process::ControlLogic

to

Rule hasPrecondition ConditionalControlLogic

The condition part of a rule is associated with conditonal control logic.

0..*

- own package -

Rule

0..*

none

- own class -

Syntax representations / encodings

All syntax representations except the Canonical XMI are provided as reference points for specific implementations, or for use as defaults if sufficient in the form presented.

Fragment for the class ConditionalControlLogic (entire model as XMI)

 1<packagedElement xmlns:StandardProfile="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard"
 2                 xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML"
 3                 xmlns:xmi="http://www.omg.org/spec/XMI/20131001"
 4                 xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic"
 5                 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic"
 6                 xmi:type="uml:Class">
 7   <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-ownedComment"
 8                 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic-ownedComment"
 9                 xmi:type="uml:Comment">
10      <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic"/>
11      <body>Definition 
12============ 
13A set of decision points which determine the flow between the steps used to perform an activity. 
14
15Examples 
16========== 
17Loop, IfThenElse, RepeatWhile, etc.</body>
18   </ownedComment>
19   <name>ConditionalControlLogic</name>
20   <generalization xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-generalization"
21                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic-generalization"
22                   xmi:type="uml:Generalization">
23      <general xmi:idref="DDICDIModels-DDICDILibrary-Classes-Process-DeterministicImperative"/>
24   </generalization>
25   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-condition"
26                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic-condition"
27                   xmi:type="uml:Property">
28      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-condition-ownedComment"
29                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic-condition-ownedComment"
30                    xmi:type="uml:Comment">
31         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-condition"/>
32         <body>A condition associated with the construct property of the ConditionalControlLogic. It is a logical expression which can be evaluated as either true or false to determine the specific execution of the associated  construct.</body>
33      </ownedComment>
34      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-condition-lowerValue"
35                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic-condition-lowerValue"
36                  xmi:type="uml:LiteralInteger">
37         <value>1</value>
38      </lowerValue>
39      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-condition-upperValue"
40                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic-condition-upperValue"
41                  xmi:type="uml:LiteralUnlimitedNatural">
42         <value>1</value>
43      </upperValue>
44      <name>condition</name>
45      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-CommandCode"/>
46   </ownedAttribute>
47   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-construct"
48                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic-construct"
49                   xmi:type="uml:Property">
50      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-construct-ownedComment"
51                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic-construct-ownedComment"
52                    xmi:type="uml:Comment">
53         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-construct"/>
54         <body>controlConstruct is an enumeration of type ControlConstructType. The enumeration consists of IfThen, Else, Loop, RepeatUntil and RepeatWhile.</body>
55      </ownedComment>
56      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-construct-lowerValue"
57                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic-construct-lowerValue"
58                  xmi:type="uml:LiteralInteger">
59         <value>1</value>
60      </lowerValue>
61      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Process-ConditionalControlLogic-construct-upperValue"
62                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ConditionalControlLogic-construct-upperValue"
63                  xmi:type="uml:LiteralUnlimitedNatural">
64         <value>1</value>
65      </upperValue>
66      <name>construct</name>
67      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-Enumerations-ControlConstruct"/>
68   </ownedAttribute>
69</packagedElement>

Fragment for the class ConditionalControlLogic (entire XML Schema)

 1<xs:element name="ConditionalControlLogic"
 2            type="ConditionalControlLogicXsdType"
 3            xml:id="ConditionalControlLogic">
 4  <!-- based on the UML class DDICDIModels::DDICDILibrary::Classes::Process::ConditionalControlLogic -->
 5  <xs:annotation>
 6    <xs:documentation>Definition 
 7          ============ 
 8          A set of decision points which determine the flow between the steps used to perform an activity. 
 9          
10          Examples 
11          ========== 
12          Loop, IfThenElse, RepeatWhile, etc.</xs:documentation>
13  </xs:annotation>
14</xs:element>
15<xs:complexType name="ConditionalControlLogicXsdType"
16                xml:id="ConditionalControlLogicXsdType">
17  <xs:annotation>
18    <xs:documentation>Definition 
19          ============ 
20          A set of decision points which determine the flow between the steps used to perform an activity. 
21          
22          Examples 
23          ========== 
24          Loop, IfThenElse, RepeatWhile, etc.</xs:documentation>
25  </xs:annotation>
26  <xs:complexContent>
27    <xs:extension base="DeterministicImperativeXsdType">
28      <xs:sequence>
29        <xs:element name="condition"
30                    type="CommandCodeXsdType"
31                    minOccurs="1"
32                    maxOccurs="1"
33                    xml:id="ConditionalControlLogic-condition">
34          <xs:annotation>
35            <xs:documentation>A condition associated with the construct property of the ConditionalControlLogic. It is a logical expression which can be evaluated as either true or false to determine the specific execution of the associated  construct.</xs:documentation>
36          </xs:annotation>
37        </xs:element>
38        <xs:element name="construct"
39                    type="ControlConstructXsdType"
40                    minOccurs="1"
41                    maxOccurs="1"
42                    xml:id="ConditionalControlLogic-construct">
43          <xs:annotation>
44            <xs:documentation>controlConstruct is an enumeration of type ControlConstructType. The enumeration consists of IfThen, Else, Loop, RepeatUntil and RepeatWhile.</xs:documentation>
45          </xs:annotation>
46        </xs:element>
47      </xs:sequence>
48    </xs:extension>
49  </xs:complexContent>
50</xs:complexType>

Fragment for the class ConditionalControlLogic (main ontology)

 1# class ConditionalControlLogic
 2# based on the UML class DDICDIModels::DDICDILibrary::Classes::Process::ConditionalControlLogic
 3cdi:ConditionalControlLogic
 4  a rdfs:Class, owl:Class, ucmis:Class;
 5  rdfs:label "ConditionalControlLogic";
 6  rdfs:comment "Definition \n============ \nA set of decision points which determine the flow between the steps used to perform an activity. \n\nExamples \n========== \nLoop, IfThenElse, RepeatWhile, etc."@en;
 7  rdfs:subClassOf cdi:DeterministicImperative;
 8.
 9
10cdi:ConditionalControlLogic-condition
11  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
12  rdfs:label "condition";
13  rdfs:comment "A condition associated with the construct property of the ConditionalControlLogic. It is a logical expression which can be evaluated as either true or false to determine the specific execution of the associated  construct."@en;
14  rdfs:domain cdi:ConditionalControlLogic;
15  rdfs:range cdi:CommandCode;
16.
17
18cdi:ConditionalControlLogic-construct
19  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
20  rdfs:label "construct";
21  rdfs:comment "controlConstruct is an enumeration of type ControlConstructType. The enumeration consists of IfThen, Else, Loop, RepeatUntil and RepeatWhile."@en;
22  rdfs:domain cdi:ConditionalControlLogic;
23  rdfs:range cdi:ControlConstruct;
24.

Fragment for the class ConditionalControlLogic (main JSON-LD)

 1{
 2  "@context": [
 3    "DeterministicImperative.jsonld",
 4    {
 5      "cdi": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/",
 6      "xsd": "http://www.w3.org/2001/XMLSchema#",
 7      "ConditionalControlLogic": "cdi:ConditionalControlLogic",
 8      "condition": {
 9        "@id": "cdi:ConditionalControlLogic-condition",
10        "@type": "@id",
11        "@context": "CommandCode.jsonld"
12      },
13      "construct": {
14        "@id": "cdi:ConditionalControlLogic-construct",
15        "@type": "@vocab",
16        "@context": {
17          "Else": "cdi:Else",
18          "IfThen": "cdi:IfThen",
19          "Loop": "cdi:Loop",
20          "RepeatUntil": "cdi:RepeatUntil",
21          "RepeatWhile": "cdi:RepeatWhile",
22          " comment ": "tag:json-should-support-trailing-commas" 
23        }
24      },
25      
26      "hasPrecondition_OF_Rule": {
27        "@reverse": "cdi:Rule_hasPrecondition_ConditionalControlLogic",
28        "@type": "@id"
29      },
30      " comment ": "tag:json-should-support-trailing-commas" 
31    }
32  ],
33  "generatedBy": "This code was generated by the Eclipse Acceleo project UCMIS M2T on 2024-03-16 23:40:10.",
34  "basedOn": "based on the UML data type DDICDIModels::DDICDILibrary::Classes::Process::ConditionalControlLogic"
35}