<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:CDA="http://www.openhealthtools.org/mdht/schemas/cda/4" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA">
  <uml:Class xmi:id="_2LSPYBSVEeGGzu7fmW9pXw" name="ProblemSection">
    <ownedComment xmi:id="_hb8PkCAnEeGetMjKLkqR8g">
      <body>This section lists and describes all relevant clinical problems at the time the document is generated. At a minimum, all pertinent current and historical problems should be listed.</body>
    </ownedComment>
    <ownedRule xmi:id="_TJ3pUbTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTemplateId" constrainedElement="_2LSPYBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TJ4QYLTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.2.5.1')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TJ9I4LTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalCodeP" constrainedElement="_NSzLQFGkEeG3H6xvuD7Z0Q">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TJ9I4bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TJ6soLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalCode" constrainedElement="_NSzLQFGkEeG3H6xvuD7Z0Q">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TJ6sobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CE) and 
let value : datatypes::CE = self.code.oclAsType(datatypes::CE) in 
value.code = '11450-4' and value.codeSystem = '2.16.840.1.113883.6.1'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TKAMMLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalText" constrainedElement="_NSzLQlGkEeG3H6xvuD7Z0Q">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TKAMMbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.text.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TKCBYLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTitle" constrainedElement="_NSzLRlGkEeG3H6xvuD7Z0Q">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TKCBYbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.title.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Y8GtsLTREeWEoeeTdrbyVw" name="ProblemSectionEntry">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fHABILS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Y8GtsbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.nullFlavor &lt;> vocab::NullFlavor::NI implies entry->one(entry : cda::Entry | not entry.oclIsUndefined() and entry.oclIsKindOf(consol::ProblemSection::ProblemConcernActEntry))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_iL4P8LTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTemplateId" constrainedElement="_2LSPYBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_iL5eELTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.2.5.1')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_2HozwLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTemplateId" constrainedElement="_2LSPYBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_2Hpa0LTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.2.5.1')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_5B4-YLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTemplateId" constrainedElement="_2LSPYBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_5B5lcLTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.2.5.1')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WECe8LTSEeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTemplateId" constrainedElement="_2LSPYBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WEDGALTSEeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.2.5.1')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_6RP4ALTSEeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTemplateId" constrainedElement="_2LSPYBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_6RP4AbTSEeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.2.5.1')</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_blmF8BVgEeGQCvUGzi1kDQ" general="_naxrkBVdEeGQCvUGzi1kDQ">
      <ownedComment xmi:id="_CN40QHavEeGK39q3kclbsA">
        <body>couple</body>
      </ownedComment>
    </generalization>
    <ownedAttribute xmi:id="_NSzLQFGkEeG3H6xvuD7Z0Q" name="code" visibility="private" isReadOnly="true" redefinedProperty="_naxrmBVdEeGQCvUGzi1kDQ">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_Z1EGIDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_NSzLQlGkEeG3H6xvuD7Z0Q" name="text" visibility="private" isReadOnly="true" aggregation="composite" redefinedProperty="_naxrmhVdEeGQCvUGzi1kDQ">
      <type xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_0jvq8E8AEd6ohP_YEXs4Wg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_NSzLRFGkEeG3H6xvuD7Z0Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_NSzLQ1GkEeG3H6xvuD7Z0Q" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_NSzLRlGkEeG3H6xvuD7Z0Q" name="title" visibility="private" isReadOnly="true" redefinedProperty="_naxrmRVdEeGQCvUGzi1kDQ">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_EaTNsDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fHABIbS6EeWcPq3zAthoUQ" name="entry" type="_fG-L8LS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fHABIrS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fHABI7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_SvZ88DxYEd6JwqSGecoePg"/>
      <association href="../consol.uml#_fHABILS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fG-L8LS6EeWcPq3zAthoUQ" name="ProblemConcernActEntry">
      <ownedRule xmi:id="_Y8XMYLTREeWEoeeTdrbyVw" name="ProblemSectionProblemConcernActEntryProblemConcern">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fHCdYLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_Y8XMYbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.act->exists(act : cda::Act | not act.oclIsUndefined() and act.oclIsKindOf(consol::ProblemConcernAct))</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fG-L8bS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_r0FX0DxXEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_fHCdYbS6EeWcPq3zAthoUQ" name="problemConcern" type="_2H6yUBSVEeGGzu7fmW9pXw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fHCdYrS6EeWcPq3zAthoUQ" value="1"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fHCdY7S6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_mNS5ATxYEd6JwqSGecoePg"/>
        <association href="../consol.uml#_fHCdYLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_2LSPZhSVEeGGzu7fmW9pXw" base_Class="_2LSPYBSVEeGGzu7fmW9pXw" templateId="2.16.840.1.113883.10.20.22.2.5.1" assigningAuthorityName="HITSP C83">
    <ruleId>CONF:9179</ruleId>
  </CDA:CDATemplate>
  <CDA:CodeSystemConstraint xmi:id="_2LTdgRSVEeGGzu7fmW9pXw" code="11450-4" displayName="Problem List">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_3-cwsCWrEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:9180</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:PropertyValidation xmi:id="_2LUroRSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9181</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_2LVSsxSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9182</ruleId>
  </CDA:PropertyValidation>
  <uml:Class xmi:id="_2H6yUBSVEeGGzu7fmW9pXw" name="ProblemConcernAct">
    <ownedComment xmi:id="_KPRpwCApEeGetMjKLkqR8g">
      <body>This template reflects an ongoing concern on behalf of the provider that placed the concern on a patient's problem list. So long as the underlying condition is of concern to the provider (i.e., as long as the condition, whether active or resolved, is of ongoing concern and interest to the provider), the statusCode is &quot;active&quot;. Only when the underlying condition is no longer of concern is the statusCode set to &quot;completed&quot;. The effectiveTime reflects the time that the underlying condition was felt to be a concern; it may or may not correspond to the effectiveTime of the condition (e.g., even five years later, the clinician may remain concerned about a prior heart attack).&#xD;
The statusCode of the Problem Concern Act is the definitive indication of the status of the concern, whereas the effectiveTime of the nested Problem Observation is the definitive indication of whether or not the underlying condition is resolved.&#xD;
The effectiveTime/low of the Problem Concern Act asserts when the concern became active. This equates to the time the concern was authored in the patient's chart. The effectiveTime/high asserts when the concern was completed (e.g., when the clinician deemed there is no longer any need to track the underlying condition).&#xD;
A Problem Concern Act can contain many Problem Observations (templateId 2.16.840.1.113883.10.20.22.4.4.2). Each Problem Observation is a discrete observation of a condition, and therefore will have a statusCode of &quot;completed&quot;. The many Problem Observations nested under a Problem Concern Act reflect the change in the clinical understanding of a condition over time. For instance, a Concern may initially contain a Problem Observation of &quot;chest pain&quot;:&#xD;
 - Problem Concern 1&#xD;
???? --- Problem Observation: Chest Pain &#xD;
Later, a new Problem Observation of &quot;esophagitis&quot; will be added, reflecting a better understanding of the nature of the chest pain. The later problem observation will have a more recent author time stamp. &#xD;
 - Problem Concern 1&#xD;
???? --- Problem Observation (author/time Jan 3, 2012): Chest Pain &#xD;
???? --- Problem Observation (author/time Jan 6, 2012): Esophagitis&#xD;
Many systems display the nested Problem Observation with the most recent author time stamp, and provide a mechanism for viewing prior observations.</body>
    </ownedComment>
    <ownedRule xmi:id="_2IFKYxSVEeGGzu7fmW9pXw" name="ProblemConcernActEffectiveTimeLow">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_2IFKZBSVEeGGzu7fmW9pXw">
        <language>Analysis</language>
        <language>OCL</language>
        <body>effectiveTime SHALL contain exactly one [1..1] low</body>
        <body>not self.effectiveTime.low.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_SxxO0Cf2EeGO5_JBy9h6BA" name="ProblemConcernActEffectiveTimeHigh" constrainedElement="_2IFKYxSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_X8yiMCf2EeGO5_JBy9h6BA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>effectiveTime SHOULD contain zero or one [0..1] high</body>
        <body>not self.effectiveTime.high.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TDBacLTREeWEoeeTdrbyVw" name="ProblemConcernActTemplateId" constrainedElement="_2H6yUBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TDBacbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.4.3')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TDEdwLTREeWEoeeTdrbyVw" name="ProblemConcernActClassCode" constrainedElement="_2H91oBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TDEdwbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.classCode=vocab::x_ActClassDocumentEntryAct::ACT</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TDFr4LTREeWEoeeTdrbyVw" name="ProblemConcernActMoodCode" constrainedElement="_2H-csBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TDFr4bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.moodCode=vocab::x_DocumentActMood::EVN</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TDHhELTREeWEoeeTdrbyVw" name="ProblemConcernActId" constrainedElement="_2H-csxSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TDHhEbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.id->isEmpty()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TDMZkLTREeWEoeeTdrbyVw" name="ProblemConcernActCodeP" constrainedElement="_2H_DwRSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TDMZkbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TDJ9ULTREeWEoeeTdrbyVw" name="ProblemConcernActCode" constrainedElement="_2H_DwRSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TDJ9UbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = self.code.oclAsType(datatypes::CD) in 
value.code = 'CONC' and value.codeSystem = '2.16.840.1.113883.5.6'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TDX_wLTREeWEoeeTdrbyVw" name="ProblemConcernActStatusCodeP" constrainedElement="_2H_q0BSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TDX_wbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TDPc4LTREeWEoeeTdrbyVw" name="ProblemConcernActStatusCode" constrainedElement="_2H_q0BSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TDPc4bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined() and self.statusCode.oclIsKindOf(datatypes::CS) and 
let value : datatypes::CS = self.statusCode.oclAsType(datatypes::CS) in 
value.code = 'active' or value.code = 'suspended' or value.code = 'aborted' or value.code = 'completed'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TDhJsLTREeWEoeeTdrbyVw" name="ProblemConcernActEffectiveTime" constrainedElement="_2IBgABSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TDhJsbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.effectiveTime.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Yl07sLTREeWEoeeTdrbyVw" name="ProblemConcernActEntryRelationship">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fDqZQLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Yl07sbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.oclIsUndefined() and entryRelationship.oclIsKindOf(consol::ProblemConcernAct::ProblemObservationEntryRelationship))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_2IINsxSVEeGGzu7fmW9pXw">
      <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_YiANsDxYEd6JwqSGecoePg"/>
    </generalization>
    <ownedAttribute xmi:id="_2H91oBSVEeGGzu7fmW9pXw" name="classCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yVdYEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_2H91oRSVEeGGzu7fmW9pXw" name="ACT">
        <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yVdYEDcEd6xYZuu1VKCVw"/>
        <instance xmi:type="uml:EnumerationLiteral" href="pathmap://VOCAB_MODEL/vocab.uml#__yVdYUDcEd6xYZuu1VKCVw"/>
      </defaultValue>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2H-csBSVEeGGzu7fmW9pXw" name="moodCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yeW3UDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_2H-csRSVEeGGzu7fmW9pXw" name="EVN">
        <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yeW3UDcEd6xYZuu1VKCVw"/>
        <instance xmi:type="uml:EnumerationLiteral" href="pathmap://VOCAB_MODEL/vocab.uml#__yeW30DcEd6xYZuu1VKCVw"/>
      </defaultValue>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2H-csxSVEeGGzu7fmW9pXw" name="id" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.hl7.datatypes/model/datatypes.uml#_culQ8DxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_2H-ctRSVEeGGzu7fmW9pXw" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_2H-ctBSVEeGGzu7fmW9pXw" value="*"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2H_DwRSVEeGGzu7fmW9pXw" name="code" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2H_q0BSVEeGGzu7fmW9pXw" name="statusCode" visibility="private" isReadOnly="true" aggregation="composite">
      <ownedComment xmi:id="_2H_q0RSVEeGGzu7fmW9pXw">
        <body>&lt;p>&#xD;
The statusCode associated with any concern must be one of the following values:&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
&lt;b>active&lt;/b>: A concern that is still being tracked.&#xD;
&lt;b>suspended&lt;/b>: A concern that is active, but which may be set aside. For example, this value might be used to suspend concern&#xD;
about a patient problem after some period of remission, but before assumption that the concern has been resolved.&#xD;
&lt;b>aborted&lt;/b>: A concern that is no longer actively being tracked, but for reasons other than because the problem was resolved.&#xD;
This value might be used to mark a concern as being aborted after a patient leaves care against medical advice.&#xD;
&lt;b>completed&lt;/b>:&#xD;
The problem, allergy or medical state has been resolved and the concern no longer needs to be tracked except for&#xD;
historical purposes.&#xD;
&lt;/p></body>
      </ownedComment>
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_iYn74D55Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_2H_q0xSVEeGGzu7fmW9pXw" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_2H_q0hSVEeGGzu7fmW9pXw" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2IBgABSVEeGGzu7fmW9pXw" name="effectiveTime" visibility="private" isReadOnly="true" aggregation="composite">
      <ownedComment xmi:id="_2IBgARSVEeGGzu7fmW9pXw">
        <body>The effectiveTime element records the starting and ending times during which the concern was active on the Problem List.</body>
      </ownedComment>
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_QYeW4D5-Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_2IBgAxSVEeGGzu7fmW9pXw" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_2IBgAhSVEeGGzu7fmW9pXw" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fDrAULS6EeWcPq3zAthoUQ" name="entryRelationship" type="_fDpLILS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fDrAUbS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fDrAUrS6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_Dw0uYUxqEd6h-an5IXo-DA"/>
      <association href="../consol.uml#_fDqZQLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fDpLILS6EeWcPq3zAthoUQ" name="ProblemObservationEntryRelationship">
      <ownedRule xmi:id="_YmIdsLTREeWEoeeTdrbyVw" name="ProblemConcernActProblemObservationEntryRelationshipProblemObservation">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fDs1gLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_YmIdsbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->exists(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::ProblemObservation))</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fDpLIbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.cda/model/cda.uml#_BoxMQEcFEd6besF9iFIJkQ"/>
      </generalization>
      <ownedAttribute xmi:id="_fDtckLS6EeWcPq3zAthoUQ" name="problemObservation" type="_5Ha7ABUyEeGbmN_W114JUw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fDtckbS6EeWcPq3zAthoUQ" value="1"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fDtckrS6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_VmlJEUcGEd6besF9iFIJkQ"/>
        <association href="../consol.uml#_fDs1gLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_2H7ZYBSVEeGGzu7fmW9pXw" base_Class="_2H6yUBSVEeGGzu7fmW9pXw" templateId="2.16.840.1.113883.10.20.22.4.3">
    <ruleId>CONF:16772, CONF:16773, CONF:1198-32509</ruleId>
  </CDA:CDATemplate>
  <CDA:ConstraintValidation xmi:id="_2IFxcBSVEeGGzu7fmW9pXw" base_Constraint="_2IFKYxSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9032</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_2IFxdBSVEeGGzu7fmW9pXw"/>
  <CDA:ConstraintValidation xmi:id="_2IGYghSVEeGGzu7fmW9pXw"/>
  <CDA:ConstraintValidation xmi:id="_2IG_lBSVEeGGzu7fmW9pXw" severity="INFO"/>
  <CDA:ConstraintValidation xmi:id="_2IHmohSVEeGGzu7fmW9pXw"/>
  <CDA:PropertyValidation xmi:id="_2H91ohSVEeGGzu7fmW9pXw" base_Property="_2H91oBSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9024, R2.1=CONF:1198-9024</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_2H-cshSVEeGGzu7fmW9pXw" base_Property="_2H-csBSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9025, R2.1=CONF:1198-9025</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_2H_DwBSVEeGGzu7fmW9pXw" base_Property="_2H-csxSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9026, R2.1=CONF:1198-9026</ruleId>
  </CDA:PropertyValidation>
  <CDA:ValueSetConstraint xmi:id="_2IAR4BSVEeGGzu7fmW9pXw" base_Property="_2H_q0BSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9029</ruleId>
    <reference href="../consol-vocab.uml#_2GDxJhSVEeGGzu7fmW9pXw"/>
  </CDA:ValueSetConstraint>
  <CDA:PropertyValidation xmi:id="_2IBgBBSVEeGGzu7fmW9pXw" base_Property="_2IBgABSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9030, R2.1=CONF:1198-9030</ruleId>
  </CDA:PropertyValidation>
  <uml:Class xmi:id="_2ExXsBSVEeGGzu7fmW9pXw" name="HealthStatusObservation">
    <ownedComment xmi:id="_2ExXsRSVEeGGzu7fmW9pXw" annotatedElement="_2ExXsBSVEeGGzu7fmW9pXw">
      <body>The Health Status Observation records information about the current health status of the patient.</body>
    </ownedComment>
    <ownedRule xmi:id="_2ExXshSVEeGGzu7fmW9pXw" name="HealthStatusObservationHasTextReference">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_2ExXsxSVEeGGzu7fmW9pXw">
        <language>Analysis</language>
        <language>OCL</language>
        <body>text, if present, SHOULD contain zero or one [0..1] reference</body>
        <body>not self.text.oclIsUndefined() implies self.text->forAll(reference->size() = 1)</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_1RiOwOJrEeG3cO7ebC3QuA" name="HealthStatusObservationTextReferenceValue" constrainedElement="_QEznYCf4EeGO5_JBy9h6BA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_8fXHYOJrEeG3cO7ebC3QuA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>reference, if present, SHOULD contain zero or one [0..1] @value</body>
        <body>self.text->forAll(reference->size() = 1) implies self.text->forAll(reference->one(value->size() = 1))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_QEznYCf4EeGO5_JBy9h6BA" name="HealthStatusObservationHasTextReferenceValue" constrainedElement="_2ExXshSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_SLltsCf4EeGO5_JBy9h6BA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>reference/@value SHALL begin with a '#' and SHALL point to its corresponding narrative (using the approach defined in CDA Release 2, section 4.3.5.1)</body>
        <body>not self.text.reference.value.oclIsUndefined() implies not self.getSection().text.getText(self.text.reference.value.substring(2, self.text.reference.value.size())).oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S71NULTREeWEoeeTdrbyVw" name="HealthStatusObservationTemplateId" constrainedElement="_2ExXsBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S71NUbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.4.5')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S77T8LTREeWEoeeTdrbyVw" name="HealthStatusObservationClassCode" constrainedElement="_2E0bABSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S77T8bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.classCode=vocab::ActClassObservation::OBS</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S79wMLTREeWEoeeTdrbyVw" name="HealthStatusObservationMoodCode" constrainedElement="_2E0bAxSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S79wMbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.moodCode=vocab::x_ActMoodDocumentObservation::EVN</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S8D20LTREeWEoeeTdrbyVw" name="HealthStatusObservationCodeP" constrainedElement="_2E1CERSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S8D20bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S8AMcLTREeWEoeeTdrbyVw" name="HealthStatusObservationCode" constrainedElement="_2E1CERSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S8AMcbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = self.code.oclAsType(datatypes::CD) in 
value.code = '11323-3' and value.codeSystem = '2.16.840.1.113883.6.1'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S8HhMLTREeWEoeeTdrbyVw" name="HealthStatusObservationText" constrainedElement="_2ExXtRSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S8HhMbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>((not self.text.oclIsUndefined()) and self.text.isNullFlavorUndefined()) implies (not self.text.oclIsUndefined())</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S8MZsLTREeWEoeeTdrbyVw" name="HealthStatusObservationStatusCodeP" constrainedElement="_2E23QBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S8MZsbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S8J9cLTREeWEoeeTdrbyVw" name="HealthStatusObservationStatusCode" constrainedElement="_2E23QBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S8J9cbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined() and self.statusCode.oclIsKindOf(datatypes::CS) and 
let value : datatypes::CS = self.statusCode.oclAsType(datatypes::CS) in 
value.code = 'completed'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S8QEELTREeWEoeeTdrbyVw" name="HealthStatusObservationValue" constrainedElement="_2ExXuBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S8QEEbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.value->size() = 1 and self.value->forAll(element | not element.oclIsUndefined() and element.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = element.oclAsType(datatypes::CD) in 
value.codeSystem = '2.16.840.1.113883.6.96' and (value.code = '81323004' or value.code = '313386006' or value.code = '162467007' or value.code = '161901003' or value.code = '271593001' or value.code = '21134002' or value.code = '161045001' or value.code = '419099009' or value.code = '135818000' or value.code = '135815002'))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S8etkLTREeWEoeeTdrbyVw" name="HealthStatusObservationValueP" constrainedElement="_2ExXuBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S8etkbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.value->size() = 1 and self.value->forAll(element | element.oclIsTypeOf(datatypes::CD))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_2E56kRSVEeGGzu7fmW9pXw">
      <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_bJyIQDxYEd6JwqSGecoePg"/>
    </generalization>
    <ownedAttribute xmi:id="_2E0bABSVEeGGzu7fmW9pXw" name="classCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yVdYEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_2E0bARSVEeGGzu7fmW9pXw" name="OBS">
        <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yVdYEDcEd6xYZuu1VKCVw"/>
        <instance xmi:type="uml:EnumerationLiteral" href="pathmap://VOCAB_MODEL/vocab.uml#__yVdkkDcEd6xYZuu1VKCVw"/>
      </defaultValue>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2E0bAxSVEeGGzu7fmW9pXw" name="moodCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yeW3UDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_2E0bBBSVEeGGzu7fmW9pXw" name="EVN">
        <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yeW3UDcEd6xYZuu1VKCVw"/>
        <instance xmi:type="uml:EnumerationLiteral" href="pathmap://VOCAB_MODEL/vocab.uml#__yeW30DcEd6xYZuu1VKCVw"/>
      </defaultValue>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2E1CERSVEeGGzu7fmW9pXw" name="code" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2ExXtRSVEeGGzu7fmW9pXw" name="text" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_CowXkDxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_NTUXMSf4EeGO5_JBy9h6BA"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_NTUXMCf4EeGO5_JBy9h6BA" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2E23QBSVEeGGzu7fmW9pXw" name="statusCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_iYn74D55Ed6cla2oXsPtlA"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2ExXuBSVEeGGzu7fmW9pXw" name="value" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
  </uml:Class>
  <CDA:ConstraintValidation xmi:id="_2Ezz8BSVEeGGzu7fmW9pXw" severity="WARNING" base_Constraint="_2ExXshSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9271</ruleId>
  </CDA:ConstraintValidation>
  <CDA:PropertyValidation xmi:id="_2E0bAhSVEeGGzu7fmW9pXw" base_Property="_2E0bABSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9057</ruleId>
    <ruleId>R2.0=CONF:1098-9057</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_2E1CEBSVEeGGzu7fmW9pXw" base_Property="_2E0bAxSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9072</ruleId>
    <ruleId>R2.0=CONF:1098-9072</ruleId>
  </CDA:PropertyValidation>
  <CDA:CodeSystemConstraint xmi:id="_2E1CEhSVEeGGzu7fmW9pXw" code="11323-3" displayName="Health status" base_Property="_2E1CERSVEeGGzu7fmW9pXw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_3-cwsCWrEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:9073</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:TextValue xmi:id="_2Ex-wBSVEeGGzu7fmW9pXw" severity="WARNING" base_Property="_2ExXtRSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9270</ruleId>
  </CDA:TextValue>
  <CDA:CodeSystemConstraint xmi:id="_2E23QRSVEeGGzu7fmW9pXw" code="completed" displayName="Completed" base_Property="_2E23QBSVEeGGzu7fmW9pXw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_e8ZEoCWvEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:9074</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:ValueSetConstraint xmi:id="_2Eyl0BSVEeGGzu7fmW9pXw" base_Property="_2ExXuBSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9075</ruleId>
    <ruleId>R2.0=CONF:1098-9075</ruleId>
    <reference href="../consol-vocab.uml#_MTK-YeJsEeG3cO7ebC3QuA"/>
  </CDA:ValueSetConstraint>
  <CDA:CDATemplate xmi:id="_p4UDcBnbEeGs5a462vYX5Q" base_Class="_2ExXsBSVEeGGzu7fmW9pXw" templateId="2.16.840.1.113883.10.20.22.4.5">
    <ruleId>CONF:16756</ruleId>
    <ruleId>CONF:16757</ruleId>
  </CDA:CDATemplate>
  <uml:Class xmi:id="_naxrkBVdEeGQCvUGzi1kDQ" name="ProblemSectionEntriesOptional">
    <ownedComment xmi:id="_meK94CAoEeGetMjKLkqR8g">
      <body>This section lists and describes all relevant clinical problems at the time the document is generated. At a minimum, all pertinent current and historical problems should be listed.</body>
    </ownedComment>
    <ownedRule xmi:id="_TlB7ULTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTemplateId" constrainedElement="_naxrkBVdEeGQCvUGzi1kDQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TlB7UbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.2.5')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TlEXkLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalCode" constrainedElement="_naxrmBVdEeGQCvUGzi1kDQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TlEXkbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CE) and 
