<?xml version="1.0" encoding="UTF-8"?>
<!--
Template derived pattern
===========================================
ID: 1.2.40.0.34.11.8.3.2.1
Name: Medikationslisten Section
Description: 
-->
<pattern xmlns="http://purl.oclc.org/dsdl/schematron"
         id="template-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000">
   <title>Medikationslisten Section</title>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.8.3.2.1
Context: *[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]
Item: (MedikationslistenSection)
-->

   <!--
Template derived rules for ID: 1.2.40.0.34.11.8.3.2.1
Context: *[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']
Item: (MedikationslistenSection)
-->

   <rule context="*[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']"
         id="tmp-r-a554b528-0d0f-4aa6-a563-e42003f9177e">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="string(@classCode)=('DOCSECT') or not(@classCode)">(MedikationslistenSection): Der Wert von @classCode MUSS 'DOCSECT' sein.</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:templateId[@root='1.2.40.0.34.11.8.3.2.1'])&gt;=1 and not(hl7:templateId[@root='1.2.40.0.34.11.8.3.2.1']/@nullFlavor)">(MedikationslistenSection): Element hl7:templateId[@root='1.2.40.0.34.11.8.3.2.1'] ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:templateId[@root='1.2.40.0.34.11.8.3.2.1'])&lt;=1">(MedikationslistenSection): Element hl7:templateId[@root='1.2.40.0.34.11.8.3.2.1'] 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.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:templateId[@root='1.3.6.1.4.1.19376.1.9.1.2.5'])&gt;=1 and not(hl7:templateId[@root='1.3.6.1.4.1.19376.1.9.1.2.5']/@nullFlavor)">(MedikationslistenSection): Element hl7:templateId[@root='1.3.6.1.4.1.19376.1.9.1.2.5'] ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:templateId[@root='1.3.6.1.4.1.19376.1.9.1.2.5'])&lt;=1">(MedikationslistenSection): Element hl7:templateId[@root='1.3.6.1.4.1.19376.1.9.1.2.5'] 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.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:id)&lt;=1">(MedikationslistenSection): 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.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:code[(@code='10160-0' and @codeSystem='2.16.840.1.113883.6.1')])&gt;=1 and not(hl7:code[(@code='10160-0' and @codeSystem='2.16.840.1.113883.6.1')]/@nullFlavor)">(MedikationslistenSection): Element hl7:code[(@code='10160-0' and @codeSystem='2.16.840.1.113883.6.1')] ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:code[(@code='10160-0' and @codeSystem='2.16.840.1.113883.6.1')])&lt;=1">(MedikationslistenSection): Element hl7:code[(@code='10160-0' and @codeSystem='2.16.840.1.113883.6.1')] 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.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:title)&gt;=1 and not(hl7:title/@nullFlavor)">(MedikationslistenSection): Element hl7:title ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:title)&lt;=1">(MedikationslistenSection): Element hl7:title 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.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:text)&gt;=1 and not(hl7:text/@nullFlavor)">(MedikationslistenSection): 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.8.3.2.1-2014-01-31T000000.html"
              test="count(hl7:text)&lt;=1">(MedikationslistenSection): Element hl7:text kommt zu häufig vor [max 1x].</assert>
      <let name="elmcount"
           value="count(hl7:entry[hl7:substanceAdministration[hl7:templateId/@root='1.2.40.0.34.11.8.1.3.1' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.24' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.7' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.3.2' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.3.6']]|hl7:entry[hl7:supply[hl7:templateId/@root='1.2.40.0.34.11.8.2.3.1' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.34' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.7.3' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.3.4']])"/>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.8.3.2.1
Context: *[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:templateId[@root='1.2.40.0.34.11.8.3.2.1']
Item: (MedikationslistenSection)
-->

   <rule context="*[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:templateId[@root='1.2.40.0.34.11.8.3.2.1']"
         id="tmp-r-bf3a68d2-1607-42cf-8c2a-54c014ea040c">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.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)">(MedikationslistenSection): 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.8.3.2.1-2014-01-31T000000.html"
              test="string(@root)=('1.2.40.0.34.11.8.3.2.1')">(MedikationslistenSection): Der Wert von @root MUSS '1.2.40.0.34.11.8.3.2.1' sein.</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.8.3.2.1
