Difference between revisions of "Template Specification"

From HL7Wiki
Jump to navigation Jump to search
 
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
<html xmlns:o="urn:schemas-microsoft-com:office:office"
+
Templates Specification
xmlns:w="urn:schemas-microsoft-com:office:word"
+
   
xmlns="http://www.w3.org/TR/REC-html40">
+
   1)   Introduction
 
+
   
<head>
+
   2)   Specification
<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
+
    
<meta name=ProgId content=Word.Document>
+
   a)   Templates Are Static Models (what they are, where defined)
<meta name=Generator content="Microsoft Word 11">
+
 
<meta name=Originator content="Microsoft Word 11">
+
  b)   Taxonomy of static models  
<link rel=File-List href="TemplatesSpecificationOutline_files/filelist.xml">
+
 
<title>Templates Specification</title>
+
    i)       RIM (one and only one)
<!--[if gte mso 9]><xml>
+
      (1) Need to document entry points (Act, Role, Entity, Transmission, QueryParameter, …)  
  <o:DocumentProperties>
+
      (2) Bound to Universal realm
   <o:Author>George W. Beeler, Jr.</o:Author>
+
 
   <o:LastAuthor>George W. Beeler, Jr.</o:LastAuthor>
+
    ii)   DIM  
  <o:Revision>2</o:Revision>
+
      (1) Must have one or more Entry Points to be useful for deriving CIMs
  <o:TotalTime>106</o:TotalTime>
+
      (2) Can include by reference CIMs derived from another DIM (CMETs)
  <o:Created>2005-07-14T19:53:00Z</o:Created>
+
      (3) Can include stubs (an unbound reference constrained a minimum and maximum CIM)
  <o:LastSaved>2005-07-14T19:53:00Z</o:LastSaved>
+
      (4) Derived from RIM or another DIM
  <o:Pages>4</o:Pages>
+
      (5) Bound to universal realm
  <o:Words>442</o:Words>
+
      (6) Attributes may only be constrained (effectively) to specific codes where the value set binding is in the universal realm.
  <o:Characters>2525</o:Characters>
+
    iii) CIM
  <o:Company>Beeler Consulting LLC</o:Company>
+
      (1) Single entry point and serializable  
  <o:Lines>21</o:Lines>
+
      (2) Familiar examples: rmim, hmd, mt, cmet, wrapper  
  <o:Paragraphs>5</o:Paragraphs>
+
      (3) Derived from a DIM or another CIM
  <o:CharactersWithSpaces>2962</o:CharactersWithSpaces>
+
      (4) Primary balloted, normative artifact for domains
  <o:Version>11.6360</o:Version>
+
      (5) Must be bound to one or more realms (including universal, in which case this is the only binding)
  </o:DocumentProperties>
+
      (6) 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.
</xml><![endif]--><!--[if gte mso 9]><xml>
+
    iv) LIM  
<w:WordDocument>
+
      (1) Names of elements, as represented over the wire, must be the names of the corresponding elements within the nearest ancestor CIM.  
   <w:SpellingState>Clean</w:SpellingState>
+
        (a) Parsing a LIM imposes no rules not contained in the CIM
   <w:GrammarState>Clean</w:GrammarState>
+
      (2) Derived from a CIM or another LIM
   <w:PunctuationKerning/>
+
      (3) template
  <w:ValidateAgainstSchemas/>
+
        (a) Intended for:
  <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
+
          (i)     broad re-use and to be applied to different models and interactions
  <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
+
          (ii)   represent constraints for a more restrictive application than the base CIM represents
  <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
+
        (b) The entry point need not derive from an entry point of the CIM from which it is derived.  
  <w:Compatibility>
+
      (4) profile is made up of:
  <w:BreakWrappedTables/>
+
        (a) 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
  <w:SnapToGridInCell/>
+
        (b) Static profile  
   <w:WrapTextWithPunct/>
+
          (i)     (a template that starts at the Entry Point of the outermost CIM to which the interaction in the profile was bound)
  <w:UseAsianBreakRules/>
+
          (ii)   Cannot contain stubs (must fully define all data elements within all contained models of the parent CIMs)
  <w:DontGrowAutofit/>
+
        (c) Dynamic profile
  </w:Compatibility>
+
    v)     Issues – How can we handle context inheritance in order to allow templates to start at other than the Entry Point of a CIM
  <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