let value : datatypes::CE = self.code.oclAsType(datatypes::CE) in 
value.code = '11450-4' and value.codeSystem = '2.16.840.1.113883.6.1'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TlGz0LTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalCodeP" constrainedElement="_naxrmBVdEeGQCvUGzi1kDQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TlGz0bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TlJ3ILTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTitle" constrainedElement="_naxrmRVdEeGQCvUGzi1kDQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TlJ3IbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.title.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TlLFQLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalText" constrainedElement="_naxrmhVdEeGQCvUGzi1kDQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TlLFQbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.text.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_ZiD6cLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalEntry">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fNTdcLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_ZiD6cbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.nullFlavor &lt;> vocab::NullFlavor::NI implies entry->one(entry : cda::Entry | not entry.oclIsUndefined() and entry.oclIsKindOf(consol::ProblemSectionEntriesOptional::ProblemConcernActEntry))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_naxrlxVdEeGQCvUGzi1kDQ">
      <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_qIf_wDxXEd6JwqSGecoePg"/>
    </generalization>
    <ownedAttribute xmi:id="_naxrmBVdEeGQCvUGzi1kDQ" name="code" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_Z1EGIDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_naxrmRVdEeGQCvUGzi1kDQ" name="title" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_EaTNsDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_naxrmhVdEeGQCvUGzi1kDQ" name="text" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_0jvq8E8AEd6ohP_YEXs4Wg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_naxrnBVdEeGQCvUGzi1kDQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_naxrmxVdEeGQCvUGzi1kDQ" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fNTdcbS6EeWcPq3zAthoUQ" name="entry" type="_fNSPULS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fNTdcrS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fNTdc7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_SvZ88DxYEd6JwqSGecoePg"/>
      <association href="../consol.uml#_fNTdcLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fNSPULS6EeWcPq3zAthoUQ" name="ProblemConcernActEntry">
      <ownedRule xmi:id="_ZiTLALTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalProblemConcernActEntryProblemConcern">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fNUrkLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_ZiTLAbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.act->select(act : cda::Act | not act.oclIsUndefined() and act.oclIsKindOf(consol::ProblemConcernAct))->size() >= 0</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fNSPUbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_r0FX0DxXEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_fNVSoLS6EeWcPq3zAthoUQ" name="problemConcern" type="_2H6yUBSVEeGGzu7fmW9pXw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fNVSobS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fNVSorS6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_mNS5ATxYEd6JwqSGecoePg"/>
        <association href="../consol.uml#_fNUrkLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_8A93ABVeEeGQCvUGzi1kDQ" base_Class="_naxrkBVdEeGQCvUGzi1kDQ" templateId="2.16.840.1.113883.10.20.22.2.5">
    <ruleId>CONF:7877</ruleId>
  </CDA:CDATemplate>
  <uml:Class xmi:id="_SjN_8BUzEeGbmN_W114JUw" name="ProblemStatus">
    <ownedComment xmi:id="_DRGcECA8EeG9GZYpu7WBOQ">
      <body>&lt;p>&#xD;
The Problem Status records whether the indicated problem is active, inactive, or resolved.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
THIS TEMPLATE HAS BEEN DEPRECATED IN C-CDA R2 AND MAY BE DELETED FROM A FUTURE RELEASE OF THIS IMPLEMENTATION GUIDE. USE OF THIS TEMPLATE IS NOT RECOMMENDED.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
Reason for deprecation: Per the explanation in Volume 1, Section 3.2 &quot;Determining a Clinical Statement's Status&quot;, the status of a problem is determined based on attributes of the Problem Observation&#xD;
&lt;/p></body>
    </ownedComment>
    <ownedRule xmi:id="_NGUbACp_EeGiFpKeZIy4Pg" name="ProblemStatusTextReference" constrainedElement="_SjN_8BUzEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_QDaeQCp_EeGiFpKeZIy4Pg">
        <language>Analysis</language>
        <language>OCL</language>
        <body>text, if present, SHOULD contain zero or one [0..1] reference</body>
        <body>not self.text.oclIsUndefined() implies self.text->forAll(reference->size() = 1)</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_z76qMOJsEeG3cO7ebC3QuA" name="ProblemStatusReferenceValue" constrainedElement="_NGUbACp_EeGiFpKeZIy4Pg">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_4LlIkOJsEeG3cO7ebC3QuA">
        <language>OCL</language>
        <body>self.text->forAll(reference->size() = 1) implies self.text->forAll(reference->one(value->size() = 1))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S6G-kCp_EeGiFpKeZIy4Pg" name="ProblemStatusTextReferenceValue" constrainedElement="_NGUbACp_EeGiFpKeZIy4Pg">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_UfbWkCp_EeGiFpKeZIy4Pg">
        <language>Analysis</language>
        <language>OCL</language>
        <body>reference/@value SHALL begin with a '#' and SHALL point to its corresponding narrative (using the approach defined in CDA Release 2, section 4.3.5.1)</body>
        <body>not self.text.reference.value.oclIsUndefined() implies not self.getSection().text.getText(self.text.reference.value.substring(2, self.text.reference.value.size())).oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Tigy0LTREeWEoeeTdrbyVw" name="ProblemStatusTemplateId" constrainedElement="_SjN_8BUzEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Tigy0bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.4.6')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TilEQLTREeWEoeeTdrbyVw" name="ProblemStatusClassCode" constrainedElement="_XGPfMBUzEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TilEQbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.classCode=vocab::ActClassObservation::OBS</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TimSYLTREeWEoeeTdrbyVw" name="ProblemStatusMoodCode" constrainedElement="_XGYpIhUzEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TimSYbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.moodCode=vocab::x_ActMoodDocumentObservation::EVN</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Tiqj0LTREeWEoeeTdrbyVw" name="ProblemStatusCodeP" constrainedElement="_XGYpIBUzEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Tiqj0bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TioHkLTREeWEoeeTdrbyVw" name="ProblemStatusCode" constrainedElement="_XGYpIBUzEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TioHkbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = self.code.oclAsType(datatypes::CD) in 
value.code = '33999-4' and value.codeSystem = '2.16.840.1.113883.6.1'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TitAELTREeWEoeeTdrbyVw" name="ProblemStatusText" constrainedElement="_g9ArUCA8EeG9GZYpu7WBOQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TitAEbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>((not self.text.oclIsUndefined()) and self.text.isNullFlavorUndefined()) implies (not self.text.oclIsUndefined())</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Tix4kLTREeWEoeeTdrbyVw" name="ProblemStatusStatusCodeP" constrainedElement="_XGYpJBUzEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Tix4kbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TiwDYLTREeWEoeeTdrbyVw" name="ProblemStatusStatusCode" constrainedElement="_XGYpJBUzEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TiwDYbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined() and self.statusCode.oclIsKindOf(datatypes::CS) and 
let value : datatypes::CS = self.statusCode.oclAsType(datatypes::CS) in 
value.code = 'completed'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Ti_T8LTREeWEoeeTdrbyVw" name="ProblemStatusValueP" constrainedElement="_g9B5cCA8EeG9GZYpu7WBOQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Ti_T8bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Ti074LTREeWEoeeTdrbyVw" name="ProblemStatusValue" constrainedElement="_g9B5cCA8EeG9GZYpu7WBOQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Ti1i8LTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.value->size() = 1 and self.value->forAll(element | not element.oclIsUndefined() and element.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = element.oclAsType(datatypes::CD) in 
value.codeSystem = '2.16.840.1.113883.6.96' and (value.code = '55561003' or value.code = '73425007' or value.code = '413322009'))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_SjN_8RUzEeGbmN_W114JUw">
      <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_bJyIQDxYEd6JwqSGecoePg"/>
    </generalization>
    <ownedAttribute xmi:id="_XGPfMBUzEeGbmN_W114JUw" name="classCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yVecEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_LszdECA8EeG9GZYpu7WBOQ" value="OBS"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_FcjT0EbtEd6besF9iFIJkQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_XGYpIhUzEeGbmN_W114JUw" name="moodCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__zOoCEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_Mqks4CA8EeG9GZYpu7WBOQ" value="EVN"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_BLZhcEo_Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_XGYpIBUzEeGbmN_W114JUw" name="code" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_WEYp4Eo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_g9ArUCA8EeG9GZYpu7WBOQ" name="text" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_CowXkDxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9ArUiA8EeG9GZYpu7WBOQ"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9ArUSA8EeG9GZYpu7WBOQ" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_bHcUEEo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_XGYpJBUzEeGbmN_W114JUw" name="statusCode" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_iYn74D55Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_b9V7oSf4EeGO5_JBy9h6BA" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_b9V7oCf4EeGO5_JBy9h6BA" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_c-D3cEo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_g9B5cCA8EeG9GZYpu7WBOQ" name="value" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_IXc1YSA9EeG9GZYpu7WBOQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_IXc1YCA9EeG9GZYpu7WBOQ" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_tRpv0Eo-Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_YpxugBUzEeGbmN_W114JUw" base_Class="_SjN_8BUzEeGbmN_W114JUw" templateId="2.16.840.1.113883.10.20.22.4.6">
    <ruleId>CONF:7359</ruleId>
  </CDA:CDATemplate>
  <uml:Class xmi:id="_5Ha7ABUyEeGbmN_W114JUw" name="ProblemObservation">
    <ownedComment xmi:id="_-wq7oCAsEeGetMjKLkqR8g">
      <body>&lt;p>A problem is a clinical statement that a clinician has noted. In health care it is a condition that requires monitoring or diagnostic, therapeutic, or educational action. It also refers to any unmet or partially met basic human need.&lt;/p>&#xD;
&lt;p>A Problem Observation is required to be wrapped in an act wrapper in locations such as the Problem Section, Allergies Section, and Hospital Discharge Diagnosis Section, where the type of problem needs to be identified or the condition tracked. A Problem Observation can be a valid &quot;standalone&quot; template instance in cases where a simple problem observation is to be sent.&lt;/p>&#xD;
&lt;p>The negationInd attribute, if true, specifies that the problem indicated was observed to not have occurred (which is subtly but importantly different from having not been observed). NegationInd='true' is an acceptable way to make a clinical assertion that something did not occur, for example, &quot;no diabetes&quot;.&lt;/p></body>
    </ownedComment>
    <ownedRule xmi:id="_vaH7gCBEEeG938evaWkvcA" name="ProblemObservationHasTextReference">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_vaH7gSBEEeG938evaWkvcA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>The text, if present, SHOULD contain zero or one [0..1] reference</body>
        <body>not self.text.oclIsUndefined() implies self.text->forAll(reference->size() = 1)</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_IO0RwOJkEeG3cO7ebC3QuA" name="ProblemObservationTextReferenceValue" constrainedElement="_vaH7gCBEEeG938evaWkvcA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WnbWEOJkEeG3cO7ebC3QuA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>reference, if present, SHALL contain exactly one [1..1] @value</body>
        <body>self.text->forAll(reference->size() = 1) implies self.text->forAll(reference->one(value->size() = 1))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TFQWECf3EeGO5_JBy9h6BA" name="ProblemObservationHasTextReferenceValue" constrainedElement="_vaH7gCBEEeG938evaWkvcA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VepPUCf3EeGO5_JBy9h6BA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>reference/@value SHALL begin with a '#' and SHALL point to its corresponding narrative (using the approach defined in CDA Release 2, section 4.3.5.1)</body>
        <body>not self.text.reference.value.oclIsUndefined() implies not self.getSection().text.getText(self.text.reference.value.substring(2, self.text.reference.value.size())).oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_5_4wYCAwEeGetMjKLkqR8g" name="ProblemObservationHasOnsetDate">
      <ownedComment xmi:id="_C2lzYOJlEeG3cO7ebC3QuA">
        <body>This field represents the onset date (CONF:16882)</body>
      </ownedComment>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_5_4wYSAwEeGetMjKLkqR8g">
        <language>Analysis</language>
        <language>OCL</language>
        <body>The effectiveTime element , if present, SHALL contain exactly one [1..1] low</body>
        <body>not self.effectiveTime.oclIsUndefined() implies not self.effectiveTime.low.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_6nx20CAwEeGetMjKLkqR8g" name="ProblemObservationHasResolutionDate">
      <ownedComment xmi:id="_J5q0kOJlEeG3cO7ebC3QuA">
        <body>If the problem is resolved, record the resolution date in effectiveTime/high. If the problem is known to be resolved but the resolution date is not known, use @nullFlavor=&quot;UNK&quot; (CONF:16883)</body>
      </ownedComment>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_6nx20SAwEeGetMjKLkqR8g">
        <language>Analysis</language>
        <language>OCL</language>
        <body>effectiveTime, if present, MAY contain zero or one [0..1] high</body>
        <body>not self.effectiveTime.oclIsUndefined() implies not self.effectiveTime.high.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_jlZuoCf3EeGO5_JBy9h6BA" name="ProblemObservationValueNullFlavor" constrainedElement="_5Ha7ABUyEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_r1sJ0Cf3EeGO5_JBy9h6BA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>value MAY contain zero or one [0..1] @nullFlavor</body>
        <body>self.value->forAll(val | not val.isNullFlavorUndefined())</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_1fQFECf3EeGO5_JBy9h6BA" name="ProblemObservationAgeObservationInversion">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_48XFICf3EeGO5_JBy9h6BA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>entryRelationship with target entry Age Observation SHALL contain exactly one [1..1] @inversionInd=&quot;true&quot; True</body>
        <body>self.entryRelationship->select(er : cda::EntryRelationship | not er.observation.oclIsUndefined() and er.observation.oclIsKindOf(consol::AgeObservation))->forAll(ent : cda::EntryRelationship | ent.inversionInd=true)</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_nck40OJlEeG3cO7ebC3QuA" name="ProblemObservationValueTranslation" constrainedElement="_5Ha7ABUyEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_qYoaQOJlEeG3cO7ebC3QuA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>value MAY contain zero or more [0..*] translation</body>
        <body>self.value.oclAsType(datatypes::CD).translation->size()>0</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_uQVroOJlEeG3cO7ebC3QuA" name="ProblemObservationValueTranslationCode" constrainedElement="_nck40OJlEeG3cO7ebC3QuA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_v91IMOJlEeG3cO7ebC3QuA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>translation, if present, MAY contain zero or one [0..1] @code (CodeSystem: ICD10CM 2.16.840.1.113883.6.90 STATIC)</body>
        <body>self.value.oclAsType(datatypes::CD).translation->size()>0 implies self.value.oclAsType(datatypes::CD).translation->forAll(code->size() = 1)</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_ThdC4LTREeWEoeeTdrbyVw" name="ProblemObservationTemplateId" constrainedElement="_5Ha7ABUyEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_ThdC4bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.4.4')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_ThmM0LTREeWEoeeTdrbyVw" name="ProblemObservationClassCode" constrainedElement="_6-B3UBUyEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Thmz4LTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.classCode=vocab::ActClassObservation::OBS</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_ThoCALTREeWEoeeTdrbyVw" name="ProblemObservationMoodCode" constrainedElement="_6-ejRBUyEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_ThoCAbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.moodCode=vocab::x_ActMoodDocumentObservation::EVN</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Thp3MLTREeWEoeeTdrbyVw" name="ProblemObservationNegationInd" constrainedElement="_qzvdsCAtEeGetMjKLkqR8g">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Thp3MbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>(not self.negationInd.oclIsUndefined()) implies (not self.negationInd.oclIsUndefined())</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_ThrFULTREeWEoeeTdrbyVw" name="ProblemObservationId" constrainedElement="_6-ejQBUyEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_ThrFUbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.id->isEmpty()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Th35oLTREeWEoeeTdrbyVw" name="ProblemObservationCodeP" constrainedElement="_6-UyQBUyEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Th35obTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_ThuIoLTREeWEoeeTdrbyVw" name="ProblemObservationCode" constrainedElement="_6-UyQBUyEeGbmN_W114JUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_ThuIobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = self.code.oclAsType(datatypes::CD) in 
