This wiki has undergone a migration to Confluence found Here
TemplateId
Revision as of 00:41, 15 September 2006 by GrahameGrieve (talk | contribs)
See Clarification of use of templateId for ongoing discussions, below is the current understanding.
A globally unique, non-semantic, identifier for the Template. This is the primary identifier for all Templates. TemplateId is an attribute of the InfrastructureRoot class.
TemplateId is a globally unique reference that can be used by look-up services and registries in an international distributed computing environment, and can be stored within each instance as a permanent record of the constraint artefact to which it conforms.
Notes:
- The constraint applies from the "point of occurrence" (of the templateId attribute) in the model. A sender can assert any templateID anywhere they like. It must be ignored by receivers for all purposes except validation.
- receivers are not required to validate against the templates
- There's no reason to prohibit the declaration of any templates at all, because the declaration of non-recognized templates has no impact on the receiver.
- If an application rejects a message because that message contains a template the application doesn't recognize, that application would be considered non-conformant.
- The use of specific templateId may not be constrained, see Constraints on infrastructureRoot attributes
Example
The example shows an instance (with ID 373645) of an observation (of type Barthel-index). The observation uses the REPC_MT000103.Barthel_Index template.
<Observation>
<templateId root="2.16.840.1.113883.2.1.3.2.4.12" extension="REPC_MT000103.Barthel_Index">
<id codeSystem="2.16.840.1.113883.3.19.4" extension="373645"/>
<effectiveTime value="200601191211"/>
<value value="3"/>
<!-- various bits omitted from this example -->
<Observation/>