Example: EFA Digital Consent Document: Unterschied zwischen den Versionen

Aus Hl7wiki
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „<syntaxhighlight lang="xml"> <?xml version="1.0" encoding="UTF-8"?> <!-- Beispiel für eine elektronische Einwilligungserklärung nach EPPC (Enhanced Patient…“)
 
Zeile 12: Zeile 12:
 
Der wichtigste Bestandteil dieses Dokuments ist die eingebettete XACML-Policy. Diese Policy bzw. ihr Effekt muss vom EFA-ResourceManager umgesetzt werden. Die XACML-Policy muss daher natürlich hinreichend stark validiert werden, damit nicht böswillig Zugriffsrechte manipuliert werden können.
 
Der wichtigste Bestandteil dieses Dokuments ist die eingebettete XACML-Policy. Diese Policy bzw. ihr Effekt muss vom EFA-ResourceManager umgesetzt werden. Die XACML-Policy muss daher natürlich hinreichend stark validiert werden, damit nicht böswillig Zugriffsrechte manipuliert werden können.
  
Das CDA-Dokument selbst enthält Metadaten, die bei Bedarf ausgewertet werden können. Primär liegen die Metadaten vor, um die Konformität zur HL7-ConsentDirective zu waren.
+
Das CDA-Dokument selbst enthält Metadaten, die bei Bedarf ausgewertet werden können. Primär liegen die Metadaten vor, um die Konformität zur HL7-ConsentDirective zu wahren.
 
-->
 
-->
  
<ClinicalDocument xmlns="urn:hl7-org:v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" classCode="DOCCLIN" moodCode="EVN">
+
<ClinicalDocument xmlns="urn:hl7-org:v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
<realmCode code="DE"/>
+
                  classCode="DOCCLIN" moodCode="EVN">
<typeId extension="09230" root="2.16.840.1.113883.1.3"/>
+
  <realmCode code="DE"/>
<templateId root="2.16.840.1.113883.3.445.1.1"/>
+
  <typeId extension="09230" root="2.16.840.1.113883.1.3"/>
<templateId root="1.2.276.0.76.3.1.81"/>
+
  <templateId root="2.16.840.1.113883.3.445.1.1"/>
<id extension="0" root="1.2.276.0.76.3.1.81"/>
+
  <templateId root="1.2.276.0.76.3.1.81"/>
<code code="57016-8" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="Privacy Policy Acknowledgement Document"/>
+
  <id extension="0" root="1.2.276.0.76.3.1.81"/>
<title language="de" mediaType="text/plain" representation="TXT">Patienteneinwilligung in die Führung einer elektronischen Fallakte</title>
+
  <code code="57016-8" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"  
<effectiveTime value="20151120140210"/>
+
                      displayName="Privacy Policy Acknowledgement Document"/>
<confidentialityCode code="R"/>
+
  <title language="de" mediaType="text/plain" representation="TXT">
<recordTarget>
+
    Patienteneinwilligung in die Führung einer elektronischen Fallakte
<patientRole>
+
  </title>
<id extension="030999BS489" root="1.3.6.1.4.1.21367.2005.3.7"/>
+
  <effectiveTime value="20151120140210"/>
<addr>
+
  <confidentialityCode code="R"/>
<streetAddressLine>V. G. VIDA  10</streetAddressLine>
+
  <recordTarget>
<city> CREMENO</city>
+
    <patientRole>
<postalCode>23814</postalCode>
+
      <id extension="030999BS489" root="1.3.6.1.4.1.21367.2005.3.7"/>
</addr>
+
      <addr>
<patient>
+
        <streetAddressLine>V. G. VIDA  10</streetAddressLine>
<name>
+
        <city> CREMENO</city>
<given>TREMILACENTONOVANTASEI</given>
+
        <postalCode>23814</postalCode>
<family>CITTASISS</family>
+
      </addr>
</name>
+
      <patient>
<administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.5.1"/>
+
        <name>
<birthTime value="19800101"/>
+
          <given>TREMILACENTONOVANTASEI</given>
</patient>
+
          <family>CITTASISS</family>
</patientRole>
+
        </name>
</recordTarget>
+
        <administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.5.1"/>
<author>
+
        <birthTime value="19800101"/>
<templateId root="2.16.840.1.113883.3.445.2"/>
+
      </patient>
