|
|||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | ||||||||
See:
Description
| Interface Summary | |
|---|---|
| AssociationIdentifier | An Association Identifier identifies both an Attribute and a Type, i.e. |
| AssociationTypeIdentifier | An Association Type Identifier identifies both a VIRTUAL AttributeType and a Type, i.e. |
| AttributeIdentifier | AttributeIdentifier identifies a particular VIRTUAL Attribute instance. |
| AttributeTypeIdentifier | AttributeTypeIdentifier identifies a particular VIRTUAL AttributeType instance. |
| DataType | Supported API: true Extendable: false |
| Definition | Definitions represent fundamental pieces of meta data, i.e. |
| DefinitionIdentifier | DefinitionIdentifier identifies a particular Definition instance. |
| Element | Elements represent specific instances of meta data, i.e. |
| ElementIdentifier | ElementIdentifier identifies a particular Element instance. |
| Identifier | Identifiers uniquely identify Definitions and/or Elements from the point of view of a given system. |
| IdentifierFactory | This factory defines the pattern for constructing Identifiers. |
| IdentifierTranslator | Supported API: true Extendable: false |
| InstanceIdentifier | InstanceIdentifier gives the identification of a particular object. |
| InstanceIdentifierTranslator | Supported API: true Extendable: false |
| OperationIdentifierConstants | Convenience constants for OperationIdentifiers. |
| Translator | Supported API: true Extendable: false |
| TypeIdentifier | TypeIdentifier identifies a particular Type instance. |
| TypeInstanceIdentifier | TypeInstanceIdentifier identifies a particular TypeInstance instance. |
| Class Summary | |
|---|---|
| AnalogSet | Supported API: true Extendable: false |
| ChangeOperationIdentifier | Operation instance representing a change operation. |
| CompositeSet | Supported API: true Extendable: false |
| CreateOperationIdentifier | Operation instance representing a create operation. |
| DataTypesUtility | Supported API: true Extendable: false |
| DeleteOperationIdentifier | Supported API: true Extendable: false |
| DiscreteSet | Supported API: true Extendable: false |
| DisplayOperationIdentifier | Operation instance representing a VIEW operation. |
| EmptySet | Supported API: true Extendable: false |
| FloatingPoint | Attribute content wrapper for Floating Point. |
| Hyperlink | Attribute content wrapper for HyperLink. |
| OperationIdentifier | OperationIdentifier identifies a particular operation instance. |
| Ratio | Attribute content wrapper for Ratio. |
| SearchOperationIdentifier | Operation instance representing a search operation. |
| UpdateOperationIdentifier | Operation instance representing an update operation. |
| WildcardSet | Supported API: true Extendable: false |
| Exception Summary | |
|---|---|
| ComparisonImpossibleException | Supported API: true Extendable: false |
| IllegalFormatException | Supported API: true Extendable: false |
Defines the interfaces and classes that are used to represent, identify, and describe types, attributes, associations, enumerations, enumeration entries, constraints, and applications. Definitions
Definitions represent specific types, attributes, associations, enumerations, enumeration entries, constraints, or applications. Examples:

Definitions are of a hierarchical nature, and given two Definitions, it is possible to discern whether one Definition is a sub-definition of the other, e.g. Internal Document is a sub-definition of Document; Diameter is a sub-definition of Length; Mass is not a sub-definition of Diameter.
The following names are given to the Definitions:
|
Concept |
Definition Name |
|
Type |
Type |
|
Attribute |
AttributeType |
|
Association |
AssociationType |
|
Enumeration |
Enumeration |
|
Enumeration Entry |
EnumerationEntry |
|
Constraint |
ConstraintType |
|
Application |
ApplicationType |
The following Definitions have familiar parallels:
|
Definition Name |
Object Oriented Programming |
Relational Databases |
|
Type |
Class |
Table |
|
AttributeType |
Primitive field declaration on a Class |
Column in a Table |
|
AssociationType |
Non-primitive field declaration on a Class |
Column of foreign keys in a Table |
Elements
Elements represent specific instances of types, attributes, associations, constraints, or applications. (Enumerations and Enumeration Entries do not have an Element form.) Examples:

Elements are instances of Definitions, and given a Definition and an Element, it is possible to discern whether the Element is and instance of the Definition, e.g. Part 244-XGV is an instance of Part; and Part 244-XGV is not and instance of Document.
Given two Elements that represent the same data, it is possible to discern which of the two is the most accurate or up-to-date (i.e. ‘latest’).
The following names are given to the Elements:
|
Concept |
Element Name |
|
Type |
TypeInstance |
|
Attribute |
Attribute |
|
Association |
Association |
|
Constraint |
Constraint |
|
Application |
Application |
The following Elements have familiar parallels:
|
Element Name |
Object Oriented Programming |
Relational Databases |
|
TypeInstance |
Object |
Row in a Table |
|
Attribute |
Primitive field on a Object |
Cell in a Column in a Table |
|
Association |
Non-primitive field on a Object |
Cell in a Column of Foreign Keys in a Table |
Identifiers
Identifiers are immutable objects that uniquely identify a Definition or Element with respect to a given server.