value.codeSystem = '2.16.840.1.113883.6.96' and (value.code = '404684003' or value.code = '409586006' or value.code = '282291009' or value.code = '64572001' or value.code = '248536006' or value.code = '418799008' or value.code = '55607006' or value.code = '373930000')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TiCRsLTREeWEoeeTdrbyVw" name="ProblemObservationText" constrainedElement="_zGbQJCAuEeGetMjKLkqR8g">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TiCRsbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>((not self.text.oclIsUndefined()) and self.text.isNullFlavorUndefined()) implies (not self.text.oclIsUndefined())</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TiHKMLTREeWEoeeTdrbyVw" name="ProblemObservationStatusCodeP" constrainedElement="_zGbQICAuEeGetMjKLkqR8g">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TiHKMbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TiEt8LTREeWEoeeTdrbyVw" name="ProblemObservationStatusCode" constrainedElement="_zGbQICAuEeGetMjKLkqR8g">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TiEt8bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined() and self.statusCode.oclIsKindOf(datatypes::CS) and 
let value : datatypes::CS = self.statusCode.oclAsType(datatypes::CS) in 
value.code = 'completed'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TiI_YLTREeWEoeeTdrbyVw" name="ProblemObservationEffectiveTime" constrainedElement="_zGapECAuEeGetMjKLkqR8g">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TiJmcLTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>((not self.effectiveTime.oclIsUndefined()) and self.effectiveTime.isNullFlavorUndefined()) implies (not self.effectiveTime.oclIsUndefined())</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TiMCsLTREeWEoeeTdrbyVw" name="ProblemObservationValue" constrainedElement="_zGb3MSAuEeGetMjKLkqR8g">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TiMCsbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.value->size() = 1 and self.value->forAll(element | not element.oclIsUndefined() and element.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = element.oclAsType(datatypes::CD) in 
value.codeSystem = '2.16.840.1.113883.6.96' and not value.code.oclIsUndefined())</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_TiWawLTREeWEoeeTdrbyVw" name="ProblemObservationValueP" constrainedElement="_zGb3MSAuEeGetMjKLkqR8g">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_TiWawbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.value->size() = 1 and self.value->forAll(element | element.oclIsTypeOf(datatypes::CD))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_ZfnDYLTREeWEoeeTdrbyVw" name="ProblemObservationEntryRelationship">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fM9fMLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_ZfnDYbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.oclIsUndefined() and entryRelationship.oclIsKindOf(consol::ProblemObservation::AgeObservationEntryRelationship))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_ZgGyoLTREeWEoeeTdrbyVw" name="ProblemObservationEntryRelationship">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fNBJkLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_ZgGyobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.oclIsUndefined() and entryRelationship.oclIsKindOf(consol::ProblemObservation::ProblemStatusEntryRelationship))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_ZglTwLTREeWEoeeTdrbyVw" name="ProblemObservationEntryRelationship">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fNEz8LS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_ZglTwbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.oclIsUndefined() and entryRelationship.oclIsKindOf(consol::ProblemObservation::HealthStatusObservationEntryRelationship))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_5Ha7ARUyEeGbmN_W114JUw">
      <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_bJyIQDxYEd6JwqSGecoePg"/>
    </generalization>
    <ownedAttribute xmi:id="_6-B3UBUyEeGbmN_W114JUw" name="classCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yVecEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_OTwl4Ny1EeG3d7pEoxuOZA" value="OBS"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_FcjT0EbtEd6besF9iFIJkQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_6-ejRBUyEeGbmN_W114JUw" name="moodCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__zOoCEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_h6I_wCAtEeGetMjKLkqR8g" value="EVN"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_BLZhcEo_Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_qzvdsCAtEeGetMjKLkqR8g" name="negationInd" visibility="private" isReadOnly="true">
      <ownedComment xmi:id="_ym7GICAtEeGetMjKLkqR8g">
        <body>Use negationInd=&quot;true&quot; to indicate that the problem was not observed (CONF:16880)</body>
      </ownedComment>
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBooleanObject"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_qzvdsiAtEeGetMjKLkqR8g"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qzvdsSAtEeGetMjKLkqR8g" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_LYVyAExtEd6h-an5IXo-DA"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_6-ejQBUyEeGbmN_W114JUw" name="id" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.hl7.datatypes/model/datatypes.uml#_culQ8DxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_4M_WwSAtEeGetMjKLkqR8g" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_4M_WwCAtEeGetMjKLkqR8g" value="*"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_UGBfwEo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_6-UyQBUyEeGbmN_W114JUw" name="code" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_WEYp4Eo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_zGbQJCAuEeGetMjKLkqR8g" name="text" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_CowXkDxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_zGbQJiAuEeGetMjKLkqR8g"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_zGbQJSAuEeGetMjKLkqR8g" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_bHcUEEo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_zGbQICAuEeGetMjKLkqR8g" name="statusCode" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_iYn74D55Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_o6jAESAwEeGetMjKLkqR8g" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_o6jAECAwEeGetMjKLkqR8g" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_c-D3cEo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_zGapECAuEeGetMjKLkqR8g" name="effectiveTime" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_QYeW4D5-Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_zGapEiAuEeGetMjKLkqR8g"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_zGapESAuEeGetMjKLkqR8g" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_fUQ50Eo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_zGb3MSAuEeGetMjKLkqR8g" name="value" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_F62GgSAxEeGetMjKLkqR8g" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_F62GgCAxEeGetMjKLkqR8g" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_tRpv0Eo-Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fM9fMbS6EeWcPq3zAthoUQ" name="entryRelationship" type="_fM8RELS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fM9fMrS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fM9fM7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_EV7mkUxqEd6h-an5IXo-DA"/>
      <association href="../consol.uml#_fM9fMLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fNBJkbS6EeWcPq3zAthoUQ" name="entryRelationship" type="_fM_7cLS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fNBJkrS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fNBJk7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_EV7mkUxqEd6h-an5IXo-DA"/>
      <association href="../consol.uml#_fNBJkLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fNFbALS6EeWcPq3zAthoUQ" name="entryRelationship" type="_fNEM4LS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fNFbAbS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fNFbArS6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_EV7mkUxqEd6h-an5IXo-DA"/>
      <association href="../consol.uml#_fNEz8LS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fM8RELS6EeWcPq3zAthoUQ" name="AgeObservationEntryRelationship">
      <ownedRule xmi:id="_Zf27ALTREeWEoeeTdrbyVw" name="ProblemObservationAgeObservationEntryRelationshipAgeObservation">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fM-tULS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_Zf27AbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::AgeObservation))->size() &lt;= 1</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fM8REbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.cda/model/cda.uml#_BoxMQEcFEd6besF9iFIJkQ"/>
      </generalization>
      <ownedAttribute xmi:id="_fM-tUbS6EeWcPq3zAthoUQ" name="ageObservation" type="_2EqqABSVEeGGzu7fmW9pXw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fM-tUrS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fM-tU7S6EeWcPq3zAthoUQ" value="1"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_VmlJEUcGEd6besF9iFIJkQ"/>
        <association href="../consol.uml#_fM-tULS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fM_7cLS6EeWcPq3zAthoUQ" name="ProblemStatusEntryRelationship">
      <ownedRule xmi:id="_ZgVcILTREeWEoeeTdrbyVw" name="ProblemObservationProblemStatusEntryRelationshipProblemStatus">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fNCXsLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_ZgVcIbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::ProblemStatus))->size() &lt;= 1</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fM_7cbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.cda/model/cda.uml#_BoxMQEcFEd6besF9iFIJkQ"/>
      </generalization>
      <ownedAttribute xmi:id="_fNC-wLS6EeWcPq3zAthoUQ" name="problemStatus" type="_SjN_8BUzEeGbmN_W114JUw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fNC-wbS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fNC-wrS6EeWcPq3zAthoUQ" value="1"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_VmlJEUcGEd6besF9iFIJkQ"/>
        <association href="../consol.uml#_fNCXsLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fNEM4LS6EeWcPq3zAthoUQ" name="HealthStatusObservationEntryRelationship">
      <ownedRule xmi:id="_Zg0kULTREeWEoeeTdrbyVw" name="ProblemObservationHealthStatusObservationEntryRelationshipHealthStatusObservation">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fNGpILS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_Zg0kUbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::HealthStatusObservation))->size() &lt;= 1</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fNEM4bS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.cda/model/cda.uml#_BoxMQEcFEd6besF9iFIJkQ"/>
      </generalization>
      <ownedAttribute xmi:id="_fNGpIbS6EeWcPq3zAthoUQ" name="healthStatusObservation" type="_2ExXsBSVEeGGzu7fmW9pXw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fNGpIrS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fNGpI7S6EeWcPq3zAthoUQ" value="1"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_VmlJEUcGEd6besF9iFIJkQ"/>
        <association href="../consol.uml#_fNGpILS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
  </uml:Class>
  <uml:Association xmi:id="_H_AaUBUzEeGbmN_W114JUw" memberEnd="_H_AaURUzEeGbmN_W114JUw">
    <ownedEnd xmi:id="_H_AaURUzEeGbmN_W114JUw" type="_5Ha7ABUyEeGbmN_W114JUw" isReadOnly="true" association="_H_AaUBUzEeGbmN_W114JUw"/>
  </uml:Association>
  <uml:Association xmi:id="_NozUYBUzEeGbmN_W114JUw" memberEnd="_NozUYRUzEeGbmN_W114JUw">
    <ownedEnd xmi:id="_NozUYRUzEeGbmN_W114JUw" type="_5Ha7ABUyEeGbmN_W114JUw" isReadOnly="true" association="_NozUYBUzEeGbmN_W114JUw"/>
  </uml:Association>
  <uml:Association xmi:id="_c6LMshUzEeGbmN_W114JUw" memberEnd="_c6LMsxUzEeGbmN_W114JUw">
    <ownedEnd xmi:id="_c6LMsxUzEeGbmN_W114JUw" type="_5Ha7ABUyEeGbmN_W114JUw" isReadOnly="true" association="_c6LMshUzEeGbmN_W114JUw"/>
  </uml:Association>
  <CDA:CDATemplate xmi:id="_GYVXcBUzEeGbmN_W114JUw" base_Class="_5Ha7ABUyEeGbmN_W114JUw" templateId="2.16.840.1.113883.10.20.22.4.4">
    <ruleId>CONF:14926, CONF:14927</ruleId>
  </CDA:CDATemplate>
  <uml:Class xmi:id="_2EqqABSVEeGGzu7fmW9pXw" name="AgeObservation">
    <ownedComment xmi:id="_2EqqARSVEeGGzu7fmW9pXw" annotatedElement="_2EqqABSVEeGGzu7fmW9pXw">
      <body>This Age Observation represents the subject's age at onset of an event or observation. The age of a relative in a Family History Observation at the time of that observation could also be inferred by comparing RelatedSubject/subject/birthTime with Observation/effectiveTime. However, a common scenario is that a patient will know the age of a relative when the relative had a certain condition or when the relative died, but will not know the actual year (e.g., &quot;grandpa died of a heart attack at the age of 50&quot;). Often times, neither precise dates nor ages are known (e.g. &quot;cousin died of congenital heart disease as an infant&quot;).</body>
    </ownedComment>
    <ownedRule xmi:id="_sPoAUCBCEeG938evaWkvcA" name="AgeObservationValueUnits" constrainedElement="_2EqqABSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_yRGakCBCEeG938evaWkvcA">
        <language>Analysis</language>
        <language>OCL</language>
        <body>This value SHALL contain exactly one [1..1] @unit, which SHALL be selected from ValueSet AgePQ_UCUM 2.16.840.1.113883.11.20.9.21 DYNAMIC</body>
        <body>self.value.oclAsType(datatypes::PQ).unit->size() = 1</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S7X6ULTREeWEoeeTdrbyVw" name="AgeObservationTemplateId" constrainedElement="_2EqqABSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S7X6UbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.4.31')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S7cLwLTREeWEoeeTdrbyVw" name="AgeObservationClassCode" constrainedElement="_2EqqAxSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S7cLwbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.classCode=vocab::ActClassObservation::OBS</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S7fPELTREeWEoeeTdrbyVw" name="AgeObservationMoodCode" constrainedElement="_2EqqBRSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S7fPEbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.moodCode=vocab::x_ActMoodDocumentObservation::EVN</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S7mj0LTREeWEoeeTdrbyVw" name="AgeObservationCodeP" constrainedElement="_2EqqBxSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S7mj0bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S7iSYLTREeWEoeeTdrbyVw" name="AgeObservationCode" constrainedElement="_2EqqBxSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S7iSYbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = self.code.oclAsType(datatypes::CD) in 
value.code = '445518008' and value.codeSystem = '2.16.840.1.113883.6.96'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S7sDYLTREeWEoeeTdrbyVw" name="AgeObservationStatusCode" constrainedElement="_2EqqCBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S7sDYbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined() and self.statusCode.oclIsKindOf(datatypes::CS) and 
let value : datatypes::CS = self.statusCode.oclAsType(datatypes::CS) in 
value.code = 'completed'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S7vtwLTREeWEoeeTdrbyVw" name="AgeObservationStatusCodeP" constrainedElement="_2EqqCBSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S7vtwbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_S7zYILTREeWEoeeTdrbyVw" name="AgeObservationValue" constrainedElement="_2EqqCxSVEeGGzu7fmW9pXw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_S7zYIbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.value->size() = 1 and self.value->forAll(element | element.oclIsTypeOf(datatypes::PQ))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_2EvigBSVEeGGzu7fmW9pXw">
      <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_bJyIQDxYEd6JwqSGecoePg"/>
    </generalization>
    <ownedAttribute xmi:id="_2EqqAxSVEeGGzu7fmW9pXw" name="classCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yVecEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_2EqqBBSVEeGGzu7fmW9pXw" value="OBS"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_FcjT0EbtEd6besF9iFIJkQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2EqqBRSVEeGGzu7fmW9pXw" name="moodCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__zOoCEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_2EqqBhSVEeGGzu7fmW9pXw" value="EVN"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_BLZhcEo_Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2EqqBxSVEeGGzu7fmW9pXw" name="code" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2EqqCBSVEeGGzu7fmW9pXw" name="statusCode" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_iYn74D55Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_nEo0ESBAEeG9GZYpu7WBOQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_nEo0ECBAEeG9GZYpu7WBOQ" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_2EqqCxSVEeGGzu7fmW9pXw" name="value" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_3mPzYD59Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_2EqqDhSVEeGGzu7fmW9pXw" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_2EqqDRSVEeGGzu7fmW9pXw" value="1"/>
    </ownedAttribute>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_2EqqDxSVEeGGzu7fmW9pXw" base_Class="_2EqqABSVEeGGzu7fmW9pXw" templateId="2.16.840.1.113883.10.20.22.4.31">
    <ruleId>CONF:7899</ruleId>
  </CDA:CDATemplate>
  <CDA:PropertyValidation xmi:id="_2ErREBSVEeGGzu7fmW9pXw" base_Property="_2EqqAxSVEeGGzu7fmW9pXw">
    <ruleId>CONF:7613</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_2Er4IBSVEeGGzu7fmW9pXw" base_Property="_2EqqBRSVEeGGzu7fmW9pXw">
    <ruleId>CONF:7614</ruleId>
  </CDA:PropertyValidation>
  <CDA:CodeSystemConstraint xmi:id="_2Er4IRSVEeGGzu7fmW9pXw" code="445518008" displayName="Age At Onset" base_Property="_2EqqBxSVEeGGzu7fmW9pXw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_ya6aMCWsEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:16776</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:CodeSystemConstraint xmi:id="_2EttUBSVEeGGzu7fmW9pXw" code="completed" displayName="Completed" base_Property="_2EqqCBSVEeGGzu7fmW9pXw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_e8ZEoCWvEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:15966</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:PropertyValidation xmi:id="_2EuUYBSVEeGGzu7fmW9pXw" base_Property="_2EqqCxSVEeGGzu7fmW9pXw">
    <ruleId>CONF:7617</ruleId>
  </CDA:PropertyValidation>
  <uml:Association xmi:id="_1CFA0hUzEeGbmN_W114JUw" memberEnd="_1CFA0xUzEeGbmN_W114JUw">
    <ownedEnd xmi:id="_1CFA0xUzEeGbmN_W114JUw" type="_2H6yUBSVEeGGzu7fmW9pXw" isReadOnly="true" association="_1CFA0hUzEeGbmN_W114JUw"/>
  </uml:Association>
  <CDA:CodeSystemConstraint xmi:id="_Fbx7ACAoEeGetMjKLkqR8g" code="11450-4" displayName="Problem List" base_Property="_naxrmBVdEeGQCvUGzi1kDQ">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_3-cwsCWrEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:15408</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:TextValue xmi:id="_QmUg0CAoEeGetMjKLkqR8g" base_Property="_naxrmRVdEeGQCvUGzi1kDQ">
    <ruleId>CONF:7879, R2.1=CONF:1198-7879</ruleId>
  </CDA:TextValue>
  <CDA:PropertyValidation xmi:id="_TqvUECAoEeGetMjKLkqR8g" base_Property="_naxrmhVdEeGQCvUGzi1kDQ">
    <ruleId>CONF:7880, R2.1=CONF:1198-7880</ruleId>
  </CDA:PropertyValidation>
  <CDA:CodeSystemConstraint xmi:id="_k2bHgCApEeGetMjKLkqR8g" code="CONC" displayName="Concern" base_Property="_2H_DwRSVEeGGzu7fmW9pXw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_wOhRcE6REeC5ttwajeXVXg"/>
    <ruleId>CONF:9440</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:EntryRelationship xmi:id="_vSyGwCArEeGetMjKLkqR8g" base_Association="_1CFA0hUzEeGbmN_W114JUw" typeCode="SUBJ">
    <ruleId>CONF:15980</ruleId>
  </CDA:EntryRelationship>
  <CDA:PropertyValidation xmi:id="_dDG_YCAtEeGetMjKLkqR8g" base_Property="_6-B3UBUyEeGbmN_W114JUw">
    <ruleId>CONF:9041, R2.1=CONF:1198-9041</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_gYJBgCAtEeGetMjKLkqR8g" base_Property="_6-ejRBUyEeGbmN_W114JUw">
    <ruleId>CONF:9042, R2.1=CONF:1198-9042</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_uwAe8CAtEeGetMjKLkqR8g" severity="INFO" base_Property="_qzvdsCAtEeGetMjKLkqR8g">
    <ruleId>CONF:10139</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_4oveoCAtEeGetMjKLkqR8g" base_Property="_6-ejQBUyEeGbmN_W114JUw">
    <ruleId>CONF:9043, R2.1=CONF:1198-9043</ruleId>
  </CDA:PropertyValidation>
  <CDA:ValueSetConstraint xmi:id="_AbDkYCAuEeGetMjKLkqR8g" severity="WARNING" base_Property="_6-UyQBUyEeGbmN_W114JUw">
    <ruleId>CONF:9045</ruleId>
    <reference href="../consol-vocab.uml#_2Fw2OBSVEeGGzu7fmW9pXw"/>
  </CDA:ValueSetConstraint>
  <CDA:PropertyValidation xmi:id="_BxcdoCAwEeGetMjKLkqR8g" severity="WARNING" base_Property="_zGapECAuEeGetMjKLkqR8g">
    <ruleId>CONF:9050</ruleId>
  </CDA:PropertyValidation>
  <CDA:TextValue xmi:id="_E7YDACAwEeGetMjKLkqR8g" severity="WARNING" base_Property="_zGbQJCAuEeGetMjKLkqR8g">
    <ruleId>CONF:9185</ruleId>
  </CDA:TextValue>
  <CDA:CodeSystemConstraint xmi:id="_SsEywCAwEeGetMjKLkqR8g" code="completed" displayName="Completed" base_Property="_zGbQICAuEeGetMjKLkqR8g">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_e8ZEoCWvEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:9049, R2.1=CONF:1198-9049</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:ValueSetConstraint xmi:id="_JUSukCAxEeGetMjKLkqR8g" severity="WARNING" base_Property="_zGb3MSAuEeGetMjKLkqR8g">
    <ruleId>CONF:9058</ruleId>
    <reference href="../consol-vocab.uml#_2SVSkRSVEeGGzu7fmW9pXw"/>
  </CDA:ValueSetConstraint>
  <CDA:EntryRelationship xmi:id="_99C6wCA2EeG9GZYpu7WBOQ" severity="INFO" base_Association="_H_AaUBUzEeGbmN_W114JUw" typeCode="SUBJ">
    <ruleId>CONF:9059, CONF:9060, CONF:15590, R2.1=CONF:1198-9059, R2.1=CONF:1198-9060, R2.1=CONF:1198-15590</ruleId>
  </CDA:EntryRelationship>
  <CDA:EntryRelationship xmi:id="__Yj2gCA2EeG9GZYpu7WBOQ" severity="INFO" base_Association="_c6LMshUzEeGbmN_W114JUw" typeCode="REFR">
    <ruleId>CONF:9063, CONF:9068, CONF:15591</ruleId>
  </CDA:EntryRelationship>
  <CDA:EntryRelationship xmi:id="_AqupACA3EeG9GZYpu7WBOQ" severity="INFO" base_Association="_NozUYBUzEeGbmN_W114JUw" typeCode="REFR">
    <ruleId>CONF:9067, CONF:9064, CONF:15592</ruleId>
  </CDA:EntryRelationship>
  <CDA:PropertyValidation xmi:id="_IOVyICA8EeG9GZYpu7WBOQ" base_Property="_XGPfMBUzEeGbmN_W114JUw">
    <ruleId>CONF:7357</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_KzsDwCA8EeG9GZYpu7WBOQ" base_Property="_XGYpIhUzEeGbmN_W114JUw">
    <ruleId>CONF:7358</ruleId>
  </CDA:PropertyValidation>
  <CDA:CodeSystemConstraint xmi:id="_VJyU4CA8EeG9GZYpu7WBOQ" code="33999-4" displayName="Status" base_Property="_XGYpIBUzEeGbmN_W114JUw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_3-cwsCWrEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:7361</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:CodeSystemConstraint xmi:id="_lgv8QCA8EeG9GZYpu7WBOQ" code="completed" displayName="Completed" base_Property="_XGYpJBUzEeGbmN_W114JUw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_e8ZEoCWvEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:7364</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:TextValue xmi:id="_22h8UCA8EeG9GZYpu7WBOQ" severity="WARNING" base_Property="_g9ArUCA8EeG9GZYpu7WBOQ">
    <ruleId>CONF:7362</ruleId>
  </CDA:TextValue>
  <CDA:ValueSetConstraint xmi:id="_AiK7MCA9EeG9GZYpu7WBOQ" base_Property="_g9B5cCA8EeG9GZYpu7WBOQ">
    <ruleId>CONF:7365</ruleId>
    <reference href="../consol-vocab.uml#_2FctIBSVEeGGzu7fmW9pXw"/>
  </CDA:ValueSetConstraint>
  <CDA:ConstraintValidation xmi:id="_0SNWsCBCEeG938evaWkvcA" base_Constraint="_sPoAUCBCEeG938evaWkvcA">
    <ruleId>CONF:7618</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_c_rxwCBKEeG938evaWkvcA" base_Constraint="_5_4wYCAwEeGetMjKLkqR8g">
    <ruleId>CONF:15603</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_rfOvECBLEeG938evaWkvcA" severity="INFO" base_Constraint="_6nx20CAwEeGetMjKLkqR8g">
    <ruleId>CONF:15604</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_x4R70CBLEeG938evaWkvcA" severity="WARNING" base_Constraint="_vaH7gCBEEeG938evaWkvcA">
    <ruleId>CONF:15587</ruleId>
  </CDA:ConstraintValidation>
  <uml:Association xmi:id="_kwG0MST3EeGEp-w8SGFAPw" memberEnd="_kwHbQCT3EeGEp-w8SGFAPw">
    <ownedEnd xmi:id="_kwHbQCT3EeGEp-w8SGFAPw" type="_naxrkBVdEeGQCvUGzi1kDQ" isReadOnly="true" association="_kwG0MST3EeGEp-w8SGFAPw"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_oQa5QCT3EeGEp-w8SGFAPw" severity="WARNING" base_Association="_kwG0MST3EeGEp-w8SGFAPw">
    <ruleId>CONF:7882</ruleId>
  </CDA:AssociationValidation>
  <CDA:ConstraintValidation xmi:id="_YyWRMCf2EeGO5_JBy9h6BA" severity="WARNING" base_Constraint="_SxxO0Cf2EeGO5_JBy9h6BA">
    <ruleId>CONF:9033</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_gTeq4Cf3EeGO5_JBy9h6BA" base_Constraint="_TFQWECf3EeGO5_JBy9h6BA">
    <ruleId>CONF:15589</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_v1JB8Cf3EeGO5_JBy9h6BA" severity="INFO" base_Constraint="_jlZuoCf3EeGO5_JBy9h6BA">
    <ruleId>CONF:10141</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_-OqsQCf3EeGO5_JBy9h6BA" base_Constraint="_1fQFECf3EeGO5_JBy9h6BA">
    <ruleId>CONF:9069, R2.1=CONF:9069</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_SheeICf4EeGO5_JBy9h6BA" base_Constraint="_QEznYCf4EeGO5_JBy9h6BA">
    <ruleId>CONF:9272</ruleId>
  </CDA:ConstraintValidation>
  <uml:Association xmi:id="_uvodUyf1EeGO5_JBy9h6BA" memberEnd="_uvodVCf1EeGO5_JBy9h6BA">
    <ownedEnd xmi:id="_uvodVCf1EeGO5_JBy9h6BA" type="_2LSPYBSVEeGGzu7fmW9pXw" isReadOnly="true" association="_uvodUyf1EeGO5_JBy9h6BA"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_1c7ZwCp8EeGiFpKeZIy4Pg" base_Association="_uvodUyf1EeGO5_JBy9h6BA">
    <ruleId>CONF:9183</ruleId>
  </CDA:AssociationValidation>
  <CDA:ConstraintValidation xmi:id="_Q1jF0Cp_EeGiFpKeZIy4Pg" severity="WARNING" base_Constraint="_NGUbACp_EeGiFpKeZIy4Pg">
    <ruleId>CONF:15593</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_VCsbsCp_EeGiFpKeZIy4Pg" base_Constraint="_S6G-kCp_EeGiFpKeZIy4Pg">
    <ruleId>CONF:15595</ruleId>
  </CDA:ConstraintValidation>
  <CDA:CodeSystemConstraint xmi:id="_NSzLQVGkEeG3H6xvuD7Z0Q" code="11450-4" displayName="Problem List" base_Property="_NSzLQFGkEeG3H6xvuD7Z0Q">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_3-cwsCWrEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:15410</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:PropertyValidation xmi:id="_NSzLRVGkEeG3H6xvuD7Z0Q" base_Property="_NSzLQlGkEeG3H6xvuD7Z0Q">
    <ruleId>CONF:9182</ruleId>
  </CDA:PropertyValidation>
  <CDA:TextValue xmi:id="_NSzLR1GkEeG3H6xvuD7Z0Q" base_Property="_NSzLRlGkEeG3H6xvuD7Z0Q">
    <ruleId>CONF:9181</ruleId>
  </CDA:TextValue>
  <CDA:PropertyValidation xmi:id="_oSWKkOJiEeG3cO7ebC3QuA" base_Property="_naxrmBVdEeGQCvUGzi1kDQ">
    <ruleId>CONF:15407</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_tClmcOJiEeG3cO7ebC3QuA" base_Property="_NSzLQFGkEeG3H6xvuD7Z0Q">
    <ruleId>CONF:15409</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_6JqxcOJiEeG3cO7ebC3QuA" base_Property="_2H_DwRSVEeGGzu7fmW9pXw">
    <ruleId>CONF:9027</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_0AfXQOJjEeG3cO7ebC3QuA" base_Property="_6-UyQBUyEeGbmN_W114JUw"/>
  <CDA:ConstraintValidation xmi:id="_XZazsOJkEeG3cO7ebC3QuA" base_Constraint="_IO0RwOJkEeG3cO7ebC3QuA">
    <ruleId>CONF:15588</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_rJa-AOJlEeG3cO7ebC3QuA" severity="INFO" base_Constraint="_nck40OJlEeG3cO7ebC3QuA">
    <ruleId>CONF:16749, R2.1=CONF:1198-16749</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_w9zXcOJlEeG3cO7ebC3QuA" severity="INFO" base_Constraint="_uQVroOJlEeG3cO7ebC3QuA">
    <ruleId>CONF:16750, R2.1=CONF:1198-16750</ruleId>
  </CDA:ConstraintValidation>
  <CDA:PropertyValidation xmi:id="_BbmfQOJpEeG3cO7ebC3QuA" base_Property="_2EqqBxSVEeGGzu7fmW9pXw">
    <ruleId>CONF:7615</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_HTGeIOJpEeG3cO7ebC3QuA" base_Property="_2EqqCBSVEeGGzu7fmW9pXw">
    <ruleId>CONF:15965</ruleId>
  </CDA:PropertyValidation>
  <CDA:ConstraintValidation xmi:id="_FhpnQOJsEeG3cO7ebC3QuA" severity="WARNING" base_Constraint="_1RiOwOJrEeG3cO7ebC3QuA">
    <ruleId>CONF:15530</ruleId>
  </CDA:ConstraintValidation>
  <CDA:PropertyValidation xmi:id="_IfxlQOJsEeG3cO7ebC3QuA" base_Property="_2ExXuBSVEeGGzu7fmW9pXw"/>
  <CDA:ConstraintValidation xmi:id="_6vhsAOJsEeG3cO7ebC3QuA" base_Constraint="_z76qMOJsEeG3cO7ebC3QuA">
    <ruleId>CONF:15594</ruleId>
  </CDA:ConstraintValidation>
  <CDA:PropertyValidation xmi:id="_SVZlAObqEeGINOJ_SD9_dA" base_Property="_zGb3MSAuEeGetMjKLkqR8g"/>
  <uml:Class xmi:id="_GXlxYJmLEeOeSLwbllPCyw" name="PrognosisObservation">
    <ownedComment xmi:id="_RUa14JmMEeOeSLwbllPCyw">
      <body>&lt;p>&#xD;