<functionCode code="POACON" codeSystem="2.16.840.1.113883.1.11.19930" codeSystemName="ConsenterParticipationFunctionDecisionMaker" displayName="healthcare power of attorney consent author"/>
+
    </patientRole>
<time value="201303122244"/>
+
  </recordTarget>
<assignedAuthor>
+
  <author>
<id extension="11111111" root="1.3.5.35.1.4436.7"/>
+
    <templateId root="2.16.840.1.113883.3.445.2"/>
<assignedPerson classCode="PSN">
+
    <functionCode code="POACON" codeSystem="2.16.840.1.113883.1.11.19930"  
<name>
+
                  codeSystemName="ConsenterParticipationFunctionDecisionMaker"  
<prefix>Dr. med.</prefix>
+
                  displayName="healthcare power of attorney consent author"/>
<given>Thorsten</given>
+
    <time value="201303122244"/>
<family>Springer</family>
+
    <assignedAuthor>
</name>
+
      <id extension="11111111" root="1.3.5.35.1.4436.7"/>
</assignedPerson>
+
      <assignedPerson classCode="PSN">
<representedOrganization>
+
        <name>
<id extension="980983" root="1.3.6.4.1.4.1.2835.2"/>
+
          <prefix>Dr. med.</prefix>
<name>Klinikum Himmelpforten</name>
+
          <given>Thorsten</given>
<addr>
+
          <family>Springer</family>
<streetAddressLine>Straße am Ufer 2a</streetAddressLine>
+
        </name>
<city>Emden</city>
+
      </assignedPerson>
<postalCode>21709</postalCode>
+
      <representedOrganization>
</addr>
+
        <id extension="980983" root="1.3.6.4.1.4.1.2835.2"/>
</representedOrganization>
+
        <name>Klinikum Himmelpforten</name>
</assignedAuthor>
+
        <addr>
</author>
+
          <streetAddressLine>Straße am Ufer 2a</streetAddressLine>
 +
          <city>Emden</city>
 +
          <postalCode>21709</postalCode>
 +
        </addr>
 +
      </representedOrganization>
 +
    </assignedAuthor>
 +
  </author>
 +
  <custodian>
 +
    <assignedCustodian>
 +
      <representedCustodianOrganization>
 +
        <id extension="980983" root="1.3.6.4.1.4.1.2835.2"/>
 +
        <name>Klinikum Himmelpforten</name>
 +
        <addr>
 +
          <streetAddressLine>Straße am Ufer 2a</streetAddressLine>
 +
          <city>Emden</city>
 +
          <postalCode>21709</postalCode>
 +
        </addr>
 +
      </representedCustodianOrganization>
 +
    </assignedCustodian>
 +
  </custodian>
  
 +
  <component contextConductionInd="true" typeCode="COMP">
 +
    <structuredBody>
 +
      <component contextConductionInd="true" typeCode="COMP">
 +
        <section classCode="DOCSECT" moodCode="EVN">
 +
          <templateId root="2.16.840.1.113883.3.445.17"/>
  
<custodian>
+
          <entry typeCode="COMP">
<assignedCustodian>
+
            <templateId root="2.16.840.1.113883.3.445.4"/>
<representedCustodianOrganization>
+
            <observation classCode="OBS" moodCode="DEF">
<id extension="980983" root="1.3.6.4.1.4.1.2835.2"/>
+
              <code code="57016-8" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/>
<name>Klinikum Himmelpforten</name>
 
<addr>
 
<streetAddressLine>Straße am Ufer 2a</streetAddressLine>
 
<city>Emden</city>
 
<postalCode>21709</postalCode>
 
</addr>
 
</representedCustodianOrganization>
 
</assignedCustodian>
 
