<?xml version="1.0" encoding="UTF-8"?>
<!--
Template derived pattern
===========================================
ID: 1.2.40.0.34.11.1.3.4
Name: Vitalparameter Entry
Description: 
-->
<pattern xmlns="http://purl.oclc.org/dsdl/schematron"
         id="template-1.2.40.0.34.11.1.3.4-2011-12-19T000000">
   <title>Vitalparameter Entry</title>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]"
         id="tmp-r-838fe7e0-2b81-47df-9e42-c09b0bc781d3">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31'])&gt;=1 ">(VitalparameterEntry): Element hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31'] ist required [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31'])&lt;=1">(VitalparameterEntry): Element hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31'] kommt zu häufig vor [max 1x].</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']"
         id="tmp-r-b36d9b53-d30c-4160-a140-a711e1df3e11">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="string(@classCode)=('OBS')">(VitalparameterEntry): Der Wert von @classCode MUSS 'OBS' sein.</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="string(@moodCode)=('EVN')">(VitalparameterEntry): Der Wert von @moodCode MUSS 'EVN' sein.</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:templateId[@root='1.2.40.0.34.11.1.3.4'])&gt;=1 ">(VitalparameterEntry): Element hl7:templateId[@root='1.2.40.0.34.11.1.3.4'] ist required [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:templateId[@root='1.2.40.0.34.11.1.3.4'])&lt;=1">(VitalparameterEntry): Element hl7:templateId[@root='1.2.40.0.34.11.1.3.4'] kommt zu häufig vor [max 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13'])&gt;=1 ">(VitalparameterEntry): Element hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13'] ist required [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13'])&lt;=1">(VitalparameterEntry): Element hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13'] kommt zu häufig vor [max 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2'])&gt;=1 ">(VitalparameterEntry): Element hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2'] ist required [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2'])&lt;=1">(VitalparameterEntry): Element hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2'] kommt zu häufig vor [max 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:templateId[@root='2.16.840.1.113883.10.20.1.31'])&gt;=1 ">(VitalparameterEntry): Element hl7:templateId[@root='2.16.840.1.113883.10.20.1.31'] ist required [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:templateId[@root='2.16.840.1.113883.10.20.1.31'])&lt;=1">(VitalparameterEntry): Element hl7:templateId[@root='2.16.840.1.113883.10.20.1.31'] kommt zu häufig vor [max 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:id)&gt;=1 ">(VitalparameterEntry): Element hl7:id ist required [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:id)&lt;=1">(VitalparameterEntry): Element hl7:id kommt zu häufig vor [max 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:code[concat(@code,@codeSystem)=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/concept/concat(@code,@codeSystem) or (@nullFlavor=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/exception/@code)])&gt;=1 and not(hl7:code[concat(@code,@codeSystem)=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/concept/concat(@code,@codeSystem) or (@nullFlavor=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/exception/@code)]/@nullFlavor)">(VitalparameterEntry): Element hl7:code[concat(@code,@codeSystem)=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/concept/concat(@code,@codeSystem) or (@nullFlavor=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/exception/@code)] ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:code[concat(@code,@codeSystem)=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/concept/concat(@code,@codeSystem) or (@nullFlavor=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/exception/@code)])&lt;=1">(VitalparameterEntry): Element hl7:code[concat(@code,@codeSystem)=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/concept/concat(@code,@codeSystem) or (@nullFlavor=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/exception/@code)] kommt zu häufig vor [max 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:text)&gt;=1 and not(hl7:text/@nullFlavor)">(VitalparameterEntry): Element hl7:text ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:text)&lt;=1">(VitalparameterEntry): Element hl7:text kommt zu häufig vor [max 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:statusCode[@code='completed'])&gt;=1 and not(hl7:statusCode[@code='completed']/@nullFlavor)">(VitalparameterEntry): Element hl7:statusCode[@code='completed'] ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:statusCode[@code='completed'])&lt;=1">(VitalparameterEntry): Element hl7:statusCode[@code='completed'] kommt zu häufig vor [max 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:value)&gt;=1 and not(hl7:value/@nullFlavor)">(VitalparameterEntry): Element hl7:value ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:value)&lt;=1">(VitalparameterEntry): Element hl7:value kommt zu häufig vor [max 1x].</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:templateId[@root='1.2.40.0.34.11.1.3.4']
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:templateId[@root='1.2.40.0.34.11.1.3.4']"
         id="tmp-r-a919dd2c-000c-4ad8-8928-e9f827c7369b">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='II' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(VitalparameterEntry): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:II" haben, gefunden "{<value-of select="namespace-uri-from-QName(resolve-QName(@xsi:type,.))"/>}:<value-of select="local-name-from-QName(resolve-QName(@xsi:type,.))"/>"</assert>
      <extends rule="II"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="string(@root)=('1.2.40.0.34.11.1.3.4')">(VitalparameterEntry): Der Wert von @root MUSS '1.2.40.0.34.11.1.3.4' sein.</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13']
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13']"
         id="tmp-r-32654f61-947f-41da-9b1a-a849c56c5231">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='II' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(VitalparameterEntry): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:II" haben, gefunden "{<value-of select="namespace-uri-from-QName(resolve-QName(@xsi:type,.))"/>}:<value-of select="local-name-from-QName(resolve-QName(@xsi:type,.))"/>"</assert>
      <extends rule="II"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="string(@root)=('1.3.6.1.4.1.19376.1.5.3.1.4.13')">(VitalparameterEntry): Der Wert von @root MUSS '1.3.6.1.4.1.19376.1.5.3.1.4.13' sein.</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2']
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:templateId[@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2']"
         id="tmp-r-00f3f5e2-6f16-4291-b76e-e28a7eeb4dca">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='II' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(VitalparameterEntry): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:II" haben, gefunden "{<value-of select="namespace-uri-from-QName(resolve-QName(@xsi:type,.))"/>}:<value-of select="local-name-from-QName(resolve-QName(@xsi:type,.))"/>"</assert>
      <extends rule="II"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="string(@root)=('1.3.6.1.4.1.19376.1.5.3.1.4.13.2')">(VitalparameterEntry): Der Wert von @root MUSS '1.3.6.1.4.1.19376.1.5.3.1.4.13.2' sein.</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:templateId[@root='2.16.840.1.113883.10.20.1.31']
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:templateId[@root='2.16.840.1.113883.10.20.1.31']"
         id="tmp-r-5bf0f2f6-c343-433d-816c-14bf46ba4262">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='II' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(VitalparameterEntry): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:II" haben, gefunden "{<value-of select="namespace-uri-from-QName(resolve-QName(@xsi:type,.))"/>}:<value-of select="local-name-from-QName(resolve-QName(@xsi:type,.))"/>"</assert>
      <extends rule="II"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="string(@root)=('2.16.840.1.113883.10.20.1.31')">(VitalparameterEntry): Der Wert von @root MUSS '2.16.840.1.113883.10.20.1.31' sein.</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:id
Item: (VitalparameterEntry)
-->

   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:code[concat(@code,@codeSystem)=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/concept/concat(@code,@codeSystem) or (@nullFlavor=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/exception/@code)]
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:code[concat(@code,@codeSystem)=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/concept/concat(@code,@codeSystem) or (@nullFlavor=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/exception/@code)]"
         id="tmp-r-80c2f4c6-cb32-417a-a9ad-7686d0d6f7b5">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='CE' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(VitalparameterEntry): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:CE" haben, gefunden "{<value-of select="namespace-uri-from-QName(resolve-QName(@xsi:type,.))"/>}:<value-of select="local-name-from-QName(resolve-QName(@xsi:type,.))"/>"</assert>
      <extends rule="CE"/>
      <let name="theCode" value="@code"/>
      <let name="theCodeSystem" value="@codeSystem"/>
      <let name="theCodeSystemVersion" value="@codeSystemVersion"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="@nullFlavor or exists(doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet[conceptList/concept[@code = $theCode][@codeSystem = $theCodeSystem][not(@codeSystemVersion) or @codeSystemVersion=$theCodeSystemVersion] or completeCodeSystem[@codeSystem=$theCodeSystem][not(@codeSystemVersion) or @codeSystemVersion=$theCodeSystemVersion]])">(VitalparameterEntry): Der Elementinhalt MUSS einer von 'ELGA_Vitalparameterarten (DYNAMIC)' sein.</assert>
      <let name="theNullFlavor" value="@nullFlavor"/>
      <let name="validNullFlavorsFound"
           value="exists(doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/exception[@code = $theNullFlavor][@codeSystem = '2.16.840.1.113883.5.1008'])"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="not(@nullFlavor) or $validNullFlavorsFound">(VitalparameterEntry): Der fehlende Wert '<value-of select="@nullFlavor"/>' für @code MUSS gewählt werden aus dem Set gültiger null flavors für dieses Attribut oder denen assoziiert mit Value Set ELGA_Vitalparameterarten (DYNAMIC).</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:originalText)&gt;=1 and not(hl7:originalText/@nullFlavor)">(VitalparameterEntry): Element hl7:originalText ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:originalText)&lt;=1">(VitalparameterEntry): Element hl7:originalText kommt zu häufig vor [max 1x].</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:code[concat(@code,@codeSystem)=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/concept/concat(@code,@codeSystem) or (@nullFlavor=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/exception/@code)]/hl7:originalText
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:code[concat(@code,@codeSystem)=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/concept/concat(@code,@codeSystem) or (@nullFlavor=doc('include/voc-1.2.40.0.34.10.34-DYNAMIC.xml')/*/valueSet/conceptList/exception/@code)]/hl7:originalText"
         id="tmp-r-e4fcba7f-05c5-44ae-acec-7c32c60ca1d9">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='ED' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(VitalparameterEntry): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:ED" haben, gefunden "{<value-of select="namespace-uri-from-QName(resolve-QName(@xsi:type,.))"/>}:<value-of select="local-name-from-QName(resolve-QName(@xsi:type,.))"/>"</assert>
      <extends rule="ED"/>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:text
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:text"
         id="tmp-r-16bcc92b-723d-4148-b467-7f204694863b">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='ED' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(VitalparameterEntry): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:ED" haben, gefunden "{<value-of select="namespace-uri-from-QName(resolve-QName(@xsi:type,.))"/>}:<value-of select="local-name-from-QName(resolve-QName(@xsi:type,.))"/>"</assert>
      <extends rule="ED"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:reference)&gt;=1 and not(hl7:reference/@nullFlavor)">(VitalparameterEntry): Element hl7:reference ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="count(hl7:reference)&lt;=1">(VitalparameterEntry): Element hl7:reference kommt zu häufig vor [max 1x].</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:text/hl7:reference
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:text/hl7:reference"
         id="tmp-r-5e7c90e8-18b4-480e-abeb-85ae81b799a2">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='TEL' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(VitalparameterEntry): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:TEL" haben, gefunden "{<value-of select="namespace-uri-from-QName(resolve-QName(@xsi:type,.))"/>}:<value-of select="local-name-from-QName(resolve-QName(@xsi:type,.))"/>"</assert>
      <extends rule="TEL"/>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:statusCode[@code='completed']
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:statusCode[@code='completed']"
         id="tmp-r-3a9db8b1-0d17-4b2b-ae16-2c419a1faa89">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='CS' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(VitalparameterEntry): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:CS" haben, gefunden "{<value-of select="namespace-uri-from-QName(resolve-QName(@xsi:type,.))"/>}:<value-of select="local-name-from-QName(resolve-QName(@xsi:type,.))"/>"</assert>
      <extends rule="CS"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="@nullFlavor or (@code='completed')">(VitalparameterEntry): Der Elementinhalt MUSS einer von 'code 'completed'' sein.</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.1.3.4
Context: *[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:value
Item: (VitalparameterEntry)
-->

   <rule context="*[hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4']]/hl7:observation[hl7:templateId/@root='1.2.40.0.34.11.1.3.4' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.13.2' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.31']/hl7:value"
         id="tmp-r-7b2965a2-b33a-40fd-9b4f-e4ac3278ebb6">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='PQ' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(VitalparameterEntry): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:PQ" haben, gefunden "{<value-of select="namespace-uri-from-QName(resolve-QName(@xsi:type,.))"/>}:<value-of select="local-name-from-QName(resolve-QName(@xsi:type,.))"/>"</assert>
      <extends rule="PQ"/>
      <let name="digitok"
           value="matches(string(@value), '^[-+]?\d*\.?[0-9]+([eE][-+]?\d+)?$')"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="$digitok or @nullFlavor">(VitalparameterEntry): @value ist keine gültige PQ Zahl <value-of select="@value"/>
      </assert>
      <let name="theUnit" value="@unit"/>
      <let name="UCUMtest"
           value="doc('include/voc-UCUM.xml')/*/ucum[@unit=$theUnit]/@message"/>
      <assert role="warning"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.1.3.4-2011-12-19T000000.html"
              test="$UCUMtest='OK' or string-length($UCUMtest)=0">(VitalparameterEntry): value/@unit (PQ) MUSS eine gültige UCUM-Einheit sein (<value-of select="$UCUMtest"/>).</assert>
   </rule>
</pattern>