This template represents the patient's prognosis, which must be associated with a problem observation. It may serve as an alert to scope intervention plans. &#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
The effectiveTime represents the clinically relevant time of the observation. The observation/value is not constrained and can represent the expected life duration in PQ, an anticipated course of the disease in text, or coded term.&#xD;
&lt;/p></body>
    </ownedComment>
    <ownedRule xmi:id="_Vjnu8LTREeWEoeeTdrbyVw" name="PrognosisObservationTemplateId" constrainedElement="_GXlxYJmLEeOeSLwbllPCyw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vjnu8bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.4.113')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VjpkILTREeWEoeeTdrbyVw" name="PrognosisObservationClassCode" constrainedElement="_PjJiAJmLEeOeSLwbllPCyw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VjpkIbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.classCode=vocab::ActClassObservation::OBS</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VjqyQLTREeWEoeeTdrbyVw" name="PrognosisObservationMoodCode" constrainedElement="_PjKJFJmLEeOeSLwbllPCyw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VjqyQbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.moodCode=vocab::x_ActMoodDocumentObservation::EVN</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VjvqwLTREeWEoeeTdrbyVw" name="PrognosisObservationCodeP" constrainedElement="_PjKJEJmLEeOeSLwbllPCyw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VjvqwbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VjtOgLTREeWEoeeTdrbyVw" name="PrognosisObservationCode" constrainedElement="_PjKJEJmLEeOeSLwbllPCyw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VjtOgbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = self.code.oclAsType(datatypes::CD) in 
value.code = '75328-5' and value.codeSystem = '2.16.840.1.113883.6.1'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VjyuELTREeWEoeeTdrbyVw" name="PrognosisObservationStatusCode" constrainedElement="_PjKJFZmLEeOeSLwbllPCyw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VjyuEbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined() and self.statusCode.oclIsKindOf(datatypes::CS) and 
let value : datatypes::CS = self.statusCode.oclAsType(datatypes::CS) in 
value.code = 'completed'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Vj1KULTREeWEoeeTdrbyVw" name="PrognosisObservationStatusCodeP" constrainedElement="_PjKJFZmLEeOeSLwbllPCyw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vj1KUbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Vj2_gLTREeWEoeeTdrbyVw" name="PrognosisObservationEffectiveTime" constrainedElement="_PjKJEZmLEeOeSLwbllPCyw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vj2_gbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.effectiveTime.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Vj4NoLTREeWEoeeTdrbyVw" name="PrognosisObservationValue" constrainedElement="_PjKJGJmLEeOeSLwbllPCyw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vj4NobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.value->size() = 1</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_GXoNoJmLEeOeSLwbllPCyw">
      <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_bJyIQDxYEd6JwqSGecoePg"/>
    </generalization>
    <ownedAttribute xmi:id="_PjJiAJmLEeOeSLwbllPCyw" name="classCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yVecEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_GJGM8JmMEeOeSLwbllPCyw" value="OBS"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_FcjT0EbtEd6besF9iFIJkQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_PjKJFJmLEeOeSLwbllPCyw" name="moodCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__zOoCEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_FFGZUJmMEeOeSLwbllPCyw" value="EVN"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_BLZhcEo_Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_PjKJEJmLEeOeSLwbllPCyw" name="code" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_WEYp4Eo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_PjKJFZmLEeOeSLwbllPCyw" name="statusCode" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_iYn74D55Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_B50JEJmMEeOeSLwbllPCyw" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_B5ziAJmMEeOeSLwbllPCyw" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_c-D3cEo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_PjKJEZmLEeOeSLwbllPCyw" name="effectiveTime" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_QYeW4D5-Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Cb3tQZmMEeOeSLwbllPCyw" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Cb3tQJmMEeOeSLwbllPCyw" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_fUQ50Eo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_PjKJGJmLEeOeSLwbllPCyw" name="value" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#__I8BwDxZEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_DHmx4ZmMEeOeSLwbllPCyw" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_DHmx4JmMEeOeSLwbllPCyw" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_tRpv0Eo-Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
  </uml:Class>
  <CDA:PropertyValidation xmi:id="_8x83YJmLEeOeSLwbllPCyw" base_Property="_PjJiAJmLEeOeSLwbllPCyw">
    <ruleId>CONF:1098-29035</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_9IlOsJmLEeOeSLwbllPCyw" base_Property="_PjKJFJmLEeOeSLwbllPCyw">
    <ruleId>CONF:1098-29036</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_9674sJmLEeOeSLwbllPCyw" base_Property="_PjKJEJmLEeOeSLwbllPCyw">
    <ruleId>CONF:1098-29039</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_-twcwJmLEeOeSLwbllPCyw" base_Property="_PjKJFZmLEeOeSLwbllPCyw">
    <ruleId>CONF:1098-31350</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="__MNTUJmLEeOeSLwbllPCyw" base_Property="_PjKJEZmLEeOeSLwbllPCyw">
    <ruleId>CONF:1098-31123</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="__lq8MJmLEeOeSLwbllPCyw" base_Property="_PjKJGJmLEeOeSLwbllPCyw">
    <ruleId>CONF:1098-29469</ruleId>
  </CDA:PropertyValidation>
  <CDA:CDATemplate xmi:id="_IERgMJmMEeOeSLwbllPCyw" base_Class="_GXlxYJmLEeOeSLwbllPCyw" templateId="2.16.840.1.113883.10.20.22.4.113">
    <ruleId>CONF:1098-29037</ruleId>
    <ruleId>CONF:1098-29038</ruleId>
  </CDA:CDATemplate>
  <CDA:CodeSystemConstraint xmi:id="_epOFEJmSEeOLJeQez13EkQ" code="75328-5" displayName="Prognosis" base_Property="_PjKJEJmLEeOeSLwbllPCyw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_3-cwsCWrEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:1098-29468</ruleId>
    <ruleId>CONF:1098-31349</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:CodeSystemConstraint xmi:id="_98JVcJmSEeOLJeQez13EkQ" code="completed" base_Property="_PjKJFZmLEeOeSLwbllPCyw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_e8ZEoCWvEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:1098-31351</ruleId>
  </CDA:CodeSystemConstraint>
  <uml:Class xmi:id="_D6Lm0JpnEeOK6dzbL4VoTA" name="WoundCharacteristic">
    <ownedComment xmi:id="_eeKb0JpnEeOK6dzbL4VoTA">
      <body>This template represents characteristics of a wound (e.g., integrity of suture line, odor, erythema).</body>
    </ownedComment>
    <ownedRule xmi:id="_Vne7QLTREeWEoeeTdrbyVw" name="WoundCharacteristicTemplateId" constrainedElement="_D6Lm0JpnEeOK6dzbL4VoTA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vne7QbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.4.134')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VngwcLTREeWEoeeTdrbyVw" name="WoundCharacteristicClassCode" constrainedElement="_Ja0k4JpnEeOK6dzbL4VoTA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VngwcbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.classCode=vocab::ActClassObservation::OBS</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VniloLTREeWEoeeTdrbyVw" name="WoundCharacteristicMoodCode" constrainedElement="_Ja1zAJpnEeOK6dzbL4VoTA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VnilobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.moodCode=vocab::x_ActMoodDocumentObservation::EVN</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VnjzwLTREeWEoeeTdrbyVw" name="WoundCharacteristicId" constrainedElement="_Ja1L8JpnEeOK6dzbL4VoTA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VnjzwbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.id->isEmpty()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VnpTULTREeWEoeeTdrbyVw" name="WoundCharacteristicCodeP" constrainedElement="_CjbAcASFEeWqeJlhkO8aqA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VnpTUbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VnmQALTREeWEoeeTdrbyVw" name="WoundCharacteristicCode" constrainedElement="_CjbAcASFEeWqeJlhkO8aqA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VnmQAbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = self.code.oclAsType(datatypes::CD) in 
value.code = 'ASSERTION' and value.codeSystem = '2.16.840.1.113883.5.4'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VnsWoLTREeWEoeeTdrbyVw" name="WoundCharacteristicStatusCode" constrainedElement="_Ja1zAZpnEeOK6dzbL4VoTA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VnsWobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined() and self.statusCode.oclIsKindOf(datatypes::CS) and 
let value : datatypes::CS = self.statusCode.oclAsType(datatypes::CS) in 
value.code = 'completed'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Vnuy4LTREeWEoeeTdrbyVw" name="WoundCharacteristicStatusCodeP" constrainedElement="_Ja1zAZpnEeOK6dzbL4VoTA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vnuy4bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VnxPILTREeWEoeeTdrbyVw" name="WoundCharacteristicEffectiveTime" constrainedElement="_Ja0k4ppnEeOK6dzbL4VoTA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VnxPIbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.effectiveTime.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_VnzrYLTREeWEoeeTdrbyVw" name="WoundCharacteristicValue" constrainedElement="_Ja1zBJpnEeOK6dzbL4VoTA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_VnzrYbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.value->size() = 1 and self.value->forAll(element | not element.oclIsUndefined() and element.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = element.oclAsType(datatypes::CD) in 
value.codeSystem = '2.16.840.1.113883.6.96' and not value.code.oclIsUndefined())</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Vn-DcLTREeWEoeeTdrbyVw" name="WoundCharacteristicValueP" constrainedElement="_Ja1zBJpnEeOK6dzbL4VoTA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vn-DcbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.value->size() = 1 and self.value->forAll(element | element.oclIsTypeOf(datatypes::CD))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_D6Lm0ZpnEeOK6dzbL4VoTA">
      <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_bJyIQDxYEd6JwqSGecoePg"/>
    </generalization>
    <ownedAttribute xmi:id="_Ja0k4JpnEeOK6dzbL4VoTA" name="classCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yVecEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_TrlNkJpoEeOK6dzbL4VoTA" value="OBS"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_FcjT0EbtEd6besF9iFIJkQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_Ja1zAJpnEeOK6dzbL4VoTA" name="moodCode" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__zOoCEDcEd6xYZuu1VKCVw"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_UcE2YJpoEeOK6dzbL4VoTA" value="EVN"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_BLZhcEo_Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_Ja1L8JpnEeOK6dzbL4VoTA" name="id" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.hl7.datatypes/model/datatypes.uml#_culQ8DxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_6YQIIJpnEeOK6dzbL4VoTA" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_6YPhEJpnEeOK6dzbL4VoTA" value="*"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_UGBfwEo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_CjbAcASFEeWqeJlhkO8aqA" name="code" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_WEYp4Eo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_Ja1zAZpnEeOK6dzbL4VoTA" name="statusCode" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_iYn74D55Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_7ohdMZpnEeOK6dzbL4VoTA" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_7ohdMJpnEeOK6dzbL4VoTA" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_c-D3cEo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_Ja0k4ppnEeOK6dzbL4VoTA" name="effectiveTime" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_QYeW4D5-Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_4kbaEJpnEeOK6dzbL4VoTA" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_4kazAJpnEeOK6dzbL4VoTA" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_fUQ50Eo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_Ja1zBJpnEeOK6dzbL4VoTA" name="value" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_5gHmQJpnEeOK6dzbL4VoTA" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_5gG_MJpnEeOK6dzbL4VoTA" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_tRpv0Eo-Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_hPn20JpnEeOK6dzbL4VoTA" base_Class="_D6Lm0JpnEeOK6dzbL4VoTA" templateId="2.16.840.1.113883.10.20.22.4.134">
    <ruleId>CONF:1098-29940</ruleId>
    <ruleId>CONF:1098-29941</ruleId>
  </CDA:CDATemplate>
  <CDA:PropertyValidation xmi:id="_xestgJpnEeOK6dzbL4VoTA" base_Property="_Ja0k4JpnEeOK6dzbL4VoTA">
    <ruleId>CONF:1098-29938</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_x7bs0JpnEeOK6dzbL4VoTA" base_Property="_Ja1zAJpnEeOK6dzbL4VoTA">
    <ruleId>CONF:1098-29939</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_yw4uIJpnEeOK6dzbL4VoTA" base_Property="_Ja1L8JpnEeOK6dzbL4VoTA">
    <ruleId>CONF:1098-29942</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_zwtMYJpnEeOK6dzbL4VoTA" base_Property="_Ja1zAZpnEeOK6dzbL4VoTA"/>
  <CDA:PropertyValidation xmi:id="_0V3u8JpnEeOK6dzbL4VoTA" base_Property="_Ja1zBJpnEeOK6dzbL4VoTA"/>
  <CDA:PropertyValidation xmi:id="_0wDJgJpnEeOK6dzbL4VoTA" base_Property="_Ja0k4ppnEeOK6dzbL4VoTA">
    <ruleId>CONF:1098-29946</ruleId>
  </CDA:PropertyValidation>
  <CDA:CodeSystemConstraint xmi:id="_XJiEsJp0EeOK6dzbL4VoTA" code="completed" base_Property="_Ja1zAZpnEeOK6dzbL4VoTA">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_e8ZEoCWvEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:1098-29944</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:ValueSetConstraint xmi:id="_oKM68Jp1EeOK6dzbL4VoTA" base_Property="_Ja1zBJpnEeOK6dzbL4VoTA">
    <ruleId>CONF:1098-29947</ruleId>
    <reference href="../consol-vocab.uml#_LH7ekZp1EeOK6dzbL4VoTA"/>
  </CDA:ValueSetConstraint>
  <CDA:PropertyValidation xmi:id="_9A8D0Jp2EeOK6dzbL4VoTA" severity="INFO">
    <ruleId>CONF:31541</ruleId>
  </CDA:PropertyValidation>
  <uml:Class xmi:id="_2umuYJ18EeORR8_YW0n_jQ" name="HealthConcernsSection">
    <ownedComment xmi:id="_iK49QJ19EeORR8_YW0n_jQ">
      <body>&lt;p>&#xD;
This section contains data describing an interest or worry about a health state or process that could possibly require attention, intervention, or management. A Health Concern is a health related matter that is of interest, importance or worry to someone, who may be the patient, patient's family or patient's health care provider. Health concerns are derived from a variety of sources within an EHR (such as Problem List, Family History, Social History, Social Worker Note, etc.). Health concerns can be medical, surgical, nursing, allied health or patient-reported concerns.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
Problem Concerns are a subset of Health Concerns that have risen to the level of importance that they typically would belong on a classic &quot;Problem List&quot;, such as &quot;Diabetes Mellitus&quot; or &quot;Family History of Melanoma&quot; or &quot;Tobacco abuse&quot;. These are of broad interest to multiple members of the care team. Examples of other Health Concerns that might not typically be considered a Problem Concern include &quot;Risk of Hyperkalemia&quot; for a patient taking an ACE-inhibitor medication, or &quot;Transportation difficulties&quot; for someone who doesn't drive and has trouble getting to appointments, or &quot;Under-insured&quot; for someone who doesn't have sufficient insurance to properly cover their medical needs such as medications. These are typically most important to just a limited number of care team members.&#xD;
&lt;/p></body>
    </ownedComment>
    <ownedRule xmi:id="_Vp0dkLTREeWEoeeTdrbyVw" name="HealthConcernsSectionTemplateId" constrainedElement="_2umuYJ18EeORR8_YW0n_jQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vp1EoLTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.2.58' and id.extension = '2015-08-01')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Vp2SwLTREeWEoeeTdrbyVw" name="HealthConcernsSectionNullFlavor" constrainedElement="_Z0MfQPgDEeSx6PQhw3nAUw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vp2SwbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>(not self.nullFlavor.oclIsUndefined()) implies (self.nullFlavor=vocab::NullFlavor::NI)</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Vp4vALTREeWEoeeTdrbyVw" name="HealthConcernsSectionCode" constrainedElement="_E9dZwJ19EeORR8_YW0n_jQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vp4vAbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CE) and 
let value : datatypes::CE = self.code.oclAsType(datatypes::CE) in 
value.code = '75310-3' and value.codeSystem = '2.16.840.1.113883.6.1'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Vp7LQLTREeWEoeeTdrbyVw" name="HealthConcernsSectionCodeP" constrainedElement="_E9dZwJ19EeORR8_YW0n_jQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vp7LQbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Vp9AcLTREeWEoeeTdrbyVw" name="HealthConcernsSectionTitle" constrainedElement="_E9eA0519EeORR8_YW0n_jQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vp9AcbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.title.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Vp-1oLTREeWEoeeTdrbyVw" name="HealthConcernsSectionText" constrainedElement="_E9eA0J19EeORR8_YW0n_jQ">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Vp-1obTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.text.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_cAwxgLTREeWEoeeTdrbyVw" name="HealthConcernsSectionEntry">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_ffL3oLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_cAwxgbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.nullFlavor &lt;> vocab::NullFlavor::NI implies entry->one(entry : cda::Entry | not entry.oclIsUndefined() and entry.oclIsKindOf(consol::HealthConcernsSection::HealthStatusObservation2Entry))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_cBS9ALTREeWEoeeTdrbyVw" name="HealthConcernsSectionEntry">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_ffQJELS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_cBTkELTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.nullFlavor &lt;> vocab::NullFlavor::NI implies entry->one(entry : cda::Entry | not entry.oclIsUndefined() and entry.oclIsKindOf(consol::HealthConcernsSection::HealthConcernActEntry))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_cB4L0LTREeWEoeeTdrbyVw" name="HealthConcernsSectionEntry">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_ffTzcLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_cB4L0bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.nullFlavor &lt;> vocab::NullFlavor::NI implies entry->one(entry : cda::Entry | not entry.oclIsUndefined() and entry.oclIsKindOf(consol::HealthConcernsSection::RiskConcernActEntry))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_2unVcJ18EeORR8_YW0n_jQ">
      <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_qIf_wDxXEd6JwqSGecoePg"/>
    </generalization>
    <ownedAttribute xmi:id="_Z0MfQPgDEeSx6PQhw3nAUw" name="nullFlavor" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yyDSUDcEd6xYZuu1VKCVw"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Z0MfQfgDEeSx6PQhw3nAUw"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Z0MfQvgDEeSx6PQhw3nAUw" value="1"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_b4ZLoPgDEeSx6PQhw3nAUw" value="NI"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_fTE6z0xwEd6h-an5IXo-DA"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_E9dZwJ19EeORR8_YW0n_jQ" name="code" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_Z1EGIDxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_pdtDkZ19EeORR8_YW0n_jQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_pdtDkJ19EeORR8_YW0n_jQ" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_9lgCcErmEd6FXKclYGEDCw"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_E9eA0519EeORR8_YW0n_jQ" name="title" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_EaTNsDxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_p3HCEZ19EeORR8_YW0n_jQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_p3HCEJ19EeORR8_YW0n_jQ" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_AP-EoErnEd6FXKclYGEDCw"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_E9eA0J19EeORR8_YW0n_jQ" name="text" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_0jvq8E8AEd6ohP_YEXs4Wg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_qblBEZ19EeORR8_YW0n_jQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qblBEJ19EeORR8_YW0n_jQ" value="1"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_vJtnoEAMEd6wZe6nFLrjsw"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_ffL3obS6EeWcPq3zAthoUQ" name="entry" type="_ffKpgLS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ffL3orS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ffL3o7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_SvZ88DxYEd6JwqSGecoePg"/>
      <association href="../consol.uml#_ffL3oLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_ffQJEbS6EeWcPq3zAthoUQ" name="entry" type="_ffO68LS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ffQJErS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ffQJE7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_SvZ88DxYEd6JwqSGecoePg"/>
      <association href="../consol.uml#_ffQJELS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_ffTzcbS6EeWcPq3zAthoUQ" name="entry" type="_ffSlULS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ffTzcrS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ffTzc7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_SvZ88DxYEd6JwqSGecoePg"/>
      <association href="../consol.uml#_ffTzcLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_ffKpgLS6EeWcPq3zAthoUQ" name="HealthStatusObservation2Entry">
      <ownedRule xmi:id="_cBB3QLTREeWEoeeTdrbyVw" name="HealthConcernsSectionHealthStatusObservation2EntryHealthStatusObservation2">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_ffNFwLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cBB3QbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::HealthStatusObservation2))->size() >= 0</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_ffKpgbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_r0FX0DxXEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_ffNs0LS6EeWcPq3zAthoUQ" name="healthStatusObservation2" type="_DMvdYOEFEeOmBMTtnrPqww" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ffNs0bS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ffNs0rS6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_k2RbsTxYEd6JwqSGecoePg"/>
        <association href="../consol.uml#_ffNFwLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_ffO68LS6EeWcPq3zAthoUQ" name="HealthConcernActEntry">
      <ownedRule xmi:id="_cBl38LTREeWEoeeTdrbyVw" name="HealthConcernsSectionHealthConcernActEntryHealthConcernAct">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_ffRXMLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cBl38bTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.act->exists(act : cda::Act | not act.oclIsUndefined() and act.oclIsKindOf(consol::HealthConcernAct))</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_ffO68bS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_r0FX0DxXEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_ffRXMbS6EeWcPq3zAthoUQ" name="healthConcernAct" isReadOnly="true" aggregation="composite">
        <type xmi:type="uml:Class" href="consol-planofcare.uml#_An8P8I9kEeOB0eBUISUB4Q"/>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ffRXMrS6EeWcPq3zAthoUQ" value="1"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ffRXM7S6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_mNS5ATxYEd6JwqSGecoePg"/>
        <association href="../consol.uml#_ffRXMLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_ffSlULS6EeWcPq3zAthoUQ" name="RiskConcernActEntry">
      <ownedRule xmi:id="_cCJ4oLTREeWEoeeTdrbyVw" name="HealthConcernsSectionRiskConcernActEntryRiskConcernAct">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_ffVooLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cCJ4obTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.act->select(act : cda::Act | not act.oclIsUndefined() and act.oclIsKindOf(consol::RiskConcernAct))->size() >= 0</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_ffSlUbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_r0FX0DxXEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_ffVoobS6EeWcPq3zAthoUQ" name="riskConcernAct" isReadOnly="true" aggregation="composite">
        <type xmi:type="uml:Class" href="consol-planofcare.uml#_mMk3QON1EeS_XOr-dz_KWA"/>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ffVoorS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ffVoo7S6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_mNS5ATxYEd6JwqSGecoePg"/>
        <association href="../consol.uml#_ffVooLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_dzjJkJ19EeORR8_YW0n_jQ" base_Class="_2umuYJ18EeORR8_YW0n_jQ" templateId="2.16.840.1.113883.10.20.22.2.58" templateVersion="2015-08-01">
    <ruleId>CONF:1198-28804</ruleId>
    <ruleId>CONF:1198-28805</ruleId>
    <ruleId>CONF:1198-32862</ruleId>
  </CDA:CDATemplate>
  <CDA:PropertyValidation xmi:id="_m5KDMJ19EeORR8_YW0n_jQ" base_Property="_E9dZwJ19EeORR8_YW0n_jQ">
    <ruleId>CONF:1198-28806</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_nyNLEJ19EeORR8_YW0n_jQ" base_Property="_E9eA0519EeORR8_YW0n_jQ">
    <ruleId>CONF:1198-28809</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_oGxF0J19EeORR8_YW0n_jQ" base_Property="_E9eA0J19EeORR8_YW0n_jQ">
    <ruleId>CONF:1198-28810</ruleId>
  </CDA:PropertyValidation>
  <CDA:CodeSystemConstraint xmi:id="_sCq6sJ19EeORR8_YW0n_jQ" code="75310-3" displayName="Health concerns document" base_Property="_E9dZwJ19EeORR8_YW0n_jQ">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_3-cwsCWrEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:1198-28807, CONF:1198-28808</ruleId>
  </CDA:CodeSystemConstraint>
  <uml:Association xmi:id="_YUzzgJ1-EeORR8_YW0n_jQ" memberEnd="_YU0akJ1-EeORR8_YW0n_jQ">
    <ownedEnd xmi:id="_YU0akJ1-EeORR8_YW0n_jQ" type="_2umuYJ18EeORR8_YW0n_jQ" isReadOnly="true" association="_YUzzgJ1-EeORR8_YW0n_jQ"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_ZVIoEJ1-EeORR8_YW0n_jQ" base_Association="_YUzzgJ1-EeORR8_YW0n_jQ">
    <ruleId>CONF:1198-30768, CONF:1198-30769</ruleId>
  </CDA:AssociationValidation>
  <uml:Class xmi:id="_DMvdYOEFEeOmBMTtnrPqww" clientDependency="_ItZpkOEFEeOmBMTtnrPqww" name="HealthStatusObservation2">
    <ownedComment xmi:id="_3pdyAOEFEeOmBMTtnrPqww">
      <body>This template represents information about the overall health status of the patient. To represent the impact of a specific problem or concern related to the patient's expected health outcome use the Prognosis Observation template 2.16.840.1.113883.10.20.22.4.113.</body>
    </ownedComment>
    <ownedRule xmi:id="_RGF6oMEkEeSjB6vMjDsL5Q" name="HealthStatusObservationHasTextReference">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_RGF6ocEkEeSjB6vMjDsL5Q">
        <language>Analysis</language>
        <language>OCL</language>
        <body>This constraint is being overridden as it has been removed in v2 and should never fire</body>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_UJBgIMEkEeSjB6vMjDsL5Q" name="HealthStatusObservationTextReferenceValue">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_UJBgIcEkEeSjB6vMjDsL5Q">
        <language>Analysis</language>
        <language>OCL</language>
        <body>This constraint is being overridden as it has been removed in v2 and should never fire</body>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_YgU3kMEkEeSjB6vMjDsL5Q" name="HealthStatusObservationHasTextReferenceValue">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_YgU3kcEkEeSjB6vMjDsL5Q">
        <language>Analysis</language>
        <language>OCL</language>
        <body>This constraint is being overridden as it has been removed in v2 and should never fire</body>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WYjy4LTREeWEoeeTdrbyVw" name="HealthStatusObservationTemplateId" constrainedElement="_DMvdYOEFEeOmBMTtnrPqww">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WYjy4bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.4.5' and id.extension = '2014-06-09')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WYoEULTREeWEoeeTdrbyVw" name="HealthStatusObservation2Id" constrainedElement="_Zob5sMElEeSjB6vMjDsL5Q">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WYoEUbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.id->isEmpty()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WYuK8LTREeWEoeeTdrbyVw" name="HealthStatusObservationCodeP" constrainedElement="_gszMgOEGEeOmBMTtnrPqww">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WYuK8bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WYrHoLTREeWEoeeTdrbyVw" name="HealthStatusObservationCode" constrainedElement="_gszMgOEGEeOmBMTtnrPqww">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WYrHobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = self.code.oclAsType(datatypes::CD) in 