</custodian>
 
  
 +
              <!--
 +
              Die XACML Policy. Siehe EFA-Spezifikation, Implementierungsebene, Daten-Säule.
 +
              Sie ist zur besseren Lesbarkeit hier als CDATA-Element eingebunden. Sie kann aber auch XML-Entity-escaped
 +
              eingebunden sein. Leider erlaubt es CDA hier nicht, xs:any zu verwenden...
 +
              -->
 +
              <value mediaType="text/xml" representation="TXT" xsi:type="ED"><![CDATA[
 +
                <PolicySet xmlns="urn:oasis:names:tc:xacml:2.0:policy:schema:os" xmlns:hl7="urn:hl7-org:v3" 
 +
                          xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"
 +
                          PolicyCombiningAlgId="urn:oasis:names:tc:xacml:1.0:policy-combining-algorithm:deny-overrides"
 +
                          PolicySetId="2B789DEE-9CB6-11E4-97F9-246A95DB5880">
 +
                  <Target>
 +
                    <Resources>
 +
                      <Resource>
 +
                        <!--
 +
                        Die Ressource (XDS-Folder oder assoziierter XDS-Folder) muss eine Elektronische Fallakte sein.
 +
                        -->
 +
                        <ResourceMatch MatchId="urn:hl7-org:v3:function:CV-equal">
 +
                          <AttributeValue DataType="urn:hl7-org:v3#CV">
 +
                            <hl7:CodedValue code="ECR" codeSystem="IHE-D-Cookbook-FolderClassCode"/>
 +
                          </AttributeValue>
 +
                          <ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:folder:code"
 +
                                                      DataType="urn:hl7-org:v3#CV"/>
 +
                        </ResourceMatch>
  
<component contextConductionInd="true" typeCode="COMP">
+
                        <!--
<structuredBody>
+
                        Die Ressource (XDS-Folder oder assoziierter XDS-Folder) muss diesem spezifischen Zweck
<component contextConductionInd="true" typeCode="COMP">
+
                        zugeordnet sein.
<section classCode="DOCSECT" moodCode="EVN">
+
-->
<templateId root="2.16.840.1.113883.3.445.17"/>
+
<ResourceMatch MatchId="urn:hl7-org:v3:function:CV-equal">
 +
                          <AttributeValue DataType="urn:hl7-org:v3#CV">
 +
                            <hl7:CodedValue code="B05" codeSystem="urn:oid:1.2.276.0.76.5.413"/>
 +
                          </AttributeValue>
 +
  <ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:folder:code"  
 +
                                                      DataType="urn:hl7-org:v3#CV"/>
 +
                        </ResourceMatch>              
  
<entry typeCode="COMP">
+
                        <!--
<templateId root="2.16.840.1.113883.3.445.4"/>
+
                        Die Ressource muss für diesen spezifischen Patienten geführt werden. Der Patient ist in
<observation classCode="OBS" moodCode="DEF">
+
                        der hiesigen XDS-Affinity-Domain bekannt.
<code code="57016-8" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/>
+
                        -->
 +
                        <ResourceMatch MatchId="urn:hl7-org:v3:function:II-equal">
 +
                          <AttributeValue DataType="urn:hl7-org:v3#II">
 +
                            <hl7:InstanceIdentifier extension="030999BS489" root="1.3.6.1.4.1.21367.2005.3.7"/>
 +
                          </AttributeValue>
 +
                          <ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:patient-id"
 +
                                                      DataType="urn:hl7-org:v3#II"/>
 +
                        </ResourceMatch>
 +
                      </Resource>
 +
                    </Resources>
 +
                  </Target>
 +
                  <Policy PolicyId="urn:ecr:2.0:xacml:policyid:1"
 +
                          RuleCombiningAlgId="urn:oasis:names:tc:xacml:1.0:rule-combining-algorithm:deny-overrides">
 +
                    <Description>Berechtigung für EFA-Teilnehmer</Description>
 +
                    <Target>
 +
                      <!--
 +
                      Einschränkung des Zugriffs für bestimmte Personen oder bestimmte Organisation(seinheiten)
 +
                      -->
 +
                      <Subjects>
 +
                        <Subject>
 +
                          <SubjectMatch MatchId="urn:hl7-org:v3:function:II-equal">
 +
                            <AttributeValue DataType="urn:hl7-org:v3#II">
 +
                              <hl7:InstanceIdentifier extension="11111111" root="1.3.5.35.1.4436.7"/>
 +
                            </AttributeValue>
 +
                            <SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:1.0:subject:subject-id"
 +
                                                        DataType="urn:hl7-org:v3#II"/>
 +
                          </SubjectMatch>
 +
                          <SubjectMatch MatchId="urn:hl7-org:v3:function:II-equal">
 +
                            <AttributeValue DataType="urn:hl7-org:v3#II">
 +
                              <hl7:InstanceIdentifier extension="980983" root="1.3.6.4.1.4.1.2835.2"/>
 +
                            </AttributeValue>
 +
                            <SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xspa:1.0:subject:organization-id"
 +
                                                        DataType="urn:hl7-org:v3#II"/>
 +
                          </SubjectMatch>
 +
                          <SubjectMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:string-equal">
 +
                            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">physician</AttributeValue>
 +
                            <SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:2.0:subject:role"
 +
                                                        DataType="http://www.w3.org/2001/XMLSchema#string"/>
 +
                          </SubjectMatch>
 +
                        </Subject>
 +
                      </Subjects>
 +
                      <Resources>
 +
                        <!-- EFA-Teilnehmer dürfen nur Ressourcen im Status=Approved sehen. -->
 +
                        <Resource>
 +
                          <ResourceMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:anyURI-equal">
 +
                            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#anyURI">
 +
                              urn:oasis:names:tc:ebxml-regrep:StatusType:Approved
 +
                            </AttributeValue>
 +
                            <ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:availability-status"
 +
                                                        DataType="http://www.w3.org/2001/XMLSchema#anyURI"/>
 +
                          </ResourceMatch>
 +
                        </Resource>
 +
                      </Resources>
 +
                      <Environments>
 +
                        <Environment>
 +
                          <!-- EFA-Teilnehmer dürfen Ressourcen nur innerhalb der Laufzeit der Akte sehen. -->
 +
                          <EnvironmentMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:date-greater-than-or-equal">
 +
                            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#date">2016-04-08</AttributeValue>
 +
                            <EnvironmentAttributeDesignator
 +
                                  AttributeId="urn:oasis:names:tc:xacml:1.0:environment:current-date"
 +
                                  DataType="http://www.w3.org/2001/XMLSchema#date"/>
 +
                          </EnvironmentMatch>
 +
                        </Environment>
 +
                      </Environments>
 +
                    </Target>
 +
                  </Policy>
  
<!--
+
                  <Policy PolicyId="urn:ecr:2.0:xacml:policyid:2"  
Die XACML Policy. Siehe EFA-Spezifikation, Implementierungsebene, Daten-Säule.
+
                          RuleCombiningAlgId="urn:oasis:names:tc:xacml:1.0:rule-combining-algorithm:deny-overrides">
Sie ist zur besseren Lesbarkeit hier als CDATA-Element eingebunden. Sie kann aber auch XML-Entity-escaped eingebunden sein.
+
                    <Description>Berechtigung für fach- und verfahrensverantwortliche Person</Description>
Leider erlaubt es CDA hier nicht, xs:any zu verwenden...
+
                    <Target>
-->
+
                      <Subjects>
<value mediaType="text/xml" representation="TXT" xsi:type="ED"><![CDATA[
+
                        <Subject>
<PolicySet xmlns="urn:oasis:names:tc:xacml:2.0:policy:schema:os" xmlns:hl7="urn:hl7-org:v3" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0" PolicyCombiningAlgId="urn:oasis:names:tc:xacml:1.0:policy-combining-algorithm:deny-overrides" PolicySetId="2B789DEE-9CB6-11E4-97F9-246A95DB5880">
+
                          <SubjectMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:string-equal">
<Target>
+
                            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">
<Resources>
+
                              health record manager
<Resource>
+
                            </AttributeValue>
<!-- Die Ressource (XDS-Folder oder assoziierter XDS-Folder) muss eine Elektronische Fallakte sein. -->
+
                            <SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:2.0:subject:role"
<ResourceMatch MatchId="urn:hl7-org:v3:function:CV-equal">
+
                                                        DataType="http://www.w3.org/2001/XMLSchema#string"/>
<AttributeValue DataType="urn:hl7-org:v3#CV">
+
                          </SubjectMatch>
<hl7:CodedValue code="ECR" codeSystem="IHE-D-Cookbook-FolderClassCode"/>
+
                        </Subject>
</AttributeValue>
+
                      </Subjects>
<ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:folder:code" DataType="urn:hl7-org:v3#CV"/>
+
                      <Environments>
</ResourceMatch>
+
                        <Environment>
 
+
                          <!-- Für Fallaktenmanager gilt eine verlängerte Frist (grace period)  
<!-- Die Ressource (XDS-Folder oder assoziierter XDS-Folder) muss diesem spezifischen Zweck zugeordnet sein.
+
                              nach dem Verfallsdatum der Akte. -->
<ResourceMatch MatchId="urn:hl7-org:v3:function:CV-equal">
+
                          <EnvironmentMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:date-greater-than-or-equal">
<AttributeValue DataType="urn:hl7-org:v3#CV">
+
                            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#date">2016-05-08</AttributeValue>
<hl7:CodedValue code="B05" codeSystem="urn:oid:1.2.276.0.76.5.413"/>
+
                            <EnvironmentAttributeDesignator  
</AttributeValue>
+
                                    AttributeId="urn:oasis:names:tc:xacml:1.0:environment:current-date"  
<ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:folder:code" DataType="urn:hl7-org:v3#CV"/>
+
                                    DataType="http://www.w3.org/2001/XMLSchema#date"/>
</ResourceMatch>               
+
                          </EnvironmentMatch>
 
+
                        </Environment>
<!-- Die Ressource muss für diesen spezifischen Patienten geführt werden. Der Patient ist in der hiesigen XDS-Affinity-Domain bekannt. -->
+
                      </Environments>
<ResourceMatch MatchId="urn:hl7-org:v3:function:II-equal">
+
                    </Target>
<AttributeValue DataType="urn:hl7-org:v3#II">
+
                  </Policy>
<hl7:InstanceIdentifier extension="030999BS489" root="1.3.6.1.4.1.21367.2005.3.7"/>
+
                </PolicySet>
</AttributeValue>
+
                ]]>
<ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:patient-id" DataType="urn:hl7-org:v3#II"/>
+
              </value>
</ResourceMatch>
+
            </observation>
</Resource>
+
          </entry>
+
        </section>
<!-- Sofern nötig, könnten für ATMoSPHÄRE hier feinere Kriterien verwendet werden, die EFA allerdings bewusst außen vor lässt. -->
+
      </component>
</Resources>
+
    </structuredBody>
</Target>
+
  </component>
<Policy PolicyId="urn:ecr:2.0:xacml:policyid:1" RuleCombiningAlgId="urn:oasis:names:tc:xacml:1.0:rule-combining-algorithm:deny-overrides">
 
<Description>Berechtigung für EFA-Teilnehmer</Description>
 
<Target>
 
<!-- Einschränkung des Zugriffs für bestimmte Personen oder bestimmte Organisation(seinheiten) -->
 
<Subjects>
 
<Subject>
 
<SubjectMatch MatchId="urn:hl7-org:v3:function:II-equal">
 
<AttributeValue DataType="urn:hl7-org:v3#II">
 
<hl7:InstanceIdentifier extension="11111111" root="1.3.5.35.1.4436.7"/>
 
</AttributeValue>
 
<SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:1.0:subject:subject-id" DataType="urn:hl7-org:v3#II"/>
 
</SubjectMatch>
 
<SubjectMatch MatchId="urn:hl7-org:v3:function:II-equal">
 
<AttributeValue DataType="urn:hl7-org:v3#II">
 
<hl7:InstanceIdentifier extension="980983" root="1.3.6.4.1.4.1.2835.2"/>
 
</AttributeValue>
 
<SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xspa:1.0:subject:organization-id" DataType="urn:hl7-org:v3#II"/>
 
</SubjectMatch>
 
<SubjectMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:string-equal">
 
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">physician</AttributeValue>
 
<SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:2.0:subject:role" DataType="http://www.w3.org/2001/XMLSchema#string"/>
 
</SubjectMatch>
 
</Subject>
 
</Subjects>
 
<Resources>
 
<!-- EFA-Teilnehmer dürfen nur Ressourcen im Status=Approved sehen. -->
 
<Resource>
 
<ResourceMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:anyURI-equal">
 
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#anyURI">urn:oasis:names:tc:ebxml-regrep:StatusType:Approved</AttributeValue>
 
<ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:availability-status" DataType="http://www.w3.org/2001/XMLSchema#anyURI"/>
 
</ResourceMatch>
 
</Resource>
 
</Resources>
 
<Environments>
 
<Environment>
 
<!-- EFA-Teilnehmer dürfen Ressourcen nur innerhalb der Laufzeit der Akte sehen. -->
 
<EnvironmentMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:date-greater-than-or-equal">
 
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#date">2016-04-08</AttributeValue>
 
<EnvironmentAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:1.0:environment:current-date" DataType="http://www.w3.org/2001/XMLSchema#date"/>
 
</EnvironmentMatch>
 
</Environment>
 
</Environments>
 
</Target>
 
</Policy>
 
<Policy PolicyId="urn:ecr:2.0:xacml:policyid:2" RuleCombiningAlgId="urn:oasis:names:tc:xacml:1.0:rule-combining-algorithm:deny-overrides">
 
<Description>Berechtigung für fach- und verfahrensverantwortliche Person</Description>
 
<Target>
 
<Subjects>
 
 
 
<Subject>
 
<SubjectMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:string-equal">
 
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">health record manager</AttributeValue>
 
<SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:2.0:subject:role" DataType="http://www.w3.org/2001/XMLSchema#string"/>
 
</SubjectMatch>
 
</Subject>
 
</Subjects>
 
<Environments>
 
<Environment>
 
<!-- Für Fallaktenmanager gilt eine verlängerte Frist (grace period) nach dem Verfallsdatum der Akte. -->
 
<EnvironmentMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:date-greater-than-or-equal">
 
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#date">2016-05-08</AttributeValue>
 
<EnvironmentAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:1.0:environment:current-date" DataType="http://www.w3.org/2001/XMLSchema#date"/>
 
</EnvironmentMatch>
 
</Environment>
 
</Environments>
 
</Target>
 
</Policy>
 
</PolicySet>
 
]]>
 