+
      (1) 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.
</w:WordDocument>
+
      (2) Also – We need to be able to designate entry points for LIM use that are stereotyped for that purpose.  
</xml><![endif]--><!--[if gte mso 9]><xml>
+
    vi) NOTES
<w:LatentStyles DefLockedState="false" LatentStyleCount="156">
+
      (1) "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)
</w:LatentStyles>
+
    vii)           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
</xml><![endif]-->
+
    viii)         All constraints should be expressed in one of the HL7-designated, testable constraint languages in order to be fully usable.
<style>
 
<!--
 
/* Style Definitions */
 
p.MsoNormal, li.MsoNormal, div.MsoNormal
 
{mso-style-parent:"";
 
margin:0in;
 
margin-bottom:.0001pt;
 
mso-pagination:widow-orphan;
 
font-size:12.0pt;
 
font-family:"Times New Roman";
 
mso-fareast-font-family:"Times New Roman";}
 
h1
 
{mso-style-next:Normal;
 
margin-top:12.0pt;
 
margin-right:0in;
 
margin-bottom:3.0pt;
 
margin-left:.25in;
 
text-indent:-.25in;
 
mso-pagination:widow-orphan;
 
page-break-after:avoid;
 
mso-outline-level:1;
 
mso-list:l0 level1 lfo1;
 
tab-stops:list .25in;
 
font-size:16.0pt;
 
font-family:Arial;
 
mso-font-kerning:16.0pt;}
 
h2
 
{mso-style-next:Normal;
 
margin-top:12.0pt;
 
margin-right:0in;
 
margin-bottom:3.0pt;
 
margin-left:.5in;
 
text-indent:-.25in;
 
mso-pagination:widow-orphan;
 
page-break-after:avoid;
 
mso-outline-level:2;
 
mso-list:l0 level2 lfo1;
 
tab-stops:list .5in;
 
font-size:14.0pt;
 
font-family:Arial;
 
font-style:italic;}
 
h3
 
{mso-style-next:Normal;
 
margin-top:12.0pt;
 
margin-right:0in;
 
margin-bottom:3.0pt;
 
margin-left:.75in;
 
text-indent:-.25in;
 
mso-pagination:widow-orphan;
 
page-break-after:avoid;
 
mso-outline-level:3;
 
mso-list:l0 level3 lfo1;
 
tab-stops:list .75in;
 
font-size:13.0pt;
 
font-family:Arial;}
 
h4
 
{mso-style-next:Normal;
 
margin-top:12.0pt;
 
margin-right:0in;
 
margin-bottom:3.0pt;
 
margin-left:1.0in;
 
text-indent:-.25in;
 
mso-pagination:widow-orphan;
 
page-break-after:avoid;
 
mso-outline-level:4;
 
mso-list:l0 level4 lfo1;
 
tab-stops:list 1.0in;
 
font-size:14.0pt;
 
font-family:"Times New Roman";}
 
h5
 
{mso-style-next:Normal;
 
margin-top:12.0pt;
 
margin-right:0in;
 
margin-bottom:3.0pt;
 
margin-left:1.25in;
 
text-indent:-.25in;
 
mso-pagination:widow-orphan;
 
mso-outline-level:5;
 
mso-list:l0 level5 lfo1;
 
tab-stops:list 1.25in;
 
font-size:13.0pt;
 
font-family:"Times New Roman";
 
font-style:italic;}
 
h6
 
{mso-style-next:Normal;
 
margin-top:12.0pt;
 
margin-right:0in;
 
margin-bottom:3.0pt;
 
margin-left:1.5in;
 
text-indent:-.25in;
 
mso-pagination:widow-orphan;
 
mso-outline-level:6;
 
mso-list:l0 level6 lfo1;
 
tab-stops:list 1.5in;
 
font-size:11.0pt;
 
font-family:"Times New Roman";}
 
p.MsoHeading7, li.MsoHeading7, div.MsoHeading7
 
{mso-style-next:Normal;
 
margin-top:12.0pt;
 
margin-right:0in;
 
margin-bottom:3.0pt;
 
margin-left:1.75in;
 
text-indent:-.25in;
 
mso-pagination:widow-orphan;
 
mso-outline-level:7;
 
mso-list:l0 level7 lfo1;
 
tab-stops:list 1.75in;
 
font-size:12.0pt;
 
font-family:"Times New Roman";
 
mso-fareast-font-family:"Times New Roman";}
 