value.code = '11323-3' and value.codeSystem = '2.16.840.1.113883.6.1'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WYxOQLTREeWEoeeTdrbyVw" name="HealthStatusObservationText" constrainedElement="_mEZ9EMEjEeSjB6vMjDsL5Q">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WYxOQbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>((not self.text.oclIsUndefined()) and self.text.isNullFlavorUndefined()) implies (true)</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WY2t0LTREeWEoeeTdrbyVw" name="HealthStatusObservationStatusCodeP" constrainedElement="_Voy-4MEmEeSjB6vMjDsL5Q">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WY2t0bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WYzDcLTREeWEoeeTdrbyVw" name="HealthStatusObservationStatusCode" constrainedElement="_Voy-4MEmEeSjB6vMjDsL5Q">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WYzDcbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined() and self.statusCode.oclIsKindOf(datatypes::CS) and 
let value : datatypes::CS = self.statusCode.oclAsType(datatypes::CS) in 
value.code = 'completed'</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_DMwEcOEFEeOmBMTtnrPqww" general="_2ExXsBSVEeGGzu7fmW9pXw"/>
    <substitution xmi:id="_ItZpkOEFEeOmBMTtnrPqww" name="HealthStatusObservation" client="_DMvdYOEFEeOmBMTtnrPqww" supplier="_2ExXsBSVEeGGzu7fmW9pXw" contract="_2ExXsBSVEeGGzu7fmW9pXw"/>
    <ownedAttribute xmi:id="_Zob5sMElEeSjB6vMjDsL5Q" name="id" visibility="private" isReadOnly="true" aggregation="composite">
      <type xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.hl7.datatypes/model/datatypes.uml#_culQ8DxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_d4s1AcElEeSjB6vMjDsL5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_d4s1AMElEeSjB6vMjDsL5Q" value="*"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_UGBfwEo8Ed6c3qsAxlFHaQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_gszMgOEGEeOmBMTtnrPqww" name="code" visibility="private" isReadOnly="true" redefinedProperty="_2E1CERSVEeGGzu7fmW9pXw">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_mEZ9EMEjEeSjB6vMjDsL5Q" name="text" visibility="private" isReadOnly="true" aggregation="composite" redefinedProperty="_2ExXtRSVEeGGzu7fmW9pXw">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_CowXkDxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_mEZ9EcEjEeSjB6vMjDsL5Q"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_mEZ9EsEjEeSjB6vMjDsL5Q" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_Voy-4MEmEeSjB6vMjDsL5Q" name="statusCode" visibility="private" isReadOnly="true" redefinedProperty="_2E23QBSVEeGGzu7fmW9pXw">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_iYn74D55Ed6cla2oXsPtlA"/>
    </ownedAttribute>
  </uml:Class>
  <CDA:ConformsTo xmi:id="_JanU4OEFEeOmBMTtnrPqww" base_Generalization="_DMwEcOEFEeOmBMTtnrPqww"/>
  <CDA:CDATemplate xmi:id="_QRxZ8OEFEeOmBMTtnrPqww" base_Class="_DMvdYOEFEeOmBMTtnrPqww" templateId="2.16.840.1.113883.10.20.22.4.5" templateVersion="2014-06-09">
    <ruleId>CONF:1098-16756</ruleId>
    <ruleId>CONF:1098-16757</ruleId>
    <ruleId>CONF:1098-32558</ruleId>
  </CDA:CDATemplate>
  <CDA:CodeSystemConstraint xmi:id="_gszzkOEGEeOmBMTtnrPqww" code="11323-3" displayName="Health status" base_Property="_gszMgOEGEeOmBMTtnrPqww">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_3-cwsCWrEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:1098-19144</ruleId>
    <ruleId>CONF:1098-32161</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:PropertyValidation xmi:id="_ia8wYOEGEeOmBMTtnrPqww" base_Property="_gszMgOEGEeOmBMTtnrPqww">
    <ruleId>CONF:1098-19143</ruleId>
  </CDA:PropertyValidation>
  <uml:Class xmi:id="_y5C8IOzbEeOnE-G4kptBiw" clientDependency="_SmciAOzcEeOnE-G4kptBiw" name="ProblemConcernAct2">
    <ownedComment xmi:id="_-7idoOzbEeOnE-G4kptBiw">
      <body>&lt;p>&#xD;
This template reflects an ongoing concern on behalf of the provider that placed the concern on a patient's problem list. So long as the underlying condition is of concern to the provider (i.e., as long as the condition, whether active or resolved, is of ongoing concern and interest to the provider), the statusCode is &quot;active&quot;. Only when the underlying condition is no longer of concern is the statusCode set to &quot;completed&quot;. The effectiveTime reflects the time that the underlying condition was felt to be a concern; it may or may not correspond to the effectiveTime of the condition (e.g., even five years later, the clinician may remain concerned about a prior heart attack).&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
The statusCode of the Problem Concern Act is the definitive indication of the status of the concern, whereas the effectiveTime of the nested Problem Observation is the definitive indication of whether or not the underlying condition is resolved.&#xD;
&lt;/p>&#xD;
The effectiveTime/low of the Problem Concern Act asserts when the concern became active. This equates to the time the concern was authored in the patient's chart. The effectiveTime/high asserts when the concern was completed (e.g., when the clinician deemed there is no longer any need to track the underlying condition).&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
A Problem Concern Act can contain many Problem Observations (templateId 2.16.840.1.113883.10.20.22.4.4). Each Problem Observation is a discrete observation of a condition, and therefore will have a statusCode of &quot;completed&quot;. The many Problem Observations nested under a Problem Concern Act reflect the change in the clinical understanding of a condition over time. For instance, a Concern may initially contain a Problem Observation of &quot;chest pain&quot;:&#xD;
&lt;ul>&#xD;
&lt;li>Problem Concern 1&lt;/li>&#xD;
&lt;ul>&lt;li>Problem Observation: Chest Pain&lt;/li>&lt;/ul>&#xD;
&lt;/ul>&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
Later, a new Problem Observation of &quot;esophagitis&quot; will be added, reflecting a better understanding of the nature of the chest pain. The later problem observation will have a more recent author time stamp.&#xD;
&lt;ul>&#xD;
&lt;li>Problem Concern 1&lt;/li>&#xD;
&lt;ul>&#xD;
&lt;li>Problem Observation (author/time Jan 3, 2012): Chest Pain&lt;/li>&#xD;
&lt;li>Problem Observation (author/time Jan 6, 2012): Esophagitis&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;/ul>&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
Many systems display the nested Problem Observation with the most recent author time stamp, and provide a mechanism for viewing prior observations.&#xD;
&lt;/p></body>
    </ownedComment>
    <ownedRule xmi:id="_cNUOQOzfEeOnE-G4kptBiw" name="ProblemConcernActEffectiveTimeLow">
      <ownedComment xmi:id="_yLR6YOzfEeOnE-G4kptBiw">
        <body>Note: The effectiveTime/low asserts when the concern became active. This equates to the time the concern was authored in the patient's chart.</body>
      </ownedComment>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_cNUOQezfEeOnE-G4kptBiw">
        <language>Analysis</language>
        <language>OCL</language>
        <body>effectiveTime SHALL contain exactly one [1..1] low</body>
        <body>not self.effectiveTime.low.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_cnoLsOzfEeOnE-G4kptBiw" name="ProblemConcernActEffectiveTimeHigh">
      <ownedComment xmi:id="_vLAnUOzfEeOnE-G4kptBiw">
        <body>Note: The effectiveTime/high asserts when the concern was completed (e.g., when the clinician deemed there is no longer any need to track the underlying condition).</body>
      </ownedComment>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_cnoLsezfEeOnE-G4kptBiw">
        <language>Analysis</language>
        <language>OCL</language>
        <body>effectiveTime MAY contain zero or one [0..1] high</body>
        <body>not self.effectiveTime.high.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WuveQLTREeWEoeeTdrbyVw" name="ProblemConcernActTemplateId" constrainedElement="_y5C8IOzbEeOnE-G4kptBiw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WuwFULTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.4.3' and id.extension = '2015-08-01')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Wvj9oLTREeWEoeeTdrbyVw" name="ProblemConcernActStatusCodeP" constrainedElement="_zYX1EOzeEeOnE-G4kptBiw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wvj9obTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Wu4oMLTREeWEoeeTdrbyVw" name="ProblemConcernActStatusCode" constrainedElement="_zYX1EOzeEeOnE-G4kptBiw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wu5PQLTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined() and self.statusCode.oclIsKindOf(datatypes::CS) and 
let value : datatypes::CS = self.statusCode.oclAsType(datatypes::CS) in 
value.code = 'active' or value.code = 'suspended' or value.code = 'aborted' or value.code = 'completed'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Wv3foLTREeWEoeeTdrbyVw" name="ProblemConcernActEffectiveTime" constrainedElement="_EZInYOzfEeOnE-G4kptBiw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wv3fobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.effectiveTime.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Wv_bcLTREeWEoeeTdrbyVw" name="ProblemConcernActCodeP" constrainedElement="_maLn4O0AEeOnE-G4kptBiw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wv_bcbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Wv7KALTREeWEoeeTdrbyVw" name="ProblemConcernActCode" constrainedElement="_maLn4O0AEeOnE-G4kptBiw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wv7KAbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = self.code.oclAsType(datatypes::CD) in 
value.code = 'CONC' and value.codeSystem = '2.16.840.1.113883.5.6'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WwFiELTREeWEoeeTdrbyVw" name="ProblemConcernAct2AuthorParticipation" constrainedElement="_WnadQO0BEeOnE-G4kptBiw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WwFiEbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.author->select(author : cda::Author | not author.oclIsUndefined() and author.oclIsKindOf(consol::AuthorParticipation))->size() >= 0</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_dKkSMLTREeWEoeeTdrbyVw" name="ProblemConcernAct2EntryRelationship">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fn3SgLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_dKkSMbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.oclIsUndefined() and entryRelationship.oclIsKindOf(consol::ProblemConcernAct2::ProblemObservation2EntryRelationship))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_dLSD4LTREeWEoeeTdrbyVw" name="ProblemConcernAct2EntryRelationship">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fn8LALS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_dLSD4bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.oclIsUndefined() and entryRelationship.oclIsKindOf(consol::ProblemConcernAct2::PriorityPreferenceEntryRelationship))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_y5C8IezbEeOnE-G4kptBiw" general="_2H6yUBSVEeGGzu7fmW9pXw"/>
    <substitution xmi:id="_SmciAOzcEeOnE-G4kptBiw" name="ProblemConcernAct" client="_y5C8IOzbEeOnE-G4kptBiw" supplier="_2H6yUBSVEeGGzu7fmW9pXw" contract="_2H6yUBSVEeGGzu7fmW9pXw"/>
    <ownedAttribute xmi:id="_zYX1EOzeEeOnE-G4kptBiw" name="statusCode" visibility="private" isReadOnly="true" aggregation="composite" redefinedProperty="_2H_q0BSVEeGGzu7fmW9pXw">
      <ownedComment xmi:id="_obg7sMmlEeSr1c1X9ACWbg">
        <body>The statusCode of the Problem Concern Act is the definitive indication of the status of the concern, whereas the effectiveTime of the nested Problem Observation is the definitive indication of whether or not the underlying condition is resolved.</body>
      </ownedComment>
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_iYn74D55Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_zYX1EuzeEeOnE-G4kptBiw" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_zYX1EezeEeOnE-G4kptBiw" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_EZInYOzfEeOnE-G4kptBiw" name="effectiveTime" visibility="private" isReadOnly="true" aggregation="composite" redefinedProperty="_2IBgABSVEeGGzu7fmW9pXw">
      <ownedComment xmi:id="_RArWsOzfEeOnE-G4kptBiw"/>
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_QYeW4D5-Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_EZInYuzfEeOnE-G4kptBiw" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_EZInYezfEeOnE-G4kptBiw" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_maLn4O0AEeOnE-G4kptBiw" name="code" visibility="private" isReadOnly="true" redefinedProperty="_2H_DwRSVEeGGzu7fmW9pXw">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_WnYoEO0BEeOnE-G4kptBiw" name="authorParticipation" isReadOnly="true" association="_WnadQO0BEeOnE-G4kptBiw">
      <type xmi:type="uml:Class" href="consol-other.uml#_7jqj4KrlEeOxqJAXCMXUYg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WnYoEe0BEeOnE-G4kptBiw"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WnZPIO0BEeOnE-G4kptBiw" value="*"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fn3SgbS6EeWcPq3zAthoUQ" name="entryRelationship" type="_fn2EYLS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fn3SgrS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fn3Sg7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_Dw0uYUxqEd6h-an5IXo-DA"/>
      <association href="../consol.uml#_fn3SgLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fn8LAbS6EeWcPq3zAthoUQ" name="entryRelationship" type="_fn6V0LS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fn8LArS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fn8LA7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_Dw0uYUxqEd6h-an5IXo-DA"/>
      <association href="../consol.uml#_fn8LALS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fn2EYLS6EeWcPq3zAthoUQ" name="ProblemObservation2EntryRelationship">
      <ownedRule xmi:id="_dK3NILTREeWEoeeTdrbyVw" name="ProblemConcernAct2ProblemObservation2EntryRelationshipProblemObservation2">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fn5HsLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_dK3NIbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->exists(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::ProblemObservation2))</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fn2EYbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.cda/model/cda.uml#_BoxMQEcFEd6besF9iFIJkQ"/>
      </generalization>
      <ownedAttribute xmi:id="_fn5HsbS6EeWcPq3zAthoUQ" name="problemObservation2" type="_prDAkPDCEeOKPKE9au0oug" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fn5HsrS6EeWcPq3zAthoUQ" value="1"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fn5Hs7S6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_VmlJEUcGEd6besF9iFIJkQ"/>
        <association href="../consol.uml#_fn5HsLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fn6V0LS6EeWcPq3zAthoUQ" name="PriorityPreferenceEntryRelationship">
      <ownedRule xmi:id="_dLk-0LTREeWEoeeTdrbyVw" name="ProblemConcernAct2PriorityPreferenceEntryRelationshipPriorityPreference">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fn9ZILS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_dLk-0bTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::PriorityPreference))->size() >= 0</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fn6V0bS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.cda/model/cda.uml#_BoxMQEcFEd6besF9iFIJkQ"/>
      </generalization>
      <ownedAttribute xmi:id="_fn9ZIbS6EeWcPq3zAthoUQ" name="priorityPreference" isReadOnly="true" aggregation="composite">
        <type xmi:type="uml:Class" href="consol-planofcare.uml#_ncafYJmaEeOLJeQez13EkQ"/>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fn-AMLS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fn-AMbS6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_VmlJEUcGEd6besF9iFIJkQ"/>
        <association href="../consol.uml#_fn9ZILS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_1-Y8cOzbEeOnE-G4kptBiw" base_Class="_y5C8IOzbEeOnE-G4kptBiw" templateId="2.16.840.1.113883.10.20.22.4.3" templateVersion="2015-08-01">
    <ruleId>CONF:1198-16772</ruleId>
    <ruleId>CONF:1198-16773</ruleId>
    <ruleId>CONF:1198-32509</ruleId>
  </CDA:CDATemplate>
  <CDA:ConformsTo xmi:id="_QaoKsOzcEeOnE-G4kptBiw" base_Generalization="_y5C8IezbEeOnE-G4kptBiw"/>
  <CDA:ValueSetConstraint xmi:id="_zYX1E-zeEeOnE-G4kptBiw" base_Property="_zYX1EOzeEeOnE-G4kptBiw">
    <ruleId>CONF:1198-31525</ruleId>
    <reference href="../consol-vocab.uml#_SZOJNsmlEeSr1c1X9ACWbg"/>
  </CDA:ValueSetConstraint>
  <CDA:PropertyValidation xmi:id="_9UT5wOzeEeOnE-G4kptBiw" base_Property="_zYX1EOzeEeOnE-G4kptBiw">
    <ruleId>CONF:1198-9029</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_EZInY-zfEeOnE-G4kptBiw" base_Property="_EZInYOzfEeOnE-G4kptBiw">
    <ruleId>CONF:1198-9030</ruleId>
  </CDA:PropertyValidation>
  <CDA:ConstraintValidation xmi:id="_cNUOQuzfEeOnE-G4kptBiw" base_Constraint="_cNUOQOzfEeOnE-G4kptBiw">
    <ruleId>CONF:1198-9032</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_cnoLsuzfEeOnE-G4kptBiw" severity="INFO" base_Constraint="_cnoLsOzfEeOnE-G4kptBiw">
    <ruleId>CONF:1198-9033</ruleId>
  </CDA:ConstraintValidation>
  <CDA:CodeSystemConstraint xmi:id="_maLn4e0AEeOnE-G4kptBiw" code="CONC" displayName="Concern" base_Property="_maLn4O0AEeOnE-G4kptBiw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_wOhRcE6REeC5ttwajeXVXg"/>
    <ruleId>CONF:1198-19184, CONF:1198-32168</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:PropertyValidation xmi:id="_maM2AO0AEeOnE-G4kptBiw" base_Property="_maLn4O0AEeOnE-G4kptBiw">
    <ruleId>CONF:1198-9027</ruleId>
  </CDA:PropertyValidation>
  <uml:Association xmi:id="_WnadQO0BEeOnE-G4kptBiw" memberEnd="_WnYoEO0BEeOnE-G4kptBiw _WnadQe0BEeOnE-G4kptBiw">
    <ownedEnd xmi:id="_WnadQe0BEeOnE-G4kptBiw" type="_y5C8IOzbEeOnE-G4kptBiw" isReadOnly="true" association="_WnadQO0BEeOnE-G4kptBiw"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_YWnKAO0BEeOnE-G4kptBiw" severity="WARNING" base_Association="_WnadQO0BEeOnE-G4kptBiw">
    <ruleId>CONF:1198-31146</ruleId>
  </CDA:AssociationValidation>
  <uml:Association xmi:id="_mgnKkO0BEeOnE-G4kptBiw" memberEnd="_mgnKke0BEeOnE-G4kptBiw">
    <ownedEnd xmi:id="_mgnKke0BEeOnE-G4kptBiw" type="_y5C8IOzbEeOnE-G4kptBiw" isReadOnly="true" association="_mgnKkO0BEeOnE-G4kptBiw"/>
  </uml:Association>
  <CDA:EntryRelationship xmi:id="_o8XbUO0BEeOnE-G4kptBiw" severity="INFO" base_Association="_mgnKkO0BEeOnE-G4kptBiw" typeCode="REFR">
    <ruleId>CONF:1198-31638, CONF:1198-31639, CONF:1198-31640</ruleId>
  </CDA:EntryRelationship>
  <uml:Class xmi:id="_prDAkPDCEeOKPKE9au0oug" clientDependency="_3P7scPDDEeOKPKE9au0oug" name="ProblemObservation2">
    <ownedComment xmi:id="_xAdH4PDCEeOKPKE9au0oug">
      <body>&lt;p>&#xD;