</value>
 
</observation>
 
</entry>
 
</section>
 
</component>
 
</structuredBody>
 
</component>
 
 
</ClinicalDocument>
 
</ClinicalDocument>
  
 
</syntaxhighlight>
 
</syntaxhighlight>

Version vom 22. Dezember 2015, 13:11 Uhr

<?xml version="1.0" encoding="UTF-8"?>

<!--
Beispiel für eine elektronische Einwilligungserklärung nach EPPC (Enhanced Patient Privacy Consent).
EPPC befindet sich derzeit noch in der IHE-Proposal-Phase. Es basiert aber auf dem bereits ballotierten HL7-CDA-Leitfaden für Patient Privacy Consent Directives.

Ein derartiges Dokument muss bei der Anlage einer Elektronische Fallakte beigelegt sein. Das bedeutet:
Der ITI-41 ProvideAndRegisterDocumentSet-b enthält dieses Dokument als XOP-Attachement bzw. als eingebettetes Base64-kodiertes Element.

Der wichtigste Bestandteil dieses Dokuments ist die eingebettete XACML-Policy. Diese Policy bzw. ihr Effekt muss vom EFA-ResourceManager umgesetzt werden. Die XACML-Policy muss daher natürlich hinreichend stark validiert werden, damit nicht böswillig Zugriffsrechte manipuliert werden können.