Context: *[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:templateId[@root='1.3.6.1.4.1.19376.1.9.1.2.5']
Item: (MedikationslistenSection)
-->

   <rule context="*[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:templateId[@root='1.3.6.1.4.1.19376.1.9.1.2.5']"
         id="tmp-r-f2099469-6ffe-4540-b2a9-82c3c5557558">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.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)">(MedikationslistenSection): 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.8.3.2.1-2014-01-31T000000.html"
              test="string(@root)=('1.3.6.1.4.1.19376.1.9.1.2.5')">(MedikationslistenSection): Der Wert von @root MUSS '1.3.6.1.4.1.19376.1.9.1.2.5' sein.</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.8.3.2.1
Context: *[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:id
Item: (MedikationslistenSection)
-->

   <rule context="*[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:id"
         id="tmp-r-dd71ac7a-a1f4-4aee-bae9-5ee00afa855b">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.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)">(MedikationslistenSection): 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"/>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.8.3.2.1
Context: *[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:code[(@code='10160-0' and @codeSystem='2.16.840.1.113883.6.1')]
Item: (MedikationslistenSection)
-->

   <rule context="*[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:code[(@code='10160-0' and @codeSystem='2.16.840.1.113883.6.1')]"
         id="tmp-r-51be3dda-9ed7-4db0-9f6c-c58a18502f4e">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.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)">(MedikationslistenSection): 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"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="@nullFlavor or (@code='10160-0' and @codeSystem='2.16.840.1.113883.6.1' and @displayName='History of medication use' and @codeSystemName='LOINC')">(MedikationslistenSection): Der Elementinhalt MUSS einer von 'code '10160-0' codeSystem '2.16.840.1.113883.6.1' displayName='History of medication use' codeSystemName='LOINC'' sein.</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.8.3.2.1
Context: *[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:title
Item: (MedikationslistenSection)
-->

   <rule context="*[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:title"
         id="tmp-r-a895caf4-ec20-42cb-8f8e-0e4e9366ca70">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="(local-name-from-QName(resolve-QName(@xsi:type,.))='ST' and namespace-uri-from-QName(resolve-QName(@xsi:type,.))='urn:hl7-org:v3') or not(@xsi:type)">(MedikationslistenSection): Wenn eine @xsi:type Instruktion anwesend ist MUSS diese den Wert "{urn:hl7-org:v3}:ST" 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="ST"/>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="text()='Medikationsliste'">(MedikationslistenSection): Der Elementinhalt von 'hl7:title' MUSS ''Medikationsliste'' sein.</assert>
   </rule>
   <!--
Template derived rules for ID: 1.2.40.0.34.11.8.3.2.1
Context: *[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:text
Item: (MedikationslistenSection)
-->

   <rule context="*[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:text"
         id="tmp-r-9068ec40-e62e-4399-bb01-d4dd2c6cff84">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.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)">(MedikationslistenSection): 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.8.3.2.1
Context: *[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:entry[hl7:substanceAdministration[hl7:templateId/@root='1.2.40.0.34.11.8.1.3.1' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.24' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.7' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.3.2' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.3.6']]
Item: (MedikationslistenSection)
-->
   <rule context="*[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:entry[hl7:substanceAdministration[hl7:templateId/@root='1.2.40.0.34.11.8.1.3.1' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.24' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.7' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.3.2' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.3.6']]">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="string(@typeCode)=('DRIV') or not(@typeCode)">(MedikationslistenSection): Der Wert von @typeCode MUSS 'DRIV' sein.</assert>
   </rule>

   <!--
Template derived rules for ID: 1.2.40.0.34.11.8.3.2.1
Context: *[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:entry[hl7:supply[hl7:templateId/@root='1.2.40.0.34.11.8.2.3.1' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.34' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.7.3' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.3.4']]
Item: (MedikationslistenSection)
-->
   <rule context="*[hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1']]/hl7:section[hl7:templateId/@root='1.2.40.0.34.11.8.3.2.1' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.2.5']/hl7:entry[hl7:supply[hl7:templateId/@root='1.2.40.0.34.11.8.2.3.1' and hl7:templateId/@root='2.16.840.1.113883.10.20.1.34' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.5.3.1.4.7.3' and hl7:templateId/@root='1.3.6.1.4.1.19376.1.9.1.3.4']]">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.2.40.0.34.11.8.3.2.1-2014-01-31T000000.html"
              test="string(@typeCode)=('DRIV') or not(@typeCode)">(MedikationslistenSection): Der Wert von @typeCode MUSS 'DRIV' sein.</assert>
   </rule>
</pattern>