This template reflects a discrete observation about a patient's problem. Because it is a discrete observation, it will have a statusCode of &quot;completed&quot;. The effectiveTime, also referred to as the &quot;biologically relevant time&quot; is the time at which the observation holds for the patient. For a provider seeing a patient in the clinic today, observing a history of heart attack that occurred five years ago, the effectiveTime is five years ago.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
The effectiveTime of the Problem Observation is the definitive indication of whether or not the underlying condition is resolved. If the problem is known to be resolved, then an effectiveTime/high would be present. If the date of resolution is not known, then effectiveTime/high will be present with a nullFlavor of &quot;UNK&quot;.&#xD;
&lt;/p></body>
    </ownedComment>
    <ownedRule xmi:id="_SPweoMm6EeSr1c1X9ACWbg" name="ProblemObservationHasTextReference">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_SPweocm6EeSr1c1X9ACWbg">
        <language>Analysis</language>
        <language>OCL</language>
        <body>This constraint is being overridden as it has been removed in v2 and should never fire</body>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_YW_ioMm6EeSr1c1X9ACWbg" name="ProblemObservationTextReferenceValue" constrainedElement="_vaH7gCBEEeG938evaWkvcA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_YW_iocm6EeSr1c1X9ACWbg">
        <language>Analysis</language>
        <language>OCL</language>
        <body>This constraint is being overridden as it has been removed in v2 and should never fire</body>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_ZYmJkMm6EeSr1c1X9ACWbg" name="ProblemObservationHasTextReferenceValue" constrainedElement="_vaH7gCBEEeG938evaWkvcA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_ZYmJkcm6EeSr1c1X9ACWbg">
        <language>Analysis</language>
        <language>OCL</language>
        <body>This constraint is being overridden as it has been removed in v2 and should never fire</body>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_8_sPIPDEEeOKPKE9au0oug" name="ProblemObservationHasOnsetDate">
      <ownedComment xmi:id="_8_sPIfDEEeOKPKE9au0oug">
        <body>The effectiveTime/low (a.k.a. &quot;onset date&quot;) asserts when the condition became biologically active.</body>
      </ownedComment>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_8_sPIvDEEeOKPKE9au0oug">
        <language>Analysis</language>
        <language>OCL</language>
        <body>effectiveTime, if present, SHALL contain exactly one [1..1] low</body>
        <body>not self.effectiveTime.oclIsUndefined() implies not self.effectiveTime.low.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_9fzSkPDEEeOKPKE9au0oug" name="ProblemObservationHasResolutionDate">
      <ownedComment xmi:id="_9fzSkfDEEeOKPKE9au0oug">
        <body>The effectiveTime/high (a.k.a. &quot;resolution date&quot;) asserts when the condition became biologically resolved.</body>
      </ownedComment>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_9fzSkvDEEeOKPKE9au0oug">
        <language>Analysis</language>
        <language>OCL</language>
        <body>effectiveTime, if present, MAY contain zero or one [0..1] high</body>
        <body>not self.effectiveTime.oclIsUndefined() implies not self.effectiveTime.high.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_eMSAwPDOEeOKPKE9au0oug" name="ProblemObservationValueNullFlavor">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_eMSAwfDOEeOKPKE9au0oug">
        <language>Analysis</language>
        <language>OCL</language>
        <body>This constraint is being overridden as it has been removed in v2 and should never fire</body>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_3n3DQPDOEeOKPKE9au0oug" name="ProblemObservationValueNullFlavorUnknown">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_3n3DQvDOEeOKPKE9au0oug">
        <language>Analysis</language>
        <language>OCL</language>
        <body>This constraint is being overridden as it has been removed in v2 and should never fire</body>
        <body>true</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WxOxkLTREeWEoeeTdrbyVw" name="ProblemObservationTemplateId" constrainedElement="_prDAkPDCEeOKPKE9au0oug">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WxPYoLTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.4.4' and id.extension = '2015-08-01')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WxZJoLTREeWEoeeTdrbyVw" name="ProblemObservationNegationInd" constrainedElement="_dJUTcPDEEeOKPKE9au0oug">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WxZJobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>(not self.negationInd.oclIsUndefined()) implies (not self.negationInd.oclIsUndefined())</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Wxbl4LTREeWEoeeTdrbyVw" name="ProblemObservationEffectiveTime" constrainedElement="_LLteYPDEEeOKPKE9au0oug">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wxbl4bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.effectiveTime.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WxrdgLTREeWEoeeTdrbyVw" name="ProblemObservationValueP" constrainedElement="_bZJcsPDMEeOKPKE9au0oug">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WxrdgbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.value->isEmpty()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Wxf3ULTREeWEoeeTdrbyVw" name="ProblemObservationValue" constrainedElement="_bZJcsPDMEeOKPKE9au0oug">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wxf3UbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.value->size() = 1 and self.value->forAll(element | not element.oclIsUndefined() and element.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = element.oclAsType(datatypes::CD) in 
value.codeSystem = '2.16.840.1.113883.6.96' and not value.code.oclIsUndefined())</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WyLMwLTREeWEoeeTdrbyVw" name="ProblemObservationCodeP" constrainedElement="_52ZjkMm4EeSr1c1X9ACWbg">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WyLMwbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Wx6uELTREeWEoeeTdrbyVw" name="ProblemObservationCode" constrainedElement="_52ZjkMm4EeSr1c1X9ACWbg">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wx6uEbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = self.code.oclAsType(datatypes::CD) in 
value.codeSystem = '2.16.840.1.113883.6.96' and (value.code = '404684003' or value.code = '409586006' or value.code = '282291009' or value.code = '64572001' or value.code = '248536006' or value.code = '418799008' or value.code = '55607006' or value.code = '373930000')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Wygj8LTREeWEoeeTdrbyVw" name="ProblemObservationText" constrainedElement="_CSKZgMm6EeSr1c1X9ACWbg">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wygj8bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>((not self.text.oclIsUndefined()) and self.text.isNullFlavorUndefined()) implies (true)</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WyxCoLTREeWEoeeTdrbyVw" name="ProblemObservationStatusCodeP" constrainedElement="_8NsgMMm6EeSr1c1X9ACWbg">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WyxCobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_WymDgLTREeWEoeeTdrbyVw" name="ProblemObservationStatusCode" constrainedElement="_8NsgMMm6EeSr1c1X9ACWbg">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_WymDgbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.statusCode.oclIsUndefined() and self.statusCode.oclIsKindOf(datatypes::CS) and 
let value : datatypes::CS = self.statusCode.oclAsType(datatypes::CS) in 
value.code = 'completed'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_Wzk68LTREeWEoeeTdrbyVw" name="ProblemObservation2AuthorParticipation" constrainedElement="_UxJqcPDLEeOKPKE9au0oug">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wzk68bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.author->select(author : cda::Author | not author.oclIsUndefined() and author.oclIsKindOf(consol::AuthorParticipation))->size() >= 0</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_dL4g0LTREeWEoeeTdrbyVw" name="ProblemObservation2EntryRelationship">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_foAccLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_dL4g0bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.oclIsUndefined() and entryRelationship.oclIsKindOf(consol::ProblemObservation2::PrognosisObservationEntryRelationship))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_dMouwLTREeWEoeeTdrbyVw" name="ProblemObservation2EntryRelationship">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_foEG0LS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_dMouwbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.oclIsUndefined() and entryRelationship.oclIsKindOf(consol::ProblemObservation2::PriorityPreferenceEntryRelationship))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_dNoNQLTREeWEoeeTdrbyVw" name="ProblemObservation2EntryRelationship">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_foHxMLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_dNoNQbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.oclIsUndefined() and entryRelationship.oclIsKindOf(consol::ProblemObservation2::ProblemStatusEntryRelationship))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_dOS7oLTREeWEoeeTdrbyVw" name="ProblemObservation2EntryRelationship">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_foMCoLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_dOS7obTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.oclIsUndefined() and entryRelationship.oclIsKindOf(consol::ProblemObservation2::HealthStatusObservationEntryRelationship))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_prGD4PDCEeOKPKE9au0oug" general="_5Ha7ABUyEeGbmN_W114JUw"/>
    <substitution xmi:id="_3P7scPDDEeOKPKE9au0oug" name="ProblemObservation" client="_prDAkPDCEeOKPKE9au0oug" supplier="_5Ha7ABUyEeGbmN_W114JUw" contract="_5Ha7ABUyEeGbmN_W114JUw"/>
    <ownedAttribute xmi:id="_dJUTcPDEEeOKPKE9au0oug" name="negationInd" visibility="private" isReadOnly="true" redefinedProperty="_qzvdsCAtEeGetMjKLkqR8g">
      <ownedComment xmi:id="_d-9iAPDEEeOKPKE9au0oug">
        <body>The negationInd is used to indicate the absence of the condition in observation/value. A negationInd of &quot;true&quot; coupled with an observation/value of SNOMED code 64572001 &quot;Disease (disorder)&quot; indicates that the patient has no known conditions.</body>
      </ownedComment>
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBooleanObject"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_dJUTcvDEEeOKPKE9au0oug"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_dJUTcfDEEeOKPKE9au0oug" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_LLteYPDEEeOKPKE9au0oug" name="effectiveTime" visibility="private" isReadOnly="true" aggregation="composite" redefinedProperty="_zGapECAuEeGetMjKLkqR8g">
      <ownedComment xmi:id="_SPwI4PDEEeOKPKE9au0oug">
        <body>If the problem is known to be resolved, but the date of resolution is not known, then the high element SHALL be present, and the nullFlavor attribute SHALL be set to 'UNK'. Therefore, the existence of an high element within a problem does indicate that the problem has been resolved.</body>
      </ownedComment>
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_QYeW4D5-Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Ns0JMfDEEeOKPKE9au0oug" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Ns0JMPDEEeOKPKE9au0oug" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_UxHOMPDLEeOKPKE9au0oug" name="authorParticipation" isReadOnly="true" association="_UxJqcPDLEeOKPKE9au0oug">
      <type xmi:type="uml:Class" href="consol-other.uml#_7jqj4KrlEeOxqJAXCMXUYg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UxH1QPDLEeOKPKE9au0oug"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UxH1QfDLEeOKPKE9au0oug" value="*"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_bZJcsPDMEeOKPKE9au0oug" name="value" visibility="private" type="_hNARsPDMEeOKPKE9au0oug" isReadOnly="true" aggregation="composite" redefinedProperty="_zGb3MSAuEeGetMjKLkqR8g">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_bZJcsvDMEeOKPKE9au0oug" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_bZJcsfDMEeOKPKE9au0oug" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_52ZjkMm4EeSr1c1X9ACWbg" name="code" visibility="private" type="_y3_GkE9oEeWsIc5CMrI4GA" isReadOnly="true" aggregation="composite" redefinedProperty="_6-UyQBUyEeGbmN_W114JUw"/>
    <ownedAttribute xmi:id="_CSKZgMm6EeSr1c1X9ACWbg" name="text" visibility="private" isReadOnly="true" aggregation="composite" redefinedProperty="_zGbQJCAuEeGetMjKLkqR8g">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_CowXkDxaEd6JwqSGecoePg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_CSKZgcm6EeSr1c1X9ACWbg"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_CSKZgsm6EeSr1c1X9ACWbg" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_8NsgMMm6EeSr1c1X9ACWbg" name="statusCode" visibility="private" isReadOnly="true" aggregation="composite" redefinedProperty="_zGbQICAuEeGetMjKLkqR8g">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_iYn74D55Ed6cla2oXsPtlA"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_8NsgMcm6EeSr1c1X9ACWbg" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_8NsgMsm6EeSr1c1X9ACWbg" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_foAccbS6EeWcPq3zAthoUQ" name="entryRelationship" type="_fn_OULS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_foAccrS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_foAcc7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_EV7mkUxqEd6h-an5IXo-DA"/>
      <association href="../consol.uml#_foAccLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_foEG0bS6EeWcPq3zAthoUQ" name="entryRelationship" type="_foC4sLS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_foEG0rS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_foEG07S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_EV7mkUxqEd6h-an5IXo-DA"/>
      <association href="../consol.uml#_foEG0LS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_foIYQLS6EeWcPq3zAthoUQ" name="entryRelationship" type="_foGjELS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_foIYQbS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_foIYQrS6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_EV7mkUxqEd6h-an5IXo-DA"/>
      <association href="../consol.uml#_foHxMLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_foMCobS6EeWcPq3zAthoUQ" name="entryRelationship" type="_foK0gLS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_foMCorS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_foMCo7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_EV7mkUxqEd6h-an5IXo-DA"/>
      <association href="../consol.uml#_foMCoLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_hNARsPDMEeOKPKE9au0oug" name="CD">
      <ownedComment xmi:id="_9CAYoE9qEeWsIc5CMrI4GA">
        <body>INLINE</body>
      </ownedComment>
      <ownedRule xmi:id="_Wy2iMLTREeWEoeeTdrbyVw" name="ProblemObservation2CDQualifier" constrainedElement="_hztFUPDMEeOKPKE9au0oug">
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wy3JQLTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body> ( self.isNullFlavorUndefined() implies (((not self.qualifier->isEmpty()) and self.qualifier->exists(element | element.isNullFlavorUndefined())) implies (not self.qualifier->isEmpty()) ))</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_Wy5lgLTREeWEoeeTdrbyVw" name="ProblemObservation2CDCode" constrainedElement="_9k3fIPDMEeOKPKE9au0oug">
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wy5lgbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body> ( self.isNullFlavorUndefined() implies ((not self.code.oclIsUndefined()) implies (not self.code.oclIsUndefined()) ))</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_hNA4wPDMEeOKPKE9au0oug">
        <general xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_hztFUPDMEeOKPKE9au0oug" name="qualifier" visibility="private" isReadOnly="true" aggregation="composite">
        <ownedComment xmi:id="_pRbbIPDMEeOKPKE9au0oug">
          <body>The observation/value and all the qualifiers together (often referred to as a post-coordinated expression) make up one concept. Qualifiers constrain the meaning of the primary code, and cannot negate it or change its meaning. Qualifiers can only be used according to well-defined rules of post-coordination and only if the underlying code system defines the use of such qualifiers or if there is a third code system that specifies how other code systems may be combined.&#xD;
For example, SNOMED CT allows constructing concepts as a combination of multiple codes. SNOMED CT defines a concept &quot;pneumonia (disorder)&quot; (233604007) an attribute &quot;finding site&quot; (363698007) and another concept &quot;left lower lobe of lung (body structure)&quot; (41224006). SNOMED CT allows one to combine these codes in a code phrase, as shown in the sample XML.</body>
        </ownedComment>
        <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_gokTgD55Ed6cla2oXsPtlA"/>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hztFUvDMEeOKPKE9au0oug"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hztFUfDMEeOKPKE9au0oug" value="*"/>
        <redefinedProperty href="pathmap://DATATYPES_MODEL/datatypes.uml#__CseMD56Ed6cla2oXsPtlA"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_9k3fIPDMEeOKPKE9au0oug" name="code" visibility="private" isReadOnly="true">
        <ownedComment xmi:id="_CeKJUPDNEeOKPKE9au0oug">
          <body>A negationInd of &quot;true&quot; coupled with an observation/value/@code of SNOMED code 64572001 &quot;Disease (disorder)&quot; indicates that the patient has no known conditions.</body>
        </ownedComment>
        <type xmi:type="uml:PrimitiveType" href="pathmap://DATATYPES_MODEL/datatypes.uml#_WswmEETbEeC_V4iAGO_Ujg"/>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9k3fIvDMEeOKPKE9au0oug"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9k3fIfDMEeOKPKE9au0oug" value="1"/>
        <redefinedProperty href="pathmap://DATATYPES_MODEL/datatypes.uml#_XcVvsDxkEd6JwqSGecoePg"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_y3_GkE9oEeWsIc5CMrI4GA" name="CDCode">
      <ownedComment xmi:id="_-CxSEE9qEeWsIc5CMrI4GA">
        <body>INLINE</body>
      </ownedComment>
      <ownedRule xmi:id="_Wy928LTREeWEoeeTdrbyVw" name="ProblemObservation2CDCodeTranslation" constrainedElement="_zWj48E9oEeWsIc5CMrI4GA">
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_Wy928bTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body> ( self.isNullFlavorUndefined() implies (not self.translation->isEmpty() and self.translation->forAll(element | not element.oclIsUndefined() and element.oclIsKindOf(datatypes::CD) and 
let value : datatypes::CD = element.oclAsType(datatypes::CD) in 
value.codeSystem = '2.16.840.1.113883.6.1' and (value.code = '75326-9' or value.code = '75325-1' or value.code = '75324-4' or value.code = '75323-6' or value.code = '29308-4' or value.code = '75322-8' or value.code = '75275-8' or value.code = '75321-0' or value.code = '75319-4' or value.code = '75318-6' or value.code = '75317-8' or value.code = '75316-0' or value.code = '75315-2' or value.code = '75314-5' or value.code = '75313-7' or value.code = '75312-9')) ))</body>
        </specification>
      </ownedRule>
      <ownedRule xmi:id="_WzQx4LTREeWEoeeTdrbyVw" name="ProblemObservation2CDCodeTranslationP" constrainedElement="_zWj48E9oEeWsIc5CMrI4GA">
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_WzQx4bTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body> ( self.isNullFlavorUndefined() implies (not self.translation->isEmpty() ))</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_y3_toE9oEeWsIc5CMrI4GA">
        <general xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_zWj48E9oEeWsIc5CMrI4GA" name="translation" visibility="private" isReadOnly="true" aggregation="composite">
        <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_VKl7EDxaEd6JwqSGecoePg"/>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_4vP04U9oEeWsIc5CMrI4GA" value="1"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_4vP04E9oEeWsIc5CMrI4GA" value="*"/>
        <redefinedProperty href="pathmap://DATATYPES_MODEL/datatypes.uml#_DtKpQD57Ed6cla2oXsPtlA"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fn_OULS6EeWcPq3zAthoUQ" name="PrognosisObservationEntryRelationship">
      <ownedRule xmi:id="_dMMC0LTREeWEoeeTdrbyVw" name="ProblemObservation2PrognosisObservationEntryRelationshipPrognosisObservation">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_foBqkLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_dMMC0bTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::PrognosisObservation))->size() &lt;= 1</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fn_OUbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.cda/model/cda.uml#_BoxMQEcFEd6besF9iFIJkQ"/>
      </generalization>
      <ownedAttribute xmi:id="_foBqkbS6EeWcPq3zAthoUQ" name="prognosisObservation" type="_GXlxYJmLEeOeSLwbllPCyw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_foBqkrS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_foBqk7S6EeWcPq3zAthoUQ" value="1"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_VmlJEUcGEd6besF9iFIJkQ"/>
        <association href="../consol.uml#_foBqkLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_foC4sLS6EeWcPq3zAthoUQ" name="PriorityPreferenceEntryRelationship">
      <ownedRule xmi:id="_dNMIYLTREeWEoeeTdrbyVw" name="ProblemObservation2PriorityPreferenceEntryRelationshipPriorityPreference">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_foF8ALS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_dNMIYbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::PriorityPreference))->size() >= 0</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_foC4sbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.cda/model/cda.uml#_BoxMQEcFEd6besF9iFIJkQ"/>
      </generalization>
      <ownedAttribute xmi:id="_foF8AbS6EeWcPq3zAthoUQ" name="priorityPreference" isReadOnly="true" aggregation="composite">
        <type xmi:type="uml:Class" href="consol-planofcare.uml#_ncafYJmaEeOLJeQez13EkQ"/>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_foF8ArS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_foF8A7S6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_VmlJEUcGEd6besF9iFIJkQ"/>
        <association href="../consol.uml#_foF8ALS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_foGjELS6EeWcPq3zAthoUQ" name="ProblemStatusEntryRelationship">
      <ownedRule xmi:id="_dN56ELTREeWEoeeTdrbyVw" name="ProblemObservation2ProblemStatusEntryRelationshipProblemStatus">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_foJmYLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_dN56EbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::ProblemStatus))->size() &lt;= 1</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_foGjEbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.cda/model/cda.uml#_BoxMQEcFEd6besF9iFIJkQ"/>
      </generalization>
      <ownedAttribute xmi:id="_foJmYbS6EeWcPq3zAthoUQ" name="problemStatus" type="_SjN_8BUzEeGbmN_W114JUw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_foJmYrS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_foJmY7S6EeWcPq3zAthoUQ" value="1"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_VmlJEUcGEd6besF9iFIJkQ"/>
        <association href="../consol.uml#_foJmYLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_foK0gLS6EeWcPq3zAthoUQ" name="HealthStatusObservationEntryRelationship">
      <ownedRule xmi:id="_dOrWILTREeWEoeeTdrbyVw" name="ProblemObservation2HealthStatusObservationEntryRelationshipHealthStatusObservation">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_foN30LS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_dOrWIbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::HealthStatusObservation))->size() &lt;= 1</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_foK0gbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="../../../org.openhealthtools.mdht.uml.cda/model/cda.uml#_BoxMQEcFEd6besF9iFIJkQ"/>
      </generalization>
      <ownedAttribute xmi:id="_foN30bS6EeWcPq3zAthoUQ" name="healthStatusObservation" type="_2ExXsBSVEeGGzu7fmW9pXw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_foN30rS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_foN307S6EeWcPq3zAthoUQ" value="1"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_VmlJEUcGEd6besF9iFIJkQ"/>
        <association href="../consol.uml#_foN30LS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_tIFIIPDCEeOKPKE9au0oug" base_Class="_prDAkPDCEeOKPKE9au0oug" templateId="2.16.840.1.113883.10.20.22.4.4" templateVersion="2015-08-01">
    <ruleId>CONF:1198-14926, CONF:1198-14927, CONF:1198-32508</ruleId>
  </CDA:CDATemplate>
  <CDA:ConformsTo xmi:id="_zgiCgPDDEeOKPKE9au0oug" base_Generalization="_prGD4PDCEeOKPKE9au0oug"/>
  <CDA:PropertyValidation xmi:id="_LLteY_DEEeOKPKE9au0oug" base_Property="_LLteYPDEEeOKPKE9au0oug">
    <ruleId>CONF:1198-9050</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_dJUTc_DEEeOKPKE9au0oug" severity="INFO" base_Property="_dJUTcPDEEeOKPKE9au0oug">
    <ruleId>CONF:1198-10139</ruleId>
  </CDA:PropertyValidation>
  <CDA:ConstraintValidation xmi:id="_8_sPI_DEEeOKPKE9au0oug" base_Constraint="_8_sPIPDEEeOKPKE9au0oug">
    <ruleId>CONF:1198-15603</ruleId>
  </CDA:ConstraintValidation>
  <CDA:ConstraintValidation xmi:id="_9fzSk_DEEeOKPKE9au0oug" severity="INFO" base_Constraint="_9fzSkPDEEeOKPKE9au0oug">
    <ruleId>CONF:1198-15604</ruleId>
  </CDA:ConstraintValidation>
  <uml:Association xmi:id="__YbWMPDGEeOKPKE9au0oug" memberEnd="__Yb9QPDGEeOKPKE9au0oug">
    <ownedEnd xmi:id="__Yb9QPDGEeOKPKE9au0oug" type="_prDAkPDCEeOKPKE9au0oug" isReadOnly="true" association="__YbWMPDGEeOKPKE9au0oug"/>
  </uml:Association>
  <CDA:EntryRelationship xmi:id="_E5kqkPDHEeOKPKE9au0oug" severity="INFO" base_Association="__YbWMPDGEeOKPKE9au0oug" typeCode="REFR">
    <ruleId>CONF:1198-29951, CONF:1198-31531, CONF:1198-29952</ruleId>
  </CDA:EntryRelationship>
  <uml:Association xmi:id="_5Y9xUPDKEeOKPKE9au0oug" memberEnd="_5Y9xUfDKEeOKPKE9au0oug">
    <ownedEnd xmi:id="_5Y9xUfDKEeOKPKE9au0oug" type="_prDAkPDCEeOKPKE9au0oug" isReadOnly="true" association="_5Y9xUPDKEeOKPKE9au0oug"/>
  </uml:Association>
  <CDA:EntryRelationship xmi:id="_DUJBAPDLEeOKPKE9au0oug" severity="INFO" base_Association="_5Y9xUPDKEeOKPKE9au0oug" typeCode="REFR">
    <ruleId>CONF:1198-31063, CONF:1198-31532, CONF:1198-31064</ruleId>
  </CDA:EntryRelationship>
  <uml:Association xmi:id="_UxJqcPDLEeOKPKE9au0oug" memberEnd="_UxHOMPDLEeOKPKE9au0oug _UxJqcfDLEeOKPKE9au0oug">
    <ownedEnd xmi:id="_UxJqcfDLEeOKPKE9au0oug" type="_prDAkPDCEeOKPKE9au0oug" isReadOnly="true" association="_UxJqcPDLEeOKPKE9au0oug"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_VckmAPDLEeOKPKE9au0oug" severity="WARNING" base_Association="_UxJqcPDLEeOKPKE9au0oug">
    <ruleId>CONF:1198-31147</ruleId>
  </CDA:AssociationValidation>
  <CDA:ValueSetConstraint xmi:id="_bZKDwPDMEeOKPKE9au0oug" severity="WARNING" base_Property="_bZJcsPDMEeOKPKE9au0oug">
    <ruleId>CONF:1198-9058</ruleId>
    <reference href="../consol-vocab.uml#_2SVSkRSVEeGGzu7fmW9pXw"/>
  </CDA:ValueSetConstraint>
  <CDA:PropertyValidation xmi:id="_bZL48PDMEeOKPKE9au0oug" base_Property="_bZJcsPDMEeOKPKE9au0oug"/>
  <CDA:PropertyValidation xmi:id="_kTm2QPDMEeOKPKE9au0oug" severity="INFO" base_Property="_hztFUPDMEeOKPKE9au0oug">
    <ruleId>CONF:1198-31870</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_-Q4QkPDMEeOKPKE9au0oug" severity="INFO" base_Property="_9k3fIPDMEeOKPKE9au0oug">
    <ruleId>CONF:1198-31871</ruleId>
  </CDA:PropertyValidation>
  <uml:Association xmi:id="_wOP0IPifEeOXlK95I8tUew" memberEnd="_wOQbMPifEeOXlK95I8tUew">
    <ownedEnd xmi:id="_wOQbMPifEeOXlK95I8tUew" type="_y5C8IOzbEeOnE-G4kptBiw" isReadOnly="true" association="_wOP0IPifEeOXlK95I8tUew"/>
  </uml:Association>
  <CDA:EntryRelationship xmi:id="_0cXaYPifEeOXlK95I8tUew" base_Association="_wOP0IPifEeOXlK95I8tUew" typeCode="SUBJ">
    <ruleId>CONF:1198-9034, CONF:1198-9035, CONF:1198-15980</ruleId>
  </CDA:EntryRelationship>
  <uml:Class xmi:id="_ZgLioAFkEeSJ2uHfynwxCw" clientDependency="_GXl2QAFmEeSJ2uHfynwxCw" name="ProblemSectionEntriesOptional2">
    <ownedComment xmi:id="_iFLCgAFkEeSJ2uHfynwxCw">
      <body>This section lists and describes all relevant clinical problems at the time the document is generated. At a minimum, all pertinent current and historical problems should be listed. Overall health status may be represented in this section.</body>
    </ownedComment>
    <ownedRule xmi:id="_XIKq4LTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTemplateId" constrainedElement="_ZgLioAFkEeSJ2uHfynwxCw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_XIKq4bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.2.5' and id.extension = '2015-08-01')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_XIQKcLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalCodeP" constrainedElement="_OtcG4AFmEeSJ2uHfynwxCw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_XIQKcbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_XINHILTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalCode" constrainedElement="_OtcG4AFmEeSJ2uHfynwxCw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_XINHIbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CE) and 