p.MsoTitle, li.MsoTitle, div.MsoTitle
 
{margin-top:12.0pt;
 
margin-right:0in;
 
margin-bottom:3.0pt;
 
margin-left:0in;
 
text-align:center;
 
mso-pagination:widow-orphan;
 
mso-outline-level:1;
 
font-size:16.0pt;
 
font-family:Arial;
 
mso-fareast-font-family:"Times New Roman";
 
mso-font-kerning:14.0pt;
 
font-weight:bold;}
 
span.SpellE
 
{mso-style-name:"";
 
mso-spl-e:yes;}
 
span.GramE
 
{mso-style-name:"";
 
mso-gram-e:yes;}
 
@page Section1
 
{size:8.5in 11.0in;
 
margin:1.0in 1.25in 1.0in 1.25in;
 
mso-header-margin:.5in;
 
mso-footer-margin:.5in;
 
mso-paper-source:0;}
 
div.Section1
 
{page:Section1;}
 
/* List Definitions */
 
@list l0
 
{mso-list-id:1322152054;
 
mso-list-template-ids:-2068158966;}
 
@list l0:level1
 
{mso-level-style-link:"Heading 1";
 
mso-level-text:"%1\)";
 
mso-level-tab-stop:.25in;
 
mso-level-number-position:left;
 
margin-left:.25in;
 
text-indent:-.25in;}
 
@list l0:level2
 
{mso-level-number-format:alpha-lower;
 
mso-level-style-link:"Heading 2";
 
mso-level-text:"%2\)";
 
mso-level-tab-stop:.5in;
 
mso-level-number-position:left;
 
margin-left:.5in;
 
text-indent:-.25in;}
 
@list l0:level3
 
{mso-level-number-format:roman-lower;
 
mso-level-style-link:"Heading 3";
 
mso-level-text:"%3\)";
 
mso-level-tab-stop:.75in;
 
mso-level-number-position:left;
 
margin-left:.75in;
 
text-indent:-.25in;}
 
@list l0:level4
 
{mso-level-style-link:"Heading 4";
 
mso-level-text:"\(%4\)";
 
mso-level-tab-stop:1.0in;
 
mso-level-number-position:left;
 
margin-left:1.0in;
 
text-indent:-.25in;}
 
@list l0:level5
 
{mso-level-number-format:alpha-lower;
 
mso-level-style-link:"Heading 5";
 
mso-level-text:"\(%5\)";
 
mso-level-tab-stop:1.25in;
 
mso-level-number-position:left;
 
margin-left:1.25in;
 
text-indent:-.25in;}
 
@list l0:level6
 
{mso-level-number-format:roman-lower;
 
mso-level-style-link:"Heading 6";
 
mso-level-text:"\(%6\)";
 
mso-level-tab-stop:1.5in;
 
mso-level-number-position:left;
 
margin-left:1.5in;
 
text-indent:-.25in;}
 
@list l0:level7
 
{mso-level-style-link:"Heading 7";
 
mso-level-tab-stop:1.75in;
 
mso-level-number-position:left;
 
margin-left:1.75in;
 
text-indent:-.25in;}
 
@list l0:level8
 
{mso-level-number-format:alpha-lower;
 
mso-level-tab-stop:2.0in;
 
mso-level-number-position:left;
 
margin-left:2.0in;
 
text-indent:-.25in;}
 
@list l0:level9
 
{mso-level-number-format:roman-lower;
 
mso-level-tab-stop:2.25in;
 
mso-level-number-position:left;
 
margin-left:2.25in;
 
text-indent:-.25in;}
 
ol
 
{margin-bottom:0in;}
 
ul
 
{margin-bottom:0in;}
 
-->
 
</style>
 
<!--[if gte mso 10]>
 
<style>
 
/* Style Definitions */
 
table.MsoNormalTable
 
