This wiki has undergone a migration to Confluence found Here

Difference between revisions of "Template Specification"

From HL7Wiki
Jump to navigation Jump to search
(No difference)

Revision as of 20:08, 14 July 2005

<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="">

<head> <meta http-equiv=Content-Type content="text/html; charset=windows-1252"> <meta name=ProgId content=Word.Document> <meta name=Generator content="Microsoft Word 11"> <meta name=Originator content="Microsoft Word 11"> <link rel=File-List href="TemplatesSpecificationOutline_files/filelist.xml"> <title>Templates Specification</title> <style> </style> </head>

<body lang=EN-US style='tab-interval:.5in'>

Templates Specification


<![if !supportLists]>1)   <![endif]>Introduction

<![if !supportLists]>2)   <![endif]>Specification

<![if !supportLists]>a)   <![endif]>Templates Are Static Models (what they are, where defined)

<![if !supportLists]>b)   <![endif]>Taxonomy of static models

<![if !supportLists]>i)       <![endif]>RIM (one and only one)

<![if !supportLists]>(1) <![endif]>Need to document entry points (Act, Role, Entity, Transmission,  QueryParameter, …)

<![if !supportLists]>(2) <![endif]> Bound to Universal realm

<![if !supportLists]>ii)    <![endif]>DIM

<![if !supportLists]>(1) <![endif]>Must have one or more Entry Points to be useful for deriving CIMs

<![if !supportLists]>(2) <![endif]> Can include by reference CIMs derived from another DIM (CMETs)

<![if !supportLists]>(3) <![endif]>Can include stubs (an unbound reference constrained a minimum and maximum CIM)

<![if !supportLists]>(4) <![endif]> Derived from RIM or another DIM

<![if !supportLists]>(5) <![endif]> Bound to universal realm

<![if !supportLists]>(6) <![endif]> Attributes may only be constrained (effectively) to specific codes where the value set binding is in the universal realm.

<![if !supportLists]>iii)  <![endif]>CIM

<![if !supportLists]>(1) <![endif]>Single entry point and serializable

<![if !supportLists]>(2) <![endif]>Familiar examples: rmim, hmd, mt, cmet, wrapper

<![if !supportLists]>(3) <![endif]> Derived from a DIM or another CIM

<![if !supportLists]>(4) <![endif]> Primary balloted, normative artifact for domains

<![if !supportLists]>(5) <![endif]> Must be bound to one or more realms (including universal, in which case this is the only binding)

<![if !supportLists]>(6) <![endif]> Where the CIM has been bound to a specific realm, attributes may only be constrained to specific codes found in value sets bound to all of the realms to which the CIM is bound or found in a universal value set.

<![if !supportLists]>iv)  <![endif]>LIM

<![if !supportLists]>(1) <![endif]> Names of elements, as represented over the wire, must be the names of the corresponding elements within the nearest ancestor CIM.

<![if !supportLists]>(a)  <![endif]>Parsing a LIM imposes no rules not contained in the CIM

<![if !supportLists]>(2) <![endif]> Derived from a CIM or another LIM

<![if !supportLists]>(3) <![endif]>template

<![if !supportLists]>(a)  <![endif]>Intended for:
<![if !supportLists]>(i)     <![endif]>broad re-use and to be applied to different models and interactions
<![if !supportLists]>(ii)   <![endif]>represent constraints for a more restrictive application than the base CIM represents
<![if !supportLists]>(b)  <![endif]>The entry point need not derive from an entry point of the CIM from which it is derived.

<![if !supportLists]>(4) <![endif]>profile is made up of:

<![if !supportLists]>(a)  <![endif]>Intended to have narrow scope and represents detailed constraints on how a particular interaction is (or is intended to be) used in a given context
<![if !supportLists]>(b)  <![endif]>Static profile
<![if !supportLists]>(i)     <![endif]>(a template that starts at the Entry Point of the outermost CIM to which the interaction in the profile was bound)
<![if !supportLists]>(ii)   <![endif]>Cannot contain stubs (must fully define all data elements within all contained models of the parent CIMs)
<![if !supportLists]>(c)  <![endif]>Dynamic profile

<![if !supportLists]>v)     <![endif]>Issues – How can we handle context inheritance in order to allow templates to start at other than the Entry Point of a CIM

<![if !supportLists]>(1) <![endif]> Recommend – If starting a LIM at a node that inherits context from an ancestor node in the CIM, the LIM will not inherit that context.  Context can only be defined within the scope of the LIM.

<![if !supportLists]>(2) <![endif]> Also – We need to be able to designate entry points for LIM use that are stereotyped for that purpose.

<![if !supportLists]>vi)  <![endif]>NOTES

<![if !supportLists]>(1) <![endif]>"Business names" are available for clones, association role names, and attributes at the level of DIM and below. (and for data types and data type properties)

<![if !supportLists]>vii)            <![endif]>In MIF allow a static model to define a data type flavor for use in the context of this static model, would allow a template to define a data type flavor for use within the template

<![if !supportLists]>viii)         <![endif]>All constraints should be expressed in one of the HL7-designated, testable constraint languages in order to be fully usable.