let value : datatypes::CE = self.code.oclAsType(datatypes::CE) in 
value.code = '11450-4' and value.codeSystem = '2.16.840.1.113883.6.1'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_d6mA8LTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptional2Entry">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fumMoLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_d6mA8bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.nullFlavor &lt;> vocab::NullFlavor::NI implies entry->one(entry : cda::Entry | not entry.oclIsUndefined() and entry.oclIsKindOf(consol::ProblemSectionEntriesOptional2::ProblemConcernAct2Entry))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_d7GXQLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptional2Entry">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_furFILS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_d7GXQbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.nullFlavor &lt;> vocab::NullFlavor::NI implies entry->one(entry : cda::Entry | not entry.oclIsUndefined() and entry.oclIsKindOf(consol::ProblemSectionEntriesOptional2::HealthStatusObservation2Entry))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_ZgPNAAFkEeSJ2uHfynwxCw" general="_naxrkBVdEeGQCvUGzi1kDQ"/>
    <substitution xmi:id="_GXl2QAFmEeSJ2uHfynwxCw" name="ProblemSectionEntriesOptional" client="_ZgLioAFkEeSJ2uHfynwxCw" supplier="_naxrkBVdEeGQCvUGzi1kDQ" contract="_naxrkBVdEeGQCvUGzi1kDQ"/>
    <ownedAttribute xmi:id="_OtcG4AFmEeSJ2uHfynwxCw" name="code" visibility="private" isReadOnly="true" redefinedProperty="_naxrmBVdEeGQCvUGzi1kDQ">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_Z1EGIDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fumMobS6EeWcPq3zAthoUQ" name="entry" type="_fukXcLS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fumMorS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fumMo7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_SvZ88DxYEd6JwqSGecoePg"/>
      <association href="../consol.uml#_fumMoLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fursMLS6EeWcPq3zAthoUQ" name="entry" type="_fup3ALS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fursMbS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fursMrS6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_SvZ88DxYEd6JwqSGecoePg"/>
      <association href="../consol.uml#_furFILS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fukXcLS6EeWcPq3zAthoUQ" name="ProblemConcernAct2Entry">
      <ownedRule xmi:id="_d614kLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptional2ProblemConcernAct2EntryProblemConcernAct2">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fuoB0LS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_d614kbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.act->select(act : cda::Act | not act.oclIsUndefined() and act.oclIsKindOf(consol::ProblemConcernAct2))->size() >= 0</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fukXcbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_r0FX0DxXEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_fuoo4LS6EeWcPq3zAthoUQ" name="problemConcernAct2" type="_y5C8IOzbEeOnE-G4kptBiw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuoo4bS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuoo4rS6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_mNS5ATxYEd6JwqSGecoePg"/>
        <association href="../consol.uml#_fuoB0LS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fup3ALS6EeWcPq3zAthoUQ" name="HealthStatusObservation2Entry">
      <ownedRule xmi:id="_d7WO4LTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptional2HealthStatusObservation2EntryHealthStatusObservation2">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fus6ULS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_d7WO4bTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::HealthStatusObservation2))->size() &lt;= 1</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fup3AbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_r0FX0DxXEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_futhYLS6EeWcPq3zAthoUQ" name="healthStatusObservation2" type="_DMvdYOEFEeOmBMTtnrPqww" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_futhYbS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_futhYrS6EeWcPq3zAthoUQ" value="1"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_k2RbsTxYEd6JwqSGecoePg"/>
        <association href="../consol.uml#_fus6ULS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_fcIjsAFkEeSJ2uHfynwxCw" base_Class="_ZgLioAFkEeSJ2uHfynwxCw" templateId="2.16.840.1.113883.10.20.22.2.5" templateVersion="2015-08-01">
    <ruleId>CONF:1198-7877, CONF:1198-10440, CONF:1198-32511</ruleId>
  </CDA:CDATemplate>
  <CDA:ConformsTo xmi:id="_EitYQAFmEeSJ2uHfynwxCw" base_Generalization="_ZgPNAAFkEeSJ2uHfynwxCw"/>
  <CDA:CodeSystemConstraint xmi:id="_OtcG4QFmEeSJ2uHfynwxCw" code="11450-4" displayName="Problem List" base_Property="_OtcG4AFmEeSJ2uHfynwxCw">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_3-cwsCWrEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:1198-15408, CONF:1198-31141</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:PropertyValidation xmi:id="_OtdVAAFmEeSJ2uHfynwxCw" base_Property="_OtcG4AFmEeSJ2uHfynwxCw">
    <ruleId>CONF:1198-15407</ruleId>
  </CDA:PropertyValidation>
  <uml:Association xmi:id="_ptraEAFmEeSJ2uHfynwxCw" memberEnd="_ptsBIAFmEeSJ2uHfynwxCw">
    <ownedEnd xmi:id="_ptsBIAFmEeSJ2uHfynwxCw" type="_ZgLioAFkEeSJ2uHfynwxCw" isReadOnly="true" association="_ptraEAFmEeSJ2uHfynwxCw"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_rfxp0AFmEeSJ2uHfynwxCw" severity="WARNING" base_Association="_ptraEAFmEeSJ2uHfynwxCw">
    <ruleId>CONF:1198-7881, CONF:1198-15505</ruleId>
  </CDA:AssociationValidation>
  <uml:Association xmi:id="_7CKZoAFmEeSJ2uHfynwxCw" memberEnd="_7CLAsAFmEeSJ2uHfynwxCw">
    <ownedEnd xmi:id="_7CLAsAFmEeSJ2uHfynwxCw" type="_ZgLioAFkEeSJ2uHfynwxCw" isReadOnly="true" association="_7CKZoAFmEeSJ2uHfynwxCw"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_7k-LwAFmEeSJ2uHfynwxCw" severity="INFO" base_Association="_7CKZoAFmEeSJ2uHfynwxCw">
    <ruleId>CONF:1198-30481, CONF:1198-30482</ruleId>
  </CDA:AssociationValidation>
  <uml:Class xmi:id="_IXrA4ALVEeSyydFGYJajGA" clientDependency="_DbtnwALWEeSyydFGYJajGA" name="ProblemSection2">
    <ownedComment xmi:id="_1M5_sALVEeSyydFGYJajGA">
      <body>This section lists and describes all relevant clinical problems at the time the document is generated. At a minimum, all pertinent current and historical problems should be listed. Overall health status may be represented in this section.</body>
    </ownedComment>
    <ownedRule xmi:id="_XJzpoLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTemplateId" constrainedElement="_IXrA4ALVEeSyydFGYJajGA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_XJzpobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.templateId->exists(id : datatypes::II | id.root = '2.16.840.1.113883.10.20.22.2.5.1' and id.extension = '2015-08-01')</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_XJ1e0LTREeWEoeeTdrbyVw" name="ProblemSection2NullFlavor" constrainedElement="_ybG7UKcJEeSFQp5MpGZ8qw">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_XJ1e0bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>(not self.nullFlavor.oclIsUndefined()) implies (self.nullFlavor=vocab::NullFlavor::NI)</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_XJ6XULTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalCodeP" constrainedElement="_193tIALWEeSyydFGYJajGA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_XJ6XUbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_XJ3UALTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalCode" constrainedElement="_193tIALWEeSyydFGYJajGA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_XJ3UAbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.code.oclIsUndefined() and self.code.oclIsKindOf(datatypes::CE) and 