{mso-style-name:"Table Normal";
 
mso-tstyle-rowband-size:0;
 
mso-tstyle-colband-size:0;
 
mso-style-noshow:yes;
 
mso-style-parent:"";
 
mso-padding-alt:0in 5.4pt 0in 5.4pt;
 
mso-para-margin:0in;
 
mso-para-margin-bottom:.0001pt;
 
mso-pagination:widow-orphan;
 
font-size:10.0pt;
 
font-family:"Times New Roman";
 
mso-ansi-language:#0400;
 
mso-fareast-language:#0400;
 
mso-bidi-language:#0400;}
 
</style>
 
<![endif]-->
 
</head>
 
 
 
<body lang=EN-US style='tab-interval:.5in'>
 
 
 
<div class=Section1>
 
 
 
<p class=MsoTitle>Templates Specification</p>
 
 
 
<h1><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>1)<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;
 
</span></span></span><![endif]>Introduction</h1>
 
 
 
<h1><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>2)<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;
 
</span></span></span><![endif]>Specification</h1>
 
 
 
<h2><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>a)<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;
 
</span></span></span><![endif]>Templates Are Static Models (what they are,
 
where defined)</h2>
 
 
 
<h2><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>b)<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;
 
</span></span></span><![endif]>Taxonomy of static models </h2>
 
 
 
<h3><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>i)<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
</span></span></span><![endif]>RIM (one and only one)</h3>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(1)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]>Need to document
 
entry points (Act, Role, Entity, Transmission<span class=GramE>,<span
 
style='mso-spacerun:yes'>  </span><span class=SpellE>QueryParameter</span></span>,
 
…) </h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(2)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Bound to Universal realm</h4>
 
 
 
<h3><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>ii)<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
 
</span></span></span><![endif]>DIM </h3>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(1)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]>Must have one or
 
more Entry Points to be useful for deriving <span class=SpellE>CIMs</span></h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(2)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Can include by reference <span class=SpellE>CIMs</span>
 
derived from another DIM (<span class=SpellE>CMETs</span>)</h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(3)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]>Can include stubs
 
(an unbound reference constrained a minimum and maximum CIM)</h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(4)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Derived from RIM or another DIM</h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(5)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Bound to universal realm</h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(6)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Attributes may only be constrained
 
(effectively) to specific codes where the value set binding is in the universal
 
realm.</h4>
 
 
 
<h3><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>iii)<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><![endif]>CIM</h3>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(1)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]>Single entry
 
point and <span class=SpellE>serializable</span> </h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(2)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]>Familiar examples:
 
<span class=SpellE>rmim</span>, <span class=SpellE>hmd</span>, <span
 
class=SpellE>mt</span>, <span class=SpellE>cmet</span>, wrapper </h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(3)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Derived from a DIM or another CIM</h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(4)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Primary balloted, normative artifact for
 
domains</h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(5)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Must be bound to one or more realms (including
 
universal, in which case this is the only binding)</h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(6)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>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.</h4>
 
 
 
<h3><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>iv)<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><![endif]>LIM
 
</h3>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(1)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Names of elements, as represented over the
 
wire, must be the names of the corresponding elements within the nearest ancestor
 
CIM. </h4>
 
 
 
<h5><![if !supportLists]><span style='mso-list:Ignore'>(a)<span
 
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><![endif]>Parsing a
 
LIM imposes no rules not contained in the CIM</h5>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(2)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Derived from a CIM or another LIM</h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(3)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
class=GramE>template</span></h4>
 
 
 
<h5><![if !supportLists]><span style='mso-list:Ignore'>(a)<span
 
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><![endif]>Intended
 
for:</h5>
 
 
 
<h6><![if !supportLists]><span style='mso-list:Ignore'>(i)<span
 
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp; </span></span><![endif]><span
 
class=GramE>broad</span> re-use and to be applied to different models and
 
interactions</h6>
 
 
 
<h6><![if !supportLists]><span style='mso-list:Ignore'>(ii)<span
 
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span><![endif]><span
 
class=GramE>represent</span> constraints for a more restrictive application
 
than the base CIM represents</h6>
 
 
 
<h5><![if !supportLists]><span style='mso-list:Ignore'>(b)<span
 
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><![endif]>The entry
 
point need not derive from an entry point of the CIM from which it is derived. </h5>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(4)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
class=GramE>profile</span> is made up of:</h4>
 
 
 
