Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The CompoundIdentifier serves two purposes.

First, it has a locally-scoped identifier (ReferenceId) which allows its parent object to be used by reference within a given dataset.

Second, it enables the association of multiple unique identifiers and their origin information (UniqueId) to an object. This results in an enhanced exchange of data between different systems because each system can include its internal, unique identifier for an object.

 

Image Added

Systems vary in the way they choose to construct unique identifiers. It is for this reason, that the UniqueId class uses a combination of string (Id) and enumeration (CompoundIdentifierTypeEnum) to fully describe the unique identifier.

Almost as important is the need to capture the originating source, or issuing authority of the identifier. Again, a combination of string (Source) and enumeration (IdSourceTypeEnum) are used to fully describe the identifier's source. Image Removed

asdasdasdd

The ContextItem System Data Model: Bird's-eye view

...

(Note: CompoundIdentifier not shown for clarity; see separate class diagram.)aasdasdasd

In its simplest terms, a ContextItem is a key / value pair. Its Code property is the "key", while the rest of its properties describe the "value".

The Value property is ALWAYS expressed as a string even though that may not be how it was collected or how it is expected to be used elsewhere. The ValueType property of the ContextItemDefinition, that corresponds to the "key" Code, supplies the user with this data type information. In some cases, like the presence of NestedItems, there is no real Value to record so this property is optional.

The ValueUOM property contains the optional unit of measure that should be associated with the Value.

The NestedItems collection allow ContextItems to be used in nested hierarchies if the ContextItemDefiniton's ValueType is "Nested". 

Notice the inclusion of an optional collection of TimeScope objects. This is used to record the relationships a given Value may have with time. For example, there could be a TimeScope that captures when the Value was recorded and another TimeScope that expresses the duration for which the Value is considered valid.

 

A ContextItem is a single, specific, use of a ContextItemDefinition. The Code of a ContextItemDefinition is used as the "key" in the key / value pair represented by a ContextItem.

asddasd