let value : datatypes::CE = self.code.oclAsType(datatypes::CE) in 
value.code = '11450-4' and value.codeSystem = '2.16.840.1.113883.6.1'</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_XJ9aoLTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalTitle" constrainedElement="_szXahALYEeSyydFGYJajGA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_XJ9aobTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.title.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_XJ_P0LTREeWEoeeTdrbyVw" name="ProblemSectionEntriesOptionalText" constrainedElement="_szXagALYEeSyydFGYJajGA">
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_XJ_P0bTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>not self.text.oclIsUndefined()</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_d_kAgLTREeWEoeeTdrbyVw" name="ProblemSection2Entry">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fvVzgLS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_d_kAgbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.nullFlavor &lt;> vocab::NullFlavor::NI implies entry->one(entry : cda::Entry | not entry.oclIsUndefined() and entry.oclIsKindOf(consol::ProblemSection2::ProblemConcernAct2Entry))</body>
      </specification>
    </ownedRule>
    <ownedRule xmi:id="_eADIsLTREeWEoeeTdrbyVw" name="ProblemSection2Entry">
      <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fvaE8LS6EeWcPq3zAthoUQ"/>
      <specification xmi:type="uml:OpaqueExpression" xmi:id="_eADIsbTREeWEoeeTdrbyVw">
        <language>OCL</language>
        <body>self.nullFlavor &lt;> vocab::NullFlavor::NI implies entry->one(entry : cda::Entry | not entry.oclIsUndefined() and entry.oclIsKindOf(consol::ProblemSection2::HealthStatusObservation2Entry))</body>
      </specification>
    </ownedRule>
    <generalization xmi:id="_IXs2EALVEeSyydFGYJajGA" general="_ZgLioAFkEeSJ2uHfynwxCw"/>
    <substitution xmi:id="_DbtnwALWEeSyydFGYJajGA" name="ProblemSection" client="_IXrA4ALVEeSyydFGYJajGA" supplier="_2LSPYBSVEeGGzu7fmW9pXw" contract="_2LSPYBSVEeGGzu7fmW9pXw"/>
    <ownedAttribute xmi:id="_ybG7UKcJEeSFQp5MpGZ8qw" name="nullFlavor" visibility="private" isReadOnly="true">
      <type xmi:type="uml:Enumeration" href="pathmap://VOCAB_MODEL/vocab.uml#__yyDSUDcEd6xYZuu1VKCVw"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ybG7UacJEeSFQp5MpGZ8qw"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ybG7UqcJEeSFQp5MpGZ8qw" value="1"/>
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_0_e8kKcJEeSFQp5MpGZ8qw" value="NI"/>
      <redefinedProperty href="pathmap://CDA_MODEL/cda.uml#_fTE6z0xwEd6h-an5IXo-DA"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_193tIALWEeSyydFGYJajGA" name="code" visibility="private" isReadOnly="true" redefinedProperty="_OtcG4AFmEeSJ2uHfynwxCw">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_Z1EGIDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_szXahALYEeSyydFGYJajGA" name="title" visibility="private" isReadOnly="true" redefinedProperty="_naxrmRVdEeGQCvUGzi1kDQ">
      <type xmi:type="uml:Class" href="pathmap://DATATYPES_MODEL/datatypes.uml#_EaTNsDxaEd6JwqSGecoePg"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_szXagALYEeSyydFGYJajGA" name="text" visibility="private" isReadOnly="true" aggregation="composite" redefinedProperty="_naxrmhVdEeGQCvUGzi1kDQ">
      <type xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_0jvq8E8AEd6ohP_YEXs4Wg"/>
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_szXaggLYEeSyydFGYJajGA" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_szXagQLYEeSyydFGYJajGA" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fvVzgbS6EeWcPq3zAthoUQ" name="entry" type="_fvT-ULS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvVzgrS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvVzg7S6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_SvZ88DxYEd6JwqSGecoePg"/>
      <association href="../consol.uml#_fvVzgLS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <ownedAttribute xmi:id="_fvasALS6EeWcPq3zAthoUQ" name="entry" type="_fvY20LS6EeWcPq3zAthoUQ" isReadOnly="true" aggregation="composite">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvasAbS6EeWcPq3zAthoUQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvasArS6EeWcPq3zAthoUQ" value="1"/>
      <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_SvZ88DxYEd6JwqSGecoePg"/>
      <association href="../consol.uml#_fvaE8LS6EeWcPq3zAthoUQ"/>
    </ownedAttribute>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fvT-ULS6EeWcPq3zAthoUQ" name="ProblemConcernAct2Entry">
      <ownedRule xmi:id="_d_zRELTREeWEoeeTdrbyVw" name="ProblemSection2ProblemConcernAct2EntryProblemConcernAct2">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fvXosLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_d_zREbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.act->exists(act : cda::Act | not act.oclIsUndefined() and act.oclIsKindOf(consol::ProblemConcernAct2))</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fvT-UbS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_r0FX0DxXEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_fvXosbS6EeWcPq3zAthoUQ" name="problemConcernAct2" type="_y5C8IOzbEeOnE-G4kptBiw" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvXosrS6EeWcPq3zAthoUQ" value="1"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvXos7S6EeWcPq3zAthoUQ" value="*"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_mNS5ATxYEd6JwqSGecoePg"/>
        <association href="../consol.uml#_fvXosLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
    <nestedClassifier xmi:type="uml:Class" xmi:id="_fvY20LS6EeWcPq3zAthoUQ" name="HealthStatusObservation2Entry">
      <ownedRule xmi:id="_eAaVELTREeWEoeeTdrbyVw" name="ProblemSection2HealthStatusObservation2EntryHealthStatusObservation2">
        <constrainedElement xmi:type="uml:Association" href="../consol.uml#_fvchMLS6EeWcPq3zAthoUQ"/>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_eAaVEbTREeWEoeeTdrbyVw">
          <language>OCL</language>
          <body>self.observation->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(consol::HealthStatusObservation2))->size() &lt;= 1</body>
        </specification>
      </ownedRule>
      <generalization xmi:id="_fvY20bS6EeWcPq3zAthoUQ">
        <general xmi:type="uml:Class" href="pathmap://CDA_MODEL/cda.uml#_r0FX0DxXEd6JwqSGecoePg"/>
      </generalization>
      <ownedAttribute xmi:id="_fvchMbS6EeWcPq3zAthoUQ" name="healthStatusObservation2" type="_DMvdYOEFEeOmBMTtnrPqww" isReadOnly="true" aggregation="composite">
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvchMrS6EeWcPq3zAthoUQ"/>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvchM7S6EeWcPq3zAthoUQ" value="1"/>
        <subsettedProperty href="pathmap://CDA_MODEL/cda.uml#_k2RbsTxYEd6JwqSGecoePg"/>
        <association href="../consol.uml#_fvchMLS6EeWcPq3zAthoUQ"/>
      </ownedAttribute>
    </nestedClassifier>
  </uml:Class>
  <CDA:CDATemplate xmi:id="_z4rXsALVEeSyydFGYJajGA" base_Class="_IXrA4ALVEeSyydFGYJajGA" templateId="2.16.840.1.113883.10.20.22.2.5.1" templateVersion="2015-08-01">
    <ruleId>CONF:1198-9179, CONF:1198-10441, CONF:1198-32510</ruleId>
  </CDA:CDATemplate>
  <CDA:ConformsTo xmi:id="__-n10ALVEeSyydFGYJajGA" base_Generalization="_IXs2EALVEeSyydFGYJajGA"/>
  <CDA:CodeSystemConstraint xmi:id="_194UMALWEeSyydFGYJajGA" code="11450-4" displayName="Problem List" base_Property="_193tIALWEeSyydFGYJajGA">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_3-cwsCWrEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:1198-15410, CONF:1198-31142</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:PropertyValidation xmi:id="_196JYALWEeSyydFGYJajGA" base_Property="_193tIALWEeSyydFGYJajGA">
    <ruleId>CONF:1198-15409</ruleId>
  </CDA:PropertyValidation>
  <uml:Association xmi:id="_v5IuEALXEeSyydFGYJajGA" memberEnd="_v5IuEQLXEeSyydFGYJajGA">
    <ownedEnd xmi:id="_v5IuEQLXEeSyydFGYJajGA" type="_IXrA4ALVEeSyydFGYJajGA" isReadOnly="true" association="_v5IuEALXEeSyydFGYJajGA"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_xupeMALXEeSyydFGYJajGA" base_Association="_v5IuEALXEeSyydFGYJajGA">
    <ruleId>CONF:1198-9183, CONF:1198-15506</ruleId>
  </CDA:AssociationValidation>
  <uml:Association xmi:id="_JjQi4ALYEeSyydFGYJajGA" memberEnd="_JjRJ8ALYEeSyydFGYJajGA">
    <ownedEnd xmi:id="_JjRJ8ALYEeSyydFGYJajGA" type="_IXrA4ALVEeSyydFGYJajGA" isReadOnly="true" association="_JjQi4ALYEeSyydFGYJajGA"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_NxYJIALYEeSyydFGYJajGA" severity="INFO" base_Association="_JjQi4ALYEeSyydFGYJajGA">
    <ruleId>CONF:1198-30479, CONF:1198-30480</ruleId>
  </CDA:AssociationValidation>
  <CDA:PropertyValidation xmi:id="_szXagwLYEeSyydFGYJajGA" base_Property="_szXagALYEeSyydFGYJajGA">
    <ruleId>CONF:1198-9182</ruleId>
  </CDA:PropertyValidation>
  <uml:Association xmi:id="_AVyzwDq9EeSyGa6KC25kiw" memberEnd="_AVyzwTq9EeSyGa6KC25kiw">
    <ownedEnd xmi:id="_AVyzwTq9EeSyGa6KC25kiw" type="_2umuYJ18EeORR8_YW0n_jQ" isReadOnly="true" association="_AVyzwDq9EeSyGa6KC25kiw"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_DQKTIDq9EeSyGa6KC25kiw" severity="WARNING" base_Association="_AVyzwDq9EeSyGa6KC25kiw">
    <ruleId>CONF:1198-30483, CONF:1198-30484</ruleId>
  </CDA:AssociationValidation>
  <CDA:TextValue xmi:id="_qGW24KcJEeSFQp5MpGZ8qw" base_Property="_szXahALYEeSyydFGYJajGA">
    <ruleId>CONF:1198-9181</ruleId>
  </CDA:TextValue>
  <CDA:PropertyValidation xmi:id="_1Wtw0KcJEeSFQp5MpGZ8qw" severity="INFO" base_Property="_ybG7UKcJEeSFQp5MpGZ8qw">
    <ruleId>CONF:1198-32864</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_dGLy8MElEeSjB6vMjDsL5Q" base_Property="_Zob5sMElEeSjB6vMjDsL5Q">
    <ruleId>CONF:1098-32486</ruleId>
  </CDA:PropertyValidation>
  <CDA:CodeSystemConstraint xmi:id="_Vo2CMMEmEeSjB6vMjDsL5Q" code="completed" displayName="Completed" base_Property="_Voy-4MEmEeSjB6vMjDsL5Q">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_e8ZEoCWvEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:1098-19103</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:PropertyValidation xmi:id="_W-iCwMEmEeSjB6vMjDsL5Q" base_Property="_Voy-4MEmEeSjB6vMjDsL5Q">
    <ruleId>CONF:1098-9074</ruleId>
  </CDA:PropertyValidation>
  <CDA:ValueSetConstraint xmi:id="_52axsMm4EeSr1c1X9ACWbg" severity="WARNING" base_Property="_52ZjkMm4EeSr1c1X9ACWbg">
    <ruleId>CONF:1198-9045</ruleId>
    <reference href="../consol-vocab.uml#_ngam0Ez2EeWJ65CktI2ODQ"/>
  </CDA:ValueSetConstraint>
  <CDA:PropertyValidation xmi:id="_52d1AMm4EeSr1c1X9ACWbg" base_Property="_52ZjkMm4EeSr1c1X9ACWbg"/>
  <CDA:CodeSystemConstraint xmi:id="_8NtHQMm6EeSr1c1X9ACWbg" code="completed" displayName="Completed" base_Property="_8NsgMMm6EeSr1c1X9ACWbg">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_e8ZEoCWvEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:1198-19112</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:PropertyValidation xmi:id="_-kpJcMm6EeSr1c1X9ACWbg" base_Property="_8NsgMMm6EeSr1c1X9ACWbg">
    <ruleId>CONF:1198-9049</ruleId>
  </CDA:PropertyValidation>
  <CDA:PropertyValidation xmi:id="_a9gQsPgDEeSx6PQhw3nAUw" severity="INFO" base_Property="_Z0MfQPgDEeSx6PQhw3nAUw">
    <ruleId>CONF:1198-32802</ruleId>
  </CDA:PropertyValidation>
  <uml:Association xmi:id="_nlSbIPgEEeSx6PQhw3nAUw" memberEnd="_nlTCMPgEEeSx6PQhw3nAUw">
    <ownedEnd xmi:id="_nlTCMPgEEeSx6PQhw3nAUw" type="_2umuYJ18EeORR8_YW0n_jQ" isReadOnly="true" association="_nlSbIPgEEeSx6PQhw3nAUw"/>
  </uml:Association>
  <CDA:AssociationValidation xmi:id="_oen24PgEEeSx6PQhw3nAUw" severity="INFO" base_Association="_nlSbIPgEEeSx6PQhw3nAUw">
    <ruleId>CONF:1198-32308, CONF:1198-32309</ruleId>
  </CDA:AssociationValidation>
  <CDA:PropertyValidation xmi:id="_Ie7VkASFEeWqeJlhkO8aqA" base_Property="_CjbAcASFEeWqeJlhkO8aqA">
    <ruleId>CONF:1098-29943</ruleId>
  </CDA:PropertyValidation>
  <CDA:CodeSystemConstraint xmi:id="_IxfsQASFEeWqeJlhkO8aqA" code="ASSERTION" displayName="assertion" base_Property="_CjbAcASFEeWqeJlhkO8aqA">
    <reference href="pathmap://TERM_MODEL/CodeSystems.uml#_4AnRQCYWEd-iTYfpNb4PkQ"/>
    <ruleId>CONF:1098-31540</ruleId>
    <ruleId>CONF:1098-31541</ruleId>
  </CDA:CodeSystemConstraint>
  <CDA:ConstraintValidation xmi:id="_Ij468BaVEeWPafwaDwpzXw" severity="INFO" base_Constraint="_SPweoMm6EeSr1c1X9ACWbg"/>
  <CDA:ConstraintValidation xmi:id="_JGhG4BaVEeWPafwaDwpzXw" severity="INFO" base_Constraint="_YW_ioMm6EeSr1c1X9ACWbg"/>
  <CDA:ConstraintValidation xmi:id="_JkQy0BaVEeWPafwaDwpzXw" severity="INFO" base_Constraint="_ZYmJkMm6EeSr1c1X9ACWbg"/>
  <CDA:ConstraintValidation xmi:id="_KEhnQBaVEeWPafwaDwpzXw" severity="INFO" base_Constraint="_eMSAwPDOEeOKPKE9au0oug"/>
  <CDA:ConstraintValidation xmi:id="_KwbD8BaVEeWPafwaDwpzXw" severity="INFO" base_Constraint="_3n3DQPDOEeOKPKE9au0oug"/>
  <CDA:ConstraintValidation xmi:id="_ZOxR8BaXEeWPafwaDwpzXw" severity="INFO" base_Constraint="_RGF6oMEkEeSjB6vMjDsL5Q"/>
  <CDA:ConstraintValidation xmi:id="_ZsFgEBaXEeWPafwaDwpzXw" severity="INFO" base_Constraint="_UJBgIMEkEeSjB6vMjDsL5Q"/>
  <CDA:ConstraintValidation xmi:id="_cDQLwBaXEeWPafwaDwpzXw" severity="INFO" base_Constraint="_YgU3kMEkEeSjB6vMjDsL5Q"/>
  <CDA:PropertyValidation xmi:id="_3bREgE9oEeWsIc5CMrI4GA" base_Property="_zWj48E9oEeWsIc5CMrI4GA"/>
  <CDA:ValueSetConstraint xmi:id="_5ALM0E9oEeWsIc5CMrI4GA" severity="WARNING" base_Property="_zWj48E9oEeWsIc5CMrI4GA">
    <ruleId>CONF:1198-32848</ruleId>
    <reference href="../consol-vocab.uml#_hRIUmoY5EeS7A_69H25Pzw"/>
  </CDA:ValueSetConstraint>
  <CDA:Inline xmi:id="_fDpLIrS6EeWcPq3zAthoUQ" base_Class="_fDpLILS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fG-L8rS6EeWcPq3zAthoUQ" base_Class="_fG-L8LS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fM8RErS6EeWcPq3zAthoUQ" base_Class="_fM8RELS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fNAigLS6EeWcPq3zAthoUQ" base_Class="_fM_7cLS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fNEM4rS6EeWcPq3zAthoUQ" base_Class="_fNEM4LS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fNSPUrS6EeWcPq3zAthoUQ" base_Class="_fNSPULS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_ffKpgrS6EeWcPq3zAthoUQ" base_Class="_ffKpgLS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_ffO68rS6EeWcPq3zAthoUQ" base_Class="_ffO68LS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_ffSlUrS6EeWcPq3zAthoUQ" base_Class="_ffSlULS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fn2EYrS6EeWcPq3zAthoUQ" base_Class="_fn2EYLS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fn6V0rS6EeWcPq3zAthoUQ" base_Class="_fn6V0LS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fn_OUrS6EeWcPq3zAthoUQ" base_Class="_fn_OULS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_foC4srS6EeWcPq3zAthoUQ" base_Class="_foC4sLS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_foGjErS6EeWcPq3zAthoUQ" base_Class="_foGjELS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_foK0grS6EeWcPq3zAthoUQ" base_Class="_foK0gLS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fukXcrS6EeWcPq3zAthoUQ" base_Class="_fukXcLS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fup3ArS6EeWcPq3zAthoUQ" base_Class="_fup3ALS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fvT-UrS6EeWcPq3zAthoUQ" base_Class="_fvT-ULS6EeWcPq3zAthoUQ"/>
  <CDA:Inline xmi:id="_fvY20rS6EeWcPq3zAthoUQ" base_Class="_fvY20LS6EeWcPq3zAthoUQ"/>
  <Ecore:EClass xmi:id="_S7ZIcLTREeWEoeeTdrbyVw" base_Class="_2EqqABSVEeGGzu7fmW9pXw">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='AgeObservationTemplateId AgeObservationValueUnits AgeObservationClassCode AgeObservationMoodCode AgeObservationCode AgeObservationCodeP AgeObservationStatusCode AgeObservationStatusCodeP AgeObservationValue' templateId.root='2.16.840.1.113883.10.20.22.4.31' classCode='OBS' moodCode='EVN' code.code='445518008' code.codeSystem='2.16.840.1.113883.6.96' code.codeSystemName='SNOMEDCT' code.displayName='Age At Onset' constraints.validation.dependOn.AgeObservationCode='AgeObservationCodeP' statusCode.code='completed'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_S72bcLTREeWEoeeTdrbyVw" base_Class="_2ExXsBSVEeGGzu7fmW9pXw">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='HealthStatusObservationTemplateId HealthStatusObservationHasTextReferenceValue HealthStatusObservationClassCode HealthStatusObservationMoodCode HealthStatusObservationCode HealthStatusObservationCodeP HealthStatusObservationStatusCode HealthStatusObservationStatusCodeP HealthStatusObservationValue HealthStatusObservationValueP' templateId.root='2.16.840.1.113883.10.20.22.4.5' constraints.validation.warning='HealthStatusObservationHasTextReference HealthStatusObservationTextReferenceValue HealthStatusObservationText' classCode='OBS' moodCode='EVN' code.code='11323-3' code.codeSystem='2.16.840.1.113883.6.1' code.codeSystemName='LOINC' code.displayName='Health status' constraints.validation.dependOn.HealthStatusObservationCode='HealthStatusObservationCodeP' statusCode.code='completed' constraints.validation.dependOn.HealthStatusObservationStatusCode='HealthStatusObservationStatusCodeP' value.codeSystem='2.16.840.1.113883.6.96' value.codeSystemName='SNOMEDCT'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_TDCBgLTREeWEoeeTdrbyVw" base_Class="_2H6yUBSVEeGGzu7fmW9pXw">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemConcernActTemplateId ProblemConcernActEffectiveTimeLow ProblemConcernActClassCode ProblemConcernActMoodCode ProblemConcernActId ProblemConcernActCode ProblemConcernActCodeP ProblemConcernActStatusCode ProblemConcernActStatusCodeP ProblemConcernActEffectiveTime ProblemConcernActEntryRelationship' templateId.root='2.16.840.1.113883.10.20.22.4.3' constraints.validation.warning='ProblemConcernActEffectiveTimeHigh' classCode='ACT' moodCode='EVN' code.code='CONC' code.codeSystem='2.16.840.1.113883.5.6' code.codeSystemName='HL7ActClass' code.displayName='Concern' constraints.validation.dependOn.ProblemConcernActCode='ProblemConcernActCodeP' constraints.validation.dependOn.ProblemConcernActStatusCode='ProblemConcernActStatusCodeP'</annotation>
  </Ecore:EClass>
  <CDA:ConformsTo xmi:id="_TJ3pULTREeWEoeeTdrbyVw" base_Generalization="_blmF8BVgEeGQCvUGzi1kDQ"/>
  <Ecore:EClass xmi:id="_TJ43cLTREeWEoeeTdrbyVw" base_Class="_2LSPYBSVEeGGzu7fmW9pXw">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemSectionEntriesOptionalTemplateId ProblemSectionEntriesOptionalCode ProblemSectionEntriesOptionalCodeP ProblemSectionEntriesOptionalText ProblemSectionEntriesOptionalTitle ProblemSectionEntry' templateId.root='2.16.840.1.113883.10.20.22.2.5.1' code.code='11450-4' code.codeSystem='2.16.840.1.113883.6.1' code.codeSystemName='LOINC' code.displayName='Problem List' constraints.validation.dependOn.ProblemSectionEntriesOptionalCode='ProblemSectionEntriesOptionalCodeP'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_Thdp8LTREeWEoeeTdrbyVw" base_Class="_5Ha7ABUyEeGbmN_W114JUw">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemObservationTemplateId ProblemObservationTextReferenceValue ProblemObservationHasTextReferenceValue ProblemObservationHasOnsetDate ProblemObservationAgeObservationInversion ProblemObservationClassCode ProblemObservationMoodCode ProblemObservationId ProblemObservationCodeP ProblemObservationStatusCode ProblemObservationStatusCodeP ProblemObservationValueP ProblemObservationEntryRelationship' templateId.root='2.16.840.1.113883.10.20.22.4.4' constraints.validation.warning='ProblemObservationHasTextReference ProblemObservationCode ProblemObservationText ProblemObservationEffectiveTime ProblemObservationValue' constraints.validation.info='ProblemObservationHasResolutionDate ProblemObservationValueNullFlavor ProblemObservationValueTranslation ProblemObservationValueTranslationCode ProblemObservationNegationInd' classCode='OBS' moodCode='EVN' code.codeSystem='2.16.840.1.113883.6.96' code.codeSystemName='SNOMEDCT' constraints.validation.dependOn.ProblemObservationCode='ProblemObservationCodeP' statusCode.code='completed' constraints.validation.dependOn.ProblemObservationStatusCode='ProblemObservationStatusCodeP' value.codeSystem='2.16.840.1.113883.6.96' value.codeSystemName='SNOMEDCT'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_TihZ4LTREeWEoeeTdrbyVw" base_Class="_SjN_8BUzEeGbmN_W114JUw">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemStatusTemplateId ProblemStatusReferenceValue ProblemStatusTextReferenceValue ProblemStatusClassCode ProblemStatusMoodCode ProblemStatusCode ProblemStatusCodeP ProblemStatusStatusCode ProblemStatusStatusCodeP ProblemStatusValue ProblemStatusValueP' templateId.root='2.16.840.1.113883.10.20.22.4.6' constraints.validation.warning='ProblemStatusTextReference ProblemStatusText' classCode='OBS' moodCode='EVN' code.code='33999-4' code.codeSystem='2.16.840.1.113883.6.1' code.codeSystemName='LOINC' code.displayName='Status' constraints.validation.dependOn.ProblemStatusCode='ProblemStatusCodeP' statusCode.code='completed' constraints.validation.dependOn.ProblemStatusStatusCode='ProblemStatusStatusCodeP' value.codeSystem='2.16.840.1.113883.6.96' value.codeSystemName='SNOMEDCT' constraints.validation.dependOn.ProblemStatusValue='ProblemStatusValueP'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_TlCiYLTREeWEoeeTdrbyVw" base_Class="_naxrkBVdEeGQCvUGzi1kDQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemSectionEntriesOptionalTemplateId ProblemSectionEntriesOptionalCode ProblemSectionEntriesOptionalCodeP ProblemSectionEntriesOptionalTitle ProblemSectionEntriesOptionalText ProblemSectionEntriesOptionalEntry' templateId.root='2.16.840.1.113883.10.20.22.2.5' code.code='11450-4' code.codeSystem='2.16.840.1.113883.6.1' code.codeSystemName='LOINC' code.displayName='Problem List'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_VjoWALTREeWEoeeTdrbyVw" base_Class="_GXlxYJmLEeOeSLwbllPCyw">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='PrognosisObservationTemplateId PrognosisObservationClassCode PrognosisObservationMoodCode PrognosisObservationCode PrognosisObservationCodeP PrognosisObservationStatusCode PrognosisObservationStatusCodeP PrognosisObservationEffectiveTime PrognosisObservationValue' templateId.root='2.16.840.1.113883.10.20.22.4.113' classCode='OBS' moodCode='EVN' code.code='75328-5' code.codeSystem='2.16.840.1.113883.6.1' code.codeSystemName='LOINC' code.displayName='Prognosis' constraints.validation.dependOn.PrognosisObservationCode='PrognosisObservationCodeP' statusCode.code='completed'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_VnfiULTREeWEoeeTdrbyVw" base_Class="_D6Lm0JpnEeOK6dzbL4VoTA">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='WoundCharacteristicTemplateId WoundCharacteristicClassCode WoundCharacteristicMoodCode WoundCharacteristicId WoundCharacteristicCode WoundCharacteristicCodeP WoundCharacteristicStatusCode WoundCharacteristicStatusCodeP WoundCharacteristicEffectiveTime WoundCharacteristicValue WoundCharacteristicValueP' templateId.root='2.16.840.1.113883.10.20.22.4.134' classCode='OBS' moodCode='EVN' code.code='ASSERTION' code.codeSystem='2.16.840.1.113883.5.4' code.codeSystemName='HL7ActCode' code.displayName='assertion' constraints.validation.dependOn.WoundCharacteristicCode='WoundCharacteristicCodeP' statusCode.code='completed' value.codeSystem='2.16.840.1.113883.6.96' value.codeSystemName='SNOMEDCT'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_Vp1rsLTREeWEoeeTdrbyVw" base_Class="_2umuYJ18EeORR8_YW0n_jQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='HealthConcernsSectionTemplateId HealthConcernsSectionCode HealthConcernsSectionCodeP HealthConcernsSectionTitle HealthConcernsSectionText HealthConcernsSectionEntry' templateId.root='2.16.840.1.113883.10.20.22.2.58' templateId.extension='2015-08-01' nullFlavor='NI' constraints.validation.info='HealthConcernsSectionNullFlavor' code.code='75310-3' code.codeSystem='2.16.840.1.113883.6.1' code.codeSystemName='LOINC' code.displayName='Health concerns document'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_WYkZ8LTREeWEoeeTdrbyVw" base_Class="_DMvdYOEFEeOmBMTtnrPqww">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='HealthStatusObservationTemplateId HealthStatusObservation2Id HealthStatusObservationCode HealthStatusObservationCodeP HealthStatusObservationText HealthStatusObservationStatusCode HealthStatusObservationStatusCodeP' templateId.root='2.16.840.1.113883.10.20.22.4.5' templateId.extension='2014-06-09' constraints.validation.info='HealthStatusObservationHasTextReference HealthStatusObservationTextReferenceValue HealthStatusObservationHasTextReferenceValue' code.code='11323-3' code.codeSystem='2.16.840.1.113883.6.1' code.codeSystemName='LOINC' code.displayName='Health status' constraints.validation.dependOn.HealthStatusObservationCode='HealthStatusObservationCodeP' statusCode.code='completed' constraints.validation.dependOn.HealthStatusObservationStatusCode='HealthStatusObservationStatusCodeP'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_WuxTcLTREeWEoeeTdrbyVw" base_Class="_y5C8IOzbEeOnE-G4kptBiw">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemConcernActTemplateId ProblemConcernActEffectiveTimeLow ProblemConcernActStatusCode ProblemConcernActStatusCodeP ProblemConcernActEffectiveTime ProblemConcernActCode ProblemConcernActCodeP ProblemConcernAct2EntryRelationship' templateId.root='2.16.840.1.113883.10.20.22.4.3' templateId.extension='2015-08-01' constraints.validation.info='ProblemConcernActEffectiveTimeHigh' constraints.validation.dependOn.ProblemConcernActStatusCode='ProblemConcernActStatusCodeP' code.code='CONC' code.codeSystem='2.16.840.1.113883.5.6' code.codeSystemName='HL7ActClass' code.displayName='Concern' constraints.validation.dependOn.ProblemConcernActCode='ProblemConcernActCodeP' constraints.validation.warning='ProblemConcernAct2AuthorParticipation'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_WxP_sLTREeWEoeeTdrbyVw" base_Class="_prDAkPDCEeOKPKE9au0oug">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemObservationTemplateId ProblemObservationHasOnsetDate ProblemObservationEffectiveTime ProblemObservationValueP ProblemObservationCodeP ProblemObservationText ProblemObservationStatusCode ProblemObservationStatusCodeP ProblemObservation2EntryRelationship' templateId.root='2.16.840.1.113883.10.20.22.4.4' templateId.extension='2015-08-01' constraints.validation.info='ProblemObservationHasTextReference ProblemObservationTextReferenceValue ProblemObservationHasTextReferenceValue ProblemObservationHasResolutionDate ProblemObservationValueNullFlavor ProblemObservationValueNullFlavorUnknown ProblemObservationNegationInd' value.codeSystem='2.16.840.1.113883.6.96' value.codeSystemName='SNOMEDCT' constraints.validation.warning='ProblemObservationValue ProblemObservationCode ProblemObservation2AuthorParticipation' constraints.validation.dependOn.ProblemObservationValue='ProblemObservationValueP' code.codeSystem='2.16.840.1.113883.6.96' code.codeSystemName='SNOMEDCT' constraints.validation.dependOn.ProblemObservationCode='ProblemObservationCodeP' statusCode.code='completed' constraints.validation.dependOn.ProblemObservationStatusCode='ProblemObservationStatusCodeP'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_Wy4XYLTREeWEoeeTdrbyVw" base_Class="_hNARsPDMEeOKPKE9au0oug">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='ProblemObservation2CDQualifier ProblemObservation2CDCode'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_Wy8o0LTREeWEoeeTdrbyVw" base_Class="_y3_GkE9oEeWsIc5CMrI4GA">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation translation.codeSystem='2.16.840.1.113883.6.1' translation.codeSystemName='LOINC' constraints.validation.warning='ProblemObservation2CDCodeTranslation' constraints.validation.error='ProblemObservation2CDCodeTranslationP'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_XILR8LTREeWEoeeTdrbyVw" base_Class="_ZgLioAFkEeSJ2uHfynwxCw">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemSectionEntriesOptionalTemplateId ProblemSectionEntriesOptionalCode ProblemSectionEntriesOptionalCodeP ProblemSectionEntriesOptional2Entry' templateId.root='2.16.840.1.113883.10.20.22.2.5' templateId.extension='2015-08-01' code.code='11450-4' code.codeSystem='2.16.840.1.113883.6.1' code.codeSystemName='LOINC' code.displayName='Problem List' constraints.validation.dependOn.ProblemSectionEntriesOptionalCode='ProblemSectionEntriesOptionalCodeP'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_XJ0QsLTREeWEoeeTdrbyVw" base_Class="_IXrA4ALVEeSyydFGYJajGA">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemSectionEntriesOptionalTemplateId ProblemSectionEntriesOptionalCode ProblemSectionEntriesOptionalCodeP ProblemSectionEntriesOptionalTitle ProblemSectionEntriesOptionalText ProblemSection2Entry' templateId.root='2.16.840.1.113883.10.20.22.2.5.1' templateId.extension='2015-08-01' nullFlavor='NI' constraints.validation.info='ProblemSection2NullFlavor' code.code='11450-4' code.codeSystem='2.16.840.1.113883.6.1' code.codeSystemName='LOINC' code.displayName='Problem List' constraints.validation.dependOn.ProblemSectionEntriesOptionalCode='ProblemSectionEntriesOptionalCodeP'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_YmY8YLTREeWEoeeTdrbyVw" base_Class="_fDpLILS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemConcernActProblemObservationEntryRelationshipProblemObservation'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_Y8nEALTREeWEoeeTdrbyVw" base_Class="_fG-L8LS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemSectionProblemConcernActEntryProblemConcern'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_ZgFkgLTREeWEoeeTdrbyVw" base_Class="_fM8RELS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='ProblemObservationAgeObservationEntryRelationshipAgeObservation'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_ZgkssLTREeWEoeeTdrbyVw" base_Class="_fM_7cLS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='ProblemObservationProblemStatusEntryRelationshipProblemStatus'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_ZhDN0LTREeWEoeeTdrbyVw" base_Class="_fNEM4LS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='ProblemObservationHealthStatusObservationEntryRelationshipHealthStatusObservation'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_ZiibkLTREeWEoeeTdrbyVw" base_Class="_fNSPULS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.warning='ProblemSectionEntriesOptionalProblemConcernActEntryProblemConcern'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_cBSV8LTREeWEoeeTdrbyVw" base_Class="_ffKpgLS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.warning='HealthConcernsSectionHealthStatusObservation2EntryHealthStatusObservation2'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_cB29sLTREeWEoeeTdrbyVw" base_Class="_ffO68LS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='HealthConcernsSectionHealthConcernActEntryHealthConcernAct'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_cCeBsLTREeWEoeeTdrbyVw" base_Class="_ffSlULS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='HealthConcernsSectionRiskConcernActEntryRiskConcernAct'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_dLQ1wLTREeWEoeeTdrbyVw" base_Class="_fn2EYLS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemConcernAct2ProblemObservation2EntryRelationshipProblemObservation2'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_dL3SsLTREeWEoeeTdrbyVw" base_Class="_fn6V0LS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='ProblemConcernAct2PriorityPreferenceEntryRelationshipPriorityPreference'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_dMngoLTREeWEoeeTdrbyVw" base_Class="_fn_OULS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='ProblemObservation2PrognosisObservationEntryRelationshipPrognosisObservation'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_dNm_ILTREeWEoeeTdrbyVw" base_Class="_foC4sLS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='ProblemObservation2PriorityPreferenceEntryRelationshipPriorityPreference'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_dORtgLTREeWEoeeTdrbyVw" base_Class="_foGjELS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='ProblemObservation2ProblemStatusEntryRelationshipProblemStatus'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_dO-RELTREeWEoeeTdrbyVw" base_Class="_foK0gLS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemObservation2HealthStatusObservationEntryRelationshipHealthStatusObservation'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_d7FJILTREeWEoeeTdrbyVw" base_Class="_fukXcLS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.warning='ProblemSectionEntriesOptional2ProblemConcernAct2EntryProblemConcernAct2'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_d7mGgLTREeWEoeeTdrbyVw" base_Class="_fup3ALS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='ProblemSectionEntriesOptional2HealthStatusObservation2EntryHealthStatusObservation2'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_eAChoLTREeWEoeeTdrbyVw" base_Class="_fvT-ULS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='ProblemSection2ProblemConcernAct2EntryProblemConcernAct2'</annotation>
  </Ecore:EClass>
  <Ecore:EClass xmi:id="_eAploLTREeWEoeeTdrbyVw" base_Class="_fvY20LS6EeWcPq3zAthoUQ">
    <annotation>http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.info='ProblemSection2HealthStatusObservation2EntryHealthStatusObservation2'</annotation>
  </Ecore:EClass>
</xmi:XMI>