<h5><![if !supportLists]><span style='mso-list:Ignore'>(a)<span
 
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><![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</h5>
 
 
 
<h5><![if !supportLists]><span style='mso-list:Ignore'>(b)<span
 
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><![endif]>Static
 
profile </h5>
 
 
 
<h6><![if !supportLists]><span style='mso-list:Ignore'>(i)<span
 
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp; </span></span><![endif]>(<span
 
class=GramE>a</span> template that starts at the Entry Point of the outermost
 
CIM to which the interaction in the profile was bound)</h6>
 
 
 
<h6><![if !supportLists]><span style='mso-list:Ignore'>(ii)<span
 
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span><![endif]>Cannot
 
contain stubs (must fully define all data elements within all contained models
 
of the parent <span class=SpellE>CIMs</span>)</h6>
 
 
 
<h5><![if !supportLists]><span style='mso-list:Ignore'>(c)<span
 
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><![endif]>Dynamic
 
profile</h5>
 
 
 
<h3><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>v)<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;
 
</span></span></span><![endif]>Issues – How can we handle context inheritance
 
in order to allow templates to start at other than the Entry Point of a CIM</h3>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(1)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>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.<span style='mso-spacerun:yes'>  </span>Context can only be
 
defined within the scope of the LIM.</h4>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(2)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]><span
 
style='mso-spacerun:yes'> </span>Also – We need to be able to designate entry
 
points for LIM use that are stereotyped for that purpose. </h4>
 
 
 
<h3><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>vi)<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><![endif]>NOTES</h3>
 
 
 
<h4><![if !supportLists]><span style='mso-list:Ignore'>(1)<span
 
style='font:7.0pt "Times New Roman"'> </span></span><![endif]>&quot;Business
 
names&quot; are available for clones, association role names, and attributes at
 
the level of DIM and below. (<span class=GramE>and</span> for data types and
 
data type properties)</h4>
 
 
 
<h3><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>vii)<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
</span></span></span><![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</h3>
 
 
 
<h3><![if !supportLists]><span style='mso-fareast-font-family:Arial'><span
 
style='mso-list:Ignore'>viii)<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
</span></span></span><![endif]>All constraints should be expressed in one of
 
the HL7-designated, testable constraint languages in order to be fully usable. </h3>
 
 
 
</div>
 
 
 
</body>
 
 
 
</html>
 

Latest revision as of 20:51, 14 July 2005

Templates Specification

 1)   Introduction

 2)   Specification
 
  a)   Templates Are Static Models (what they are, where defined)
 
  b)   Taxonomy of static models 
 
    i)       RIM (one and only one)
      (1) Need to document entry points (Act, Role, Entity, Transmission,  QueryParameter, …) 
      (2)  Bound to Universal realm
 
    ii)    DIM 
      (1) Must have one or more Entry Points to be useful for deriving CIMs
      (2)  Can include by reference CIMs derived from another DIM (CMETs)
      (3) Can include stubs (an unbound reference constrained a minimum and maximum CIM)
      (4)  Derived from RIM or another DIM
      (5)  Bound to universal realm
      (6)  Attributes may only be constrained (effectively) to specific codes where the value set binding is in the universal realm.
    iii)  CIM
      (1) Single entry point and serializable 
      (2) Familiar examples: rmim, hmd, mt, cmet, wrapper 
      (3)  Derived from a DIM or another CIM
      (4)  Primary balloted, normative artifact for domains
      (5)  Must be bound to one or more realms (including universal, in which case this is the only binding)
      (6)  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.
    iv)  LIM 
      (1)  Names of elements, as represented over the wire, must be the names of the corresponding elements within the nearest ancestor CIM. 
        (a)  Parsing a LIM imposes no rules not contained in the CIM
      (2)  Derived from a CIM or another LIM
      (3) template
        (a)  Intended for:
          (i)     broad re-use and to be applied to different models and interactions
          (ii)   represent constraints for a more restrictive application than the base CIM represents
        (b)  The entry point need not derive from an entry point of the CIM from which it is derived. 
      (4) profile is made up of:
        (a)  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
        (b)  Static profile 
          (i)     (a template that starts at the Entry Point of the outermost CIM to which the interaction in the profile was bound)
          (ii)   Cannot contain stubs (must fully define all data elements within all contained models of the parent CIMs)
        (c)  Dynamic profile
    v)     Issues – How can we handle context inheritance in order to allow templates to start at other than the Entry Point of a CIM
      (1)  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.
      (2)  Also – We need to be able to designate entry points for LIM use that are stereotyped for that purpose. 
    vi)  NOTES
      (1) "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)
    vii)            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
    viii)         All constraints should be expressed in one of the HL7-designated, testable constraint languages in order to be fully usable.