<?xml version="1.0" encoding="UTF-8"?>
<!--
Template derived pattern
===========================================
ID: 1.3.6.1.4.1.19376.1.3.1.1
Name: Notification Organizer
Description: 
-->
<pattern xmlns="http://purl.oclc.org/dsdl/schematron"
         id="template-1.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000">
   <title>Notification Organizer</title>
   <!--
Template derived rules for ID: 1.3.6.1.4.1.19376.1.3.1.1
Context: *[hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']]
Item: (NotificationOrganizer)
-->

   <!--
Template derived rules for ID: 1.3.6.1.4.1.19376.1.3.1.1
Context: *[hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']]/hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']
Item: (NotificationOrganizer)
-->

   <rule context="*[hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']]/hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']"
         id="tmp-r-e7845c48-3f28-4d08-b19d-a96d7893d07e">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.html"
              test="string(@classCode)=('CLUSTER')">(NotificationOrganizer): Der Wert von @classCode MUSS 'CLUSTER' sein.</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.html"
              test="string(@moodCode)=('EVN')">(NotificationOrganizer): Der Wert von @moodCode MUSS 'EVN' sein.</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.html"
              test="count(hl7:templateId[@root='1.3.6.1.4.1.19376.1.3.1.1'])&gt;=1 ">(NotificationOrganizer): Element hl7:templateId[@root='1.3.6.1.4.1.19376.1.3.1.1'] ist required [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.html"
              test="count(hl7:templateId[@root='1.3.6.1.4.1.19376.1.3.1.1'])&lt;=1">(NotificationOrganizer): Element hl7:templateId[@root='1.3.6.1.4.1.19376.1.3.1.1'] kommt zu häufig vor [max 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.html"
              test="count(hl7:statusCode[@code='completed'])&gt;=1 and not(hl7:statusCode[@code='completed']/@nullFlavor)">(NotificationOrganizer): Element hl7:statusCode[@code='completed'] ist mandatory [min 1x].</assert>
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.html"
              test="count(hl7:statusCode[@code='completed'])&lt;=1">(NotificationOrganizer): 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.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.html"
              test="count(hl7:component[hl7:observation[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1.1']])&lt;=1">(NotificationOrganizer): Element hl7:component[hl7:observation[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1.1']] kommt zu häufig vor [max 1x].</assert>
   </rule>
   <!--
Template derived rules for ID: 1.3.6.1.4.1.19376.1.3.1.1
Context: *[hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']]/hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']/hl7:templateId[@root='1.3.6.1.4.1.19376.1.3.1.1']
Item: (NotificationOrganizer)
-->

   <rule context="*[hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']]/hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']/hl7:templateId[@root='1.3.6.1.4.1.19376.1.3.1.1']"
         id="tmp-r-d0dd8a22-4747-456e-bb47-b9425034b1af">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.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)">(NotificationOrganizer): 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.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.html"
              test="string(@root)=('1.3.6.1.4.1.19376.1.3.1.1')">(NotificationOrganizer): Der Wert von @root MUSS '1.3.6.1.4.1.19376.1.3.1.1' sein.</assert>
   </rule>
   <!--
Template derived rules for ID: 1.3.6.1.4.1.19376.1.3.1.1
Context: *[hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']]/hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']/hl7:statusCode[@code='completed']
Item: (NotificationOrganizer)
-->

   <rule context="*[hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']]/hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']/hl7:statusCode[@code='completed']"
         id="tmp-r-75ca968b-fe69-4ba9-8400-cbad59950005">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.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)">(NotificationOrganizer): 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.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.html"
              test="@nullFlavor or (@code='completed')">(NotificationOrganizer): Der Elementinhalt MUSS einer von 'code 'completed'' sein.</assert>
   </rule>

   <!--
Template derived rules for ID: 1.3.6.1.4.1.19376.1.3.1.1
Context: *[hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']]/hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']/hl7:component[hl7:observation[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1.1']]
Item: (NotificationOrganizer)
-->
   <rule context="*[hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']]/hl7:organizer[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1']/hl7:component[hl7:observation[hl7:templateId/@root='1.3.6.1.4.1.19376.1.3.1.1.1']]">
      <assert role="error"
              see="http://elga.art-decor.org/elga-html-20150713T115013/tmp-1.3.6.1.4.1.19376.1.3.1.1-2013-09-09T000000.html"
              test="string(@typeCode)=('COMP')">(NotificationOrganizer): Der Wert von @typeCode MUSS 'COMP' sein.</assert>
   </rule>
</pattern>