Identifiers can be converted to
external string form.Given two Definition Identifiers, it is possible to discern whether one identified is a sub-definition of the other identified Definition.
Given a Definition Identifier and an Element Identifier, it is possible to discern whether the identified Element is and instance of the identified Definition.
Given two Element Identifiers that identify the same Element, it is possible to discern which of the two is the most accurate or up-to-date (i.e. ‘latest’).
The following names are given to the Identifiers:
|
Definition |
Element |
Definition Identifier |
Element Identifier |
|
Type |
TypeInstance |
TypeIdentifier |
TypeInstanceIdentifier |
|
AttributeType |
Attribute |
AttributeTypeIdentifier |
AttributeIdentifier |
|
AssociationType |
Association |
AssociationTypeIdentifier |
AssociationIdentifier |
|
Enumeration |
-- |
EnumerationIdentifier |
|
|
EnumerationEntry |
-- |
EnumerationEntryIdentifier |
|
|
ConstraintType |
Constraint |
ConstraintTypeIdentifier |
ConstraintIdentifier |
|
ApplicationType |
Application |
ApplicationTypeIdentifier |
ApplicationIdentifier |
Identifier Factories
All Identifiers can be constructed from
external string form through the use of an Identifier Factory. An Identifier Factory provides methods supporting single and bulk mode constructions both with and without context.
Identifier Relationships
Some types of Definitions are always identified in the context of another type of Definition, as indicated below.
|
Definition |
Always defined in the context of |
|
AttributeType |
Type |
|
EnumerationEntry |
Enumeration |
|
ConstraintType |
ApplicationType |
These contextual relationships are manifested as relationships between the corresponding Identifiers.

Likewise, the Elements related to these Definitions are always identified in the context of another corresponding Element, as indicated below.
|
Element |
Always defined in the context of |
|
Attribute |
TypeInstance |
|
Constraint |
Application |
These contextual relationships are also manifested as relationships between the corresponding Identifiers.

Association Identifiers simultaneously identify Attributes and Types. For example, the identifier for the association ‘Part is described by Document’ would simultaneously identify the attribute ‘described by‘ on Part and the type of the referenced Document.

Association Identifiers can be constructed with either of the two types that it links as the context. In the previous example, the Association Identifier for ‘described by’ can be in the context of the Type Identifier for Part or for Document. Thus, either of the two following instance diagrams is legitimate (‘data type’ is the Type Identifier for the referenced Type)

In order to indicate which of the two types truly has the association as an attribute, regardless of the way the context was constructed, Association Identifiers have an additional property that indicates which of the two types is the true context.

In the previous example, ‘described by’ is truly an attribute of Part; therefore, the true context of the association is always set to Part:

The following section presents some basic UML diagrams followed by one or more instance diagrams showing what the corresponding Definition Identifier relationship graph(s) would look like. The Type Identifiers with a green fill color are the primary context for the graph. (The choice of which Type Identifier to construct as the primary context will depend on the usage.)
For the following UML diagram:
![]()
The corresponding Definition Identifier relationship graph is:

For the following UML diagram:

The corresponding Definition Identifier relationship graph is either of the following, depending on whether ‘Part’ or ‘Document’ is constructed as the primary context:

For the following UML diagram:

The corresponding Definition Identifier relationship graph is one of the following, depending on whether ‘Part’, ‘Document’, or ‘PartDocLink’ is constructed as the primary context:

Type Instance
The Type Instance represents a filtered view of a business object, and provides methods to get a list of all currently contained attributes, manipulate attribute values, get attribute display information, and merge the attribute sets of two type instances that represent the same business object. See
details.Attribute Container
See com.ptc.core.meta.container.common
Package SummaryAttribute Content
Immutable data wrappers are used for basic attribute and constraint content: String, Integer, Timestamp, Boolean, FloatingPoint, FloatingPointWithUnits, Ratio, Hyperlink. These data wrappers are used to represent single discrete values for attributes. Additional immutable data wrappers: AnalogSet, DiscreteSet, WildcardSet, EnumeratedSet, EmptySet, CompositeSet, are used to represent one or more valid ranges, discrete values, wildcard expressions, or any union or intersection thereof.
See details.
|
|||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | ||||||||