Representation of Model Elements

Model versions can be edited in the Stardust Process Workbench. An administrator or previously defined modeler can create, modify or delete model versions.

Model Element Identifiers

Persistent model elements have IDs and OIDs as unique object identifiers so that they can be accessed and referenced through these identifiers. The ID of a model element is exposed to the user in the Stardust Process Workbench, whereas the OID is not.

OID

The element's internal object identifier (OID) identifies objects located anywhere in the context of Stardust . An OID is 32 bits long and is globally unique inside a model. OIDs are not visible in Stardust 's GUI, but they are included in the XML-export files that can be generated using the Stardust Process Workbench.

ID

An ID of a model element is an arbitrary string, assigned to the element by the modeler. The element's ID must be unique within its scope. A model itself also has an ID which will be the same for different versions of the same model and allows comparisons of such versions.

IDs are used to refer to elements of a process model (e.g. a process) while using the programming API of Stardust (see chapter Embedded Usage in the Programming Guide).

ID Restrictions

The valid characters used for IDs or OIDs are restricted for the following model elements:

Valid characters for IDs of these elements are letters ([a...z][A...Z]), numeric characters [0...9], dollar signs ($) and underscores (_).

In case you try to enter an invalid ID for data types or access points, a warning indicates that the identifier is not valid. The data type or access point can be used, but problems will occur when using JavaScript.

Warning Dialog
Figure: Warning indicating an invalid ID.

In case you try to enter an invalid ID for a structured data type definition, an error indicates that the ID is not a valid identifier and you have to change it before applying is possible.

Warning Dialog 2
Figure: Error indicating an invalid ID.

For invalid characters, an underscore is created. Blanks are removed.

Name

A name of a model element is an arbitrary string, assigned to the element by the modeler. In general, no restrictions are imposed on characters used, any printable characters and blanks can be used in the name. There is an exception in case you use non-ASCII characters. If you use non-ASCII characters in model element names, you have to add the property carnot.engine.xml.encoding to your carnot.properties file and set it to UTF-8:

carnot.engine.xml.encoding=UTF-8

Name Scopes

Each element's ID has to be unique within a particular scope. Except from activities, all model elements are valid within the model scope. This means, if you create a role named VP Marketing it will be visible in the entire model. It also implies that the ID of each role must be unique within a model.

Activities must be identified by IDs unique only within the scope of the process they belong to. Different activities described by the same name and ID can be used in different processes.