Gazelle Cross Validator Report
Rapport de Cross Validation
- OID
- 1.3.6.1.4.1.12559.11.43.3.2.4243
- Date de validation
- 17/04/25 11:05:07 (CEST GMT+0200)
- Validateur
- IHE - CROSS_VALIDATEUR_GENERIQUE
- Statut de validation
- FAILED
Fichiers validés
Rapport
Validator description
- Name
- CROSS_VALIDATEUR_GENERIQUE
- Affinity domain
- IHE
- Version
- 2024-12-19
- Gazelle X Validator version
- 1.4.5
Validation summary
- Validation date
- 2025-04-17T11:05:22.295+02:00
- Validation status
- FAILED
Validation details
Aborted rules
- Test
- ITI-32_36_serviceStopTime
- Applies to
- ITI-32_CDA_Document_1::if (//*:documentationOf/*:serviceEvent/*:effectiveTime/*:high ) then //*:documentationOf/*:serviceEvent/*:effectiveTime/*:high/@value else "20200131130000+0100" ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [0..1] - Contrôle de la balise optionnelle documentationOf/serviceEvent/effectiveTime/high si elle est présente. Dans le CDA la valeur est au format horaire LOCAL : AAAAMMJJHHMMSS+hh00 ou hh est le décalage horaire. Exemple: "20090529094914+0200" Dans la META, la valeur est au format AAAAMMJJHHMMSS mais au format horaire UTC. Il faut donc effectuer un comparatif visuel entre la dateHeure locale et la dateHeure UTC du META. soit ici "20090529074914"
- Tested expression
-
ITI-32_CDA_Document_1::if (//*:documentationOf/*:serviceEvent/*:effectiveTime/*:high ) then //*:documentationOf/*:serviceEvent/*:effectiveTime/*:high/@value else "20200131130000+0100" = ITI-32_XDS_Metadata::if ( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name="serviceStopTime"] ) then /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name="serviceStopTime"]/*:ValueList/*:Value else "20200131120000"
- Reason
- Error evaluating XPath : This XPath has not returned any element
- Covered assertions
Reports
- Test
- ITI-32_12_authorRole
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [0..1] - Rôle fonctionnel de l’auteur - On compare la métadonnée authorRole avec la donnée CDA:://author/functionCode/@displayName
- Tested expression
-
ITI-32_CDA_Document_1::if ( count(//*:ClinicalDocument/*:author/*:functionCode) > 0 ) then //*:ClinicalDocument/*:author/*:functionCode/@displayName/string() else 'OK' = ITI-32_XDS_Metadata::if ( count(//*:Classification[@classificationScheme = 'urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d']/*:Slot[@name='authorRole']/*:ValueList/*:Value) >0) then //*:Classification[@classificationScheme = 'urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d']/*:Slot[@name='authorRole']/*:ValueList/*:Value/string() else 'OK'
- Covered assertions
- Test
- ITI-32_19_authorInstitution
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [0..1] - Contrôle de la balise authorInstitution qui identifie l'entreprise de santé pour le compte de laquelle le document a été produit.
- Tested expression
-
ITI-32_CDA_Document_1::if ( count(//*:ClinicalDocument/*:author/*:assignedAuthor/*:representedOrganization) >0 ) then string-join( (//*:ClinicalDocument/*:author/*:assignedAuthor/*:representedOrganization/*:name , '^^^^^&' , ( //*:ClinicalDocument/*:author/*:assignedAuthor/*:representedOrganization/*:id/@root , '')[1] , '&ISO^IDNST^^^' , ( //*:ClinicalDocument/*:author/*:assignedAuthor/*:representedOrganization/*:id/@extension , '')[1] ) , '') else 'OK' = ITI-32_XDS_Metadata::if ( count(//*:Classification[@classificationScheme="urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d"]/*:Slot[@name="authorInstitution"]/*:ValueList/*:Value) >0 ) then //*:Classification[@classificationScheme="urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d"]/*:Slot[@name="authorInstitution"]/*:ValueList/*:Value/string() else 'OK'
- Covered assertions
- Test
- ITI-32_07_confidentialityCode
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..1] - Contrôle du niveau de confidentialité du document - ( N ,R ,V )
- Tested expression
-
ITI-32_CDA_Document_1:://*:ClinicalDocument/*:confidentialityCode/@code/string() = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Classification[@classificationScheme="urn:uuid:f4f85eac-e6cb-4883-b524-f2705394840f"]/@nodeRepresentation/string()
- Covered assertions
- Test
- ITI-32_43_healthcareFacility
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..1] Contrôle du secteur d'activité (modalité d'exercice)
- Tested expression
-
ITI-32_CDA_Document_1::string-join( (//*:componentOf/*:encompassingEncounter/*:location/*:healthCareFacility/*:code/@code , //*:componentOf/*:encompassingEncounter/*:location/*:healthCareFacility/*:code/@codeSystem, //*:componentOf/*:encompassingEncounter/*:location/*:healthCareFacility/*:code/@displayName ), '!') = ITI-32_XDS_Metadata::string-join( (/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:f33fb8ac-18af-42cc-ae0e-ed0b0bdb91e1']/@nodeRepresentation , /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:f33fb8ac-18af-42cc-ae0e-ed0b0bdb91e1']/*:Slot/*:ValueList/*:Value , /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:f33fb8ac-18af-42cc-ae0e-ed0b0bdb91e1']/*:Name/*:LocalizedString/@value ) , "!")
- Covered assertions
- Test
- ITI-32_17_AuthorPerson_C1_authorId
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..1] - Vérification de l'identifiant de l'auteur - CDA:://author/assignedAuthor/id
- Tested expression
-
ITI-32_CDA_Document_1::string-join((//*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:id/@extension/string() , //*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:id/@root/string()),'^') = ITI-32_XDS_Metadata::string-join( ( substring-before( *:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name='authorPerson']/*:ValueList/*:Value/string() , '^' ) , substring-before( substring-after( *:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name='authorPerson']/*:ValueList/*:Value/string() , '&' ) , '&') ) , '^' )
- Covered assertions
- Test
- ITI-32_17_C10_nameType
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..1] - Contrôle du type de nom de authorPerson: D si auteur humain, U si auteur dispositif.
- Tested expression
-
ITI-32_CDA_Document_1::if ( count(//*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:assignedAuthoringDevice) > 0 ) then 'U' else if (count( //*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:assignedPerson) > 0 ) then 'D' else 'ERROR' = ITI-32_XDS_Metadata::substring-before( substring-after( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name='authorPerson']/*:ValueList/*:Value/string() , '&ISO^') , '^')
- Covered assertions
- Test
- ITI_32_14_authorSpecialty
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [0..1] - Contrôle du rôle structurel de l’auteur : hiérarchique ou spécialité ordinale, "DISPOSITIF" pour une machine, "EXP_PATIENT" pour un document d'expression personnelle.
- Tested expression
-
ITI-32_CDA_Document_1::if ( count(//*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:code/@code) >0 ) then string-join((//*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:code/@code, //*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:code/@codeSystem) , '!') else 'ABSENT' = ITI-32_XDS_Metadata::if ( count(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme = 'urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name="authorSpecialty"]/*:ValueList/*:Value) >0 ) then string-join ( ( substring-before (//*/*:ExtrinsicObject[1]/*:Classification[@classificationScheme = 'urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name="authorSpecialty"]/*:ValueList/*:Value/string() , '^') , substring-after( substring-after( //*/*:ExtrinsicObject[1]/*:Classification[@classificationScheme = 'urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name="authorSpecialty"]/*:ValueList/*:Value/string() , '^') , '^' ) ),'!') else 'ABSENT'
- Covered assertions
- Test
- ITI-32_06_languageCode
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..1] - Langue du document
- Tested expression
-
ITI-32_CDA_Document_1:://*:ClinicalDocument/*:languageCode/@code/string() = ITI-32_XDS_Metadata:://*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name="languageCode"]/*:ValueList/*:Value/string()
- Covered assertions
- Test
- ITI-32_37_sourcePatientId
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- 1..1] - Identifiant du patient dans le logiciel producteur (IPP). On prendra donc l’id dont root différent de l'identifiant national. S’il n’y en a pas, on prend l'identifiant national
- Tested expression
-
ITI-32_CDA_Document_1::if ( count( //*:patientRole/*:id[not(@root='1.2.250.1.213.1.4.2') and not(@root='1.2.250.1.213.1.4.8') and not(@root='1.2.250.1.213.1.4.9') and not(@root='1.2.250.1.213.1.4.10') and not(@root='1.2.250.1.213.1.4.11') ] ) > 0 ) then string-join(( //*:patientRole/*:id[not(@root='1.2.250.1.213.1.4.2') and not(@root='1.2.250.1.213.1.4.8') and not(@root='1.2.250.1.213.1.4.9') and not(@root='1.2.250.1.213.1.4.10') and not(@root='1.2.250.1.213.1.4.11')][1]/@extension /string() , '^^^&' , //*:patientRole/*:id[not(@root='1.2.250.1.213.1.4.2')and not(@root='1.2.250.1.213.1.4.8') and not(@root='1.2.250.1.213.1.4.9') and not(@root='1.2.250.1.213.1.4.10') and not(@root='1.2.250.1.213.1.4.11')][1]/@root /string() , '&ISO^PI'), '') else if (count( //*:patientRole/*:id[@root='1.2.250.1.213.1.4.8']) >0 ) then string-join(( //*:patientRole/*:id[@root='1.2.250.1.213.1.4.8']/@extension /string(), '^^^&','1.2.250.1.213.1.4.8' , '&ISO^NH'),'') else if (count( //*:patientRole/*:id[@root='1.2.250.1.213.1.4.2'] )>0) then string-join(( //*:patientRole/*:id[@root='1.2.250.1.213.1.4.2']/@extension /string() , '^^^&', '1.2.250.1.213.1.4.2' , '&ISO^INS-C'), '') else if (count( //*:patientRole/*:id[@root='1.2.250.1.213.1.4.9'] )>0) then string-join(( //*:patientRole/*:id[@root='1.2.250.1.213.1.4.9']/@extension /string() , '^^^&', '1.2.250.1.213.1.4.9' , '&ISO^NH'), '') else if (count( //*:patientRole/*:id[@root='1.2.250.1.213.1.4.10'] )>0) then string-join(( //*:patientRole/*:id[@root='1.2.250.1.213.1.4.10']/@extension /string() , '^^^&', '1.2.250.1.213.1.4.10' , '&ISO^NH'), '') else if (count( //*:patientRole/*:id[@root='1.2.250.1.213.1.4.11'] )>0) then string-join(( //*:patientRole/*:id[@root='1.2.250.1.213.1.4.11']/@extension /string() , '^^^&', '1.2.250.1.213.1.4.11' , '&ISO^NH'), '') else 'ERREUR' = ITI-32_XDS_Metadata:://*:ExtrinsicObject/*:Slot[@name='sourcePatientId']/*:ValueList/*:Value[1]/string()
- Covered assertions
- Test
- ITI-32_36_serviceStartTime
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [0..1] - Contrôle de la balise documentationOf/serviceEvent/effectiveTime/low Dans le CDA la valeur est au format horaire LOCAL : AAAAMMJJHHMMSS+hh00 ou hh est le décalage horaire. Exemple: "20090529094914+0200" Dans la META, la valeur est au format AAAAMMJJHHMMSS mais au format horaire UTC.
- Tested expression
-
ITI-32_CDA_Document_1:://*:documentationOf/*:serviceEvent/*:effectiveTime/*:low/@value = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name="serviceStartTime"]/*:ValueList/*:Value
- Covered assertions
- Test
- ITI-32_08_creationTime
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Contrôle de la date de création du document.
- Tested expression
-
ITI-32_CDA_Document_1:://*:ClinicalDocument/*:effectiveTime/@value = ITI-32_XDS_Metadata:://*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name="creationTime"]/*:ValueList/*:Value
- Covered assertions
- Test
- ITI-32_27_sourcePatientInfo_familyName
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..*] - Contrôle du nom de famille du patient (qualifier=BR <--> L)
- Tested expression
-
ITI-32_CDA_Document_1::if ( //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:family[@qualifier='BR'] ) then //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:family[@qualifier='BR']/string() else 'OK' = ITI-32_XDS_Metadata::if ( //*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/ substring-before( substring-after(//*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(), 'PID-5')][ends-with(text(),'L')][1] , 'PID-5|') , '^') != '' ) then //*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/ substring-before( substring-after(//*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(), 'PID-5')][ends-with(text(),'L')][1] , 'PID-5|') , '^') else 'OK'
- Covered assertions
- Test
- ITI-32_27_sourcePatientInfo_displayName
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..*] - Contrôle du nom d'usage du patient (QUALIFIER='CL' <--> D )
- Tested expression
-
ITI-32_CDA_Document_1::if ( //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:family[@qualifier='CL'] ) then //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:family[@qualifier='CL']/string() else if ( //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:family[@qualifier='SP'] ) then //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:family[@qualifier='SP']/string() else 'OK' = ITI-32_XDS_Metadata::if ( //*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/ substring-before( substring-after(//*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(), 'PID-5')][ends-with(text(),'D')][1] , 'PID-5|') , '^') != '' ) then //*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/ substring-before( substring-after(//*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(), 'PID-5')][ends-with(text(),'D')][1] , 'PID-5|') , '^') else 'OK'
- Covered assertions
- Test
- ITI-32_34_eventCode
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [0..1] - Contrôle des code, displayName, codeSystem des actes documentés.
- Tested expression
-
ITI-32_CDA_Document_1::if ( count(//*:ClinicalDocument/*:documentationOf[1]/*:serviceEvent/*:code) >0 ) then string-join(( //*:ClinicalDocument/*:documentationOf[1]/*:serviceEvent/*:code/@code/string() , //*:ClinicalDocument/*:documentationOf[1]/*:serviceEvent/*:code/@displayName/string() , //*:ClinicalDocument/*:documentationOf[1]/*:serviceEvent/*:code/@codeSystem/string() ) , '^') else 'ABSENT' = ITI-32_XDS_Metadata::if ( count(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme="urn:uuid:2c6b8cb7-8b2a-4051-b291-b1ae6a575ef4"])>0) then string-join(( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme="urn:uuid:2c6b8cb7-8b2a-4051-b291-b1ae6a575ef4"][1]/@nodeRepresentation/string() , /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme="urn:uuid:2c6b8cb7-8b2a-4051-b291-b1ae6a575ef4"][1]/*:Name/*:LocalizedString/@value[1]/string() , /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme="urn:uuid:2c6b8cb7-8b2a-4051-b291-b1ae6a575ef4"][1]/*:Slot[@name="codingScheme"]/*:ValueList/*:Value[1]/string() ) ,'^') else 'ABSENT'
- Covered assertions
- Test
- ITI-32_39_practiceSetting
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..1] - Cadre d'exercice de l'acte principal - Contrôle de practiceSettingCode, practiceSettingCodeDisplayName, codingScheme
- Tested expression
-
ITI-32_CDA_Document_1::string-join( (//*:documentationOf[1]/*:serviceEvent/*:performer/*:assignedEntity/*:representedOrganization/*:standardIndustryClassCode/@code, //*:documentationOf[1]/*:serviceEvent/*:performer/*:assignedEntity/*:representedOrganization/*:standardIndustryClassCode/@codeSystem, //*:documentationOf[1]/*:serviceEvent/*:performer/*:assignedEntity/*:representedOrganization/*:standardIndustryClassCode/@displayName),'!') = ITI-32_XDS_Metadata::string-join( (/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme="urn:uuid:cccf5598-8b07-4b77-a05e-ae952c785ead"]/@nodeRepresentation , /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme="urn:uuid:cccf5598-8b07-4b77-a05e-ae952c785ead"]/*:Slot/*:ValueList/*:Value[1] , /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme="urn:uuid:cccf5598-8b07-4b77-a05e-ae952c785ead"]/*:Name/*:LocalizedString/@value[1] ) ,'!')
- Covered assertions
- Test
- ITI-32_03_typeCode
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..1] - Contrôle du type de document - code et codeSystem
- Tested expression
-
ITI-32_CDA_Document_1::string-join( ( //*:ClinicalDocument/*:code/@code/string() , //*:ClinicalDocument/*:code/@codeSystem/string() ) , '^') = ITI-32_XDS_Metadata::string-join ( (/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme="urn:uuid:f0306f51-975f-434e-a61c-c59651d33983"]/@nodeRepresentation/string() , /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme="urn:uuid:f0306f51-975f-434e-a61c-c59651d33983"]/*:Slot/*:ValueList/*:Value/string() ) , '^')
- Covered assertions
- Test
- ITI-32_20_legalAuthenticator_C1C2C3C9
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..1] - Identifiant légal du document - Contrôle des composants nom , prénom , identifiant, autorité d'affectation
- Tested expression
-
ITI-32_CDA_Document_1::string-join((//*:legalAuthenticator/*:assignedEntity/*:id/@extension , '^' , //*:legalAuthenticator/*:assignedEntity/*:assignedPerson/*:name/*:family , '^' , //*:legalAuthenticator/*:assignedEntity/*:assignedPerson/*:name/*:given , '^^^^^^&' , //*:legalAuthenticator/*:assignedEntity/*:id/@root ) , '') = ITI-32_XDS_Metadata::substring-before( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Slot[@name = 'legalAuthenticator']/*:ValueList/*:Value/string() , '&ISO')
- Covered assertions
- Test
- ITI-32_17_C13_IdType
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..1] Contrôle du type d'identifiant: IDNPS (id national) , EI (id local) ou RI (dispositif)
- Tested expression
-
ITI-32_CDA_Document_1::if ( count(//*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:assignedAuthoringDevice) > 0 ) then 'RI' else if ( //*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:id[contains(@extension ,'/')] ) then 'EI' else 'IDNPS' = ITI-32_XDS_Metadata::if (ends-with( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name='authorPerson']/*:ValueList/*:Value/string() , 'IDNPS' )) then 'IDNPS' else if (ends-with( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name='authorPerson']/*:ValueList/*:Value/string() , 'EI' ) ) then 'EI' else if (ends-with(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name='authorPerson']/*:ValueList/*:Value/string() , 'RI' ) ) then 'RI' else 'ERROR'
- Covered assertions
- Test
- ITI-32_17_C2-C3_authorName
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..1] - Vérification des noms et prénoms de l'auteur humain ou des modèles et manufacturer si l'auteur est un dispositif.
- Tested expression
-
(ITI-32_CDA_Document_1::string-join(( //*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:assignedPerson/*:name/*:family/string() , //*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:assignedPerson/*:name/*:given/string() ) , '^' ) = ITI-32_XDS_Metadata::string-join( ( substring-before( substring-after( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name='authorPerson']/*:ValueList/*:Value/string() , '^' ) ,'^') , substring-before( substring-after( substring-after(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name='authorPerson']/*:ValueList/*:Value/string() , '^' ) , '^') , '^') ) , '^' )) or (ITI-32_CDA_Document_1::string-join(( //*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:assignedAuthoringDevice/*:softwareName/string() , //*:ClinicalDocument/*:author[1]/*:assignedAuthor/*:assignedAuthoringDevice/*:manufacturerModelName/string() ) , '^' ) = ITI-32_XDS_Metadata::string-join( ( substring-before( substring-after( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name='authorPerson']/*:ValueList/*:Value/string() , '^' ) ,'^') , substring-before( substring-after( substring-after(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification[@classificationScheme='urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d'][1]/*:Slot[@name='authorPerson']/*:ValueList/*:Value/string() , '^' ) , '^') , '^') ) , '^' ))
- Covered assertions
- Test
- ITI-32_27_sourcePatientInfo_PID3
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [1..*] - Contrôle les 2 premiers identifiants patient du PID-3 si il sont présents.
- Tested expression
-
(ITI-32_CDA_Document_1::string-join( ( 'PID-3|' , //*:patientRole/*:id[1]/@extension /string() , '^^^&' , //*:patientRole/*:id[1]/@root ) ,'') = ITI-32_XDS_Metadata::substring-before(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[1][starts-with(.,'PID-3')] , '&ISO')) or (ITI-32_CDA_Document_1::'' = ITI-32_XDS_Metadata::substring-before(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[1][starts-with(.,'PID-3')] , '&ISO')) or (ITI-32_CDA_Document_1::string-join( ( 'PID-3|' , //*:patientRole/*:id[2]/@extension /string() , '^^^&' , //*:patientRole/*:id[2]/@root ) ,'') = ITI-32_XDS_Metadata::substring-before(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[1][starts-with(.,'PID-3')] , '&ISO')) or (ITI-32_CDA_Document_1::string-join( ( 'PID-3|' , //*:patientRole/*:id[1]/@extension /string() , '^^^&' , //*:patientRole/*:id[1]/@root ) ,'') = ITI-32_XDS_Metadata::substring-before(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification/:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[2][starts-with(.,'PID-3')] , '&ISO')) or (ITI-32_CDA_Document_1::string-join( ( 'PID-3|' , //*:patientRole/*:id[2]/@extension /string() , '^^^&' , //*:patientRole/*:id[2]/@root ) ,'') = ITI-32_XDS_Metadata::substring-before(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject[1]/*:Classification/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[2][starts-with(.,'PID-3')] , '&ISO'))
- Covered assertions
- Test
- ITI-32_29_sourcePatientInfo_birthTime_PID-7
- Applies to
- ITI-32_XDS_Metadata ITI-32_CDA_Document_1
- Description
- [0..1] - Contrôle de la date de naissance du patient. ( PID-7 )
- Tested expression
-
(ITI-32_XDS_Metadata::(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(),'PID-7')]/string() , '')[1] = ITI-32_CDA_Document_1::string-join( ( 'PID-7|' , //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:birthTime/@value/string()) ,'')) or (ITI-32_XDS_Metadata::(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(),'PID-7')]/string() , '')[1] = ITI-32_CDA_Document_1::'')
- Covered assertions
- Test
- ITI-32_28_sourcePatientInfo_genderCode
- Applies to
- ITI-32_XDS_Metadata ITI-32_CDA_Document_1
- Description
- [0..1] - Sexe du patient - PID-8
- Tested expression
-
(ITI-32_XDS_Metadata::(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(),'PID-8')]/string() , '')[1] = ITI-32_CDA_Document_1::string-join( ('PID-8|' , //*:recordTarget/*:patientRole/*:patient/*:administrativeGenderCode/@code/string() ) ,'') ) or (ITI-32_XDS_Metadata::(/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(),'PID-8')]/string() , '')[1] = ITI-32_CDA_Document_1::'')
- Covered assertions
- Test
- ITI-32_01_FormatCode_CR-BIO
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du FormatCode propre au CR Biologie. Le formatCode n'est pas contenu dans le document CDA. Il est déduit dans la table d'association ASS_A11-CorresModeleCDA-XdsFormatCode-CISIS à partir du CDA:templateID CR BIO: urn:ihe:lab:xd-lab:2008
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.3.6.1.4.1.19376.1.3.3'] is present)) or (ITI-32_CDA_Document_1::if (//*:ClinicalDocument/*:templateId[@root='1.3.6.1.4.1.19376.1.3.3']) then string('urn:ihe:lab:xd-lab:2008') else "KO" = ITI-32_XDS_Metadata:://*:Classification[@classificationScheme="urn:uuid:a09d5840-386c-46f2-b5ad-9c3699a4309d"]/@nodeRepresentation/string())
- Covered assertions
- Test
- ITI-32_01_FormatCode_VSM
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du FormatCode propre au VSM. Le formatCode n'est pas contenu dans le document CDA. Il est déduit dans la table d'association ASS_A11-CorresModeleCDA-XdsFormatCode-CISIS à partir du CDA:templateID - VSM: urn:asip:ci-sis:vsm:2012
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.13'] is present)) or (ITI-32_CDA_Document_1::if (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.13']) then string('urn:asip:ci-sis:vsm:2012') else "KO" = ITI-32_XDS_Metadata:://*:Classification[@classificationScheme="urn:uuid:a09d5840-386c-46f2-b5ad-9c3699a4309d"]/@nodeRepresentation/string())
- Covered assertions
- Test
- ITI-32_01_FormatCode_LDL_EES
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du FormatCode propre au LDL_EES. Le formatCode n'est pas contenu dans le document CDA. Il est déduit dans la table d'association ASS_A11-CorresModeleCDA-XdsFormatCode-CISIS à partir du CDA:templateID . urn:asip:ci-sis:ldl-ees:2017
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.21'] is present)) or (ITI-32_CDA_Document_1::if (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.21']) then string('urn:asip:ci-sis:ldl-ees:2017') else "KO" = ITI-32_XDS_Metadata:://*:Classification[@classificationScheme="urn:uuid:a09d5840-386c-46f2-b5ad-9c3699a4309d"]/@nodeRepresentation/string())
- Covered assertions
- Test
- ITI-32_01_FormatCode_LDL_SES
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du FormatCode propre à la LDL SES. Le formatCode n'est pas contenu dans le document CDA. Il est déduit dans la table d'association ASS_A11-CorresModeleCDA-XdsFormatCode-CISIS à partir du CDA:templateID . urn:asip:ci-sis:ldl-ses:2017
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.29'] is present)) or (ITI-32_CDA_Document_1::if (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.29']) then string('urn:asip:ci-sis:ldl-ses:2017') else "KO" = ITI-32_XDS_Metadata:://*:Classification[@classificationScheme="urn:uuid:a09d5840-386c-46f2-b5ad-9c3699a4309d"]/@nodeRepresentation/string())
- Covered assertions
- Test
- ITI_32_03_classCode_CR_BIO
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du classCode propre au CRBIO. Le classCode n'est pas contenu dans le document CDA. Il est déduit de la table d'association du fichier ASS_X04-CorrespondanceType-Classe puis par correspondance du fichier JDV_J06-XdsClassCode-CISIS
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.3.6.1.4.1.19376.1.3.3'] is present)) or (ITI-32_CDA_Document_1::if ( ( //*:ClinicalDocument/*:code[@code/string() = '11502-2'] ) and (//*:ClinicalDocument/*:templateId[@root='1.3.6.1.4.1.19376.1.3.3'] ) ) then 'OKCRBIO' else 'KO1' = ITI-32_XDS_Metadata::if ( (//*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/*:Name/*:LocalizedString/@value/string() = 'Compte rendu') and ( //*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/@nodeRepresentation='10') ) then 'OKCRBIO' else 'KO2')
- Covered assertions
- Test
- ITI-32_01_FormatCode_DLU-DLU
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du FormatCode des documents DLU. Le formatCode n'est pas contenu dans le document CDA. Il est déduit dans la table d'association ASS_A11-CorresModeleCDA-XdsFormatCode-CISIS à partir du CDA:templateID.
- Tested expression
-
( not((ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.22'] or //*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.24'] or //*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.23']) = true)) or (ITI-32_CDA_Document_1::if (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.22']) then string('urn:asip:ci-sis:dlu:2015') else if (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.23']) then string('urn:asip:ci-sis:fludt:2017') else if (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.24']) then string('urn:asip:ci-sis:fludr:2017') else "KO" = ITI-32_XDS_Metadata:://*:Classification[@classificationScheme="urn:uuid:a09d5840-386c-46f2-b5ad-9c3699a4309d"]/@nodeRepresentation/string())
- Covered assertions
- Test
- ITI-32_01_FormatCode_VAC_
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du FormatCode propre au VAC. Le formatCode n'est pas contenu dans le document CDA. Il est déduit dans la table d'association ASS_A11-CorresModeleCDA-XdsFormatCode-CISIS à partir du CDA:templateID. urn:asip:ci-sis:cva:2017
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.10'] is present)) or (ITI-32_CDA_Document_1::if (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.10']) then string('urn:asip:ci-sis:cva:2017') else "KO" = ITI-32_XDS_Metadata:://*:Classification[@classificationScheme="urn:uuid:a09d5840-386c-46f2-b5ad-9c3699a4309d"]/@nodeRepresentation/string())
- Covered assertions
- Test
- ITI-32_01_FormatCode_TLMDA_
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du FormatCode propre au TLMDA. Le formatCode n'est pas contenu dans le document CDA. Il est déduit dans la table d'association ASS_A11-CorresModeleCDA-XdsFormatCode-CISIS à partir du CDA:templateID -urn:asip:ci-sis:tlm-da:2020
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.38'] is present)) or (ITI-32_CDA_Document_1::if (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.38']) then string('urn:asip:ci-sis:tlm-da:2020') else "KO" = ITI-32_XDS_Metadata:://*:Classification[@classificationScheme="urn:uuid:a09d5840-386c-46f2-b5ad-9c3699a4309d"]/@nodeRepresentation/string())
- Covered assertions
- Test
- ITI-32_03_ClassCode_DLU_
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du classCode propre aux docuents DLU. Le classCode n'est pas contenu dans le document CDA. Il est déduit de la table d'association du fichier ASS_X04-CorrespondanceType-Classe puis par correspondance du fichier JDV_J06-XdsClassCode-CISIS
- Tested expression
-
( not((ITI-32_CDA_Document_1::(//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.22'] or //*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.24'] or //*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.23'])) = true)) or (ITI-32_CDA_Document_1::if ( (( //*:ClinicalDocument/*:code[@code/string() = '34133-9'] ) and (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.22'] )) or (( //*:ClinicalDocument/*:code[@code/string() = '34133-9'] ) and (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.23'] )) or (( //*:ClinicalDocument/*:code[@code/string() = '34133-9'] ) and (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.24'] )) ) then 'OKDLU' else 'KO' = ITI-32_XDS_Metadata::if ( (//*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/*:Name/*:LocalizedString/@value/string() = 'Synthèse') and ( //*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/@nodeRepresentation='11') ) then 'OKDLU' else 'KO2')
- Covered assertions
- Test
- ITI-32_03_ClassCode_LDL
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du classCode propre au document LDL-EES. Le classCode n'est pas contenu dans le document CDA. Il est déduit de la table d'association du fichier ASS_X04-CorrespondanceType-Classe puis par correspondance du fichier JDV_J06-XdsClassCode-CISIS
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.21'] is present)) or (ITI-32_CDA_Document_1::if ( ( //*:ClinicalDocument/*:code[@code/string() = '18761-7'] ) and (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.21'] ) ) then 'OKEES' else 'KO1' = ITI-32_XDS_Metadata::if ( (//*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/*:Name/*:LocalizedString/@value/string() = 'Synthèse') and ( //*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/@nodeRepresentation='11') ) then 'OKEES' else 'KO2')
- Covered assertions
- Test
- ITI-32_03_ClassCode_LDL_SES
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du classCode propre au document LDL-SES. Le classCode n'est pas contenu dans le document CDA. Il est déduit de la table d'association du fichier ASS_X04-CorrespondanceType-Classe puis par correspondance du fichier JDV_J06-XdsClassCode-CISIS
- Tested expression
-
( not((ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.29']) = true)) or (ITI-32_CDA_Document_1::if ( ( //*:ClinicalDocument/*:code[@code/string() = '11490-0'] ) and (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.29'] ) ) then 'OKSES' else 'KO1' = ITI-32_XDS_Metadata::if ( (//*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/*:Name/*:LocalizedString/@value/string() = 'Compte rendu') and ( //*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/@nodeRepresentation='10') ) then 'OKSES' else 'KO2')
- Covered assertions
- Test
- ITI-32_03_ClassCode_VSM_
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du classCode propre au VSM. Le classCode n'est pas contenu dans le document CDA. Il est déduit de la table d'association du fichier ASS_X04-CorrespondanceType-Classe puis par correspondance du fichier JDV_J06-XdsClassCode-CISIS
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.13'] is present)) or (ITI-32_CDA_Document_1::if ( ( //*:ClinicalDocument/*:code[@code/string() = 'SYNTH'] ) and (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.13'] ) ) then 'OKVSM' else 'KO1' = ITI-32_XDS_Metadata::if ( (//*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/*:Name/*:LocalizedString/@value/string() = 'Synthèse') and ( //*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/@nodeRepresentation='11') ) then 'OKVSM' else 'KO2')
- Covered assertions
- Test
- ITI-32_03_ClassCode_TLMDA_
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du classCode propre au TLMDA. Le classCode n'est pas contenu dans le document CDA. Il est déduit de la table d'association du fichier ASS_X04-CorrespondanceType-Classe puis par correspondance du fichier JDV_J06-XdsClassCode-CISIS
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.38'] is present)) or (ITI-32_CDA_Document_1::if ( ( //*:ClinicalDocument/*:code[@code/string() = '75496-0'] ) and (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.38'] ) ) then 'OKTLMDA' else 'KO1' = ITI-32_XDS_Metadata::if ( (//*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/*:Name/*:LocalizedString/@value/string() = 'Compte rendu') and ( //*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/@nodeRepresentation='10') ) then 'OKTLMDA' else 'KO2')
- Covered assertions
- Test
- ITI-32_03_ClassCode_VAC_
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Controle du classCode propre au VAC. Le classCode n'est pas contenu dans le document CDA. Il est déduit de la table d'association du fichier ASS_X04-CorrespondanceType-Classe puis par correspondance du fichier JDV_J06-XdsClassCode-CISIS
- Tested expression
-
( not( ITI-32_CDA_Document_1:://*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.10'] is present)) or (ITI-32_CDA_Document_1::if ( ( //*:ClinicalDocument/*:code[@code/string() = '11369-6'] ) and (//*:ClinicalDocument/*:templateId[@root='1.2.250.1.213.1.1.1.10'] ) ) then 'OKVAC' else 'KO1' = ITI-32_XDS_Metadata::if ( (//*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/*:Name/*:LocalizedString/@value/string() = 'Certificat, déclaration') and ( //*:Classification[@classificationScheme='urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a']/@nodeRepresentation='52') ) then 'OKVAC' else 'KO2')
- Test
- ITI-32_04-UniqueId-V3_Fiche
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- Contrôle de la donnée UniqueID dans l'extinsicObject (Fiche)
- Tested expression
-
(ITI-32_CDA_Document_1::string-join( (//*:ClinicalDocument/*:id/@root, //*:ClinicalDocument/*:id/@extension) , '^') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:ExternalIdentifier[@identificationScheme="urn:uuid:2e82c1f6-a085-4c72-9da3-8640a32e42ab"]/@value/string()) or (ITI-32_CDA_Document_1:://*:ClinicalDocument/*:id/@root/string() = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:ExternalIdentifier[@identificationScheme="urn:uuid:2e82c1f6-a085-4c72-9da3-8640a32e42ab"]/@value/string())
- Test
- ITI-32_26_patientId_C1C4C5
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- ITI-32_26_patientId_C1C4C5_registry
- Tested expression
-
(ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.8']/string-join((@extension , '^^^&' , @root,'&ISO^NH'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:RegistryPackage/*:ExternalIdentifier[@identificationScheme="urn:uuid:6b5aea1a-874d-4603-a4bc-96a0a7b38446"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.9']/string-join((@extension , '^^^&' , @root,'&ISO^NH'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:RegistryPackage/*:ExternalIdentifier[@identificationScheme="urn:uuid:6b5aea1a-874d-4603-a4bc-96a0a7b38446"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.10']/string-join((@extension , '^^^&' , @root,'&ISO^NH'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:RegistryPackage/*:ExternalIdentifier[@identificationScheme="urn:uuid:6b5aea1a-874d-4603-a4bc-96a0a7b38446"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.11']/string-join((@extension , '^^^&' , @root,'&ISO^NH'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:RegistryPackage/*:ExternalIdentifier[@identificationScheme="urn:uuid:6b5aea1a-874d-4603-a4bc-96a0a7b38446"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.2']/string-join((@extension , '^^^&' , @root,'&ISO^INS-C'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:RegistryPackage/*:ExternalIdentifier[@identificationScheme="urn:uuid:6b5aea1a-874d-4603-a4bc-96a0a7b38446"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.6']/string-join((@extension , '^^^&' , @root,'&ISO^INS-C'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:RegistryPackage/*:ExternalIdentifier[@identificationScheme="urn:uuid:6b5aea1a-874d-4603-a4bc-96a0a7b38446"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.7']/string-join((@extension , '^^^&' , @root,'&ISO^INS-C'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:RegistryPackage/*:ExternalIdentifier[@identificationScheme="urn:uuid:6b5aea1a-874d-4603-a4bc-96a0a7b38446"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[not(starts-with(@root,'1.2.250.1.213.1.4'))]/string-join( (@extension,'^^^&',@root,'&ISO^PI'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:RegistryPackage/*:ExternalIdentifier[@identificationScheme="urn:uuid:6b5aea1a-874d-4603-a4bc-96a0a7b38446"]/@value/string())
- Test
- ITI-32_26_patientId_C1C4C5_Extrinsic
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- ITI-32_26_patientId_C1C4C5_Extrinsic
- Tested expression
-
(ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.8']/string-join((@extension , '^^^&' , @root,'&ISO^NH'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:ExternalIdentifier[@identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.9']/string-join((@extension , '^^^&' , @root,'&ISO^NH'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:ExternalIdentifier[@identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.10']/string-join((@extension , '^^^&' , @root,'&ISO^NH'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:ExternalIdentifier[@identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.11']/string-join((@extension , '^^^&' , @root,'&ISO^NH'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:ExternalIdentifier[@identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.2']/string-join((@extension , '^^^&' , @root,'&ISO^INS-C'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:ExternalIdentifier[@identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.6']/string-join((@extension , '^^^&' , @root,'&ISO^INS-C'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:ExternalIdentifier[@identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[@root='1.2.250.1.213.1.4.7']/string-join((@extension , '^^^&' , @root,'&ISO^INS-C'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:ExternalIdentifier[@identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427"]/@value/string()) or (ITI-32_CDA_Document_1:://*:recordTarget/*:patientRole/*:id[not(starts-with(@root,'1.2.250.1.213.1.4'))]/string-join( (@extension,'^^^&',@root,'&ISO^PI'),'') = ITI-32_XDS_Metadata::/*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:ExternalIdentifier[@identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427"]/@value/string())
- Test
- ITI-32_27_sourcePatientInfo_givenName_PrenomNaissance
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [0..1] - Contrôle du prénom de naissance du patient
- Tested expression
-
(ITI-32_CDA_Document_1::if ( //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:given[@qualifier='BR']) then ( //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:given[@qualifier='BR']/string() ) else ( if ( //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:given[not(@qualifier)] )then ( //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:given[not(@qualifier)]/string() ) else ( "OK")) = ITI-32_XDS_Metadata:: if (substring-before( substring-after( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(), 'PID-5')][ends-with(text(),'L')][1] , '^' ) ,'^') ) then (substring-before( substring-after( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(), 'PID-5')][ends-with(text(),'L')][1] , '^' ) ,'^') ) else 'OK' ) or (ITI-32_CDA_Document_1::'' = ITI-32_XDS_Metadata:: if (substring-before( substring-after( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(), 'PID-5')][ends-with(text(),'L')][1] , '^' ) ,'^') ) then (substring-before( substring-after( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(), 'PID-5')][ends-with(text(),'L')][1] , '^' ) ,'^') ) else 'OK' )
- Test
- ITI-32_27_sourcePatientInfo_givenName_PrenomUtilise
- Applies to
- ITI-32_CDA_Document_1 ITI-32_XDS_Metadata
- Description
- [0..1] - Contrôle du prénom utilisé par le patient
- Tested expression
-
( not((ITI-32_CDA_Document_1:://*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:given[@qualifier='CL']) = true)) or (ITI-32_CDA_Document_1:://*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:given[@qualifier='CL']/string() = ITI-32_XDS_Metadata::if (substring-before( substring-after( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(), 'PID-5')][ends-with(text(),'D')][1] , '^' ) ,'^') >"" ) then (substring-before( substring-after( /*:SubmitObjectsRequest/*:RegistryObjectList/*:ExtrinsicObject/*:Slot[@name='sourcePatientInfo']/*:ValueList/*:Value[contains(text(), 'PID-5')][ends-with(text(),'D')][1] , '^' ) ,'^') ) else 'OK' )
- Test
- ITI-32_27_sourcePatientInfo_namePresent
- Applies to
- ITI-32_CDA_Document_1
- Description
- [1..*] - Contrôle de la présence d'au moins 1 nom patient dans le CDA
- Tested expression
-
(ITI-32_CDA_Document_1::count( //*:ClinicalDocument/*:recordTarget/*:patientRole/*:patient/*:name/*:family) >0) = true
- Covered assertions