Das CDA-Dokument selbst enthält Metadaten, die bei Bedarf ausgewertet werden können. Primär liegen die Metadaten vor, um die Konformität zur HL7-ConsentDirective zu wahren.
-->

<ClinicalDocument xmlns="urn:hl7-org:v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
                  classCode="DOCCLIN" moodCode="EVN">
  <realmCode code="DE"/>
  <typeId extension="09230" root="2.16.840.1.113883.1.3"/>
  <templateId root="2.16.840.1.113883.3.445.1.1"/>
  <templateId root="1.2.276.0.76.3.1.81"/>
  <id extension="0" root="1.2.276.0.76.3.1.81"/>
  <code code="57016-8" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" 
                       displayName="Privacy Policy Acknowledgement Document"/>
  <title language="de" mediaType="text/plain" representation="TXT">
    Patienteneinwilligung in die Führung einer elektronischen Fallakte
  </title>
  <effectiveTime value="20151120140210"/>
  <confidentialityCode code="R"/>
  <recordTarget>
    <patientRole>
      <id extension="030999BS489" root="1.3.6.1.4.1.21367.2005.3.7"/>
      <addr>
        <streetAddressLine>V. G. VIDA  10</streetAddressLine>
        <city> CREMENO</city>
        <postalCode>23814</postalCode>
      </addr>
      <patient>
        <name>
          <given>TREMILACENTONOVANTASEI</given>
          <family>CITTASISS</family>
        </name>
        <administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.5.1"/>
        <birthTime value="19800101"/>
      </patient>
    </patientRole>
  </recordTarget>
  <author>
    <templateId root="2.16.840.1.113883.3.445.2"/>
    <functionCode code="POACON" codeSystem="2.16.840.1.113883.1.11.19930" 
                  codeSystemName="ConsenterParticipationFunctionDecisionMaker" 
                  displayName="healthcare power of attorney consent author"/>
    <time value="201303122244"/>
    <assignedAuthor>
      <id extension="11111111" root="1.3.5.35.1.4436.7"/>
      <assignedPerson classCode="PSN">
        <name>
          <prefix>Dr. med.</prefix>
          <given>Thorsten</given>
          <family>Springer</family>
        </name>
      </assignedPerson>
      <representedOrganization>
        <id extension="980983" root="1.3.6.4.1.4.1.2835.2"/>
        <name>Klinikum Himmelpforten</name>
        <addr>
          <streetAddressLine>Straße am Ufer 2a</streetAddressLine>
          <city>Emden</city>
          <postalCode>21709</postalCode>
        </addr>
      </representedOrganization>
    </assignedAuthor>
  </author>
  <custodian>
    <assignedCustodian>
      <representedCustodianOrganization>
        <id extension="980983" root="1.3.6.4.1.4.1.2835.2"/>
        <name>Klinikum Himmelpforten</name>
        <addr>
          <streetAddressLine>Straße am Ufer 2a</streetAddressLine>
          <city>Emden</city>
          <postalCode>21709</postalCode>
        </addr>
      </representedCustodianOrganization>
    </assignedCustodian>
  </custodian>

  <component contextConductionInd="true" typeCode="COMP">
    <structuredBody>
      <component contextConductionInd="true" typeCode="COMP">
        <section classCode="DOCSECT" moodCode="EVN">
          <templateId root="2.16.840.1.113883.3.445.17"/>

          <entry typeCode="COMP">
            <templateId root="2.16.840.1.113883.3.445.4"/>
            <observation classCode="OBS" moodCode="DEF">
              <code code="57016-8" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/>

              <!--
              Die XACML Policy. Siehe EFA-Spezifikation, Implementierungsebene, Daten-Säule.
              Sie ist zur besseren Lesbarkeit hier als CDATA-Element eingebunden. Sie kann aber auch XML-Entity-escaped
              eingebunden sein.	Leider erlaubt es CDA hier nicht, xs:any zu verwenden...
              -->
              <value mediaType="text/xml" representation="TXT" xsi:type="ED"><![CDATA[
                <PolicySet xmlns="urn:oasis:names:tc:xacml:2.0:policy:schema:os" xmlns:hl7="urn:hl7-org:v3"  
                           xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0" 
                           PolicyCombiningAlgId="urn:oasis:names:tc:xacml:1.0:policy-combining-algorithm:deny-overrides"
                           PolicySetId="2B789DEE-9CB6-11E4-97F9-246A95DB5880">
                  <Target>
                    <Resources>
                      <Resource>
                        <!-- 
                        Die Ressource (XDS-Folder oder assoziierter XDS-Folder) muss eine Elektronische Fallakte sein.
                        -->
                        <ResourceMatch MatchId="urn:hl7-org:v3:function:CV-equal">
                          <AttributeValue DataType="urn:hl7-org:v3#CV">
                            <hl7:CodedValue code="ECR" codeSystem="IHE-D-Cookbook-FolderClassCode"/>
                          </AttributeValue>
                          <ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:folder:code" 
                                                       DataType="urn:hl7-org:v3#CV"/>
                        </ResourceMatch>

                        <!-- 
                        Die Ressource (XDS-Folder oder assoziierter XDS-Folder) muss diesem spezifischen Zweck 
                        zugeordnet sein.
			-->
			<ResourceMatch MatchId="urn:hl7-org:v3:function:CV-equal">
                          <AttributeValue DataType="urn:hl7-org:v3#CV">
                            <hl7:CodedValue code="B05" codeSystem="urn:oid:1.2.276.0.76.5.413"/>
                          </AttributeValue>
			  <ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:folder:code" 
                                                       DataType="urn:hl7-org:v3#CV"/>
                        </ResourceMatch>                

                        <!-- 
                        Die Ressource muss für diesen spezifischen Patienten geführt werden. Der Patient ist in 
                        der hiesigen XDS-Affinity-Domain bekannt. 
                        -->
                        <ResourceMatch MatchId="urn:hl7-org:v3:function:II-equal">
                          <AttributeValue DataType="urn:hl7-org:v3#II">
                            <hl7:InstanceIdentifier extension="030999BS489" root="1.3.6.1.4.1.21367.2005.3.7"/>
                          </AttributeValue>
                          <ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:patient-id" 
                                                       DataType="urn:hl7-org:v3#II"/>
                        </ResourceMatch>
                      </Resource>
                    </Resources>
                  </Target>
                  <Policy PolicyId="urn:ecr:2.0:xacml:policyid:1" 
                          RuleCombiningAlgId="urn:oasis:names:tc:xacml:1.0:rule-combining-algorithm:deny-overrides">
                    <Description>Berechtigung für EFA-Teilnehmer</Description>
                    <Target>
                      <!-- 
                      Einschränkung des Zugriffs für bestimmte Personen oder bestimmte Organisation(seinheiten) 
                      -->
                      <Subjects>
                        <Subject>
                          <SubjectMatch MatchId="urn:hl7-org:v3:function:II-equal">
                            <AttributeValue DataType="urn:hl7-org:v3#II">
                              <hl7:InstanceIdentifier extension="11111111" root="1.3.5.35.1.4436.7"/>
                            </AttributeValue>
                            <SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:1.0:subject:subject-id"
                                                        DataType="urn:hl7-org:v3#II"/>
                          </SubjectMatch>
                          <SubjectMatch MatchId="urn:hl7-org:v3:function:II-equal">
                            <AttributeValue DataType="urn:hl7-org:v3#II">
                              <hl7:InstanceIdentifier extension="980983" root="1.3.6.4.1.4.1.2835.2"/>
                            </AttributeValue>
                            <SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xspa:1.0:subject:organization-id"
                                                        DataType="urn:hl7-org:v3#II"/>
                          </SubjectMatch>
                          <SubjectMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:string-equal">
                            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">physician</AttributeValue>
                            <SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:2.0:subject:role"
                                                        DataType="http://www.w3.org/2001/XMLSchema#string"/>
                          </SubjectMatch>
                        </Subject>
                      </Subjects>
                      <Resources>
                        <!-- EFA-Teilnehmer dürfen nur Ressourcen im Status=Approved sehen. -->
                        <Resource>
                          <ResourceMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:anyURI-equal">
                            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#anyURI">
                              urn:oasis:names:tc:ebxml-regrep:StatusType:Approved
                            </AttributeValue>
                            <ResourceAttributeDesignator AttributeId="urn:ihe:iti:xds-b:2007:availability-status"
                                                         DataType="http://www.w3.org/2001/XMLSchema#anyURI"/>
                          </ResourceMatch>
                        </Resource>
                      </Resources>
                      <Environments>
                        <Environment>
                          <!-- EFA-Teilnehmer dürfen Ressourcen nur innerhalb der Laufzeit der Akte sehen. -->
                          <EnvironmentMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:date-greater-than-or-equal">
                            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#date">2016-04-08</AttributeValue>
                            <EnvironmentAttributeDesignator 
                                   AttributeId="urn:oasis:names:tc:xacml:1.0:environment:current-date"
                                   DataType="http://www.w3.org/2001/XMLSchema#date"/>
                          </EnvironmentMatch>
                        </Environment>
                      </Environments>
                    </Target>
                  </Policy>

                  <Policy PolicyId="urn:ecr:2.0:xacml:policyid:2" 
                          RuleCombiningAlgId="urn:oasis:names:tc:xacml:1.0:rule-combining-algorithm:deny-overrides">
                    <Description>Berechtigung für fach- und verfahrensverantwortliche Person</Description>
                    <Target>
                      <Subjects>
                        <Subject>
                          <SubjectMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:string-equal">
                            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">
                              health record manager
                            </AttributeValue>
                            <SubjectAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:2.0:subject:role"
                                                        DataType="http://www.w3.org/2001/XMLSchema#string"/>
                          </SubjectMatch>
                        </Subject>
                      </Subjects>
                      <Environments>
                        <Environment>
                          <!-- Für Fallaktenmanager gilt eine verlängerte Frist (grace period) 
                               nach dem Verfallsdatum der Akte. -->
                          <EnvironmentMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:date-greater-than-or-equal">
                            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#date">2016-05-08</AttributeValue>
                            <EnvironmentAttributeDesignator 
                                     AttributeId="urn:oasis:names:tc:xacml:1.0:environment:current-date" 
                                     DataType="http://www.w3.org/2001/XMLSchema#date"/>
                          </EnvironmentMatch>
                        </Environment>
                      </Environments>
                    </Target>
                  </Policy>
                </PolicySet>
                ]]>
              </value>
            </observation>
          </entry>
        </section>
      </component>
    </structuredBody>
  </component>
</ClinicalDocument>