hl7:ControlActProcess
|
|
|
|
|
(Connse) |
@moodCode
|
|
1 … 1 |
F |
EVN |
hl7:code
|
CV |
0 … 1 |
|
Trigger Event |
(Connse) |
@codeSystem
|
CONF |
0 … 1 |
F |
2.16.840.1.113883.1.18 (TriggerEvent) |
hl7:effectiveTime
|
TS |
0 … 1 |
|
Datum en tijdstip (NB: geen interval) waarop de gebeurtenis die het bericht heeft doen ontstaan, plaatsvond. Dit tijdstip
is mogelijkerwijs anders dan het tijdstip van het versturen van het bericht zoals
opgenomen in de Transmission Wrapper.
|
(Connse) |
Inclusie |
1 … 1 |
M |
van 2.16.840.1.113883.2.4.3.11.60.102.10.500 ControlAct AuthorOrPerformer (2012‑08‑01) Resultaten opleverberichten worden meestal direct door het antwoordende systeem bepaald.
Zie hiervoor het element AssignedDevice .
|
hl7:authorOrPerformer
|
|
1 … 1 |
M |
Bericht-zender. Systeem of persoon |
(Connse) |
@typeCode
|
|
1 … 1 |
R |
|
|
CONF |
|
hl7:participant
|
|
1 … 1 |
M |
|
(Connse) |
Keuze |
1 … 1 |
|
Elementen om uit te kiezen:
|
hl7:AssignedDevice
|
|
|
R |
Bevat 2.16.840.1.113883.2.4.3.11.60.102.10.513 Assigned Device [universal] (2012‑09‑01)
|
(Connse) |
hl7:AssignedPerson
|
|
|
R |
Bevat 2.16.840.1.113883.2.4.3.11.60.102.10.514 Assigned Person [universal] (2012‑09‑01)
|
(Connse) |
hl7:subject
|
|
0 … * |
R |
Placeholder. Locatie voor het koppelen van een of meerdere resultaten in de oplevering.
|
(Connse) |
@typeCode
|
cs |
0 … 1 |
F |
SUBJ |
@contextConductionInd
|
bl |
0 … 1 |
F |
false |
hl7:reasonOf
|
|
0 … * |
R |
|
(Connse) |
@typeCode
|
cs |
0 … 1 |
F |
RSON |
@contextConductionInd
|
bl |
0 … 1 |
|
|
hl7:justifiedDetectedIssue
|
|
1 … 1 |
|
Bevat 2.16.840.1.113883.2.4.3.11.60.102.10.508 DetectedIssueEvent (2012‑09‑01)
|
(Connse) |
Inclusie |
1 … 1 |
|
van 2.16.840.1.113883.2.4.3.11.60.102.10.506 Query Ack (2012‑09‑01)
Placeholder. Locatie voor het koppelen van de metagegevens van het resultaat.
|
hl7:queryAck
|
|
1 … 1 |
R |
Bevat de metakenmerken van een antwoord op een opvraagbericht |
(Connse) |
hl7:queryId
|
II |
1 … 1 |
M |
Bevat de unieke identificatie van de vraag. De waarde van dit attribuut is gelijk
aan de waarde van QueryByParameter/queryId uit de vraag De aanvrager kan hierdoor de antwoordberichten relateren aan de vraag.
|
(Connse) |
hl7:statusCode
|
CS |
0 … 1 |
R |
Bevat de (nieuwe) status van de query. De te gebruiken waarden in dit attribuut zijn
gedefinieerd in de waardelijst QueryStatusCode.
|
(Connse) |
|
Constraint |
@code moet, indien aanwezig, de waarde "aborted" bevatten als de antwoordinteractie het
antwoord vormt op een verzoek om de vraagsessie af te breken.
@code moet, indien aanwezig, de waarde "deliveredResponse" bevatten in alle andere gevallen.
|
|
CONF |
@code moet "aborted" zijn |
of |
@code moet "deliveredResponse" zijn |
|
hl7:queryResponseCode
|
CS |
1 … 1 |
M |
Bevat een statusmelding betreffende het antwoord. Waarden zijn "OK" (Data found),
"NF" (Nothing found, No errors), "AE" (Applicatie probleem, beantwoording afgebroken)
en "QE" (Query Parameter Error, beantwoording afgebroken). De te gebruiken waarden
zijn gedefinieerd in de QueryResponse vocabulaire. Indien er geen zoekresultaten bij
een vraag opgeleverd kunnen worden, omdat bijvoorbeeld de in de vraag geleverde parameters
niet tot een zoekresultaat leiden, dan bevat het antwoordbericht nul opgeleverde antwoorden
en het queryResponseCode
de waarde "NF". Het vinden van nul antwoorden is op zichzelf geen fout, Acknowledgement/@typeCode bevat om die reden "AA" indien queryResponseCode/@code "NF" is.
|
(Connse) |
|
Constraint |
@code moet "OK" bevatten als de resultaten op basis van de vraag geheel of gedeeltelijk
worden opgeleverd
@code moet "NF" bevatten als op basis van de opgegeven filterparameters geen resultaten
konden worden gevonden, maar verder ook geen fouten zijn opgetreden.
@code moet "QE" bevatten als er problemen zijn met de verwerking van de filterparameters,
zoals zoeken op UZI-nummer in een parameter welke bedoeld is voor zoeken op UZI-registerabonneenummmers,
zoeken op gegevenssoort met een parameter die bedoeld is voor rolcode, of zoeken in
een periode die ligt buiten een gespecificeerd bereik. Er zijn in dit geval geen resultaten
en de vraagsessie is afgebroken.
@code moet "AE" bevatten als er applicatieproblemen zijn opgetreden. Er zijn in dit geval
geen resultaten en de vraagsessie is afgebroken.
|
|
CONF |
|
|
Variabele let |
Naam |
acknowledgementTypeCode |
|
|
Waarde |
../../../hl7:acknowledgement/@typeCode |
|
|
Variabele let |
Naam |
resultCurrentQuantity |
|
|
Waarde |
../hl7:resultCurrentQuantity/@value |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($acknowledgementTypeCode='AA') or @code=('NF','OK') |
|
|
Melding |
Control Act: queryAck/queryResponseCode moet bij een positief antwoord 'OK' of 'NF'
zijn |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($acknowledgementTypeCode='AA' and @code=('AE','QE')) |
|
|
Melding |
Control Act: queryAck/queryResponseCode moet bij een negatief antwoord 'AE' of 'QE'
zijn |
|
|
Schematron assert |
role |
error
|
|
|
test |
not(@code='OK') or ($acknowledgementTypeCode='AA' and $resultCurrentQuantity > 0) |
|
|
Melding |
Control Act: queryAck/queryResponseCode moet 'OK' bevatten indien er op basis van
de queryParameters resultaten gevonden konden worden (resultCurrentQuantity/@value='<value-of select="$resultCurrentQuantity"/>') en de query valide is (acknowledgement/@typeCode='<value-of select="$acknowledgementTypeCode"/>') |
|
|
Schematron assert |
role |
error
|
|
|
test |
not(@code='NF') or ($acknowledgementTypeCode='AA' and $resultCurrentQuantity = 0) |
|
|
Melding |
Control Act: queryAck/queryResponseCode moet 'NF' bevatten indien er op basis van
de queryParameters geen resultaten gevonden konden worden (resultCurrentQuantity/@value='<value-of select="$resultCurrentQuantity"/>') en de query valide is (acknowledgement/@typeCode='<value-of select="$acknowledgementTypeCode"/>') |
|
hl7:resultTotalQuantity
|
INT.NONNEG |
1 … 1 |
R |
Bevat de totale hoeveelheid zoekresultaten van nul of meer die geleverd (kunnen) worden
als antwoord op de vraag.
Merk op dat een antwoordend systeem, ook in het geval van een ongedoseerde vraag de
omvang van het antwoord kan beperken, bijvoorbeeld om resource-technische redenen.
In dat geval moet de vraagsteller vervolgvragen sturen om alle antwoorden te verkrijgen. Als een systeem geen vervolgvragen kan beantwoorden, moet een systeem omwille van
de volledigheid alle gevraagde zoekresultaten in één keer opleveren. Merk op dat het
"doseermechanisme" op dit moment in AORTA niet gebruikt mag worden. Het element QueryByParameter/initialQuantity
attribuut mag om die reden niet gebruikt worden. Opleverende systemen dienen alle
zoekresultaten in één antwoordbericht op te leveren.
|
(Connse) |
@nullFlavor
|
cs |
0 … 1 |
F |
NAV |
|
Constraint |
@value moet een waarde bevatten, of als de totale hoeveelheid zoekresultaten (nog) niet
bekend is moet @nullFlavor de waarde "NAV" bevatten.
|
hl7:resultCurrentQuantity
|
INT.NONNEG |
1 … 1 |
M |
Bevat de hoeveelheid zoekresultaten van nul of meer die opgenomen zijn in het huidige
bericht. Een antwoordbericht kan meerdere antwoorden bevatten. Bevat de hoeveelheid
antwoorden die opgenomen zijn in het huidige bericht.
|
(Connse) |
|
Constraint |
@value moet een waarde bevatten.
|
|
Variabele let |
Naam |
resultCurrentQuantity |
|
|
Waarde |
count(../../hl7:subject) |
|
|
Schematron assert |
role |
error
|
|
|
test |
@value=$resultCurrentQuantity |
|
|
Melding |
Control Act: queryAck/resultCurrentQuantity '<value-of select="@value"/>' moet gelijk zijn aan het aantal subject elementen ('<value-of select="$resultCurrentQuantity"/>') |
|
hl7:resultRemainingQuantity
|
INT.NONNEG |
1 … 1 |
R |
Bevat de hoeveelheid zoekresultaten die (nog) niet verstuurd zijn aan de aanvrager.
De aanwezigheid van de @nullFlavor met waarde "NAV" mag niet worden geïnterpreteerd als "0".
Uitgaande van de oplevering van een reeks antwoordberichten zonder foutmeldingen: In de reeks antwoordberichten (al dan niet gebundeld) dient resultTotalQuantity in alle berichten dezelfde waarde te bevatten en resultRemainingQuantity (in grootte zoals opgegeven in het resultCurrentQuantity element) af te nemen naar de
waarde 0. De elementen resultTotalQuantity en resultRemainingQuantity kunnen aan het begin van de reeks antwoordberichten worden
gevuld met een null-waarde indien de waarden nog niet bekend zijn. Het laatste bericht
in de reeks antwoordberichten mag echter geen null-waarden in deze elementen bevatten.
|
(Connse) |
@nullFlavor
|
cs |
0 … 1 |
F |
NAV |
|
Constraint |
@value moet een waarde bevatten, of als de totale hoeveelheid zoekresultaten (nog) niet
bekend is moet @nullFlavor de waarde "NAV" bevatten.
|
|
Variabele let |
Naam |
resultTotalQuantity |
|
|
Waarde |
../hl7:resultTotalQuantity/@value |
|
|
Schematron assert |
role |
error
|
|
|
test |
not(@value and $resultTotalQuantity) or (number(@value) <= number($resultTotalQuantity)) |
|
|
Melding |
Control Act: queryAck/resultRemainingQuantity '<value-of select="@value"/>' moet kleiner dan of gelijk aan resultTotalQuantity '<value-of select="$resultTotalQuantity"/>' zijn |
|
Inclusie |
|
|
van 2.16.840.1.113883.2.4.3.11.60.102.10.102 Generic ControlActProcess Checks (2014‑07‑15)
|
|
Variabele let |
Naam |
controlActProcess |
|
|
Waarde |
. |
|
|
Variabele let |
Naam |
authorEntity |
|
|
Waarde |
$controlActProcess/hl7:authorOrPerformer//hl7:*[lower-case(local-name())=('assigneddevice','assignedperson')][1] |
|
|
Variabele let |
Naam |
authorDevice |
|
|
Waarde |
$authorEntity[lower-case(local-name())='assigneddevice'] |
|
|
Variabele let |
Naam |
authorPerson |
|
|
Waarde |
$authorEntity[lower-case(local-name())='assignedperson'] |
|
|
Variabele let |
Naam |
overseerPerson |
|
|
Waarde |
$controlActProcess/hl7:overseer//hl7:*[lower-case(local-name())=('assignedentity','assignedperson')][1] |
|
|
Variabele let |
Naam |
authorPath |
|
|
Waarde |
string-join($authorEntity/ancestor-or-self::*/name(),'/') |
|
|
Variabele let |
Naam |
overseerPath |
|
|
Waarde |
string-join($overseerPerson/ancestor-or-self::*/name(),'/') |
|
|
Variabele let |
Naam |
senderApplicationId |
|
|
Waarde |
$controlActProcess/../hl7:sender/hl7:device/hl7:id[@root='2.16.840.1.113883.2.4.6.6']/@extension |
|
|
Variabele let |
Naam |
authorApplicationId |
|
|
Waarde |
$authorDevice/hl7:id[@root='2.16.840.1.113883.2.4.6.6']/@extension |
|
|
Variabele let |
Naam |
overseerOrgId |
|
|
Waarde |
$overseerPerson/hl7:Organization/hl7:id |
|
|
Variabele let |
Naam |
authorOrgId |
|
|
Waarde |
$authorEntity/hl7:Organization/hl7:id |
|
|
Variabele let |
Naam |
interactionId |
|
|
Waarde |
$controlActProcess/../local-name() |
|
|
Variabele let |
Naam |
interactionVocabFile |
|
|
Waarde |
'../vocab/2.16.840.1.113883.1.6.xml' |
|
|
Variabele let |
Naam |
interactionVocab |
|
|
Waarde |
if (doc-available($interactionVocabFile)) then doc($interactionVocabFile) else () |
|
|
Variabele let |
Naam |
interactionTrustLevel |
|
|
Waarde |
$interactionVocab/*/hl7:code[@code=$interactionId]/hl7:qualifier[@name='Vertrouwensniveau']/@value |
|
|
Variabele let |
Naam |
interactionSendType |
|
|
Waarde |
$interactionVocab/*/hl7:code[@code=$interactionId]/hl7:qualifier[@name='Verzendtype']/@value |
|
|
Variabele let |
Naam |
interactionTriggerEventCode |
|
|
Waarde |
$interactionVocab/*/hl7:code[@code=$interactionId]/hl7:reference/@extension |
|
|
Variabele let |
Naam |
messageTriggerEventCode |
|
|
Waarde |
$controlActProcess/hl7:code/@code |
|
|
Schematron assert |
role |
warning
|
|
|
test |
$interactionVocab |
|
|
Melding |
Control Act: <value-of select="$interactionVocabFile"/> niet gevonden. Controles gebaseerd op dit externe configuratiebestand zijn gedeactiveerd. |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($controlActProcess/hl7:queryByParameter) or $controlActProcess[@moodCode='EVN'] |
|
|
Melding |
Control Act: <value-of select="local-name()"/>/@moodCode moet 'EVN' zijn bij queries |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($interactionVocab) or not($messageTriggerEventCode) or $interactionTriggerEventCode=$messageTriggerEventCode |
|
|
Melding |
Control Act: <value-of select="local-name()"/>/code (Trigger Event) moet bij deze interactie '<value-of select="$interactionTriggerEventCode"/>' zijn, gevonden is echter '<value-of select="$messageTriggerEventCode"/>' |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($interactionVocab) or $authorPerson or not($interactionTrustLevel) or $interactionTrustLevel='Laag' |
|
|
Melding |
Control Act: <value-of select="local-name()"/>/authorOrPerformer moet een persoon bevatten in berichten met vertrouwensniveau midden
of hoog |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($interactionVocab) or $overseerPerson or empty($interactionTrustLevel) or $interactionTrustLevel='Laag' |
|
|
Melding |
Control Act: <value-of select="local-name()"/>/overseer moet de mandaterende persoon bevatten in berichten met vertrouwensniveau
midden of hoog |
|
|
Schematron assert |
role |
error
|
|
|
test |
empty($senderApplicationId) or empty($authorApplicationId) or $senderApplicationId=$authorApplicationId
or $senderApplicationId='1'
|
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/id. Applicatie-id <value-of select="$authorApplicationId"/> komt niet overeen met Transmission-wrapper sender <value-of select="$senderApplicationId"/>. |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($authorDevice/hl7:Organization/hl7:id[@root='2.16.528.1.1007.3.3']) or $authorDevice/hl7:id[@root='2.16.528.1.1007.3.2'] |
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/id moet tenminste het UZI-nummer systemen bevatten voor een XIS in een GBZ |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($authorDevice/hl7:id[@root='2.16.528.1.1007.3.2']) or $authorDevice/hl7:Organization/hl7:id[@root='2.16.528.1.1007.3.3'
and @extension]
|
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/id moet de zorgaanbieder van het XIS identificeren |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($authorDevice) or $authorDevice/hl7:id[@root='2.16.840.1.113883.2.4.6.6'][@extension='1']
or $authorDevice/hl7:id[@root='2.16.528.1.1007.4'] or $authorDevice/hl7:Organization/hl7:id
|
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/ moet een geïdentificeerde organisatie hebben, tenzij het de ZIM of het SBV-Z betreft. |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($authorPerson/hl7:id[@root='2.16.840.1.113883.2.4.6.3']) or $authorPerson/hl7:code[@codeSystem='2.16.840.1.113883.2.4.3.11.8'][@code='P'] |
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/code/@code moet "P" (Patiënt) zijn. Wettelijke vertegenwoordigers moet dit via het
Klantenloket doen en kunnen dus niet als auteur optreden |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($authorPerson/hl7:id[@root=('2.16.840.1.113883.2.4.3.11.7.3','2.16.528.1.1003.1.3.5.4.1')])
or $authorPerson/hl7:code[@codeSystem='2.16.840.1.113883.2.4.3.11.8'][@code='KLANTENLOKET']
|
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/code/@code moet "KLANTENLOKET" zijn voor klantenloketmedewerkers |
|
|
Schematron assert |
role |
warning
|
|
|
test |
not($authorPerson/hl7:id[@root='2.16.528.1.1007.3.1']) or $authorPerson/hl7:code[@codeSystem='2.16.840.1.113883.2.4.15.111'] |
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/code ontbreekt. Dit is alleen toegestaan als de rolcode 00.000 is. |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($authorPerson/hl7:id[@root='2.16.528.1.1007.3.1']) or $authorOrgId[@root='2.16.528.1.1007.3.3'
and @extension]
|
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/Organization/id moet de zorgaanbieder van de persoon identificeren |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($authorPerson/hl7:id[@root='2.16.840.1.113883.2.4.6.3']) or $authorOrgId[@root='2.16.840.1.113883.2.4.3.11.25'] |
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/Organization/id/@root moet '2.16.840.1.113883.2.4.3.11.25' bevatten |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($authorPerson/hl7:id[@root=('2.16.840.1.113883.2.4.3.11','2.16.528.1.1003.1.3.5.4.1')])
or $authorOrgId[@root='2.16.840.1.113883.2.4.3.11'][@extension='7']
|
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/Organization/id moet de Nictiz-klantenloket organisatie identificeren |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($overseerPerson/hl7:Organization[not(hl7:name)]/hl7:id[@root='2.16.528.1.1007.3.3']) |
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/Organization/name moet de zorgaanbieder/organisatienaam bevatten |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($overseerPerson/hl7:Organization[not(hl7:name)]/hl7:id[@root='2.16.840.1.113883.2.4.3.11'
and @extension='7'])
|
|
|
Melding |
Control Act: <value-of select="$authorPath"/>/Organization/name moet de Nictiz-klantenloket organisatienaam bevatten |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($overseerPerson) or $overseerPerson/hl7:code |
|
|
Melding |
Control Act: <value-of select="$overseerPath"/>/code is verplicht |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($overseerPerson/hl7:id[@root='2.16.840.1.113883.2.4.6.3']) or $overseerPerson/hl7:code[@codeSystem='2.16.840.1.113883.2.4.3.11.8'][@code='P']
or $overseerPerson/hl7:code[@codeSystem='2.16.840.1.113883.2.4.3.11.6']
|
|
|
Melding |
Control Act: <value-of select="$overseerPath"/>/code/@code moet "P" (Patiënt) zijn of een geldige waarde uit RoleCodeWettelijkeVertegenwoordigerNL |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($overseerPerson/hl7:id[@root='2.16.528.1.1007.3.1']) or $overseerPerson/hl7:assignedPrincipalChoiceList/hl7:assignedPerson/hl7:name |
|
|
Melding |
Control Act: <value-of select="$overseerPath"/>/assignedPrincipalChoiceList/assignedPerson/name is verplicht |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($overseerPerson/hl7:id[@root='2.16.528.1.1007.3.1']) or $overseerPerson/hl7:Organization/hl7:id[@root='2.16.528.1.1007.3.3'] |
|
|
Melding |
Control Act: <value-of select="$overseerPath"/>/Organization/id moet de zorgaanbieder van de persoon identificeren |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($overseerPerson/hl7:id[@root='2.16.528.1.1007.3.1']) or $overseerPerson/hl7:Organization/hl7:name |
|
|
Melding |
Control Act: <value-of select="$overseerPath"/>//Organization/name moet de zorgaanbiedernaam bevatten |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($overseerPerson/hl7:id[@root='2.16.528.1.1007.3.1']) or $overseerPerson/hl7:Organization/hl7:addr/hl7:city |
|
|
Melding |
Control Act: <value-of select="$overseerPath"/>/Organization/addr moet tennminste de vestigingsplaats bevatten |
|
|
Schematron assert |
role |
error
|
|
|
test |
not($overseerOrgId) or $authorOrgId[@root=$overseerOrgId/@root][@extension=$overseerOrgId/@extension]
or $authorEntity[lower-case(local-name())='assigneddevice']
|
|
|
Melding |
Control Act: <value-of select="$overseerPath"/>/Organization/id. Organisatie van de overseer (<value-of select="$overseerOrgId/@root"/>#<value-of select="$overseerOrgId/@extension"/>) moet gelijk zijn aan die van de authorOrPerformer (<value-of select="$authorOrgId/@extension"/>) |
|