FHIR IG analytics| Package | hl7.fhir.it.cda2fhir |
| Resource Type | StructureMap |
| Id | StructureMap-cda2fhirLdo.json |
| FHIR Version | R4 |
| Source | https://build.fhir.org/ig/hl7-it/cda2fhir/StructureMap-cda2fhirLdo.html |
| URL | http://hl7.it/fhir/cda2fhir/StructureMap/cda2fhirLdo |
| Version | 0.1.0 |
| Status | draft |
| Date | 2026-05-21T10:21:02+00:00 |
| Name | cda2fhirLdo |
| Realm | it |
| Authority | hl7 |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
map "http://hl7.it/fhir/cda2fhir/StructureMap/cda2fhirLdo" = "cda2fhirLdo"
uses "http://hl7.org/fhir/cda/StructureDefinition/ClinicalDocument" alias ClinicalDocument as source
uses "http://hl7.org/fhir/cda/StructureDefinition/AssignedAuthor" alias AssignedAuthor as queried
uses "http://hl7.org/fhir/cda/StructureDefinition/AssignedEntity" alias AssignedEntity as queried
uses "http://hl7.org/fhir/cda/StructureDefinition/AssociatedEntity" alias AssociatedEntity as queried
uses "http://hl7.org/fhir/cda/StructureDefinition/CustodianOrganization" alias CustodianOrganization as queried
uses "http://hl7.org/fhir/cda/StructureDefinition/OrganizationPartOf" alias OrganizationPartOf as queried
uses "http://hl7.org/fhir/cda/StructureDefinition/Organization" alias rapresentedOrganization as queried
uses "http://hl7.org/fhir/cda/StructureDefinition/Section" alias Section as queried
uses "http://hl7.org/fhir/cda/StructureDefinition/PatientRole" alias PatientRole as queried
uses "http://hl7.org/fhir/cda/StructureDefinition/AD" alias AD as source
uses "http://hl7.org/fhir/StructureDefinition/Bundle" alias Bundle as target
uses "http://hl7.org/fhir/StructureDefinition/Composition" alias Composition as produced
uses "http://hl7.org/fhir/StructureDefinition/Patient" alias Patient as produced
uses "http://hl7.org/fhir/StructureDefinition/Encounter" alias Encounter as produced
uses "http://hl7.org/fhir/StructureDefinition/Person" alias Patient as produced
uses "http://hl7.org/fhir/StructureDefinition/Practitioner" alias Practitioner as produced
uses "http://hl7.org/fhir/StructureDefinition/Organization" alias Organization as produced
uses "http://hl7.org/fhir/cda/StructureDefinition/Act" alias Act as produced
uses "http://hl7.org/fhir/cda/StructureDefinition/IVL-PQ" alias IVL_PQ as source
uses "http://hl7.org/fhir/cda/StructureDefinition/PQ" alias PQ as source
uses "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" alias SimpleQuantity as target
imports "http://hl7.it/fhir/cda2fhir/StructureMap/cda2fhirDataTypes"
imports "http://hl7.it/fhir/cda2fhir/StructureMap/cda2fhirHeader"
group CdaToBundle(source cda : ClinicalDocument, target bundle : Bundle) {
cda -> bundle.entry as e, e.request = create('BackboneElement') as request, request.method = 'POST', e.resource = create('Composition') as composition, composition.id = uuid() as uuid1, e.fullUrl = append('https://example/Composition/', uuid1), request.url = 'Composition', bundle.entry as e2, e2.request = create('BackboneElement') as requestPAT, requestPAT.method = 'PUT', e2.resource = create('Patient') as patient, patient.id = uuid() as uuid2, e2.fullUrl = append('https://example/Patient/', uuid2), bundle.entry as e3, e3.request = create('BackboneElement') as request, request.method = 'POST', e3.resource = create('Encounter') as encounter, encounter.id = uuid() as uuid3, e3.fullUrl = append('https://example/Encounter/', uuid3), request.url = 'Encounter', bundle.entry as e5, e5.request = create('BackboneElement') as request, request.method = 'POST', e5.resource = create('DocumentReference') as DocumentReference, DocumentReference.id = uuid() as uuid5, e5.fullUrl = append('https://example/DocumentReference/', uuid5), request.url = 'DocumentReference' then {
cda then ClinicalDocumentToBundle(cda, patient, composition, encounter, bundle, DocumentReference) "cdatobundle";
cda.recordTarget as recordTarget then {
recordTarget.patientRole as patient then {
patient.id as id -> patient.identifier as identifier then {
id.root as r -> identifier.system = translate(r, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri') "root1";
id.extension as ext -> identifier.value = ext;
id.assigningAuthorityName as s -> identifier.assigner as a, a.display = s;
} "record";
patient.id as id where (root = '2.16.840.1.113883.2.9.4.3.2') or (root = '2.16.840.1.113883.2.9.4.3.7') or (root = '2.16.840.1.113883.2.9.4.3.3') or (root = '2.16.840.1.113883.2.9.4.3.17') or (root = '2.16.840.1.113883.2.9.4.3.18') or (root = '2.16.840.1.113883.2.9.2.10.4.1.1') or (root = '2.16.840.1.113883.2.9.2.20.4.1.1') or (root = '2.16.840.1.113883.2.9.2.30.4.1.1') or (root = '2.16.840.1.113883.2.9.2.41.4.1.1') or (root = '2.16.840.1.113883.2.9.2.42.4.1.1') or (root = '2.16.840.1.113883.2.9.2.50.4.1.1') or (root = '2.16.840.1.113883.2.9.2.60.4.1.1') or (root = '2.16.840.1.113883.2.9.2.70.4.1.1') or (root = '2.16.840.1.113883.2.9.2.80.4.1.1') or (root = '2.16.840.1.113883.2.9.2.90.4.1.1') or (root = '2.16.840.1.113883.2.9.2.100.4.1.1') or (root = '2.16.840.1.113883.2.9.2.110.4.1.1') or (root = '2.16.840.1.113883.2.9.2.120.4.1.1') or (root = '2.16.840.1.113883.2.9.2.130.4.1.1') or (root = '2.16.840.1.113883.2.9.2.140.4.1.1') or (root = '2.16.840.1.113883.2.9.2.150.4.1.1') or (root = '2.16.840.1.113883.2.9.2.160.4.1.1') or (root = '2.16.840.1.113883.2.9.2.170.4.1.1') or (root = '2.16.840.1.113883.2.9.2.180.4.1.1') or (root = '2.16.840.1.113883.2.9.2.190.4.1.1') or (root = '2.16.840.1.113883.2.9.2.200.4.1.1') or (root = '2.16.840.1.113883.2.9.2.10.4.1') or (root = '2.16.840.1.113883.2.9.2.20.4.1') or (root = '2.16.840.1.113883.2.9.2.30.4.1') or (root = '2.16.840.1.113883.2.9.2.41.4.1') or (root = '2.16.840.1.113883.2.9.2.42.4.1') or (root = '2.16.840.1.113883.2.9.2.50.4.1') or (root = '2.16.840.1.113883.2.9.2.60.4.1') or (root = '2.16.840.1.113883.2.9.2.70.4.1') or (root = '2.16.840.1.113883.2.9.2.80.4.1') or (root = '2.16.840.1.113883.2.9.2.90.4.1') or (root = '2.16.840.1.113883.2.9.2.100.4.1') or (root = '2.16.840.1.113883.2.9.2.110.4.1') or (root = '2.16.840.1.113883.2.9.2.120.4.1') or (root = '2.16.840.1.113883.2.9.2.130.4.1') or (root = '2.16.840.1.113883.2.9.2.140.4.1') or (root = '2.16.840.1.113883.2.9.2.150.4.1') or (root = '2.16.840.1.113883.2.9.2.160.4.1') or (root = '2.16.840.1.113883.2.9.2.170.4.1') or (root = '2.16.840.1.113883.2.9.2.180.4.1') or (root = '2.16.840.1.113883.2.9.2.190.4.1') or (root = '2.16.840.1.113883.2.9.2.200.4.1') or (root = '2.16.840.1.113883.2.9.4.3.15') then {
id.extension as ext -> requestPAT.url = append('Patient?identifier=', ext) "UUID";
} "ext";
} "recPat";
} "patient";
} "ClinicalDocumentToBody";
}
group ClinicalDocumentToBundle(source cda : ClinicalDocument, target patient : Patient, target composition : Composition, target encounter : Encounter, target bundle : Bundle, target DocumentReference : DocumentReference) {
cda -> bundle.id = uuid() "id";
cda.id -> bundle.identifier "identifier";
cda -> bundle.type = 'transaction' "type";
cda -> bundle.timestamp = (timestamp.now()) "date";
cda then ClinicalDocumentComposition(cda, composition, patient, encounter, bundle, DocumentReference) "composition";
cda.component as component then {
component.structuredBody as body then {
body.component as component then {
// discretizzi il primo livello di component
component.section as srcSection then {
srcSection.code where (code = '46241-6') -> composition.section as tgtSection then ClinicalDocumentSectionMotivoRicovero(cda, srcSection, patient, tgtSection, bundle, encounter) "motivoRicovero";
srcSection.code where (code = '47039-3') -> composition.section as tgtSection then ClinicalDocumentSectionInquadramentoClinico(cda, srcSection, patient, tgtSection, bundle, encounter) "inquadramentoClinico";
srcSection.code where (code = '8648-8') -> composition.section as tgtSection then ClinicalDocumentSectionDecorsoOspedaliero(cda, srcSection, patient, tgtSection, bundle, encounter) "DecorsoOspedaliero";
srcSection.code where (code = '55109-3') -> composition.section as tgtSection then ClinicalDocumentSectionComplicanze(cda, srcSection, patient, tgtSection, bundle, encounter) "Complicazioni";
srcSection.code where (code = '11493-4') -> composition.section as tgtSection then ClinicalDocumentSectionRiscontri(cda, srcSection, patient, tgtSection, bundle, encounter) "HospitalDischargeStudiesSummary";
srcSection.code where (code = '34104-0') -> composition.section as tgtSection then ClinicalDocumentSectionConsulenza(cda, srcSection, patient, tgtSection, bundle, encounter) "HospitalDischargeStudiesSummary";
srcSection.code where (code = '30954-2') -> composition.section as tgtSection then ClinicalDocumentSectionEsamiEseguitiRicovero(cda, srcSection, patient, tgtSection, bundle, encounter) "EsamiEseguitiDuranteilRicovero";
srcSection.code where (code = '47519-4') -> composition.section as tgtSection then ClinicalDocumentSectionProcedureEseguiteRicovero(cda, srcSection, patient, tgtSection, bundle, encounter) "HistoryOfProceduresDocument";
srcSection.code where (code = '48765-2') -> composition.section as tgtSection then ClinicalDocumentSectionAllergie(cda, srcSection, patient, tgtSection, bundle, encounter) "EsamiEseguitiDuranteIlRicovero";
srcSection.code where (code = '10160-0') -> composition.section as tgtSection then ClinicalDocumentSectionTerapiaFarmacologicaDuranteRicovero(cda, srcSection, patient, tgtSection, bundle, encounter) "TerapiaFarmacologicaAllaDimissione";
srcSection.code where (code = '11535-2') -> composition.section as tgtSection then ClinicalDocumentSectionDiagnosiDimissione(cda, srcSection, patient, tgtSection, bundle, encounter) "DiagnosiDiDimissione";
srcSection.code where (code = '18776-5') -> composition.section as tgtSection then ClinicalDocumentSectionIstruzioniFollowUp(cda, srcSection, patient, tgtSection, bundle, encounter) "DiagnosiDiDimissione";
srcSection.code where (code = '10183-2') -> composition.section as tgtSection then ClinicalDocumentSectionTerapiaDimissione(cda, srcSection, patient, tgtSection, bundle, encounter) "TerapiaFarmacologicaAllaDimissione";
};
};
} "body";
};
}
// -------------------------------------------------------------------------------------------------------------------
group ClinicalDocumentSectionMotivoRicovero(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src where src.entry.exists() then {
src.text as cdaText -> tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
} "cText";
src.entry as entry1 -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) then {
entry1.observation as obs then Observation(obs, patient, enc, observation, bundle) "act";
};
src where src.entry.exists().not() then {
src.text as cdaText -> bundle.entry as e8, e8.request = create('BackboneElement') as request, request.method = 'POST', e8.resource = create('Observation') as Observation, Observation.id = uuid() as uuid8, e8.fullUrl = append('https://example/Observation/', uuid8), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %Observation.id) then {
src -> Observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> Observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src.code -> Observation.code;
src where observation.statusCode.exists().not() then {
src -> Observation.status = 'final' "status";
} "statuscode";
cdaText -> Observation.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
} "where";
}
group ClinicalDocumentSectionInquadramentoClinico(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id), tgt.text as fhirText then {
cdaText -> observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
cdaText -> observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
src.code -> observation.code;
src where observation.statusCode.exists().not() then {
src -> observation.status = 'final' "status";
} "statuscode";
cdaText -> observation.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
src.component as component then {
component.section as section2 then {
// ANAMNESI
section2 -> tgt.section as sec2 then {
section2.code where (code = '11329-0') -> sec2.code;
section2.title as t -> sec2.title = (t.dataString);
// section2.code -> sec2.code;
src where src.entry.exists() then {
section2.text as cdaText -> sec2.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
} "exist";
src where src.entry.exists().not() then {
section2.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as condition, condition.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', sec2.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %condition.id) then {
section2.code -> condition.code;
src where condition.statusCode.exists().not() then {
src -> condition.status = 'final' "status";
} "statuscode";
cdaText -> condition.note as note then {
cdaText -> condition.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
cdaText -> condition.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
} "where";
section2.entry as entry1 then {
entry1.observation as obs then {
// EntryRelationship per il Problem
obs.code where (code = '75326-9') then {
obs -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Condition') as condition, condition.id = uuid() as uuid1, e1.fullUrl = append('https://example/Condition/', uuid1), request.url = 'Condition', sec2.entry = create('Reference') as reference, reference.reference = ('https://example/Condition/' + %condition.id) then {
obs.code -> condition.category;
obs -> condition.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
obs -> condition.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
obs.statusCode as status where (code = 'completed') -> condition.verificationStatus as status2 then {
status -> status2.coding as status3 then {
status -> status3.code = 'confirmed' "finald";
status -> status3.system = 'http://terminology.hl7.org/CodeSystem/condition-ver-status' "system";
} "st3";
} "status";
obs.effectiveTime as effective1 then {
effective1 where effective1.low.exists() or effective1.high.exists() then {
effective1 -> condition.onset = create('Period') as periodonset then IVLTSPeriod(effective1, periodonset) "onsetperiod";
} "ef";
} "effectivetime1";
obs.value : CD as val then {
val -> condition.code = create('CodeableConcept') as ce then {
val.originalText -> ce.text;
val -> ce.coding as coding then {
val.code as code -> coding.code = cast(code, 'string');
val.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
val.displayName as display -> coding.display = cast(display, 'string');
} "coding";
} "Ce";
} "Value";
obs.entryRelationship as entriRel then {
entriRel -> condition.evidence = create('BackboneElement') as evidence then {
entriRel.observation as observation2 then {
observation2.code as code then {
code.code where (code.code = '89261-2') then {
obs -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation' then {
entriRel -> evidence.detail = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) "ref";
observation2.code -> observation.code;
observation2 where observation.statusCode.exists().not() then {
observation2 -> observation.status = 'final' "status";
} "statuscode";
observation2.text as text -> observation.note = create('Annotation') as note then {
text.reference as ref -> note.text = (ref.value) "val";
} "Annontation";
obs -> observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
obs -> observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
observation2.statusCode as statusc where (code = 'completed') -> ob.status = 'final';
observation2.statusCode as statusc where (code = 'active') -> ob.status = 'registered';
observation2.statusCode as statusc where (code = 'aborted') -> ob.status = 'cancelled';
observation2.statusCode as statusc where (code = 'suspended') -> ob.status = 'partial';
observation2.value : INT as int -> ob.value = (int.value);
observation2.value : BL as boolean -> ob.value = (boolean.value) "boolean";
observation2.value : CD as val then {
val -> ob.value = create('CodeableConcept') as ce then {
val.originalText as originalText then {
originalText.reference as reference -> ce.text = reference;
} "originltext";
val -> ce.coding as coding then {
val.code as code -> coding.code = cast(code, 'string');
val.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
val.displayName as display -> coding.display = cast(display, 'string');
val.codeSystemVersion as version -> coding.version = cast(version, 'string');
} "code";
val.translation as translation -> ce.coding as coding then {
translation.code as code -> coding.code = cast(code, 'string');
translation.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
translation.displayName as display -> coding.display = cast(display, 'string');
translation.codeSystemVersion as version -> coding.version = cast(version, 'string');
translation.qualifier as qualifier then {
qualifier.value as value -> ce.coding as coding then {
value.code as code -> coding.code = cast(code, 'string');
value.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
value.displayName as display -> coding.display = cast(display, 'string');
value.codeSystemVersion as version -> coding.version = cast(version, 'string');
};
};
};
} "coding";
} "val";
observation2.value : PQ as val then {
val -> ob.value = create('Quantity') as quantity then {
val.value as value -> quantity.value = value;
val.unit as unit -> quantity.unit = unit;
} "quantity";
} "valueQuantity";
observation2.value : ST as value -> ob.value = create('string'), ob.value = (value.dataString);
observation2.value : CE as val then {
val -> observation.value = create('CodeableConcept') as ce then {
val.originalText -> ce.text;
val -> ce.coding as coding then {
val.code as code -> coding.code = cast(code, 'string');
val.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
val.displayName as display -> coding.display = cast(display, 'string');
} "coding";
} "Ce";
} "Value";
} "obser";
} "whereDecorsoClinico";
};
} "Observation2";
} "evidence";
} "EntryRelationship1";
obs.entryRelationship as entriRel then {
entriRel.observation as observation2 then {
observation2.code as code then {
code.code where (code.code = '33999-4') then {
observation2 -> condition.clinicalStatus = create('CodeableConcept') as status then {
observation2.text as text then {
text.reference as refstat -> status.text = (refstat.value) "statref";
} "textstat";
observation2 -> status.coding = create('Coding') as coding then {
observation2.value as value then {
value.code where (value.code = 'LA16666-2') -> coding.code = 'active' "active";
value.code where (value.code = 'LA18632-2') -> coding.code = 'inactive' "inactive";
value.codeSystem as system -> coding.system = 'http://terminology.hl7.org/CodeSystem/condition-clinical' "system";
value.displayName as display -> coding.display = cast(display, 'string');
} "value1";
} "coding";
} "code";
} "whereDecorsoClinico";
} "codestatus";
} "observationstatus";
} "entryrelationshipstatus";
} "whereEntryPatologicaProssima";
} "observationcondition";
} "entry";
} "subsection1";
// ESAME PBIETTIVO
section2.code where (code = '29545-1') then ClinicalDocumentSottoSectionOBS(section2, sec2, bundle, enc, patient) "esameObiettivo";
// TETAPIA FARMACOLOGICA
section2.code where (code = '42346-7') then ClinicalDocumentSottoSectionMS(section2, sec2, bundle, patient, enc) "TerapiaFarmacologicaAllIngresso";
} "sec2fhir";
} "componentSec";
};
}
group ClinicalDocumentSectionDecorsoOspedaliero(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id), tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
src.code -> observation.code;
src where observation.statusCode.exists().not() then {
src -> observation.status = 'final' "status";
} "statuscode";
src -> observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
cdaText -> observation.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
src.component as component then {
component.section as section2 then {
src then ClinicalDocumentSottoSectionOBS(section2, tgt, bundle, enc, patient) "Decorso";
} "1";
} "2";
}
group ClinicalDocumentSectionComplicanze(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src where src.entry.exists() then {
src.text as cdaText -> tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
} "exist";
src where src.entry.exists().not() then {
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) then {
src -> observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src.code -> observation.code;
src where observation.statusCode.exists().not() then {
src -> observation.status = 'final' "status";
} "statuscode";
cdaText -> observation.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
} "where";
src.entry as entry1 -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) then {
entry1.observation as obs then Observation(obs, patient, enc, observation, bundle) "act";
};
}
group ClinicalDocumentSectionRiscontri(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id), tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
src.code -> observation.code;
src where observation.statusCode.exists().not() then {
src -> observation.status = 'final' "status";
} "statuscode";
src -> observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
cdaText -> observation.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
src.component as component then {
component.section as section2 then {
src then ClinicalDocumentSottoSectionOBS(section2, tgt, bundle, enc, patient) "Decorso";
} "1";
} "2";
}
group ClinicalDocumentSectionConsulenza(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src where src.entry.exists() then {
src.text as cdaText -> tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
} "exist";
src where src.entry.exists().not() then {
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) then {
src -> observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src.code -> observation.code;
src where observation.statusCode.exists().not() then {
src -> observation.status = 'final' "status";
} "statuscode";
cdaText -> observation.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
} "where";
src.entry as entry1 -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) then {
entry1.observation as obs then ObservationConsulenza(obs, patient, enc, observation, bundle) "act";
};
}
group ClinicalDocumentSectionEsamiEseguitiRicovero(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src where src.entry.exists() then {
src.text as cdaText -> tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
} "exists";
src where src.entry.exists().not() then {
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) then {
src -> observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src.code -> observation.code;
src where observation.statusCode.exists().not() then {
src -> observation.status = 'final' "status";
} "statuscode";
cdaText -> observation.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
} "where";
src.entry as entry1 -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) then {
entry1.observation as obs then ObservationEsamiDuranteRicovero(obs, patient, enc, observation, bundle) "act";
};
}
group ClinicalDocumentSectionProcedureEseguiteRicovero(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src where src.entry.exists() then {
src.text as cdaText -> tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
} "exists";
src where src.entry.exists().not() then {
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Procedure') as procedure, procedure.id = uuid() as uuid1, e1.fullUrl = append('https://example/Procedure/', uuid1), request.url = 'Procedure', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Procedure/' + %procedure.id) then {
src -> procedure.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> procedure.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src -> procedure.status = 'unknown' "statuscode";
cdaText -> procedure.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
} "where";
src.entry as entry1 -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Procedure') as procedure, procedure.id = uuid() as uuid1, e1.fullUrl = append('https://example/Procedure/', uuid1), request.url = 'Procedure', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Procedure/' + %procedure.id) then {
src -> procedure.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> procedure.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
entry1.procedure as proceduresrc then {
proceduresrc.code -> procedure.code;
proceduresrc.text as txt -> procedure.note as note then {
txt.reference as ref -> note.text = (ref.value);
};
proceduresrc where proc.statusCode.exists().not() then {
proceduresrc -> procedure.status = 'unknown' "statuscode";
} "status";
proceduresrc.statusCode as statusc where (code = 'completed') -> procedure.status = 'completed';
proceduresrc.statusCode as statusc where (code = 'active') -> procedure.status = 'in-progress';
proceduresrc.statusCode as statusc where (code = 'aborted') -> procedure.status = 'stopped';
proceduresrc.statusCode as statusc where (code = 'suspended') -> procedure.status = 'on-hold';
proceduresrc.statusCode as statusc where (code = 'cancelled') -> procedure.status = 'not-done';
proceduresrc.statusCode as statusc where (code = 'held') -> procedure.status = 'on-hold';
proceduresrc.statusCode as statusc where (code = 'new') -> procedure.status = 'preparation';
proceduresrc.statusCode as statusc where (code = 'obsolete') -> procedure.status = 'entered-in-error';
proceduresrc.statusCode as statusc where (code = 'nullified') -> procedure.status = 'unknown';
proceduresrc.effectiveTime as efft -> procedure.performed = create('Period') as period then IVLTSPeriod(efft, period);
proceduresrc.entryRelationship as entriRel -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', procedure.reasonReference = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) then {
entriRel -> observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
entriRel -> observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
entriRel.observation as obs then {
obs.code -> observation.code;
obs where observation.statusCode.exists().not() then {
obs -> observation.status = 'final' "status";
} "statuscode";
} "ObservationValue";
} "Observation";
} "Procedure";
} "Entry";
}
group ClinicalDocumentSectionAllergie(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src where src.entry.exists() then {
src.text as cdaText -> tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
} "exists";
src where src.entry.exists().not() then {
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('AllergyIntolerance') as allergy, allergy.id = uuid() as uuid1, e1.fullUrl = append('https://example/AllergyIntolerance/', uuid1), request.url = 'AllergyIntolerance', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/AllergyIntolerance/' + %allergy.id) then {
src -> allergy.patient = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> allergy.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src -> allergy.clinicalStatus = create('CodeableConcept') as status then {
src -> status.text = 'string' "text";
src -> status.coding = create('Coding') as coding then {
src -> coding.code = 'active' "active";
src -> coding.system = 'http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical' "system";
} "coding";
} "allergy";
src.code -> allergy.code;
cdaText -> allergy.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
} "where";
src.entry as entry1 -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('AllergyIntolerance') as allergy, allergy.id = uuid() as uuid1, e1.fullUrl = append('https://example/AllergyIntolerance/', uuid1), request.url = 'AllergyIntolerance', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/AllergyIntolerance/' + %allergy.id) then {
src -> allergy.patient = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> allergy.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
entry1.act as actallint then {
actallint.effectiveTime as eff -> allergy.onset = create('Period') as per then IVLTSPeriod(eff, per);
actallint.entryRelationship as entryact then {
entryact.observation as entryobs then {
entryobs.value as code then {
code.code as code1 -> allergy.type = translate(code1, '#AllergyTypeMap', 'code') "type";
code.code as code2 -> allergy.category = translate(code2, '#AllergyCategoryMap', 'code') "category";
} "code";
entryobs.participant as partic then {
partic.participantRole as pratRole then {
pratRole.playingEntity as pratent then {
pratent -> allergy.reaction = create('BackboneElement') as reaction then {
pratent.code -> reaction.substance "subs";
entryobs.entryRelationship as entryobs1 where (typeCode = 'MFST') then {
entryobs1.observation as entobs then {
entobs.effectiveTime as eff then {
eff.low as l -> reaction.onset = create('dateTime') as start then TSDateTime(l, start) "val";
} "eff";
entobs.value -> reaction.manifestation "manifest";
} "observ";
} "entry";
} "cod";
} "react";
} "pratentit";
} "PratRole";
entryobs.entryRelationship as entryobs2 then {
entryobs2.observation as entobs then {
entobs.code as code where (code = 'SEV') then {
entobs.value as value then {
value.code where (value.code = 'M') -> allergy.criticality = 'unable-to-assess' "active";
value.code where (value.code = 'L') -> allergy.criticality = 'low' "active";
value.code where (value.code = 'H') -> allergy.criticality = 'high' "active";
} "entobs";
} "sev";
} "severity";
} "observ";
entryobs.entryRelationship as entryobs3 then {
entryobs3.observation as entobs then {
entobs.code as code where (code = '33999-4') then {
entobs -> allergy.clinicalStatus = create('CodeableConcept') as status then {
entobs -> status.coding = create('Coding') as coding then {
entobs.value as value then {
value.code where (value.code = 'LA16666-2') -> coding.code = 'active' "active";
value.code where (value.code = 'LA18632-2') -> coding.code = 'inactive' "active";
value.codeSystem as system -> coding.system = 'http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical' "system";
value.displayName as display -> coding.display = cast(display, 'string');
} "value1";
} "coding";
} "clinicalStatus";
} "stat";
} "obobs3serv";
} "entry3";
entryobs.entryRelationship as entryobs4 then {
entryobs4.act as entact then {
entact.text as actext then {
actext.reference as reftxt -> allergy.note = create('BackboneElement') as note then {
reftxt as ref -> note.text = (ref.value) "notxt";
} "notetxt";
} "txtact";
} "obobs4serv";
} "entry4";
} "partic";
};
};
} "allergy";
}
group ClinicalDocumentSectionDiagnosiDimissione(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src where src.entry.exists() then {
src.text as cdaText -> tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
} "exists";
src where src.entry.exists().not() then {
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) then {
src -> observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src.code -> observation.code;
src where observation.statusCode.exists().not() then {
src -> observation.status = 'final' "status";
} "statuscode";
cdaText -> observation.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
} "where";
src.entry as entry1 -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id) then {
entry1.observation as obs then Observation(obs, patient, enc, observation, bundle) "act";
};
}
group ClinicalDocumentSectionIstruzioniFollowUp(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src.text as cdaText -> tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('CarePlan') as carePlan, carePlan.id = uuid() as uuid1, e1.fullUrl = append('https://example/CarePlan/', uuid1), request.url = 'CarePlan', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/CarePlan/' + %carePlan.id) then {
cdaText -> carePlan.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
src -> carePlan.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> carePlan.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src -> carePlan.status = 'active' "status";
src -> carePlan.intent = 'order' "intent";
} "entry";
}
group ClinicalDocumentSectionTerapiaFarmacologicaDuranteRicovero(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src where src.entry.exists() then {
src.text as cdaText -> tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
} "exists";
src where src.entry.exists().not() then {
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('MedicationAdministration') as medicationAdm, medicationAdm.id = uuid() as uuid1, e1.fullUrl = append('https://example/MedicationAdministration/', uuid1), request.url = 'MedicationAdministration', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/MedicationAdministration/' + %medicationAdm.id) then {
cdaText -> medicationAdm.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
cdaText -> medicationAdm.context = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
cdaText -> medicationAdm.medication = create('CodeableConcept') as codecon then {
cdaText -> codecon.text = 'string' "text";
} "code";
src -> medicationAdm.effective = create('Period') as period then {
src -> period.start = (start.now()) "low";
src -> period.end = (end.now()) "high";
} "Period";
src where sub.statusCode.exists().not() then {
src -> medicationAdm.status = 'completed' "status";
} "statuscode";
cdaText -> medicationAdm.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
} "where";
src.entry as entry1 -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('MedicationAdministration') as medicationAdm, medicationAdm.id = uuid() as uuid1, e1.fullUrl = append('https://example/MedicationAdministration/', uuid1), request.url = 'MedicationAdministration', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/MedicationAdministration/' + %medicationAdm.id) then {
entry1 -> medicationAdm.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
entry1 -> medicationAdm.context = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
entry1.substanceAdministration as sa then {
sa.text as tx -> medicationAdm.note as note then {
sa.performer as performer -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'PUT', e1.resource = create('Practitioner') as practitioner then {
performer.time as ti -> note.time = (ti.value);
performer.assignedEntity as assEnty then {
assEnty -> practitioner.meta as meta then {
assEnty -> meta.tag = create('Coding') as coding then {
assEnty -> coding.system = 'http://algoritmodiscoring' "system";
assEnty -> coding.code = 'ClinicalDocument/body/TerapiaFarmacologicaRicovero/performer' "code";
} "coding";
} "meta";
assEnty.id as id -> practitioner.identifier as identifier then {
id.root as r -> identifier.system = translate(r, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri') "root1";
id.extension as ext -> identifier.value = ext;
id.assigningAuthorityName as s -> identifier.assigner as a, a.display = s;
id.root as r then {
id.extension as ext -> practitioner.id = (r + '-' + ext) as uuid2, e1.fullUrl = append('https://example/Practitioner/', uuid2), request.url = 'Practitioner', medicationAdm.performer as perf, perf.actor = create('Reference') as reference, reference.reference = ('https://example/Practitioner/' + %practitioner.id) "aut";
} "r";
} "identifier";
assEnty.id as id where (root = '2.16.840.1.113883.2.9.4.3.2') then {
id.extension as ext -> request.url = append('Practitioner?identifier=', ext) "UUID";
} "2";
assEnty.id as id where (root != '2.16.840.1.113883.2.9.4.3.2') then {
id.extension as ext -> request.url = append('Practitioner?identifier=', ext) "UUID";
} "diverso";
assEnty.assignedPerson as assi then {
assi.name -> practitioner.name;
} "assi";
} "assEntity";
} "perf";
tx.reference as ref -> note.text = (ref.value);
} "tx";
sa.statusCode as st -> medicationAdm.status = (st.code);
sa.effectiveTime as eff -> medicationAdm.effective = create('Period') as period then IVLTSPeriod(eff, period) "period";
sa -> medicationAdm.dosage as dos then {
sa.routeCode -> dos.route;
} "dos";
sa -> medicationAdm.dosage as dos then {
sa.approachSiteCode -> dos.site;
} "dos";
sa.doseQuantity as doseQuant -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('MedicationRequest') as medicationRq, medicationRq.id = uuid() as uuid1, e1.fullUrl = append('https://example/MedicationRequest/', uuid1), request.url = 'MedicationRequest', medicationAdm.request = create('Reference') as reference, reference.reference = ('https://example/MedicationRequest/' + %medicationRq.id) then {
doseQuant -> medicationRq.dosageInstruction = create('Dosage') as dosageInstruction then {
doseQuant.originalText as ot then {
ot.reference -> dosageInstruction.text;
} "ot";
doseQuant -> dosageInstruction.doseAndRate as dosageRate then {
doseQuant -> dosageRate.dose = create('Range') as d then {
doseQuant -> d.low = create('SimpleQuantity') as l then {
doseQuant.low as lo -> l.value = (lo.value);
doseQuant.low as lo -> l.unit = (lo.unit);
} "low";
doseQuant -> d.high = create('SimpleQuantity') as h then {
doseQuant.high as hi -> h.value = (hi.value);
doseQuant.high as hi -> h.unit = (hi.unit);
} "low";
} "d";
} "dosageRate";
} "Dosage";
sa -> medicationRq.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
sa -> medicationRq.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
sa -> medicationRq.status = 'active' "status";
sa -> medicationRq.intent = 'order' "intent";
sa.rateQuantity as rateQuantity -> medicationRq.dosageInstruction = create('Dosage') as dosageInstruction1 then {
rateQuantity.originalText as ot then {
ot.reference -> dosageInstruction1.text;
} "ot";
rateQuantity -> dosageInstruction1.doseAndRate as dosageRate then {
rateQuantity -> dosageRate.rate = create('Range') as d then {
rateQuantity -> d.low = create('SimpleQuantity') as l then {
rateQuantity.low as lo -> l.value = (lo.value);
rateQuantity.low as lo -> l.unit = (lo.unit);
} "low";
rateQuantity -> d.high = create('SimpleQuantity') as h then {
rateQuantity.high as hi -> h.value = (hi.value);
rateQuantity.high as hi -> h.unit = (hi.unit);
} "low";
} "d";
} "dosageRate";
} "Dosage";
sa -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Medication') as medication, medication.id = uuid() as uuid1, e1.fullUrl = append('https://example/Medication/', uuid1), request.url = 'Medication', medicationAdm.medication = create('Reference') as reference, reference.reference = ('https://example/Medication/' + %medication.id) then {
sa -> medicationRq.medication = create('Reference') as reference, reference.reference = ('https://example/Medication/' + %medication.id) "reference";
sa.administrationUnitCode -> medication.form;
sa.consumable as consumable then {
consumable.manufacturedProduct as manufac then {
manufac.manufacturedMaterial as manuprod then {
manuprod.code -> medication.code;
} "manufactproduct";
} "manufac";
};
sa.entryRelationship as entryRR then {
entryRR.observation as observation then {
observation.code where displayName = 'Grammatura' -> medication.ingredient as ingredient then {
sa.consumable as consumable then {
consumable.manufacturedProduct as manufacturedProduct then {
manufacturedProduct.manufacturedMaterial as manufacturedMaterial then {
manufacturedMaterial.code as code -> ingredient.item = create('CodeableConcept') as value then CECodeableConcept(code, value) "CE";
} "material";
} "product";
};
observation.value as value -> ingredient.strength as strength then {
value -> strength.numerator as numerator then {
value -> numerator.value = (value.value) "valueN";
} "numerator";
value -> strength.denominator as denominator then {
value -> denominator.value = 1 "valueD";
} "denominator";
} "strenght";
} "ingredient";
observation.code where displayName = 'Quantità nella Confezione' then {
observation.value as value -> medication.amount as amount then {
value -> amount.numerator as numerator then {
value -> numerator.value = (value.value) "valueN";
} "numerator";
value -> amount.denominator as denominator then {
value -> denominator.value = 1 "valueD";
} "denominator";
} "amount";
} "quantita";
} "obs";
} "entryRr";
} "medication";
sa.entryRelationship as entryRelationship then {
entryRelationship.supply as sup -> medicationRq.dispenseRequest as dispreq then {
sup -> dispreq.quantity = create('SimpleQuantity') as quantity then {
sup.quantity as q -> quantity.value = (q.value);
} "quantity";
} "sub";
} "entryR";
sa.participant as participant then {
participant.time as t -> medicationRq.authoredOn = (t.value);
participant.participantRole as participantR -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'PUT', e1.resource = create('Practitioner') as practitioner then {
participantR -> practitioner.meta as meta then {
participantR -> meta.tag = create('Coding') as coding then {
participantR -> coding.system = 'http://algoritmodiscoring' "system";
participantR -> coding.code = 'ClinicalDocument/body/TerapiaFarmacologicaRicovero/participant' "code";
} "coding";
} "meta";
participantR.id as id -> practitioner.identifier as identifier then {
id.root as r -> identifier.system = translate(r, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri') "root1";
id.extension as ext -> identifier.value = ext;
id.assigningAuthorityName as s -> identifier.assigner as a, a.display = s;
id.root as r then {
id.extension as ext -> practitioner.id = (r + '-' + ext) as uuid2, e1.fullUrl = append('https://example/Practitioner/', uuid2), request.url = append('Practitioner/', uuid1), medicationRq.requester = create('Reference') as reference, reference.reference = ('https://example/Practitioner/' + %practitioner.id) "aut";
} "r";
} "identifier";
participantR.id as id where (root = '2.16.840.1.113883.2.9.4.3.2') then {
id.extension as ext -> request.url = append('Practitioner?identifier=', ext) "UUID";
} "2";
participantR.playingEntity as assi then {
assi.name -> practitioner.name;
} "assi";
} "perf";
sa.effectiveTime : EIVL as eff -> medicationRq.dosageInstruction = create('Dosage') as dosage then {
eff -> dosage.timing = create('Timing') as timing then {
eff -> timing.repeat as rep then {
eff.event as ev -> rep.where = (ev.code);
} "rep";
} "timing";
} "period";
sa.effectiveTime : TS as eff -> medicationRq.dosageInstruction = create('Dosage') as dosage, dosage.timing = create('Timing') as timing, timing.event = (eff.value) "tim";
sa.effectiveTime : PIVL_TS as eff -> medicationAdm.dosage = create('BackboneElement') as dosage then {
eff -> dosage.rate = create('Ratio') as ratio then {
eff -> ratio.numerator = create('Quantity') as quan then {
eff.period as per -> quan.value = (per.value);
eff.period as per -> quan.unit = (per.unit);
} "quanti";
eff -> ratio.denominator = create('Quantity') as quan then {
eff.period -> quan.value = '1';
eff.period as per -> quan.unit = (per.unit);
} "quanti";
} "ratio";
} "eff";
} "Medicationrequest";
} "sa";
} "entry";
} "sa";
}
group ClinicalDocumentSottoSectionOBS(source src : Section, target tgt, target bundle : Bundle, target enc : Encounter, target patient : Patient) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Observation') as observation, observation.id = uuid() as uuid1, e1.fullUrl = append('https://example/Observation/', uuid1), request.url = 'Observation', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %observation.id), tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
src.code -> observation.code;
src -> observation.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> observation.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src where observation.statusCode.exists().not() then {
src -> observation.status = 'final' "status";
} "statuscode";
cdaText -> observation.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
}
group ClinicalDocumentSottoSectionMS(source src : Section, target tgt, target bundle : Bundle, target patient : Patient, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('MedicationStatement') as Medicationstatement, Medicationstatement.id = uuid() as uuid1, e1.fullUrl = append('https://example/MedicationStatement/', uuid1), request.url = 'MedicationStatement', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/MedicationStatement/' + %Medicationstatement.id), tgt.text as fhirText then {
cdaText -> Medicationstatement.note as note then {
cdaText as t -> note.text = t "reference";
cdaText as t -> Medicationstatement.medication = create('CodeableConcept') as medication, medication.text = t "text";
} "reference";
src -> Medicationstatement.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> Medicationstatement.status = 'unknown' "status";
} "cdaText";
}
group Observation(source obs : Observation, target patient : Patient, target encounter : Encounter, target ob : Observation, target bundle : Bundle) {
obs -> ob.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
obs -> ob.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %encounter.id) "reference";
obs.code -> ob.code;
obs.statusCode as statusc where (code = 'completed') -> ob.status = 'final';
obs.statusCode as statusc where (code = 'active') -> ob.status = 'registered';
obs.statusCode as statusc where (code = 'aborted') -> ob.status = 'cancelled';
obs.statusCode as statusc where (code = 'suspended') -> ob.status = 'partial';
obs where obs.statusCode.exists().not() then {
obs -> ob.status = 'final' "status";
} "statuscode";
obs.effectiveTime as effectiveTime -> ob.effective = create('dateTime') as value then TSDateTime(effectiveTime, value) "value2";
obs where effectiveTime.low.exists() or effectiveTime.high.exists() then {
obs.effectiveTime as eff -> ob.effective = create('Period') as period then IVLTSPeriod(eff, period) "value3";
} "where";
obs.value : INT as int -> ob.value = (int.value);
obs.value : BL as boolean -> ob.value = (boolean.value) "boolean";
obs.value : CD as val then {
val -> ob.value = create('CodeableConcept') as ce then {
val.originalText -> ce.text;
val -> ce.coding as coding then {
val.code as code -> coding.code = cast(code, 'string');
val.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
val.displayName as display -> coding.display = cast(display, 'string');
} "code";
val.translation as translation -> ce.coding as coding then {
translation.code as code -> coding.code = cast(code, 'string');
translation.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
translation.displayName as display -> coding.display = cast(display, 'string');
translation.qualifier as qualifier then {
qualifier.value as value -> ce.coding as coding then {
value.code as code -> coding.code = cast(code, 'string');
value.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
value.displayName as display -> coding.display = cast(display, 'string');
};
};
};
} "coding";
} "val";
obs.value : CE as val then {
val -> ob.value = create('CodeableConcept') as ce then {
val.originalText -> ce.text;
val -> ce.coding as coding then {
val.code as code -> coding.code = cast(code, 'string');
val.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
val.displayName as display -> coding.display = cast(display, 'string');
} "code";
val.translation as translation -> ce.coding as coding then {
translation.code as code -> coding.code = cast(code, 'string');
translation.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
translation.displayName as display -> coding.display = cast(display, 'string');
translation.qualifier as qualifier then {
qualifier.value as value -> ce.coding as coding then {
value.code as code -> coding.code = cast(code, 'string');
value.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
value.displayName as display -> coding.display = cast(display, 'string');
};
};
};
} "coding";
} "val";
obs.value : PQ as val then {
val -> ob.value = create('Quantity') as quantity then {
val.value as value -> quantity.value = value;
val.unit as unit -> quantity.unit = unit;
} "quantity";
} "valueQuantity";
obs.value : ST as value -> ob.value = create('string'), ob.value = (value.dataString);
obs.interpretationCode -> ob.interpretation;
obs.methodCode -> ob.method;
obs.referenceRange as refRange -> ob.referenceRange = create('BackboneElement') as ref then {
refRange.observationRange as obsRange -> ref.low = create('SimpleQuantity') as Low then {
obsRange.value : IVL_PQ as v then {
v.low as l1 then {
l1.value as decValue -> Low.value = decValue;
l1.unit as Unit -> Low.unit = Unit;
} "decValue";
} "IVLPQ";
} "obsRange";
} "refRange";
}
group ObservationConsulenza(source obs : Observation, target patient : Patient, target encounter : Encounter, target ob : Observation, target bundle : Bundle) {
obs -> ob.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
obs -> ob.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %encounter.id) "reference";
obs.code -> ob.code;
obs.statusCode as statusc where (code = 'completed') -> ob.status = 'final';
obs.statusCode as statusc where (code = 'active') -> ob.status = 'registered';
obs.statusCode as statusc where (code = 'aborted') -> ob.status = 'cancelled';
obs.statusCode as statusc where (code = 'suspended') -> ob.status = 'partial';
obs where obs.statusCode.exists().not() then {
obs -> ob.status = 'final' "status";
} "statuscode";
obs.effectiveTime as effectiveTime -> ob.effective = create('dateTime') as value then TSDateTime(effectiveTime, value) "value2c";
obs where effectiveTime.low.exists() or effectiveTime.high.exists() then {
obs.effectiveTime as eff -> ob.effective = create('Period') as period then IVLTSPeriod(eff, period) "value3c";
} "where";
obs.value : INT as int -> ob.value = (int.value);
obs.value : BL as boolean -> ob.value = (boolean.value) "boolean";
obs.value : CE as val then {
val -> ob.value = create('CodeableConcept') as ce then {
val.originalText as originalText then {
originalText.reference as reference -> ce.text = reference;
} "originltext";
val -> ce.coding as coding then {
val.code as code -> coding.code = cast(code, 'string');
val.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
val.displayName as display -> coding.display = cast(display, 'string');
val.codeSystemVersion as version -> coding.version = cast(version, 'string');
} "code";
val.translation as translation -> ce.coding as coding then {
translation.code as code -> coding.code = cast(code, 'string');
translation.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
translation.displayName as display -> coding.display = cast(display, 'string');
translation.codeSystemVersion as version -> coding.version = cast(version, 'string');
translation.qualifier as qualifier then {
qualifier.value as value -> ce.coding as coding then {
value.code as code -> coding.code = cast(code, 'string');
value.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
value.displayName as display -> coding.display = cast(display, 'string');
value.codeSystemVersion as version -> coding.version = cast(version, 'string');
};
};
};
} "coding";
} "val";
obs.value : CD as val then {
val -> ob.value = create('CodeableConcept') as ce then {
val.originalText -> ce.text;
val -> ce.coding as coding then {
val.code as code -> coding.code = cast(code, 'string');
val.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
val.displayName as display -> coding.display = cast(display, 'string');
} "code";
val.translation as translation -> ce.coding as coding then {
translation.code as code -> coding.code = cast(code, 'string');
translation.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
translation.displayName as display -> coding.display = cast(display, 'string');
translation.qualifier as qualifier then {
qualifier.value as value -> ce.coding as coding then {
value.code as code -> coding.code = cast(code, 'string');
value.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
value.displayName as display -> coding.display = cast(display, 'string');
};
};
};
} "coding";
} "val";
obs.value : PQ as val then {
val -> ob.value = create('Quantity') as quantity then {
val.value as value -> quantity.value = value;
val.unit as unit -> quantity.unit = unit;
} "quantity";
} "valueQuantity";
obs.value : ST as value -> ob.value = create('string'), ob.value = (value.dataString);
obs -> ob.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
obs -> ob.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %encounter.id) "reference";
obs.interpretationCode -> ob.interpretation;
obs.methodCode -> ob.method;
obs.referenceRange as refRange -> ob.referenceRange = create('BackboneElement') as ref then {
refRange.observationRange as obsRange -> ref.low = create('SimpleQuantity') as Low then {
obsRange.value : IVL_PQ as v then {
v.low as l1 then {
l1.value as decValue -> Low.value = decValue;
l1.unit as Unit -> Low.unit = Unit;
} "decValue";
} "IVLPQ";
} "obsRange";
} "refRange";
obs.performer as performer -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'PUT', e1.resource = create('Practitioner') as practitioner, practitioner.id = uuid() as uuid1 then {
performer.assignedEntity as assEntity then {
assEntity -> practitioner.meta as meta then {
assEntity -> meta.tag = create('Coding') as coding then {
assEntity -> coding.system = 'http://algoritmodiscoring' "system";
assEntity -> coding.code = 'ClinicalDocument/body/Consulenza/performer' "code";
} "coding";
} "meta";
assEntity.id as id -> practitioner.identifier as identifier then {
id.root as r -> identifier.system = translate(r, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri') "root1";
id.extension as ext -> identifier.value = ext;
id.assigningAuthorityName as s -> identifier.assigner as a, a.display = s;
id.root as r then {
id.extension as ext -> practitioner.id = (r + '-' + ext) as uuid2, e1.fullUrl = append('https://example/Practitioner/', uuid2), ob.performer = create('Reference') as reference, reference.reference = ('https://example/Practitioner/' + %practitioner.id) "aut";
} "r";
} "identifier";
assEntity.id as id where (root = '2.16.840.1.113883.2.9.4.3.2') then {
id.extension as ext -> request.url = append('Practitioner?identifier=', ext) "UUID";
} "2";
assEntity.assignedPerson as assi then {
assi.name -> practitioner.name;
} "assi";
} "assEntity";
} "perf";
obs.participant as participant -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('ServiceRequest') as serviceRequest, serviceRequest.id = uuid() as uuid1, e1.fullUrl = append('https://example/ServiceRequest/', uuid1), request.url = 'ServiceRequest', ob.basedOn = create('Reference') as reference, reference.reference = ('https://example/ServiceRequest/' + %serviceRequest.id) then {
participant.time as t -> serviceRequest.authoredOn = (t.value);
obs -> serviceRequest.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
obs -> serviceRequest.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %encounter.id) "reference";
obs -> serviceRequest.status = 'active' "status";
obs -> serviceRequest.intent = 'order' "intent";
participant.participantRole as participantRole -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'PUT', e1.resource = create('Practitioner') as practitioner then {
participantRole -> practitioner.meta as meta then {
participantRole -> meta.tag = create('Coding') as coding then {
participantRole -> coding.system = 'http://algoritmodiscoring' "system";
participantRole -> coding.code = 'ClinicalDocument/body/Consulenza/participant' "code";
} "coding";
} "meta";
participantRole.id as id -> practitioner.identifier as identifier then {
id.root as r -> identifier.system = translate(r, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri') "root1";
id.extension as ext -> identifier.value = ext;
id.assigningAuthorityName as s -> identifier.assigner as a, a.display = s;
id.root as r then {
id.extension as ext -> practitioner.id = (r + '-' + ext) as uuid3, e1.fullUrl = append('https://example/Practitioner/', uuid3), serviceRequest.performer = create('Reference') as reference, reference.reference = ('https://example/Practitioner/' + %practitioner.id) "aut";
} "r";
} "identifier";
participantRole.id as id where (root = '2.16.840.1.113883.2.9.4.3.2') then {
id.extension as ext -> request.url = append('Practitioner?identifier=', ext) "UUID";
} "2";
participantRole.playingEntity as pe then {
pe.name -> practitioner.name;
} "pe";
};
};
}
group ObservationEsamiDuranteRicovero(source obs : Observation, target patient : Patient, target encounter : Encounter, target ob : Observation, target bundle : Bundle) {
obs -> ob.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
obs -> ob.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %encounter.id) "reference";
obs.code -> ob.code;
obs.statusCode as statusc where (code = 'completed') -> ob.status = 'final';
obs.statusCode as statusc where (code = 'active') -> ob.status = 'registered';
obs.statusCode as statusc where (code = 'aborted') -> ob.status = 'cancelled';
obs.statusCode as statusc where (code = 'suspended') -> ob.status = 'partial';
obs where obs.statusCode.exists().not() then {
obs -> ob.status = 'final' "status";
} "statuscode";
obs.effectiveTime as effectiveTime -> ob.effective = create('dateTime') as value then TSDateTime(effectiveTime, value) "value2r";
obs where effectiveTime.low.exists() or effectiveTime.high.exists() then {
obs.effectiveTime as eff -> ob.effective = create('Period') as period then IVLTSPeriod(eff, period) "value3r";
} "where";
obs.value : INT as int -> ob.value = (int.value);
obs.value : BL as boolean -> ob.value = (boolean.value) "boolean";
obs.value : CE as val then {
val -> ob.value = create('CodeableConcept') as ce then {
val.originalText as originalText then {
originalText.reference as reference -> ce.text = reference;
} "originltext";
val -> ce.coding as coding then {
val.code as code -> coding.code = cast(code, 'string');
val.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
val.displayName as display -> coding.display = cast(display, 'string');
val.codeSystemVersion as version -> coding.version = cast(version, 'string');
} "code";
val.translation as translation -> ce.coding as coding then {
translation.code as code -> coding.code = cast(code, 'string');
translation.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
translation.displayName as display -> coding.display = cast(display, 'string');
translation.codeSystemVersion as version -> coding.version = cast(version, 'string');
translation.qualifier as qualifier then {
qualifier.value as value -> ce.coding as coding then {
value.code as code -> coding.code = cast(code, 'string');
value.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
value.displayName as display -> coding.display = cast(display, 'string');
value.codeSystemVersion as version -> coding.version = cast(version, 'string');
};
};
};
} "coding";
} "val";
obs.value : CD as val then {
val -> ob.value = create('CodeableConcept') as ce then {
val.originalText -> ce.text;
val -> ce.coding as coding then {
val.code as code -> coding.code = cast(code, 'string');
val.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
val.displayName as display -> coding.display = cast(display, 'string');
} "code";
val.translation as translation -> ce.coding as coding then {
translation.code as code -> coding.code = cast(code, 'string');
translation.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
translation.displayName as display -> coding.display = cast(display, 'string');
translation.qualifier as qualifier then {
qualifier.value as value -> ce.coding as coding then {
value.code as code -> coding.code = cast(code, 'string');
value.codeSystem as system -> coding.system = translate(system, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri');
value.displayName as display -> coding.display = cast(display, 'string');
};
};
};
} "coding";
} "val";
obs.value : PQ as val then {
val -> ob.value = create('Quantity') as quantity then {
val.value as value -> quantity.value = value;
val.unit as unit -> quantity.unit = unit;
} "quantity";
} "valueQuantity";
obs.value : ST as value -> ob.value = create('string'), ob.value = (value.dataString);
obs -> ob.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
obs -> ob.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %encounter.id) "reference";
obs.interpretationCode -> ob.interpretation;
obs.methodCode -> ob.method;
obs.effectiveTime as eff -> ob.effective = create('Period') as per then IVLTSPeriod(eff, per);
obs.referenceRange as refRange -> ob.referenceRange = create('BackboneElement') as ref then {
refRange.observationRange as obsRange -> ref.low = create('SimpleQuantity') as Low then {
obsRange.value : IVL_PQ as v then {
v.low as l1 then {
l1.value as decValue -> Low.value = decValue;
l1.unit as Unit -> Low.unit = Unit;
} "decValue";
} "IVLPQ";
} "obsRange";
} "refRange";
obs.performer as performer -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'PUT', e1.resource = create('Practitioner') as practitioner, practitioner.id = uuid() as uuid1 then {
performer.assignedEntity as assEntity then {
assEntity -> practitioner.meta as meta then {
assEntity -> meta.tag = create('Coding') as coding then {
assEntity -> coding.system = 'http://algoritmodiscoring' "system";
assEntity -> coding.code = 'ClinicalDocument/body/EsamiDuranteRicovero/performer' "code";
} "coding";
} "meta";
assEntity.id as id -> practitioner.identifier as identifier then {
id.root as r -> identifier.system = translate(r, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri') "root1";
id.extension as ext -> identifier.value = ext;
id.assigningAuthorityName as s -> identifier.assigner as a, a.display = s;
id.root as r then {
id.extension as ext -> practitioner.id = (r + '-' + ext) as uuid2, e1.fullUrl = append('https://example/Practitioner/', uuid2), ob.performer = create('Reference') as reference, reference.reference = ('https://example/Practitioner/' + %practitioner.id) "aut";
} "r";
} "identifier";
assEntity.id as id where (root = '2.16.840.1.113883.2.9.4.3.2') then {
id.extension as ext -> request.url = append('Practitioner?identifier=', ext) "UUID";
} "2";
assEntity.assignedPerson as assi then {
assi.name -> practitioner.name;
} "assi";
} "assEntity";
} "perf";
obs.participant as participant -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('ServiceRequest') as serviceRequest, serviceRequest.id = uuid() as uuid1, e1.fullUrl = append('https://example/ServiceRequest/', uuid1), request.url = 'ServiceRequest', ob.basedOn = create('Reference') as reference, reference.reference = ('https://example/ServiceRequest/' + %serviceRequest.id) then {
participant.time as t -> serviceRequest.authoredOn = (t.value);
obs -> serviceRequest.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
obs -> serviceRequest.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %encounter.id) "reference";
obs -> serviceRequest.status = 'active' "status";
obs -> serviceRequest.intent = 'order' "intent";
participant.participantRole as participantRole -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'PUT', e1.resource = create('Practitioner') as practitioner then {
participantRole -> practitioner.meta as meta then {
participantRole -> meta.tag = create('Coding') as coding then {
participantRole -> coding.system = 'http://algoritmodiscoring' "system";
participantRole -> coding.code = 'ClinicalDocument/body/EsamiDuranteRicovero/participant' "code";
} "coding";
} "meta";
participantRole.id as id -> practitioner.identifier as identifier then {
id.root as r -> identifier.system = translate(r, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri') "root1";
id.extension as ext -> identifier.value = ext;
id.assigningAuthorityName as s -> identifier.assigner as a, a.display = s;
id.root as r then {
id.extension as ext -> practitioner.id = (r + '-' + ext) as uuid3, e1.fullUrl = append('https://example/Practitioner/', uuid3), serviceRequest.performer = create('Reference') as reference, reference.reference = ('https://example/Practitioner/' + %practitioner.id) "aut";
} "r";
} "identifier";
participantRole.id as id where (root = '2.16.840.1.113883.2.9.4.3.2') then {
id.extension as ext -> request.url = append('Practitioner?identifier=', ext) "UUID";
} "2";
participantRole.playingEntity as pe then {
pe.name -> practitioner.name;
} "pe";
};
};
}
group periodTiming(source effectiveTime : PIVL_TS, target timing : Timing) {
effectiveTime -> timing.repeat as r then {
effectiveTime.period as p -> r.period = (p.value);
effectiveTime.period as p -> r.periodUnit = (p.unit);
} "repeat";
}
// ---------------------------------------------------------------------------------------
group Act(source cda : Act, target pat : Patient, target ac : DiagnosticReport, target enc : Encounter, target bundle : Bundle) {
cda.code -> ac.code;
cda.statusCode as statusc where (code = 'completed') -> ob.status = 'final';
cda.statusCode as statusc where (code = 'active') -> ob.status = 'registered';
cda.statusCode as statusc where (code = 'aborted') -> ob.status = 'cancelled';
cda.statusCode as statusc where (code = 'suspended') -> ob.status = 'partial';
cda.effectiveTime as effectiveTime -> ac.effective = create('dateTime') as value then TSDateTime(effectiveTime, value) "value2a";
obs where effectiveTime.low.exists() or effectiveTime.high.exists() then {
cda.effectiveTime as eff -> ac.effective = create('Period') as period then IVLTSPeriod(eff, period) "value3a";
} "where";
cda -> ac.subject = create('Reference') as reference, reference.reference = ('https://example/' + %pat.id) "reference";
cda -> ac.encounter = create('Reference') as reference, reference.reference = ('https://example/' + %enc.id) "reference";
cda.participant as part -> enc.participant as participant then {
part -> participant.type as type then {
part -> type.coding as coding then {
part -> coding.code = (part.typeCode) "codice";
part -> coding.system = 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType' "system";
} "codeType";
} "type";
part.participantRole as participantRole -> participant.individual = create('Reference') as reference then {
participantRole -> bundle.entry as e, e.request = create('BackboneElement') as request, request.method = 'PUT', e.resource = create('Practitioner') as practitioner, practitioner.id = uuid() as uuid1, e.fullUrl = append('https://example/Practitioner/', uuid1), reference.reference = ('https://example/Practitioner/' + %practitioner.id) then {
participantRole -> practitioner.meta as meta then {
participantRole -> meta.tag = create('Coding') as coding then {
participantRole -> coding.system = 'http://algoritmodiscoring' "system";
participantRole -> coding.code = 'ClinicalDocument/body/Act/participant' "code";
} "coding";
} "meta";
participantRole.id as id -> practitioner.identifier as identifier then {
id.root as r -> identifier.system = translate(r, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri') "root1";
id.extension as ext -> identifier.value = ext then {
participantRole -> request.url = append('Practitioner?identifier=', ext) "UUID";
} "ext";
id.assigningAuthorityName as s -> identifier.assigner as a, a.display = s;
} "identifier";
participantRole.playingEntity as playingEntity then {
playingEntity.name -> practitioner.name;
};
} "participanRoleBund";
};
};
cda.entryRelationship as entryRelationship then {
entryRelationship.observation as observation -> bundle.entry as e, e.request = create('BackboneElement') as request, request.method = 'POST', e.resource = create('Observation') as obs, obs.id = uuid() as uuid2, e.fullUrl = append('https://example/Observation/', uuid2), request.url = append('Observation/', uuid2), ac.result = create('Reference') as reference, reference.reference = ('https://example/Observation/' + %obs.id) then Observation(observation, pat, enc, obs, bundle) "OBS";
};
}
group ClinicalDocumentSectionTerapiaDimissione(source cda : ClinicalDocument, source src : Section, target patient : Patient, target tgt, target bundle : Bundle, target enc : Encounter) {
src.title as t -> tgt.title = (t.dataString);
src.code -> tgt.code;
src where src.entry.exists() then {
src.text as cdaText -> tgt.text as fhirText then {
cdaText -> fhirText.status = 'generated' "narrativeStatus";
cdaText as t -> fhirText.div = t "narrativeText";
} "cdaText";
} "exist";
src where src.entry.exists().not() then {
src.text as cdaText -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('MedicationRequest') as medicationRq, medicationRq.id = uuid() as uuid1, e1.fullUrl = append('https://example/MedicationRequest/', uuid1), request.url = 'MedicationRequest', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/MedicationRequest/' + %medicationRq.id) then {
src -> medicationRq.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> medicationRq.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src -> medicationRq.status = 'active' "status";
src -> medicationRq.intent = 'order' "intent";
cdaText -> medicationRq.medication = create('CodeableConcept') as codecon then {
cdaText -> codecon.text = 'string' "text";
} "code";
cdaText -> medicationRq.note as note then {
cdaText as t -> note.text = t "reference";
} "reference";
} "cdaText";
} "where";
src.entry as entry1 -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('MedicationRequest') as medicationRq, medicationRq.id = uuid() as uuid1, e1.fullUrl = append('https://example/MedicationRequest/', uuid1), request.url = 'MedicationRequest', tgt.entry = create('Reference') as reference, reference.reference = ('https://example/MedicationRequest/' + %medicationRq.id) then {
src -> medicationRq.subject = create('Reference') as reference, reference.reference = ('https://example/Patient/' + %patient.id) "reference";
src -> medicationRq.encounter = create('Reference') as reference, reference.reference = ('https://example/Encounter/' + %enc.id) "reference";
src -> medicationRq.status = 'active' "status";
src -> medicationRq.intent = 'order' "intent";
entry1.substanceAdministration as substract then {
substract.consumable as cons then {
cons.manufacturedProduct as man1 -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'POST', e1.resource = create('Medication') as medication, medication.id = uuid() as uuid1, e1.fullUrl = append('https://example/Medication/', uuid1), request.url = 'Medication', medicationRq.medication = create('Reference') as medref, medref.reference = ('https://example/Medication/' + %medication.id) then {
man1.manufacturedMaterial as mm then {
mm.code -> medication.code;
} "mm";
substract.administrationUnitCode -> medication.form;
substract.entryRelationship as entryR then {
entryR.observation as observation then {
observation.code where displayName = 'Grammatura' -> medication.ingredient as ingredient then {
substract.consumable as consumable then {
consumable.manufacturedProduct as manufacturedProduct then {
manufacturedProduct.manufacturedMaterial as manufacturedMaterial then {
manufacturedMaterial.code as code -> ingredient.item = create('CodeableConcept') as value then CECodeableConcept(code, value) "CE";
} "material";
} "product";
};
observation.value as value -> ingredient.strength as strength then {
value -> strength.numerator as numerator then {
value -> numerator.value = (value.value) "valueN";
} "numerator";
value -> strength.denominator as denominator then {
value -> denominator.value = 1 "valueD";
} "denominator";
} "strenght";
} "ingredient";
observation.code where displayName = 'Quantità nella Confezione' then {
observation.value as value -> medication.amount as amount then {
value -> amount.numerator as numerator then {
value -> numerator.value = (value.value) "valueN";
} "numerator";
value -> amount.denominator as denominator then {
value -> denominator.value = 1 "valueD";
} "denominator";
} "amount";
} "quantita";
} "obs";
} "entryR";
substract.entryRelationship as entryRelationship then {
entryRelationship.supply as sup -> medicationRq.dispenseRequest as dispreq then {
sup -> dispreq.quantity = create('SimpleQuantity') as quantity then {
sup.quantity as q -> quantity.value = (q.value);
} "quantity";
} "sub";
} "entry";
} "man1";
} "cons";
substract.text as tx -> medicationRq.note as note then {
tx.reference as ref -> note.text = (ref.value);
} "tx";
substract.statusCode as st -> medicationRq.status = (st.code);
substract.effectiveTime : IVL_TS as eff -> medicationRq.dosageInstruction = create('Dosage') as dosage then {
eff -> dosage.timing = create('Timing') as timing then {
eff -> timing.repeat as rep then {
eff -> rep.bounds = create('Period') as period then IVLTSPeriod(eff, period) "period";
} "rep";
} "timing";
} "period";
substract.effectiveTime : EIVL_TS as eff -> medicationRq.dosageInstruction = create('Dosage') as dosage then {
eff -> dosage.timing = create('Timing') as timing then {
eff -> timing.repeat as rep then {
eff.event as ev -> rep.when = (ev.code);
} "rep";
} "timing";
} "period";
substract.effectiveTime : IVL_TS as eff -> medicationRq.dosageInstruction = create('Dosage') as dosage, dosage.timing = create('Timing') as timing, timing.event = (eff.value) "tim";
substract.effectiveTime : PIVL_TS as eff -> medicationRq.dosageInstruction = create('Dosage') as dosage then {
eff -> dosage.timing = create('Timing') as timing then periodTiming(eff, timing) "cod";
} "eff";
substract -> medicationRq.dosageInstruction = create('Dosage') as dosage then {
substract.routeCode -> dosage.route;
} "dosage";
substract -> medicationRq.dosageInstruction = create('Dosage') as dosage then {
substract.approachSiteCode -> dosage.site;
} "dosage";
substract.doseQuantity as doseQuant -> medicationRq.dosageInstruction = create('Dosage') as dosageInstruction then {
doseQuant.originalText as ot then {
ot.reference -> dosageInstruction.text;
} "ot";
doseQuant -> dosageInstruction.doseAndRate as dosageRate then {
doseQuant -> dosageRate.dose = create('Range') as d then {
doseQuant -> d.low = create('SimpleQuantity') as l then {
doseQuant.low as lo -> l.value = (lo.value);
doseQuant.low as lo -> l.unit = (lo.unit);
} "low";
doseQuant -> d.high = create('SimpleQuantity') as h then {
doseQuant.high as hi -> h.value = (hi.value);
doseQuant.high as hi -> h.unit = (hi.unit);
} "low";
} "d";
} "dosageRate";
} "Dosage";
substract.rateQuantity as rateQuantity -> medicationRq.dosageInstruction = create('Dosage') as dosageInstruction1 then {
rateQuantity.originalText as ot then {
ot.reference -> dosageInstruction1.text;
} "ot";
rateQuantity -> dosageInstruction1.doseAndRate as dosageRate then {
rateQuantity -> dosageRate.rate = create('Range') as d then {
rateQuantity -> d.low = create('SimpleQuantity') as l then {
rateQuantity.low as lo -> l.value = (lo.value);
rateQuantity.low as lo -> l.unit = (lo.unit);
} "low";
rateQuantity -> d.high = create('SimpleQuantity') as h then {
rateQuantity.high as hi -> h.value = (hi.value);
rateQuantity.high as hi -> h.unit = (hi.unit);
} "low";
} "d";
} "dosageRate";
} "rateq";
substract.participant as part -> bundle.entry as e1, e1.request = create('BackboneElement') as request, request.method = 'PUT', e1.resource = create('Practitioner') as practitioner then {
part.time as time -> medicationRq.authoredOn = (time.value);
part.participantRole as partRole then {
partRole -> practitioner.meta as meta then {
partRole -> meta.tag = create('Coding') as coding then {
partRole -> coding.system = 'http://algoritmodiscoring' "system";
partRole -> coding.code = 'ClinicalDocument/body/TerapiaFarmacologicaRicovero/participant' "code";
} "coding";
} "meta";
partRole.id as id -> practitioner.identifier as identifier then {
id.root as r -> identifier.system = translate(r, 'http://hl7.org/fhir/ConceptMap/special-oid2uri', 'uri') "root1";
id.extension as ext -> identifier.value = ext;
id.assigningAuthorityName as s -> identifier.assigner as a, a.display = s;
id.root as r then {
id.extension as ext -> practitioner.id = (r + '-' + ext) as uuid2, e1.fullUrl = append('https://example/Practitioner/', uuid2), request.url = append('Practitioner/', uuid1), medicationRq.performer = create('Reference') as reference, reference.reference = ('https://example/Practitioner/' + %practitioner.id) "aut";
} "r";
} "identifier";
partRole.id as id where (root = '2.16.840.1.113883.2.9.4.3.2') then {
id.extension as ext -> request.url = append('Practitioner?identifier=', ext) "UUID";
} "2";
partRole.playingEntity as assi then {
assi.name -> practitioner.name;
} "assi";
} "perf";
} "partRole";
} "participant";
} "substract";
}
{
"resourceType": "StructureMap",
"id": "cda2fhirLdo",
"text": {
"status": "generated",
"div": "<!-- snip (see above) -->"
},
"url": "http://hl7.it/fhir/cda2fhir/StructureMap/cda2fhirLdo",
"version": "0.1.0",
"name": "cda2fhirLdo",
"status": "draft",
"date": "2026-05-21T10:21:02+00:00",
"publisher": "HL7 Italy",
"contact": [
{
"name": "HL7 Italy",
"telecom": [
{
"system": "url",
"value": "http://hl7.it"
}
]
}
],
"jurisdiction": [
{
"coding": [
{
"system": "urn:iso:std:iso:3166",
"code": "IT",
"display": "Italy"
}
]
}
],
"structure": [
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/ClinicalDocument",
"mode": "source",
"alias": "ClinicalDocument"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/AssignedAuthor",
"mode": "queried",
"alias": "AssignedAuthor"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/AssignedEntity",
"mode": "queried",
"alias": "AssignedEntity"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/AssociatedEntity",
"mode": "queried",
"alias": "AssociatedEntity"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/CustodianOrganization",
"mode": "queried",
"alias": "CustodianOrganization"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/OrganizationPartOf",
"mode": "queried",
"alias": "OrganizationPartOf"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/Organization",
"mode": "queried",
"alias": "rapresentedOrganization"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/Section",
"mode": "queried",
"alias": "Section"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/PatientRole",
"mode": "queried",
"alias": "PatientRole"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/AD",
"mode": "source",
"alias": "AD"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/Bundle",
"mode": "target",
"alias": "Bundle"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/Composition",
"mode": "produced",
"alias": "Composition"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/Patient",
"mode": "produced",
"alias": "Patient"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/Encounter",
"mode": "produced",
"alias": "Encounter"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/Person",
"mode": "produced",
"alias": "Patient"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/Practitioner",
"mode": "produced",
"alias": "Practitioner"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/Organization",
"mode": "produced",
"alias": "Organization"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/Act",
"mode": "produced",
"alias": "Act"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/IVL-PQ",
"mode": "source",
"alias": "IVL_PQ"
},
{
"url": "http://hl7.org/fhir/cda/StructureDefinition/PQ",
"mode": "source",
"alias": "PQ"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/SimpleQuantity",
"mode": "target",
"alias": "SimpleQuantity"
}
],
"import": [
"http://hl7.it/fhir/cda2fhir/StructureMap/cda2fhirDataTypes",
"http://hl7.it/fhir/cda2fhir/StructureMap/cda2fhirHeader"
],
"group": [
{
"name": "CdaToBundle",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
}
],
"rule": [
{
"name": "ClinicalDocumentToBody",
"source": [
{
"context": "cda"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e"
},
{
"context": "e",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e",
"contextType": "variable",
"element": "resource",
"variable": "composition",
"transform": "create",
"parameter": [
{
"valueString": "Composition"
}
]
},
{
"context": "composition",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Composition/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Composition"
}
]
},
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e2"
},
{
"context": "e2",
"contextType": "variable",
"element": "request",
"variable": "requestPAT",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "requestPAT",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "e2",
"contextType": "variable",
"element": "resource",
"variable": "patient",
"transform": "create",
"parameter": [
{
"valueString": "Patient"
}
]
},
{
"context": "patient",
"contextType": "variable",
"element": "id",
"variable": "uuid2",
"transform": "uuid"
},
{
"context": "e2",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Patient/"
},
{
"valueId": "uuid2"
}
]
},
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e3"
},
{
"context": "e3",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e3",
"contextType": "variable",
"element": "resource",
"variable": "encounter",
"transform": "create",
"parameter": [
{
"valueString": "Encounter"
}
]
},
{
"context": "encounter",
"contextType": "variable",
"element": "id",
"variable": "uuid3",
"transform": "uuid"
},
{
"context": "e3",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Encounter/"
},
{
"valueId": "uuid3"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Encounter"
}
]
},
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e5"
},
{
"context": "e5",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e5",
"contextType": "variable",
"element": "resource",
"variable": "DocumentReference",
"transform": "create",
"parameter": [
{
"valueString": "DocumentReference"
}
]
},
{
"context": "DocumentReference",
"contextType": "variable",
"element": "id",
"variable": "uuid5",
"transform": "uuid"
},
{
"context": "e5",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/DocumentReference/"
},
{
"valueId": "uuid5"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "DocumentReference"
}
]
}
],
"rule": [
{
"name": "cdatobundle",
"source": [
{
"context": "cda"
}
],
"dependent": [
{
"name": "ClinicalDocumentToBundle",
"variable": [
"cda",
"patient",
"composition",
"encounter",
"bundle",
"DocumentReference"
]
}
]
},
{
"name": "patient",
"source": [
{
"context": "cda",
"element": "recordTarget",
"variable": "recordTarget"
}
],
"rule": [
{
"name": "recPat",
"source": [
{
"context": "recordTarget",
"element": "patientRole",
"variable": "patient"
}
],
"rule": [
{
"name": "record",
"source": [
{
"context": "patient",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "patient",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "root1",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "r"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "extension",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "ext"
}
]
}
]
},
{
"name": "assigningAuthorityName",
"source": [
{
"context": "id",
"element": "assigningAuthorityName",
"variable": "s"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "assigner",
"variable": "a"
},
{
"context": "a",
"contextType": "variable",
"element": "display",
"transform": "copy",
"parameter": [
{
"valueId": "s"
}
]
}
]
}
]
},
{
"name": "ext",
"source": [
{
"context": "patient",
"element": "id",
"variable": "id",
"condition": "(root = '2.16.840.1.113883.2.9.4.3.2') or (root = '2.16.840.1.113883.2.9.4.3.7') or (root = '2.16.840.1.113883.2.9.4.3.3') or (root = '2.16.840.1.113883.2.9.4.3.17') or (root = '2.16.840.1.113883.2.9.4.3.18') or (root = '2.16.840.1.113883.2.9.2.10.4.1.1') or (root = '2.16.840.1.113883.2.9.2.20.4.1.1') or (root = '2.16.840.1.113883.2.9.2.30.4.1.1') or (root = '2.16.840.1.113883.2.9.2.41.4.1.1') or (root = '2.16.840.1.113883.2.9.2.42.4.1.1') or (root = '2.16.840.1.113883.2.9.2.50.4.1.1') or (root = '2.16.840.1.113883.2.9.2.60.4.1.1') or (root = '2.16.840.1.113883.2.9.2.70.4.1.1') or (root = '2.16.840.1.113883.2.9.2.80.4.1.1') or (root = '2.16.840.1.113883.2.9.2.90.4.1.1') or (root = '2.16.840.1.113883.2.9.2.100.4.1.1') or (root = '2.16.840.1.113883.2.9.2.110.4.1.1') or (root = '2.16.840.1.113883.2.9.2.120.4.1.1') or (root = '2.16.840.1.113883.2.9.2.130.4.1.1') or (root = '2.16.840.1.113883.2.9.2.140.4.1.1') or (root = '2.16.840.1.113883.2.9.2.150.4.1.1') or (root = '2.16.840.1.113883.2.9.2.160.4.1.1') or (root = '2.16.840.1.113883.2.9.2.170.4.1.1') or (root = '2.16.840.1.113883.2.9.2.180.4.1.1') or (root = '2.16.840.1.113883.2.9.2.190.4.1.1') or (root = '2.16.840.1.113883.2.9.2.200.4.1.1') or (root = '2.16.840.1.113883.2.9.2.10.4.1') or (root = '2.16.840.1.113883.2.9.2.20.4.1') or (root = '2.16.840.1.113883.2.9.2.30.4.1') or (root = '2.16.840.1.113883.2.9.2.41.4.1') or (root = '2.16.840.1.113883.2.9.2.42.4.1') or (root = '2.16.840.1.113883.2.9.2.50.4.1') or (root = '2.16.840.1.113883.2.9.2.60.4.1') or (root = '2.16.840.1.113883.2.9.2.70.4.1') or (root = '2.16.840.1.113883.2.9.2.80.4.1') or (root = '2.16.840.1.113883.2.9.2.90.4.1') or (root = '2.16.840.1.113883.2.9.2.100.4.1') or (root = '2.16.840.1.113883.2.9.2.110.4.1') or (root = '2.16.840.1.113883.2.9.2.120.4.1') or (root = '2.16.840.1.113883.2.9.2.130.4.1') or (root = '2.16.840.1.113883.2.9.2.140.4.1') or (root = '2.16.840.1.113883.2.9.2.150.4.1') or (root = '2.16.840.1.113883.2.9.2.160.4.1') or (root = '2.16.840.1.113883.2.9.2.170.4.1') or (root = '2.16.840.1.113883.2.9.2.180.4.1') or (root = '2.16.840.1.113883.2.9.2.190.4.1') or (root = '2.16.840.1.113883.2.9.2.200.4.1') or (root = '2.16.840.1.113883.2.9.4.3.15')"
}
],
"rule": [
{
"name": "UUID",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "requestPAT",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Patient?identifier="
},
{
"valueId": "ext"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentToBundle",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "composition",
"type": "Composition",
"mode": "target"
},
{
"name": "encounter",
"type": "Encounter",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "DocumentReference",
"type": "DocumentReference",
"mode": "target"
}
],
"rule": [
{
"name": "id",
"source": [
{
"context": "cda"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "id",
"transform": "uuid"
}
]
},
{
"name": "identifier",
"source": [
{
"context": "cda",
"element": "id",
"variable": "vvv"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "identifier",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "type",
"source": [
{
"context": "cda"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "type",
"transform": "copy",
"parameter": [
{
"valueString": "transaction"
}
]
}
]
},
{
"name": "date",
"source": [
{
"context": "cda"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "timestamp",
"transform": "evaluate",
"parameter": [
{
"valueString": "timestamp.now()"
}
]
}
]
},
{
"name": "composition",
"source": [
{
"context": "cda"
}
],
"dependent": [
{
"name": "ClinicalDocumentComposition",
"variable": [
"cda",
"composition",
"patient",
"encounter",
"bundle",
"DocumentReference"
]
}
]
},
{
"name": "component",
"source": [
{
"context": "cda",
"element": "component",
"variable": "component"
}
],
"rule": [
{
"name": "body",
"source": [
{
"context": "component",
"element": "structuredBody",
"variable": "body"
}
],
"rule": [
{
"name": "component",
"source": [
{
"context": "body",
"element": "component",
"variable": "component"
}
],
"rule": [
{
"name": "section",
"source": [
{
"context": "component",
"element": "section",
"variable": "srcSection"
}
],
"rule": [
{
"name": "motivoRicovero",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '46241-6')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionMotivoRicovero",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "inquadramentoClinico",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '47039-3')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionInquadramentoClinico",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "DecorsoOspedaliero",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '8648-8')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionDecorsoOspedaliero",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "Complicazioni",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '55109-3')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionComplicanze",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "HospitalDischargeStudiesSummary",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '11493-4')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionRiscontri",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "HospitalDischargeStudiesSummary",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '34104-0')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionConsulenza",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "EsamiEseguitiDuranteilRicovero",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '30954-2')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionEsamiEseguitiRicovero",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "HistoryOfProceduresDocument",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '47519-4')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionProcedureEseguiteRicovero",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "EsamiEseguitiDuranteIlRicovero",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '48765-2')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionAllergie",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "TerapiaFarmacologicaAllaDimissione",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '10160-0')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionTerapiaFarmacologicaDuranteRicovero",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "DiagnosiDiDimissione",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '11535-2')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionDiagnosiDimissione",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "DiagnosiDiDimissione",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '18776-5')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionIstruzioniFollowUp",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
},
{
"name": "TerapiaFarmacologicaAllaDimissione",
"source": [
{
"context": "srcSection",
"element": "code",
"condition": "(code = '10183-2')"
}
],
"target": [
{
"context": "composition",
"contextType": "variable",
"element": "section",
"variable": "tgtSection"
}
],
"dependent": [
{
"name": "ClinicalDocumentSectionTerapiaDimissione",
"variable": [
"cda",
"srcSection",
"patient",
"tgtSection",
"bundle",
"encounter"
]
}
]
}
],
"documentation": "discretizzi il primo livello di component"
}
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionMotivoRicovero",
"typeMode": "none",
"documentation": "-------------------------------------------------------------------------------------------------------------------",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "cText",
"source": [
{
"context": "src",
"condition": "src.entry.exists()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "entry",
"source": [
{
"context": "src",
"element": "entry",
"variable": "entry1"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
],
"rule": [
{
"name": "act",
"source": [
{
"context": "entry1",
"element": "observation",
"variable": "obs"
}
],
"dependent": [
{
"name": "Observation",
"variable": [
"obs",
"patient",
"enc",
"observation",
"bundle"
]
}
]
}
]
},
{
"name": "where",
"source": [
{
"context": "src",
"condition": "src.entry.exists().not()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e8"
},
{
"context": "e8",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e8",
"contextType": "variable",
"element": "resource",
"variable": "Observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "Observation",
"contextType": "variable",
"element": "id",
"variable": "uuid8",
"transform": "uuid"
},
{
"context": "e8",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid8"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %Observation.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "Observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "Observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "Observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "Observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "Observation",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionInquadramentoClinico",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "component",
"source": [
{
"context": "src",
"element": "component",
"variable": "component"
}
],
"rule": [
{
"name": "componentSec",
"source": [
{
"context": "component",
"element": "section",
"variable": "section2"
}
],
"rule": [
{
"name": "sec2fhir",
"source": [
{
"context": "section2"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "section",
"variable": "sec2"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "section2",
"element": "code",
"variable": "vvv",
"condition": "(code = '11329-0')"
}
],
"target": [
{
"context": "sec2",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "title",
"source": [
{
"context": "section2",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "sec2",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "exist",
"source": [
{
"context": "src",
"condition": "src.entry.exists()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "section2",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "sec2",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
],
"documentation": "section2.code -> sec2.code;"
},
{
"name": "where",
"source": [
{
"context": "src",
"condition": "src.entry.exists().not()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "section2",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "condition",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "condition",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "sec2",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %condition.id"
}
]
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "section2",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "condition.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "subsection1",
"source": [
{
"context": "section2",
"element": "entry",
"variable": "entry1"
}
],
"rule": [
{
"name": "entry",
"source": [
{
"context": "entry1",
"element": "observation",
"variable": "obs"
}
],
"rule": [
{
"name": "observationcondition",
"source": [
{
"context": "obs",
"element": "code",
"condition": "(code = '75326-9')"
}
],
"rule": [
{
"name": "whereEntryPatologicaProssima",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "condition",
"transform": "create",
"parameter": [
{
"valueString": "Condition"
}
]
},
{
"context": "condition",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Condition/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Condition"
}
]
},
{
"context": "sec2",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Condition/' + %condition.id"
}
]
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "obs",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "category",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "status",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "status",
"condition": "(code = 'completed')"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "verificationStatus",
"variable": "status2"
}
],
"rule": [
{
"name": "st3",
"source": [
{
"context": "status"
}
],
"target": [
{
"context": "status2",
"contextType": "variable",
"element": "coding",
"variable": "status3"
}
],
"rule": [
{
"name": "finald",
"source": [
{
"context": "status"
}
],
"target": [
{
"context": "status3",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "confirmed"
}
]
}
]
},
{
"name": "system",
"source": [
{
"context": "status"
}
],
"target": [
{
"context": "status3",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://terminology.hl7.org/CodeSystem/condition-ver-status"
}
]
}
]
}
]
}
]
},
{
"name": "effectivetime1",
"source": [
{
"context": "obs",
"element": "effectiveTime",
"variable": "effective1"
}
],
"rule": [
{
"name": "ef",
"source": [
{
"context": "effective1",
"condition": "effective1.low.exists() or effective1.high.exists()"
}
],
"rule": [
{
"name": "onsetperiod",
"source": [
{
"context": "effective1"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "onset",
"variable": "periodonset",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"dependent": [
{
"name": "IVLTSPeriod",
"variable": [
"effective1",
"periodonset"
]
}
]
}
]
}
]
},
{
"name": "Value",
"source": [
{
"context": "obs",
"type": "CD",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "Ce",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "code",
"variable": "ce",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "originalText",
"source": [
{
"context": "val",
"element": "originalText",
"variable": "vvv"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "text",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "coding",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "val",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "val",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "val",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "EntryRelationship1",
"source": [
{
"context": "obs",
"element": "entryRelationship",
"variable": "entriRel"
}
],
"rule": [
{
"name": "evidence",
"source": [
{
"context": "entriRel"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "evidence",
"variable": "evidence",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
}
],
"rule": [
{
"name": "Observation2",
"source": [
{
"context": "entriRel",
"element": "observation",
"variable": "observation2"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "observation2",
"element": "code",
"variable": "code"
}
],
"rule": [
{
"name": "whereDecorsoClinico",
"source": [
{
"context": "code",
"element": "code",
"condition": "(code.code = '89261-2')"
}
],
"rule": [
{
"name": "obser",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
}
],
"rule": [
{
"name": "ref",
"source": [
{
"context": "entriRel"
}
],
"target": [
{
"context": "evidence",
"contextType": "variable",
"element": "detail",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "observation2",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "observation2",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "observation2"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "Annontation",
"source": [
{
"context": "observation2",
"element": "text",
"variable": "text"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "note",
"variable": "note",
"transform": "create",
"parameter": [
{
"valueString": "Annotation"
}
]
}
],
"rule": [
{
"name": "val",
"source": [
{
"context": "text",
"element": "reference",
"variable": "ref"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "evaluate",
"parameter": [
{
"valueString": "ref.value"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "observation2",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'completed')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "observation2",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'active')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "registered"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "observation2",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'aborted')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "cancelled"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "observation2",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'suspended')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "partial"
}
]
}
]
},
{
"name": "value",
"source": [
{
"context": "observation2",
"type": "INT",
"element": "value",
"variable": "int"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "int.value"
}
]
}
]
},
{
"name": "boolean",
"source": [
{
"context": "observation2",
"type": "BL",
"element": "value",
"variable": "boolean"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "boolean.value"
}
]
}
]
},
{
"name": "val",
"source": [
{
"context": "observation2",
"type": "CD",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "ce",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "originltext",
"source": [
{
"context": "val",
"element": "originalText",
"variable": "originalText"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "originalText",
"element": "reference",
"variable": "reference"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "reference"
}
]
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "val",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "val",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "val",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystemVersion",
"source": [
{
"context": "val",
"element": "codeSystemVersion",
"variable": "version"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "version",
"transform": "cast",
"parameter": [
{
"valueId": "version"
},
{
"valueString": "string"
}
]
}
]
}
]
},
{
"name": "translation",
"source": [
{
"context": "val",
"element": "translation",
"variable": "translation"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "translation",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "translation",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "translation",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystemVersion",
"source": [
{
"context": "translation",
"element": "codeSystemVersion",
"variable": "version"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "version",
"transform": "cast",
"parameter": [
{
"valueId": "version"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "qualifier",
"source": [
{
"context": "translation",
"element": "qualifier",
"variable": "qualifier"
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "qualifier",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "value",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "value",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "value",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystemVersion",
"source": [
{
"context": "value",
"element": "codeSystemVersion",
"variable": "version"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "version",
"transform": "cast",
"parameter": [
{
"valueId": "version"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "valueQuantity",
"source": [
{
"context": "observation2",
"type": "PQ",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "quantity",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "quantity",
"transform": "create",
"parameter": [
{
"valueString": "Quantity"
}
]
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "val",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "quantity",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "value"
}
]
}
]
},
{
"name": "unit",
"source": [
{
"context": "val",
"element": "unit",
"variable": "unit"
}
],
"target": [
{
"context": "quantity",
"contextType": "variable",
"element": "unit",
"transform": "copy",
"parameter": [
{
"valueId": "unit"
}
]
}
]
}
]
}
]
},
{
"name": "value",
"source": [
{
"context": "observation2",
"type": "ST",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "create",
"parameter": [
{
"valueString": "string"
}
]
},
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "value.dataString"
}
]
}
]
},
{
"name": "Value",
"source": [
{
"context": "observation2",
"type": "CE",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "Ce",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "value",
"variable": "ce",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "originalText",
"source": [
{
"context": "val",
"element": "originalText",
"variable": "vvv"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "text",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "coding",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "val",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "val",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "val",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "entryrelationshipstatus",
"source": [
{
"context": "obs",
"element": "entryRelationship",
"variable": "entriRel"
}
],
"rule": [
{
"name": "observationstatus",
"source": [
{
"context": "entriRel",
"element": "observation",
"variable": "observation2"
}
],
"rule": [
{
"name": "codestatus",
"source": [
{
"context": "observation2",
"element": "code",
"variable": "code"
}
],
"rule": [
{
"name": "whereDecorsoClinico",
"source": [
{
"context": "code",
"element": "code",
"condition": "(code.code = '33999-4')"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "observation2"
}
],
"target": [
{
"context": "condition",
"contextType": "variable",
"element": "clinicalStatus",
"variable": "status",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "textstat",
"source": [
{
"context": "observation2",
"element": "text",
"variable": "text"
}
],
"rule": [
{
"name": "statref",
"source": [
{
"context": "text",
"element": "reference",
"variable": "refstat"
}
],
"target": [
{
"context": "status",
"contextType": "variable",
"element": "text",
"transform": "evaluate",
"parameter": [
{
"valueString": "refstat.value"
}
]
}
]
}
]
},
{
"name": "coding",
"source": [
{
"context": "observation2"
}
],
"target": [
{
"context": "status",
"contextType": "variable",
"element": "coding",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "value1",
"source": [
{
"context": "observation2",
"element": "value",
"variable": "value"
}
],
"rule": [
{
"name": "active",
"source": [
{
"context": "value",
"element": "code",
"condition": "(value.code = 'LA16666-2')"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "active"
}
]
}
]
},
{
"name": "inactive",
"source": [
{
"context": "value",
"element": "code",
"condition": "(value.code = 'LA18632-2')"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "inactive"
}
]
}
]
},
{
"name": "system",
"source": [
{
"context": "value",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://terminology.hl7.org/CodeSystem/condition-clinical"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "value",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
],
"documentation": "EntryRelationship per il Problem"
}
]
}
]
},
{
"name": "esameObiettivo",
"source": [
{
"context": "section2",
"element": "code",
"condition": "(code = '29545-1')"
}
],
"dependent": [
{
"name": "ClinicalDocumentSottoSectionOBS",
"variable": [
"section2",
"sec2",
"bundle",
"enc",
"patient"
]
}
],
"documentation": "ESAME PBIETTIVO"
},
{
"name": "TerapiaFarmacologicaAllIngresso",
"source": [
{
"context": "section2",
"element": "code",
"condition": "(code = '42346-7')"
}
],
"dependent": [
{
"name": "ClinicalDocumentSottoSectionMS",
"variable": [
"section2",
"sec2",
"bundle",
"patient",
"enc"
]
}
],
"documentation": "TETAPIA FARMACOLOGICA"
}
],
"documentation": "ANAMNESI"
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionDecorsoOspedaliero",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "2",
"source": [
{
"context": "src",
"element": "component",
"variable": "component"
}
],
"rule": [
{
"name": "1",
"source": [
{
"context": "component",
"element": "section",
"variable": "section2"
}
],
"rule": [
{
"name": "Decorso",
"source": [
{
"context": "src"
}
],
"dependent": [
{
"name": "ClinicalDocumentSottoSectionOBS",
"variable": [
"section2",
"tgt",
"bundle",
"enc",
"patient"
]
}
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionComplicanze",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "exist",
"source": [
{
"context": "src",
"condition": "src.entry.exists()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "where",
"source": [
{
"context": "src",
"condition": "src.entry.exists().not()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "entry",
"source": [
{
"context": "src",
"element": "entry",
"variable": "entry1"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
],
"rule": [
{
"name": "act",
"source": [
{
"context": "entry1",
"element": "observation",
"variable": "obs"
}
],
"dependent": [
{
"name": "Observation",
"variable": [
"obs",
"patient",
"enc",
"observation",
"bundle"
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionRiscontri",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "2",
"source": [
{
"context": "src",
"element": "component",
"variable": "component"
}
],
"rule": [
{
"name": "1",
"source": [
{
"context": "component",
"element": "section",
"variable": "section2"
}
],
"rule": [
{
"name": "Decorso",
"source": [
{
"context": "src"
}
],
"dependent": [
{
"name": "ClinicalDocumentSottoSectionOBS",
"variable": [
"section2",
"tgt",
"bundle",
"enc",
"patient"
]
}
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionConsulenza",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "exist",
"source": [
{
"context": "src",
"condition": "src.entry.exists()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "where",
"source": [
{
"context": "src",
"condition": "src.entry.exists().not()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "entry",
"source": [
{
"context": "src",
"element": "entry",
"variable": "entry1"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
],
"rule": [
{
"name": "act",
"source": [
{
"context": "entry1",
"element": "observation",
"variable": "obs"
}
],
"dependent": [
{
"name": "ObservationConsulenza",
"variable": [
"obs",
"patient",
"enc",
"observation",
"bundle"
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionEsamiEseguitiRicovero",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "exists",
"source": [
{
"context": "src",
"condition": "src.entry.exists()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "where",
"source": [
{
"context": "src",
"condition": "src.entry.exists().not()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "entry",
"source": [
{
"context": "src",
"element": "entry",
"variable": "entry1"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
],
"rule": [
{
"name": "act",
"source": [
{
"context": "entry1",
"element": "observation",
"variable": "obs"
}
],
"dependent": [
{
"name": "ObservationEsamiDuranteRicovero",
"variable": [
"obs",
"patient",
"enc",
"observation",
"bundle"
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionProcedureEseguiteRicovero",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "exists",
"source": [
{
"context": "src",
"condition": "src.entry.exists()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "where",
"source": [
{
"context": "src",
"condition": "src.entry.exists().not()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "procedure",
"transform": "create",
"parameter": [
{
"valueString": "Procedure"
}
]
},
{
"context": "procedure",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Procedure/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Procedure"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Procedure/' + %procedure.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "unknown"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "Entry",
"source": [
{
"context": "src",
"element": "entry",
"variable": "entry1"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "procedure",
"transform": "create",
"parameter": [
{
"valueString": "Procedure"
}
]
},
{
"context": "procedure",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Procedure/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Procedure"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Procedure/' + %procedure.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "Procedure",
"source": [
{
"context": "entry1",
"element": "procedure",
"variable": "proceduresrc"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "proceduresrc",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "text",
"source": [
{
"context": "proceduresrc",
"element": "text",
"variable": "txt"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "txt",
"element": "reference",
"variable": "ref"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "evaluate",
"parameter": [
{
"valueString": "ref.value"
}
]
}
]
}
]
},
{
"name": "status",
"source": [
{
"context": "proceduresrc",
"condition": "proc.statusCode.exists().not()"
}
],
"rule": [
{
"name": "statuscode",
"source": [
{
"context": "proceduresrc"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "unknown"
}
]
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "proceduresrc",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'completed')"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "completed"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "proceduresrc",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'active')"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "in-progress"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "proceduresrc",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'aborted')"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "stopped"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "proceduresrc",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'suspended')"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "on-hold"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "proceduresrc",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'cancelled')"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "not-done"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "proceduresrc",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'held')"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "on-hold"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "proceduresrc",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'new')"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "preparation"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "proceduresrc",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'obsolete')"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "entered-in-error"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "proceduresrc",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'nullified')"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "unknown"
}
]
}
]
},
{
"name": "effectiveTime",
"source": [
{
"context": "proceduresrc",
"element": "effectiveTime",
"variable": "efft"
}
],
"target": [
{
"context": "procedure",
"contextType": "variable",
"element": "performed",
"variable": "period",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"dependent": [
{
"name": "IVLTSPeriod",
"variable": [
"efft",
"period"
]
}
]
},
{
"name": "Observation",
"source": [
{
"context": "proceduresrc",
"element": "entryRelationship",
"variable": "entriRel"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "procedure",
"contextType": "variable",
"element": "reasonReference",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "entriRel"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "entriRel"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "ObservationValue",
"source": [
{
"context": "entriRel",
"element": "observation",
"variable": "obs"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "obs",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "obs",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionAllergie",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "exists",
"source": [
{
"context": "src",
"condition": "src.entry.exists()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "where",
"source": [
{
"context": "src",
"condition": "src.entry.exists().not()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "allergy",
"transform": "create",
"parameter": [
{
"valueString": "AllergyIntolerance"
}
]
},
{
"context": "allergy",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/AllergyIntolerance/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "AllergyIntolerance"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/AllergyIntolerance/' + %allergy.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "patient",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "allergy",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "clinicalStatus",
"variable": "status",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "text",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "status",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueString": "string"
}
]
}
]
},
{
"name": "coding",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "status",
"contextType": "variable",
"element": "coding",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "active",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "active"
}
]
}
]
},
{
"name": "system",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical"
}
]
}
]
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "allergy",
"source": [
{
"context": "src",
"element": "entry",
"variable": "entry1"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "allergy",
"transform": "create",
"parameter": [
{
"valueString": "AllergyIntolerance"
}
]
},
{
"context": "allergy",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/AllergyIntolerance/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "AllergyIntolerance"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/AllergyIntolerance/' + %allergy.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "patient",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "act",
"source": [
{
"context": "entry1",
"element": "act",
"variable": "actallint"
}
],
"rule": [
{
"name": "effectiveTime",
"source": [
{
"context": "actallint",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "onset",
"variable": "per",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"dependent": [
{
"name": "IVLTSPeriod",
"variable": [
"eff",
"per"
]
}
]
},
{
"name": "entryRelationship",
"source": [
{
"context": "actallint",
"element": "entryRelationship",
"variable": "entryact"
}
],
"rule": [
{
"name": "partic",
"source": [
{
"context": "entryact",
"element": "observation",
"variable": "entryobs"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "entryobs",
"element": "value",
"variable": "code"
}
],
"rule": [
{
"name": "type",
"source": [
{
"context": "code",
"element": "code",
"variable": "code1"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "type",
"transform": "translate",
"parameter": [
{
"valueId": "code1"
},
{
"valueString": "#AllergyTypeMap"
},
{
"valueString": "code"
}
]
}
]
},
{
"name": "category",
"source": [
{
"context": "code",
"element": "code",
"variable": "code2"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "category",
"transform": "translate",
"parameter": [
{
"valueId": "code2"
},
{
"valueString": "#AllergyCategoryMap"
},
{
"valueString": "code"
}
]
}
]
}
]
},
{
"name": "PratRole",
"source": [
{
"context": "entryobs",
"element": "participant",
"variable": "partic"
}
],
"rule": [
{
"name": "pratentit",
"source": [
{
"context": "partic",
"element": "participantRole",
"variable": "pratRole"
}
],
"rule": [
{
"name": "react",
"source": [
{
"context": "pratRole",
"element": "playingEntity",
"variable": "pratent"
}
],
"rule": [
{
"name": "cod",
"source": [
{
"context": "pratent"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "reaction",
"variable": "reaction",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
}
],
"rule": [
{
"name": "subs",
"source": [
{
"context": "pratent",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "reaction",
"contextType": "variable",
"element": "substance",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "entry",
"source": [
{
"context": "entryobs",
"element": "entryRelationship",
"variable": "entryobs1",
"condition": "(typeCode = 'MFST')"
}
],
"rule": [
{
"name": "observ",
"source": [
{
"context": "entryobs1",
"element": "observation",
"variable": "entobs"
}
],
"rule": [
{
"name": "eff",
"source": [
{
"context": "entobs",
"element": "effectiveTime",
"variable": "eff"
}
],
"rule": [
{
"name": "val",
"source": [
{
"context": "eff",
"element": "low",
"variable": "l"
}
],
"target": [
{
"context": "reaction",
"contextType": "variable",
"element": "onset",
"variable": "start",
"transform": "create",
"parameter": [
{
"valueString": "dateTime"
}
]
}
],
"dependent": [
{
"name": "TSDateTime",
"variable": [
"l",
"start"
]
}
]
}
]
},
{
"name": "manifest",
"source": [
{
"context": "entobs",
"element": "value",
"variable": "vvv"
}
],
"target": [
{
"context": "reaction",
"contextType": "variable",
"element": "manifestation",
"variable": "vvv",
"transform": "create"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "observ",
"source": [
{
"context": "entryobs",
"element": "entryRelationship",
"variable": "entryobs2"
}
],
"rule": [
{
"name": "severity",
"source": [
{
"context": "entryobs2",
"element": "observation",
"variable": "entobs"
}
],
"rule": [
{
"name": "sev",
"source": [
{
"context": "entobs",
"element": "code",
"variable": "code",
"condition": "(code = 'SEV')"
}
],
"rule": [
{
"name": "entobs",
"source": [
{
"context": "entobs",
"element": "value",
"variable": "value"
}
],
"rule": [
{
"name": "active",
"source": [
{
"context": "value",
"element": "code",
"condition": "(value.code = 'M')"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "criticality",
"transform": "copy",
"parameter": [
{
"valueString": "unable-to-assess"
}
]
}
]
},
{
"name": "active",
"source": [
{
"context": "value",
"element": "code",
"condition": "(value.code = 'L')"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "criticality",
"transform": "copy",
"parameter": [
{
"valueString": "low"
}
]
}
]
},
{
"name": "active",
"source": [
{
"context": "value",
"element": "code",
"condition": "(value.code = 'H')"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "criticality",
"transform": "copy",
"parameter": [
{
"valueString": "high"
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "entry3",
"source": [
{
"context": "entryobs",
"element": "entryRelationship",
"variable": "entryobs3"
}
],
"rule": [
{
"name": "obobs3serv",
"source": [
{
"context": "entryobs3",
"element": "observation",
"variable": "entobs"
}
],
"rule": [
{
"name": "stat",
"source": [
{
"context": "entobs",
"element": "code",
"variable": "code",
"condition": "(code = '33999-4')"
}
],
"rule": [
{
"name": "clinicalStatus",
"source": [
{
"context": "entobs"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "clinicalStatus",
"variable": "status",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "entobs"
}
],
"target": [
{
"context": "status",
"contextType": "variable",
"element": "coding",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "value1",
"source": [
{
"context": "entobs",
"element": "value",
"variable": "value"
}
],
"rule": [
{
"name": "active",
"source": [
{
"context": "value",
"element": "code",
"condition": "(value.code = 'LA16666-2')"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "active"
}
]
}
]
},
{
"name": "active",
"source": [
{
"context": "value",
"element": "code",
"condition": "(value.code = 'LA18632-2')"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "inactive"
}
]
}
]
},
{
"name": "system",
"source": [
{
"context": "value",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "value",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "entry4",
"source": [
{
"context": "entryobs",
"element": "entryRelationship",
"variable": "entryobs4"
}
],
"rule": [
{
"name": "obobs4serv",
"source": [
{
"context": "entryobs4",
"element": "act",
"variable": "entact"
}
],
"rule": [
{
"name": "txtact",
"source": [
{
"context": "entact",
"element": "text",
"variable": "actext"
}
],
"rule": [
{
"name": "notetxt",
"source": [
{
"context": "actext",
"element": "reference",
"variable": "reftxt"
}
],
"target": [
{
"context": "allergy",
"contextType": "variable",
"element": "note",
"variable": "note",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
}
],
"rule": [
{
"name": "notxt",
"source": [
{
"context": "reftxt",
"variable": "ref"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "evaluate",
"parameter": [
{
"valueString": "ref.value"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionDiagnosiDimissione",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "exists",
"source": [
{
"context": "src",
"condition": "src.entry.exists()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "where",
"source": [
{
"context": "src",
"condition": "src.entry.exists().not()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "entry",
"source": [
{
"context": "src",
"element": "entry",
"variable": "entry1"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
}
],
"rule": [
{
"name": "act",
"source": [
{
"context": "entry1",
"element": "observation",
"variable": "obs"
}
],
"dependent": [
{
"name": "Observation",
"variable": [
"obs",
"patient",
"enc",
"observation",
"bundle"
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionIstruzioniFollowUp",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
},
{
"name": "entry",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "carePlan",
"transform": "create",
"parameter": [
{
"valueString": "CarePlan"
}
]
},
{
"context": "carePlan",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/CarePlan/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "CarePlan"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/CarePlan/' + %carePlan.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "carePlan",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "carePlan",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "carePlan",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "carePlan",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "active"
}
]
}
]
},
{
"name": "intent",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "carePlan",
"contextType": "variable",
"element": "intent",
"transform": "copy",
"parameter": [
{
"valueString": "order"
}
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionTerapiaFarmacologicaDuranteRicovero",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "exists",
"source": [
{
"context": "src",
"condition": "src.entry.exists()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "where",
"source": [
{
"context": "src",
"condition": "src.entry.exists().not()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "medicationAdm",
"transform": "create",
"parameter": [
{
"valueString": "MedicationAdministration"
}
]
},
{
"context": "medicationAdm",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/MedicationAdministration/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "MedicationAdministration"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/MedicationAdministration/' + %medicationAdm.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "context",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "medication",
"variable": "codecon",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "text",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "codecon",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueString": "string"
}
]
}
]
}
]
},
{
"name": "Period",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "effective",
"variable": "period",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"rule": [
{
"name": "low",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "period",
"contextType": "variable",
"element": "start",
"transform": "evaluate",
"parameter": [
{
"valueString": "start.now()"
}
]
}
]
},
{
"name": "high",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "period",
"contextType": "variable",
"element": "end",
"transform": "evaluate",
"parameter": [
{
"valueString": "end.now()"
}
]
}
]
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "sub.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "completed"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "sa",
"source": [
{
"context": "src",
"element": "entry",
"variable": "entry1"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "medicationAdm",
"transform": "create",
"parameter": [
{
"valueString": "MedicationAdministration"
}
]
},
{
"context": "medicationAdm",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/MedicationAdministration/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "MedicationAdministration"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/MedicationAdministration/' + %medicationAdm.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "entry1"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "entry1"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "context",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "entry",
"source": [
{
"context": "entry1",
"element": "substanceAdministration",
"variable": "sa"
}
],
"rule": [
{
"name": "tx",
"source": [
{
"context": "sa",
"element": "text",
"variable": "tx"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "perf",
"source": [
{
"context": "sa",
"element": "performer",
"variable": "performer"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "practitioner",
"transform": "create",
"parameter": [
{
"valueString": "Practitioner"
}
]
}
],
"rule": [
{
"name": "time",
"source": [
{
"context": "performer",
"element": "time",
"variable": "ti"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "time",
"transform": "evaluate",
"parameter": [
{
"valueString": "ti.value"
}
]
}
]
},
{
"name": "assEntity",
"source": [
{
"context": "performer",
"element": "assignedEntity",
"variable": "assEnty"
}
],
"rule": [
{
"name": "meta",
"source": [
{
"context": "assEnty"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "meta",
"variable": "meta"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "assEnty"
}
],
"target": [
{
"context": "meta",
"contextType": "variable",
"element": "tag",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "system",
"source": [
{
"context": "assEnty"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://algoritmodiscoring"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "assEnty"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "ClinicalDocument/body/TerapiaFarmacologicaRicovero/performer"
}
]
}
]
}
]
}
]
},
{
"name": "identifier",
"source": [
{
"context": "assEnty",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "root1",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "r"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "extension",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "ext"
}
]
}
]
},
{
"name": "assigningAuthorityName",
"source": [
{
"context": "id",
"element": "assigningAuthorityName",
"variable": "s"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "assigner",
"variable": "a"
},
{
"context": "a",
"contextType": "variable",
"element": "display",
"transform": "copy",
"parameter": [
{
"valueId": "s"
}
]
}
]
},
{
"name": "r",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"rule": [
{
"name": "aut",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "id",
"variable": "uuid2",
"transform": "evaluate",
"parameter": [
{
"valueString": "r + '-' + ext"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Practitioner/"
},
{
"valueId": "uuid2"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Practitioner"
}
]
},
{
"context": "medicationAdm",
"contextType": "variable",
"element": "performer",
"variable": "perf"
},
{
"context": "perf",
"contextType": "variable",
"element": "actor",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Practitioner/' + %practitioner.id"
}
]
}
]
}
]
}
]
},
{
"name": "2.16.840.1.113883.2.9.4.3.2",
"source": [
{
"context": "assEnty",
"element": "id",
"variable": "id",
"condition": "(root = '2.16.840.1.113883.2.9.4.3.2')"
}
],
"rule": [
{
"name": "UUID",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner?identifier="
},
{
"valueId": "ext"
}
]
}
]
}
]
},
{
"name": "diverso",
"source": [
{
"context": "assEnty",
"element": "id",
"variable": "id",
"condition": "(root != '2.16.840.1.113883.2.9.4.3.2')"
}
],
"rule": [
{
"name": "UUID",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner?identifier="
},
{
"valueId": "ext"
}
]
}
]
}
]
},
{
"name": "assi",
"source": [
{
"context": "assEnty",
"element": "assignedPerson",
"variable": "assi"
}
],
"rule": [
{
"name": "name",
"source": [
{
"context": "assi",
"element": "name",
"variable": "vvv"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "name",
"variable": "vvv",
"transform": "create"
}
]
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "tx",
"element": "reference",
"variable": "ref"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "evaluate",
"parameter": [
{
"valueString": "ref.value"
}
]
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "sa",
"element": "statusCode",
"variable": "st"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "status",
"transform": "evaluate",
"parameter": [
{
"valueString": "st.code"
}
]
}
]
},
{
"name": "period",
"source": [
{
"context": "sa",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "effective",
"variable": "period",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"dependent": [
{
"name": "IVLTSPeriod",
"variable": [
"eff",
"period"
]
}
]
},
{
"name": "dos",
"source": [
{
"context": "sa"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "dosage",
"variable": "dos"
}
],
"rule": [
{
"name": "routeCode",
"source": [
{
"context": "sa",
"element": "routeCode",
"variable": "vvv"
}
],
"target": [
{
"context": "dos",
"contextType": "variable",
"element": "route",
"variable": "vvv",
"transform": "create"
}
]
}
]
},
{
"name": "dos",
"source": [
{
"context": "sa"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "dosage",
"variable": "dos"
}
],
"rule": [
{
"name": "approachSiteCode",
"source": [
{
"context": "sa",
"element": "approachSiteCode",
"variable": "vvv"
}
],
"target": [
{
"context": "dos",
"contextType": "variable",
"element": "site",
"variable": "vvv",
"transform": "create"
}
]
}
]
},
{
"name": "sa",
"source": [
{
"context": "sa",
"element": "doseQuantity",
"variable": "doseQuant"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "medicationRq",
"transform": "create",
"parameter": [
{
"valueString": "MedicationRequest"
}
]
},
{
"context": "medicationRq",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/MedicationRequest/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "MedicationRequest"
}
]
},
{
"context": "medicationAdm",
"contextType": "variable",
"element": "request",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/MedicationRequest/' + %medicationRq.id"
}
]
}
],
"rule": [
{
"name": "Dosage",
"source": [
{
"context": "doseQuant"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosageInstruction",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
}
],
"rule": [
{
"name": "ot",
"source": [
{
"context": "doseQuant",
"element": "originalText",
"variable": "ot"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "ot",
"element": "reference",
"variable": "vvv"
}
],
"target": [
{
"context": "dosageInstruction",
"contextType": "variable",
"element": "text",
"variable": "vvv",
"transform": "create"
}
]
}
]
},
{
"name": "dosageRate",
"source": [
{
"context": "doseQuant"
}
],
"target": [
{
"context": "dosageInstruction",
"contextType": "variable",
"element": "doseAndRate",
"variable": "dosageRate"
}
],
"rule": [
{
"name": "d",
"source": [
{
"context": "doseQuant"
}
],
"target": [
{
"context": "dosageRate",
"contextType": "variable",
"element": "dose",
"variable": "d",
"transform": "create",
"parameter": [
{
"valueString": "Range"
}
]
}
],
"rule": [
{
"name": "low",
"source": [
{
"context": "doseQuant"
}
],
"target": [
{
"context": "d",
"contextType": "variable",
"element": "low",
"variable": "l",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "low",
"source": [
{
"context": "doseQuant",
"element": "low",
"variable": "lo"
}
],
"target": [
{
"context": "l",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "lo.value"
}
]
}
]
},
{
"name": "low",
"source": [
{
"context": "doseQuant",
"element": "low",
"variable": "lo"
}
],
"target": [
{
"context": "l",
"contextType": "variable",
"element": "unit",
"transform": "evaluate",
"parameter": [
{
"valueString": "lo.unit"
}
]
}
]
}
]
},
{
"name": "low",
"source": [
{
"context": "doseQuant"
}
],
"target": [
{
"context": "d",
"contextType": "variable",
"element": "high",
"variable": "h",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "high",
"source": [
{
"context": "doseQuant",
"element": "high",
"variable": "hi"
}
],
"target": [
{
"context": "h",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "hi.value"
}
]
}
]
},
{
"name": "high",
"source": [
{
"context": "doseQuant",
"element": "high",
"variable": "hi"
}
],
"target": [
{
"context": "h",
"contextType": "variable",
"element": "unit",
"transform": "evaluate",
"parameter": [
{
"valueString": "hi.unit"
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "sa"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "sa"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "status",
"source": [
{
"context": "sa"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "active"
}
]
}
]
},
{
"name": "intent",
"source": [
{
"context": "sa"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "intent",
"transform": "copy",
"parameter": [
{
"valueString": "order"
}
]
}
]
},
{
"name": "Dosage",
"source": [
{
"context": "sa",
"element": "rateQuantity",
"variable": "rateQuantity"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosageInstruction1",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
}
],
"rule": [
{
"name": "ot",
"source": [
{
"context": "rateQuantity",
"element": "originalText",
"variable": "ot"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "ot",
"element": "reference",
"variable": "vvv"
}
],
"target": [
{
"context": "dosageInstruction1",
"contextType": "variable",
"element": "text",
"variable": "vvv",
"transform": "create"
}
]
}
]
},
{
"name": "dosageRate",
"source": [
{
"context": "rateQuantity"
}
],
"target": [
{
"context": "dosageInstruction1",
"contextType": "variable",
"element": "doseAndRate",
"variable": "dosageRate"
}
],
"rule": [
{
"name": "d",
"source": [
{
"context": "rateQuantity"
}
],
"target": [
{
"context": "dosageRate",
"contextType": "variable",
"element": "rate",
"variable": "d",
"transform": "create",
"parameter": [
{
"valueString": "Range"
}
]
}
],
"rule": [
{
"name": "low",
"source": [
{
"context": "rateQuantity"
}
],
"target": [
{
"context": "d",
"contextType": "variable",
"element": "low",
"variable": "l",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "low",
"source": [
{
"context": "rateQuantity",
"element": "low",
"variable": "lo"
}
],
"target": [
{
"context": "l",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "lo.value"
}
]
}
]
},
{
"name": "low",
"source": [
{
"context": "rateQuantity",
"element": "low",
"variable": "lo"
}
],
"target": [
{
"context": "l",
"contextType": "variable",
"element": "unit",
"transform": "evaluate",
"parameter": [
{
"valueString": "lo.unit"
}
]
}
]
}
]
},
{
"name": "low",
"source": [
{
"context": "rateQuantity"
}
],
"target": [
{
"context": "d",
"contextType": "variable",
"element": "high",
"variable": "h",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "high",
"source": [
{
"context": "rateQuantity",
"element": "high",
"variable": "hi"
}
],
"target": [
{
"context": "h",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "hi.value"
}
]
}
]
},
{
"name": "high",
"source": [
{
"context": "rateQuantity",
"element": "high",
"variable": "hi"
}
],
"target": [
{
"context": "h",
"contextType": "variable",
"element": "unit",
"transform": "evaluate",
"parameter": [
{
"valueString": "hi.unit"
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "medication",
"source": [
{
"context": "sa"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "medication",
"transform": "create",
"parameter": [
{
"valueString": "Medication"
}
]
},
{
"context": "medication",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Medication/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Medication"
}
]
},
{
"context": "medicationAdm",
"contextType": "variable",
"element": "medication",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Medication/' + %medication.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "sa"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "medication",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Medication/' + %medication.id"
}
]
}
]
},
{
"name": "administrationUnitCode",
"source": [
{
"context": "sa",
"element": "administrationUnitCode",
"variable": "vvv"
}
],
"target": [
{
"context": "medication",
"contextType": "variable",
"element": "form",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "consumable",
"source": [
{
"context": "sa",
"element": "consumable",
"variable": "consumable"
}
],
"rule": [
{
"name": "manufac",
"source": [
{
"context": "consumable",
"element": "manufacturedProduct",
"variable": "manufac"
}
],
"rule": [
{
"name": "manufactproduct",
"source": [
{
"context": "manufac",
"element": "manufacturedMaterial",
"variable": "manuprod"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "manuprod",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "medication",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
}
]
}
]
}
]
},
{
"name": "entryRr",
"source": [
{
"context": "sa",
"element": "entryRelationship",
"variable": "entryRR"
}
],
"rule": [
{
"name": "obs",
"source": [
{
"context": "entryRR",
"element": "observation",
"variable": "observation"
}
],
"rule": [
{
"name": "ingredient",
"source": [
{
"context": "observation",
"element": "code",
"condition": "displayName = 'Grammatura'"
}
],
"target": [
{
"context": "medication",
"contextType": "variable",
"element": "ingredient",
"variable": "ingredient"
}
],
"rule": [
{
"name": "consumable",
"source": [
{
"context": "sa",
"element": "consumable",
"variable": "consumable"
}
],
"rule": [
{
"name": "product",
"source": [
{
"context": "consumable",
"element": "manufacturedProduct",
"variable": "manufacturedProduct"
}
],
"rule": [
{
"name": "material",
"source": [
{
"context": "manufacturedProduct",
"element": "manufacturedMaterial",
"variable": "manufacturedMaterial"
}
],
"rule": [
{
"name": "CE",
"source": [
{
"context": "manufacturedMaterial",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "ingredient",
"contextType": "variable",
"element": "item",
"variable": "value",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"dependent": [
{
"name": "CECodeableConcept",
"variable": [
"code",
"value"
]
}
]
}
]
}
]
}
]
},
{
"name": "strenght",
"source": [
{
"context": "observation",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ingredient",
"contextType": "variable",
"element": "strength",
"variable": "strength"
}
],
"rule": [
{
"name": "numerator",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "strength",
"contextType": "variable",
"element": "numerator",
"variable": "numerator"
}
],
"rule": [
{
"name": "valueN",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "numerator",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "value.value"
}
]
}
]
}
]
},
{
"name": "denominator",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "strength",
"contextType": "variable",
"element": "denominator",
"variable": "denominator"
}
],
"rule": [
{
"name": "valueD",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "denominator",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueInteger": 1
}
]
}
]
}
]
}
]
}
]
},
{
"name": "quantita",
"source": [
{
"context": "observation",
"element": "code",
"condition": "displayName = 'Quantità nella Confezione'"
}
],
"rule": [
{
"name": "amount",
"source": [
{
"context": "observation",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "medication",
"contextType": "variable",
"element": "amount",
"variable": "amount"
}
],
"rule": [
{
"name": "numerator",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "amount",
"contextType": "variable",
"element": "numerator",
"variable": "numerator"
}
],
"rule": [
{
"name": "valueN",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "numerator",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "value.value"
}
]
}
]
}
]
},
{
"name": "denominator",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "amount",
"contextType": "variable",
"element": "denominator",
"variable": "denominator"
}
],
"rule": [
{
"name": "valueD",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "denominator",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueInteger": 1
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "entryR",
"source": [
{
"context": "sa",
"element": "entryRelationship",
"variable": "entryRelationship"
}
],
"rule": [
{
"name": "sub",
"source": [
{
"context": "entryRelationship",
"element": "supply",
"variable": "sup"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dispenseRequest",
"variable": "dispreq"
}
],
"rule": [
{
"name": "quantity",
"source": [
{
"context": "sup"
}
],
"target": [
{
"context": "dispreq",
"contextType": "variable",
"element": "quantity",
"variable": "quantity",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "quantity",
"source": [
{
"context": "sup",
"element": "quantity",
"variable": "q"
}
],
"target": [
{
"context": "quantity",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "q.value"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "Medicationrequest",
"source": [
{
"context": "sa",
"element": "participant",
"variable": "participant"
}
],
"rule": [
{
"name": "time",
"source": [
{
"context": "participant",
"element": "time",
"variable": "t"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "authoredOn",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.value"
}
]
}
]
},
{
"name": "perf",
"source": [
{
"context": "participant",
"element": "participantRole",
"variable": "participantR"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "practitioner",
"transform": "create",
"parameter": [
{
"valueString": "Practitioner"
}
]
}
],
"rule": [
{
"name": "meta",
"source": [
{
"context": "participantR"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "meta",
"variable": "meta"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "participantR"
}
],
"target": [
{
"context": "meta",
"contextType": "variable",
"element": "tag",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "system",
"source": [
{
"context": "participantR"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://algoritmodiscoring"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "participantR"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "ClinicalDocument/body/TerapiaFarmacologicaRicovero/participant"
}
]
}
]
}
]
}
]
},
{
"name": "identifier",
"source": [
{
"context": "participantR",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "root1",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "r"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "extension",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "ext"
}
]
}
]
},
{
"name": "assigningAuthorityName",
"source": [
{
"context": "id",
"element": "assigningAuthorityName",
"variable": "s"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "assigner",
"variable": "a"
},
{
"context": "a",
"contextType": "variable",
"element": "display",
"transform": "copy",
"parameter": [
{
"valueId": "s"
}
]
}
]
},
{
"name": "r",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"rule": [
{
"name": "aut",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "id",
"variable": "uuid2",
"transform": "evaluate",
"parameter": [
{
"valueString": "r + '-' + ext"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Practitioner/"
},
{
"valueId": "uuid2"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "medicationRq",
"contextType": "variable",
"element": "requester",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Practitioner/' + %practitioner.id"
}
]
}
]
}
]
}
]
},
{
"name": "2.16.840.1.113883.2.9.4.3.2",
"source": [
{
"context": "participantR",
"element": "id",
"variable": "id",
"condition": "(root = '2.16.840.1.113883.2.9.4.3.2')"
}
],
"rule": [
{
"name": "UUID",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner?identifier="
},
{
"valueId": "ext"
}
]
}
]
}
]
},
{
"name": "assi",
"source": [
{
"context": "participantR",
"element": "playingEntity",
"variable": "assi"
}
],
"rule": [
{
"name": "name",
"source": [
{
"context": "assi",
"element": "name",
"variable": "vvv"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "name",
"variable": "vvv",
"transform": "create"
}
]
}
]
}
]
},
{
"name": "period",
"source": [
{
"context": "sa",
"type": "EIVL",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosage",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
}
],
"rule": [
{
"name": "timing",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "dosage",
"contextType": "variable",
"element": "timing",
"variable": "timing",
"transform": "create",
"parameter": [
{
"valueString": "Timing"
}
]
}
],
"rule": [
{
"name": "rep",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "timing",
"contextType": "variable",
"element": "repeat",
"variable": "rep"
}
],
"rule": [
{
"name": "event",
"source": [
{
"context": "eff",
"element": "event",
"variable": "ev"
}
],
"target": [
{
"context": "rep",
"contextType": "variable",
"element": "where",
"transform": "evaluate",
"parameter": [
{
"valueString": "ev.code"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "tim",
"source": [
{
"context": "sa",
"type": "TS",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosage",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
},
{
"context": "dosage",
"contextType": "variable",
"element": "timing",
"variable": "timing",
"transform": "create",
"parameter": [
{
"valueString": "Timing"
}
]
},
{
"context": "timing",
"contextType": "variable",
"element": "event",
"transform": "evaluate",
"parameter": [
{
"valueString": "eff.value"
}
]
}
]
},
{
"name": "eff",
"source": [
{
"context": "sa",
"type": "PIVL_TS",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "medicationAdm",
"contextType": "variable",
"element": "dosage",
"variable": "dosage",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
}
],
"rule": [
{
"name": "ratio",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "dosage",
"contextType": "variable",
"element": "rate",
"variable": "ratio",
"transform": "create",
"parameter": [
{
"valueString": "Ratio"
}
]
}
],
"rule": [
{
"name": "quanti",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "ratio",
"contextType": "variable",
"element": "numerator",
"variable": "quan",
"transform": "create",
"parameter": [
{
"valueString": "Quantity"
}
]
}
],
"rule": [
{
"name": "period",
"source": [
{
"context": "eff",
"element": "period",
"variable": "per"
}
],
"target": [
{
"context": "quan",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "per.value"
}
]
}
]
},
{
"name": "period",
"source": [
{
"context": "eff",
"element": "period",
"variable": "per"
}
],
"target": [
{
"context": "quan",
"contextType": "variable",
"element": "unit",
"transform": "evaluate",
"parameter": [
{
"valueString": "per.unit"
}
]
}
]
}
]
},
{
"name": "quanti",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "ratio",
"contextType": "variable",
"element": "denominator",
"variable": "quan",
"transform": "create",
"parameter": [
{
"valueString": "Quantity"
}
]
}
],
"rule": [
{
"name": "period",
"source": [
{
"context": "eff",
"element": "period"
}
],
"target": [
{
"context": "quan",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueString": "1"
}
]
}
]
},
{
"name": "period",
"source": [
{
"context": "eff",
"element": "period",
"variable": "per"
}
],
"target": [
{
"context": "quan",
"contextType": "variable",
"element": "unit",
"transform": "evaluate",
"parameter": [
{
"valueString": "per.unit"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSottoSectionOBS",
"typeMode": "none",
"input": [
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "observation",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "observation",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %observation.id"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "src",
"condition": "observation.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "observation",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSottoSectionMS",
"typeMode": "none",
"input": [
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "Medicationstatement",
"transform": "create",
"parameter": [
{
"valueString": "MedicationStatement"
}
]
},
{
"context": "Medicationstatement",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/MedicationStatement/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "MedicationStatement"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/MedicationStatement/' + %Medicationstatement.id"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "Medicationstatement",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
},
{
"name": "text",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "Medicationstatement",
"contextType": "variable",
"element": "medication",
"variable": "medication",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
},
{
"context": "medication",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "Medicationstatement",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "Medicationstatement",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "unknown"
}
]
}
]
}
]
}
]
},
{
"name": "Observation",
"typeMode": "none",
"input": [
{
"name": "obs",
"type": "Observation",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "encounter",
"type": "Encounter",
"mode": "target"
},
{
"name": "ob",
"type": "Observation",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %encounter.id"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "obs",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'completed')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'active')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "registered"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'aborted')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "cancelled"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'suspended')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "partial"
}
]
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "obs",
"condition": "obs.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "value2",
"source": [
{
"context": "obs",
"element": "effectiveTime",
"variable": "effectiveTime"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "effective",
"variable": "value",
"transform": "create",
"parameter": [
{
"valueString": "dateTime"
}
]
}
],
"dependent": [
{
"name": "TSDateTime",
"variable": [
"effectiveTime",
"value"
]
}
]
},
{
"name": "where",
"source": [
{
"context": "obs",
"condition": "effectiveTime.low.exists() or effectiveTime.high.exists()"
}
],
"rule": [
{
"name": "value3",
"source": [
{
"context": "obs",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "effective",
"variable": "period",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"dependent": [
{
"name": "IVLTSPeriod",
"variable": [
"eff",
"period"
]
}
]
}
]
},
{
"name": "value",
"source": [
{
"context": "obs",
"type": "INT",
"element": "value",
"variable": "int"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "int.value"
}
]
}
]
},
{
"name": "boolean",
"source": [
{
"context": "obs",
"type": "BL",
"element": "value",
"variable": "boolean"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "boolean.value"
}
]
}
]
},
{
"name": "val",
"source": [
{
"context": "obs",
"type": "CD",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "ce",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "originalText",
"source": [
{
"context": "val",
"element": "originalText",
"variable": "vvv"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "text",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "code",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "val",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "val",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "val",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
},
{
"name": "translation",
"source": [
{
"context": "val",
"element": "translation",
"variable": "translation"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "translation",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "translation",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "translation",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "qualifier",
"source": [
{
"context": "translation",
"element": "qualifier",
"variable": "qualifier"
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "qualifier",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "value",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "value",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "value",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "val",
"source": [
{
"context": "obs",
"type": "CE",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "ce",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "originalText",
"source": [
{
"context": "val",
"element": "originalText",
"variable": "vvv"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "text",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "code",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "val",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "val",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "val",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
},
{
"name": "translation",
"source": [
{
"context": "val",
"element": "translation",
"variable": "translation"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "translation",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "translation",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "translation",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "qualifier",
"source": [
{
"context": "translation",
"element": "qualifier",
"variable": "qualifier"
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "qualifier",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "value",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "value",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "value",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "valueQuantity",
"source": [
{
"context": "obs",
"type": "PQ",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "quantity",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "quantity",
"transform": "create",
"parameter": [
{
"valueString": "Quantity"
}
]
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "val",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "quantity",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "value"
}
]
}
]
},
{
"name": "unit",
"source": [
{
"context": "val",
"element": "unit",
"variable": "unit"
}
],
"target": [
{
"context": "quantity",
"contextType": "variable",
"element": "unit",
"transform": "copy",
"parameter": [
{
"valueId": "unit"
}
]
}
]
}
]
}
]
},
{
"name": "value",
"source": [
{
"context": "obs",
"type": "ST",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "create",
"parameter": [
{
"valueString": "string"
}
]
},
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "value.dataString"
}
]
}
]
},
{
"name": "interpretationCode",
"source": [
{
"context": "obs",
"element": "interpretationCode",
"variable": "vvv"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "interpretation",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "methodCode",
"source": [
{
"context": "obs",
"element": "methodCode",
"variable": "vvv"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "method",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "refRange",
"source": [
{
"context": "obs",
"element": "referenceRange",
"variable": "refRange"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "referenceRange",
"variable": "ref",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
}
],
"rule": [
{
"name": "obsRange",
"source": [
{
"context": "refRange",
"element": "observationRange",
"variable": "obsRange"
}
],
"target": [
{
"context": "ref",
"contextType": "variable",
"element": "low",
"variable": "Low",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "IVLPQ",
"source": [
{
"context": "obsRange",
"type": "IVL_PQ",
"element": "value",
"variable": "v"
}
],
"rule": [
{
"name": "decValue",
"source": [
{
"context": "v",
"element": "low",
"variable": "l1"
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "l1",
"element": "value",
"variable": "decValue"
}
],
"target": [
{
"context": "Low",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "decValue"
}
]
}
]
},
{
"name": "unit",
"source": [
{
"context": "l1",
"element": "unit",
"variable": "Unit"
}
],
"target": [
{
"context": "Low",
"contextType": "variable",
"element": "unit",
"transform": "copy",
"parameter": [
{
"valueId": "Unit"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "ObservationConsulenza",
"typeMode": "none",
"input": [
{
"name": "obs",
"type": "Observation",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "encounter",
"type": "Encounter",
"mode": "target"
},
{
"name": "ob",
"type": "Observation",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %encounter.id"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "obs",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'completed')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'active')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "registered"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'aborted')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "cancelled"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'suspended')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "partial"
}
]
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "obs",
"condition": "obs.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "value2c",
"source": [
{
"context": "obs",
"element": "effectiveTime",
"variable": "effectiveTime"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "effective",
"variable": "value",
"transform": "create",
"parameter": [
{
"valueString": "dateTime"
}
]
}
],
"dependent": [
{
"name": "TSDateTime",
"variable": [
"effectiveTime",
"value"
]
}
]
},
{
"name": "where",
"source": [
{
"context": "obs",
"condition": "effectiveTime.low.exists() or effectiveTime.high.exists()"
}
],
"rule": [
{
"name": "value3c",
"source": [
{
"context": "obs",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "effective",
"variable": "period",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"dependent": [
{
"name": "IVLTSPeriod",
"variable": [
"eff",
"period"
]
}
]
}
]
},
{
"name": "value",
"source": [
{
"context": "obs",
"type": "INT",
"element": "value",
"variable": "int"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "int.value"
}
]
}
]
},
{
"name": "boolean",
"source": [
{
"context": "obs",
"type": "BL",
"element": "value",
"variable": "boolean"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "boolean.value"
}
]
}
]
},
{
"name": "val",
"source": [
{
"context": "obs",
"type": "CE",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "ce",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "originltext",
"source": [
{
"context": "val",
"element": "originalText",
"variable": "originalText"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "originalText",
"element": "reference",
"variable": "reference"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "reference"
}
]
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "val",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "val",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "val",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystemVersion",
"source": [
{
"context": "val",
"element": "codeSystemVersion",
"variable": "version"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "version",
"transform": "cast",
"parameter": [
{
"valueId": "version"
},
{
"valueString": "string"
}
]
}
]
}
]
},
{
"name": "translation",
"source": [
{
"context": "val",
"element": "translation",
"variable": "translation"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "translation",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "translation",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "translation",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystemVersion",
"source": [
{
"context": "translation",
"element": "codeSystemVersion",
"variable": "version"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "version",
"transform": "cast",
"parameter": [
{
"valueId": "version"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "qualifier",
"source": [
{
"context": "translation",
"element": "qualifier",
"variable": "qualifier"
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "qualifier",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "value",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "value",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "value",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystemVersion",
"source": [
{
"context": "value",
"element": "codeSystemVersion",
"variable": "version"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "version",
"transform": "cast",
"parameter": [
{
"valueId": "version"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "val",
"source": [
{
"context": "obs",
"type": "CD",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "ce",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "originalText",
"source": [
{
"context": "val",
"element": "originalText",
"variable": "vvv"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "text",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "code",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "val",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "val",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "val",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
},
{
"name": "translation",
"source": [
{
"context": "val",
"element": "translation",
"variable": "translation"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "translation",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "translation",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "translation",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "qualifier",
"source": [
{
"context": "translation",
"element": "qualifier",
"variable": "qualifier"
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "qualifier",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "value",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "value",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "value",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "valueQuantity",
"source": [
{
"context": "obs",
"type": "PQ",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "quantity",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "quantity",
"transform": "create",
"parameter": [
{
"valueString": "Quantity"
}
]
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "val",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "quantity",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "value"
}
]
}
]
},
{
"name": "unit",
"source": [
{
"context": "val",
"element": "unit",
"variable": "unit"
}
],
"target": [
{
"context": "quantity",
"contextType": "variable",
"element": "unit",
"transform": "copy",
"parameter": [
{
"valueId": "unit"
}
]
}
]
}
]
}
]
},
{
"name": "value",
"source": [
{
"context": "obs",
"type": "ST",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "create",
"parameter": [
{
"valueString": "string"
}
]
},
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "value.dataString"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %encounter.id"
}
]
}
]
},
{
"name": "interpretationCode",
"source": [
{
"context": "obs",
"element": "interpretationCode",
"variable": "vvv"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "interpretation",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "methodCode",
"source": [
{
"context": "obs",
"element": "methodCode",
"variable": "vvv"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "method",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "refRange",
"source": [
{
"context": "obs",
"element": "referenceRange",
"variable": "refRange"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "referenceRange",
"variable": "ref",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
}
],
"rule": [
{
"name": "obsRange",
"source": [
{
"context": "refRange",
"element": "observationRange",
"variable": "obsRange"
}
],
"target": [
{
"context": "ref",
"contextType": "variable",
"element": "low",
"variable": "Low",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "IVLPQ",
"source": [
{
"context": "obsRange",
"type": "IVL_PQ",
"element": "value",
"variable": "v"
}
],
"rule": [
{
"name": "decValue",
"source": [
{
"context": "v",
"element": "low",
"variable": "l1"
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "l1",
"element": "value",
"variable": "decValue"
}
],
"target": [
{
"context": "Low",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "decValue"
}
]
}
]
},
{
"name": "unit",
"source": [
{
"context": "l1",
"element": "unit",
"variable": "Unit"
}
],
"target": [
{
"context": "Low",
"contextType": "variable",
"element": "unit",
"transform": "copy",
"parameter": [
{
"valueId": "Unit"
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "perf",
"source": [
{
"context": "obs",
"element": "performer",
"variable": "performer"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "practitioner",
"transform": "create",
"parameter": [
{
"valueString": "Practitioner"
}
]
},
{
"context": "practitioner",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
}
],
"rule": [
{
"name": "assEntity",
"source": [
{
"context": "performer",
"element": "assignedEntity",
"variable": "assEntity"
}
],
"rule": [
{
"name": "meta",
"source": [
{
"context": "assEntity"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "meta",
"variable": "meta"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "assEntity"
}
],
"target": [
{
"context": "meta",
"contextType": "variable",
"element": "tag",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "system",
"source": [
{
"context": "assEntity"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://algoritmodiscoring"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "assEntity"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "ClinicalDocument/body/Consulenza/performer"
}
]
}
]
}
]
}
]
},
{
"name": "identifier",
"source": [
{
"context": "assEntity",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "root1",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "r"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "extension",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "ext"
}
]
}
]
},
{
"name": "assigningAuthorityName",
"source": [
{
"context": "id",
"element": "assigningAuthorityName",
"variable": "s"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "assigner",
"variable": "a"
},
{
"context": "a",
"contextType": "variable",
"element": "display",
"transform": "copy",
"parameter": [
{
"valueId": "s"
}
]
}
]
},
{
"name": "r",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"rule": [
{
"name": "aut",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "id",
"variable": "uuid2",
"transform": "evaluate",
"parameter": [
{
"valueString": "r + '-' + ext"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Practitioner/"
},
{
"valueId": "uuid2"
}
]
},
{
"context": "ob",
"contextType": "variable",
"element": "performer",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Practitioner/' + %practitioner.id"
}
]
}
]
}
]
}
]
},
{
"name": "2.16.840.1.113883.2.9.4.3.2",
"source": [
{
"context": "assEntity",
"element": "id",
"variable": "id",
"condition": "(root = '2.16.840.1.113883.2.9.4.3.2')"
}
],
"rule": [
{
"name": "UUID",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner?identifier="
},
{
"valueId": "ext"
}
]
}
]
}
]
},
{
"name": "assi",
"source": [
{
"context": "assEntity",
"element": "assignedPerson",
"variable": "assi"
}
],
"rule": [
{
"name": "name",
"source": [
{
"context": "assi",
"element": "name",
"variable": "vvv"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "name",
"variable": "vvv",
"transform": "create"
}
]
}
]
}
]
}
]
},
{
"name": "participant",
"source": [
{
"context": "obs",
"element": "participant",
"variable": "participant"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "serviceRequest",
"transform": "create",
"parameter": [
{
"valueString": "ServiceRequest"
}
]
},
{
"context": "serviceRequest",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/ServiceRequest/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "ServiceRequest"
}
]
},
{
"context": "ob",
"contextType": "variable",
"element": "basedOn",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/ServiceRequest/' + %serviceRequest.id"
}
]
}
],
"rule": [
{
"name": "time",
"source": [
{
"context": "participant",
"element": "time",
"variable": "t"
}
],
"target": [
{
"context": "serviceRequest",
"contextType": "variable",
"element": "authoredOn",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.value"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "serviceRequest",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "serviceRequest",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %encounter.id"
}
]
}
]
},
{
"name": "status",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "serviceRequest",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "active"
}
]
}
]
},
{
"name": "intent",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "serviceRequest",
"contextType": "variable",
"element": "intent",
"transform": "copy",
"parameter": [
{
"valueString": "order"
}
]
}
]
},
{
"name": "participantRole",
"source": [
{
"context": "participant",
"element": "participantRole",
"variable": "participantRole"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "practitioner",
"transform": "create",
"parameter": [
{
"valueString": "Practitioner"
}
]
}
],
"rule": [
{
"name": "meta",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "meta",
"variable": "meta"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "meta",
"contextType": "variable",
"element": "tag",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "system",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://algoritmodiscoring"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "ClinicalDocument/body/Consulenza/participant"
}
]
}
]
}
]
}
]
},
{
"name": "identifier",
"source": [
{
"context": "participantRole",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "root1",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "r"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "extension",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "ext"
}
]
}
]
},
{
"name": "assigningAuthorityName",
"source": [
{
"context": "id",
"element": "assigningAuthorityName",
"variable": "s"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "assigner",
"variable": "a"
},
{
"context": "a",
"contextType": "variable",
"element": "display",
"transform": "copy",
"parameter": [
{
"valueId": "s"
}
]
}
]
},
{
"name": "r",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"rule": [
{
"name": "aut",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "id",
"variable": "uuid3",
"transform": "evaluate",
"parameter": [
{
"valueString": "r + '-' + ext"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Practitioner/"
},
{
"valueId": "uuid3"
}
]
},
{
"context": "serviceRequest",
"contextType": "variable",
"element": "performer",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Practitioner/' + %practitioner.id"
}
]
}
]
}
]
}
]
},
{
"name": "2.16.840.1.113883.2.9.4.3.2",
"source": [
{
"context": "participantRole",
"element": "id",
"variable": "id",
"condition": "(root = '2.16.840.1.113883.2.9.4.3.2')"
}
],
"rule": [
{
"name": "UUID",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner?identifier="
},
{
"valueId": "ext"
}
]
}
]
}
]
},
{
"name": "pe",
"source": [
{
"context": "participantRole",
"element": "playingEntity",
"variable": "pe"
}
],
"rule": [
{
"name": "name",
"source": [
{
"context": "pe",
"element": "name",
"variable": "vvv"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "name",
"variable": "vvv",
"transform": "create"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "ObservationEsamiDuranteRicovero",
"typeMode": "none",
"input": [
{
"name": "obs",
"type": "Observation",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "encounter",
"type": "Encounter",
"mode": "target"
},
{
"name": "ob",
"type": "Observation",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %encounter.id"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "obs",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'completed')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'active')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "registered"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'aborted')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "cancelled"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "obs",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'suspended')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "partial"
}
]
}
]
},
{
"name": "statuscode",
"source": [
{
"context": "obs",
"condition": "obs.statusCode.exists().not()"
}
],
"rule": [
{
"name": "status",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
}
]
},
{
"name": "value2r",
"source": [
{
"context": "obs",
"element": "effectiveTime",
"variable": "effectiveTime"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "effective",
"variable": "value",
"transform": "create",
"parameter": [
{
"valueString": "dateTime"
}
]
}
],
"dependent": [
{
"name": "TSDateTime",
"variable": [
"effectiveTime",
"value"
]
}
]
},
{
"name": "where",
"source": [
{
"context": "obs",
"condition": "effectiveTime.low.exists() or effectiveTime.high.exists()"
}
],
"rule": [
{
"name": "value3r",
"source": [
{
"context": "obs",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "effective",
"variable": "period",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"dependent": [
{
"name": "IVLTSPeriod",
"variable": [
"eff",
"period"
]
}
]
}
]
},
{
"name": "value",
"source": [
{
"context": "obs",
"type": "INT",
"element": "value",
"variable": "int"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "int.value"
}
]
}
]
},
{
"name": "boolean",
"source": [
{
"context": "obs",
"type": "BL",
"element": "value",
"variable": "boolean"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "boolean.value"
}
]
}
]
},
{
"name": "val",
"source": [
{
"context": "obs",
"type": "CE",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "ce",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "originltext",
"source": [
{
"context": "val",
"element": "originalText",
"variable": "originalText"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "originalText",
"element": "reference",
"variable": "reference"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "reference"
}
]
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "val",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "val",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "val",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystemVersion",
"source": [
{
"context": "val",
"element": "codeSystemVersion",
"variable": "version"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "version",
"transform": "cast",
"parameter": [
{
"valueId": "version"
},
{
"valueString": "string"
}
]
}
]
}
]
},
{
"name": "translation",
"source": [
{
"context": "val",
"element": "translation",
"variable": "translation"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "translation",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "translation",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "translation",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystemVersion",
"source": [
{
"context": "translation",
"element": "codeSystemVersion",
"variable": "version"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "version",
"transform": "cast",
"parameter": [
{
"valueId": "version"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "qualifier",
"source": [
{
"context": "translation",
"element": "qualifier",
"variable": "qualifier"
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "qualifier",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "value",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "value",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "value",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystemVersion",
"source": [
{
"context": "value",
"element": "codeSystemVersion",
"variable": "version"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "version",
"transform": "cast",
"parameter": [
{
"valueId": "version"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "val",
"source": [
{
"context": "obs",
"type": "CD",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "ce",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "originalText",
"source": [
{
"context": "val",
"element": "originalText",
"variable": "vvv"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "text",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "code",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "val",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "val",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "val",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
},
{
"name": "translation",
"source": [
{
"context": "val",
"element": "translation",
"variable": "translation"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "translation",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "translation",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "translation",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "qualifier",
"source": [
{
"context": "translation",
"element": "qualifier",
"variable": "qualifier"
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "qualifier",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ce",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "value",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "cast",
"parameter": [
{
"valueId": "code"
},
{
"valueString": "string"
}
]
}
]
},
{
"name": "codeSystem",
"source": [
{
"context": "value",
"element": "codeSystem",
"variable": "system"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "system"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "displayName",
"source": [
{
"context": "value",
"element": "displayName",
"variable": "display"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "display",
"transform": "cast",
"parameter": [
{
"valueId": "display"
},
{
"valueString": "string"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "valueQuantity",
"source": [
{
"context": "obs",
"type": "PQ",
"element": "value",
"variable": "val"
}
],
"rule": [
{
"name": "quantity",
"source": [
{
"context": "val"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"variable": "quantity",
"transform": "create",
"parameter": [
{
"valueString": "Quantity"
}
]
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "val",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "quantity",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "value"
}
]
}
]
},
{
"name": "unit",
"source": [
{
"context": "val",
"element": "unit",
"variable": "unit"
}
],
"target": [
{
"context": "quantity",
"contextType": "variable",
"element": "unit",
"transform": "copy",
"parameter": [
{
"valueId": "unit"
}
]
}
]
}
]
}
]
},
{
"name": "value",
"source": [
{
"context": "obs",
"type": "ST",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "create",
"parameter": [
{
"valueString": "string"
}
]
},
{
"context": "ob",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "value.dataString"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %encounter.id"
}
]
}
]
},
{
"name": "interpretationCode",
"source": [
{
"context": "obs",
"element": "interpretationCode",
"variable": "vvv"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "interpretation",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "methodCode",
"source": [
{
"context": "obs",
"element": "methodCode",
"variable": "vvv"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "method",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "effectiveTime",
"source": [
{
"context": "obs",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "effective",
"variable": "per",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"dependent": [
{
"name": "IVLTSPeriod",
"variable": [
"eff",
"per"
]
}
]
},
{
"name": "refRange",
"source": [
{
"context": "obs",
"element": "referenceRange",
"variable": "refRange"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "referenceRange",
"variable": "ref",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
}
],
"rule": [
{
"name": "obsRange",
"source": [
{
"context": "refRange",
"element": "observationRange",
"variable": "obsRange"
}
],
"target": [
{
"context": "ref",
"contextType": "variable",
"element": "low",
"variable": "Low",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "IVLPQ",
"source": [
{
"context": "obsRange",
"type": "IVL_PQ",
"element": "value",
"variable": "v"
}
],
"rule": [
{
"name": "decValue",
"source": [
{
"context": "v",
"element": "low",
"variable": "l1"
}
],
"rule": [
{
"name": "value",
"source": [
{
"context": "l1",
"element": "value",
"variable": "decValue"
}
],
"target": [
{
"context": "Low",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "decValue"
}
]
}
]
},
{
"name": "unit",
"source": [
{
"context": "l1",
"element": "unit",
"variable": "Unit"
}
],
"target": [
{
"context": "Low",
"contextType": "variable",
"element": "unit",
"transform": "copy",
"parameter": [
{
"valueId": "Unit"
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "perf",
"source": [
{
"context": "obs",
"element": "performer",
"variable": "performer"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "practitioner",
"transform": "create",
"parameter": [
{
"valueString": "Practitioner"
}
]
},
{
"context": "practitioner",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
}
],
"rule": [
{
"name": "assEntity",
"source": [
{
"context": "performer",
"element": "assignedEntity",
"variable": "assEntity"
}
],
"rule": [
{
"name": "meta",
"source": [
{
"context": "assEntity"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "meta",
"variable": "meta"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "assEntity"
}
],
"target": [
{
"context": "meta",
"contextType": "variable",
"element": "tag",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "system",
"source": [
{
"context": "assEntity"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://algoritmodiscoring"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "assEntity"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "ClinicalDocument/body/EsamiDuranteRicovero/performer"
}
]
}
]
}
]
}
]
},
{
"name": "identifier",
"source": [
{
"context": "assEntity",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "root1",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "r"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "extension",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "ext"
}
]
}
]
},
{
"name": "assigningAuthorityName",
"source": [
{
"context": "id",
"element": "assigningAuthorityName",
"variable": "s"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "assigner",
"variable": "a"
},
{
"context": "a",
"contextType": "variable",
"element": "display",
"transform": "copy",
"parameter": [
{
"valueId": "s"
}
]
}
]
},
{
"name": "r",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"rule": [
{
"name": "aut",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "id",
"variable": "uuid2",
"transform": "evaluate",
"parameter": [
{
"valueString": "r + '-' + ext"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Practitioner/"
},
{
"valueId": "uuid2"
}
]
},
{
"context": "ob",
"contextType": "variable",
"element": "performer",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Practitioner/' + %practitioner.id"
}
]
}
]
}
]
}
]
},
{
"name": "2.16.840.1.113883.2.9.4.3.2",
"source": [
{
"context": "assEntity",
"element": "id",
"variable": "id",
"condition": "(root = '2.16.840.1.113883.2.9.4.3.2')"
}
],
"rule": [
{
"name": "UUID",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner?identifier="
},
{
"valueId": "ext"
}
]
}
]
}
]
},
{
"name": "assi",
"source": [
{
"context": "assEntity",
"element": "assignedPerson",
"variable": "assi"
}
],
"rule": [
{
"name": "name",
"source": [
{
"context": "assi",
"element": "name",
"variable": "vvv"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "name",
"variable": "vvv",
"transform": "create"
}
]
}
]
}
]
}
]
},
{
"name": "participant",
"source": [
{
"context": "obs",
"element": "participant",
"variable": "participant"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "serviceRequest",
"transform": "create",
"parameter": [
{
"valueString": "ServiceRequest"
}
]
},
{
"context": "serviceRequest",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/ServiceRequest/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "ServiceRequest"
}
]
},
{
"context": "ob",
"contextType": "variable",
"element": "basedOn",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/ServiceRequest/' + %serviceRequest.id"
}
]
}
],
"rule": [
{
"name": "time",
"source": [
{
"context": "participant",
"element": "time",
"variable": "t"
}
],
"target": [
{
"context": "serviceRequest",
"contextType": "variable",
"element": "authoredOn",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.value"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "serviceRequest",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "serviceRequest",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %encounter.id"
}
]
}
]
},
{
"name": "status",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "serviceRequest",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "active"
}
]
}
]
},
{
"name": "intent",
"source": [
{
"context": "obs"
}
],
"target": [
{
"context": "serviceRequest",
"contextType": "variable",
"element": "intent",
"transform": "copy",
"parameter": [
{
"valueString": "order"
}
]
}
]
},
{
"name": "participantRole",
"source": [
{
"context": "participant",
"element": "participantRole",
"variable": "participantRole"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "practitioner",
"transform": "create",
"parameter": [
{
"valueString": "Practitioner"
}
]
}
],
"rule": [
{
"name": "meta",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "meta",
"variable": "meta"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "meta",
"contextType": "variable",
"element": "tag",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "system",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://algoritmodiscoring"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "ClinicalDocument/body/EsamiDuranteRicovero/participant"
}
]
}
]
}
]
}
]
},
{
"name": "identifier",
"source": [
{
"context": "participantRole",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "root1",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "r"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "extension",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "ext"
}
]
}
]
},
{
"name": "assigningAuthorityName",
"source": [
{
"context": "id",
"element": "assigningAuthorityName",
"variable": "s"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "assigner",
"variable": "a"
},
{
"context": "a",
"contextType": "variable",
"element": "display",
"transform": "copy",
"parameter": [
{
"valueId": "s"
}
]
}
]
},
{
"name": "r",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"rule": [
{
"name": "aut",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "id",
"variable": "uuid3",
"transform": "evaluate",
"parameter": [
{
"valueString": "r + '-' + ext"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Practitioner/"
},
{
"valueId": "uuid3"
}
]
},
{
"context": "serviceRequest",
"contextType": "variable",
"element": "performer",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Practitioner/' + %practitioner.id"
}
]
}
]
}
]
}
]
},
{
"name": "2.16.840.1.113883.2.9.4.3.2",
"source": [
{
"context": "participantRole",
"element": "id",
"variable": "id",
"condition": "(root = '2.16.840.1.113883.2.9.4.3.2')"
}
],
"rule": [
{
"name": "UUID",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner?identifier="
},
{
"valueId": "ext"
}
]
}
]
}
]
},
{
"name": "pe",
"source": [
{
"context": "participantRole",
"element": "playingEntity",
"variable": "pe"
}
],
"rule": [
{
"name": "name",
"source": [
{
"context": "pe",
"element": "name",
"variable": "vvv"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "name",
"variable": "vvv",
"transform": "create"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "periodTiming",
"typeMode": "none",
"input": [
{
"name": "effectiveTime",
"type": "PIVL_TS",
"mode": "source"
},
{
"name": "timing",
"type": "Timing",
"mode": "target"
}
],
"rule": [
{
"name": "repeat",
"source": [
{
"context": "effectiveTime"
}
],
"target": [
{
"context": "timing",
"contextType": "variable",
"element": "repeat",
"variable": "r"
}
],
"rule": [
{
"name": "period",
"source": [
{
"context": "effectiveTime",
"element": "period",
"variable": "p"
}
],
"target": [
{
"context": "r",
"contextType": "variable",
"element": "period",
"transform": "evaluate",
"parameter": [
{
"valueString": "p.value"
}
]
}
]
},
{
"name": "period",
"source": [
{
"context": "effectiveTime",
"element": "period",
"variable": "p"
}
],
"target": [
{
"context": "r",
"contextType": "variable",
"element": "periodUnit",
"transform": "evaluate",
"parameter": [
{
"valueString": "p.unit"
}
]
}
]
}
]
}
]
},
{
"name": "Act",
"typeMode": "none",
"documentation": "---------------------------------------------------------------------------------------",
"input": [
{
"name": "cda",
"type": "Act",
"mode": "source"
},
{
"name": "pat",
"type": "Patient",
"mode": "target"
},
{
"name": "ac",
"type": "DiagnosticReport",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "cda",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "ac",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "cda",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'completed')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "final"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "cda",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'active')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "registered"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "cda",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'aborted')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "cancelled"
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "cda",
"element": "statusCode",
"variable": "statusc",
"condition": "(code = 'suspended')"
}
],
"target": [
{
"context": "ob",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "partial"
}
]
}
]
},
{
"name": "value2a",
"source": [
{
"context": "cda",
"element": "effectiveTime",
"variable": "effectiveTime"
}
],
"target": [
{
"context": "ac",
"contextType": "variable",
"element": "effective",
"variable": "value",
"transform": "create",
"parameter": [
{
"valueString": "dateTime"
}
]
}
],
"dependent": [
{
"name": "TSDateTime",
"variable": [
"effectiveTime",
"value"
]
}
]
},
{
"name": "where",
"source": [
{
"context": "obs",
"condition": "effectiveTime.low.exists() or effectiveTime.high.exists()"
}
],
"rule": [
{
"name": "value3a",
"source": [
{
"context": "cda",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "ac",
"contextType": "variable",
"element": "effective",
"variable": "period",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"dependent": [
{
"name": "IVLTSPeriod",
"variable": [
"eff",
"period"
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cda"
}
],
"target": [
{
"context": "ac",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/' + %pat.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cda"
}
],
"target": [
{
"context": "ac",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/' + %enc.id"
}
]
}
]
},
{
"name": "participant",
"source": [
{
"context": "cda",
"element": "participant",
"variable": "part"
}
],
"target": [
{
"context": "enc",
"contextType": "variable",
"element": "participant",
"variable": "participant"
}
],
"rule": [
{
"name": "type",
"source": [
{
"context": "part"
}
],
"target": [
{
"context": "participant",
"contextType": "variable",
"element": "type",
"variable": "type"
}
],
"rule": [
{
"name": "codeType",
"source": [
{
"context": "part"
}
],
"target": [
{
"context": "type",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "codice",
"source": [
{
"context": "part"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "evaluate",
"parameter": [
{
"valueString": "part.typeCode"
}
]
}
]
},
{
"name": "system",
"source": [
{
"context": "part"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType"
}
]
}
]
}
]
}
]
},
{
"name": "participantRole",
"source": [
{
"context": "part",
"element": "participantRole",
"variable": "participantRole"
}
],
"target": [
{
"context": "participant",
"contextType": "variable",
"element": "individual",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
}
],
"rule": [
{
"name": "participanRoleBund",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e"
},
{
"context": "e",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "e",
"contextType": "variable",
"element": "resource",
"variable": "practitioner",
"transform": "create",
"parameter": [
{
"valueString": "Practitioner"
}
]
},
{
"context": "practitioner",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Practitioner/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Practitioner/' + %practitioner.id"
}
]
}
],
"rule": [
{
"name": "meta",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "meta",
"variable": "meta"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "meta",
"contextType": "variable",
"element": "tag",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "system",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://algoritmodiscoring"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "ClinicalDocument/body/Act/participant"
}
]
}
]
}
]
}
]
},
{
"name": "identifier",
"source": [
{
"context": "participantRole",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "root1",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "r"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "ext",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "ext"
}
]
}
],
"rule": [
{
"name": "UUID",
"source": [
{
"context": "participantRole"
}
],
"target": [
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner?identifier="
},
{
"valueId": "ext"
}
]
}
]
}
]
},
{
"name": "assigningAuthorityName",
"source": [
{
"context": "id",
"element": "assigningAuthorityName",
"variable": "s"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "assigner",
"variable": "a"
},
{
"context": "a",
"contextType": "variable",
"element": "display",
"transform": "copy",
"parameter": [
{
"valueId": "s"
}
]
}
]
}
]
},
{
"name": "playingEntity",
"source": [
{
"context": "participantRole",
"element": "playingEntity",
"variable": "playingEntity"
}
],
"rule": [
{
"name": "name",
"source": [
{
"context": "playingEntity",
"element": "name",
"variable": "vvv"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "name",
"variable": "vvv",
"transform": "create"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "entryRelationship",
"source": [
{
"context": "cda",
"element": "entryRelationship",
"variable": "entryRelationship"
}
],
"rule": [
{
"name": "OBS",
"source": [
{
"context": "entryRelationship",
"element": "observation",
"variable": "observation"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e"
},
{
"context": "e",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e",
"contextType": "variable",
"element": "resource",
"variable": "obs",
"transform": "create",
"parameter": [
{
"valueString": "Observation"
}
]
},
{
"context": "obs",
"contextType": "variable",
"element": "id",
"variable": "uuid2",
"transform": "uuid"
},
{
"context": "e",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Observation/"
},
{
"valueId": "uuid2"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Observation/"
},
{
"valueId": "uuid2"
}
]
},
{
"context": "ac",
"contextType": "variable",
"element": "result",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Observation/' + %obs.id"
}
]
}
],
"dependent": [
{
"name": "Observation",
"variable": [
"observation",
"pat",
"enc",
"obs",
"bundle"
]
}
]
}
]
}
]
},
{
"name": "ClinicalDocumentSectionTerapiaDimissione",
"typeMode": "none",
"input": [
{
"name": "cda",
"type": "ClinicalDocument",
"mode": "source"
},
{
"name": "src",
"type": "Section",
"mode": "source"
},
{
"name": "patient",
"type": "Patient",
"mode": "target"
},
{
"name": "tgt",
"mode": "target"
},
{
"name": "bundle",
"type": "Bundle",
"mode": "target"
},
{
"name": "enc",
"type": "Encounter",
"mode": "target"
}
],
"rule": [
{
"name": "title",
"source": [
{
"context": "src",
"element": "title",
"variable": "t"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "title",
"transform": "evaluate",
"parameter": [
{
"valueString": "t.dataString"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "exist",
"source": [
{
"context": "src",
"condition": "src.entry.exists()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "tgt",
"contextType": "variable",
"element": "text",
"variable": "fhirText"
}
],
"rule": [
{
"name": "narrativeStatus",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "generated"
}
]
}
]
},
{
"name": "narrativeText",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "fhirText",
"contextType": "variable",
"element": "div",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
},
{
"name": "where",
"source": [
{
"context": "src",
"condition": "src.entry.exists().not()"
}
],
"rule": [
{
"name": "cdaText",
"source": [
{
"context": "src",
"element": "text",
"variable": "cdaText"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "medicationRq",
"transform": "create",
"parameter": [
{
"valueString": "MedicationRequest"
}
]
},
{
"context": "medicationRq",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/MedicationRequest/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "MedicationRequest"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/MedicationRequest/' + %medicationRq.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "active"
}
]
}
]
},
{
"name": "intent",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "intent",
"transform": "copy",
"parameter": [
{
"valueString": "order"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "medication",
"variable": "codecon",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"rule": [
{
"name": "text",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "codecon",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueString": "string"
}
]
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "cdaText"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "cdaText",
"variable": "t"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "copy",
"parameter": [
{
"valueId": "t"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "substract",
"source": [
{
"context": "src",
"element": "entry",
"variable": "entry1"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "medicationRq",
"transform": "create",
"parameter": [
{
"valueString": "MedicationRequest"
}
]
},
{
"context": "medicationRq",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/MedicationRequest/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "MedicationRequest"
}
]
},
{
"context": "tgt",
"contextType": "variable",
"element": "entry",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/MedicationRequest/' + %medicationRq.id"
}
]
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "subject",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Patient/' + %patient.id"
}
]
}
]
},
{
"name": "reference",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "encounter",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Encounter/' + %enc.id"
}
]
}
]
},
{
"name": "status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "active"
}
]
}
]
},
{
"name": "intent",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "intent",
"transform": "copy",
"parameter": [
{
"valueString": "order"
}
]
}
]
},
{
"name": "participant",
"source": [
{
"context": "entry1",
"element": "substanceAdministration",
"variable": "substract"
}
],
"rule": [
{
"name": "cons",
"source": [
{
"context": "substract",
"element": "consumable",
"variable": "cons"
}
],
"rule": [
{
"name": "man1",
"source": [
{
"context": "cons",
"element": "manufacturedProduct",
"variable": "man1"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "POST"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "medication",
"transform": "create",
"parameter": [
{
"valueString": "Medication"
}
]
},
{
"context": "medication",
"contextType": "variable",
"element": "id",
"variable": "uuid1",
"transform": "uuid"
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Medication/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "Medication"
}
]
},
{
"context": "medicationRq",
"contextType": "variable",
"element": "medication",
"variable": "medref",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "medref",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Medication/' + %medication.id"
}
]
}
],
"rule": [
{
"name": "mm",
"source": [
{
"context": "man1",
"element": "manufacturedMaterial",
"variable": "mm"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "mm",
"element": "code",
"variable": "vvv"
}
],
"target": [
{
"context": "medication",
"contextType": "variable",
"element": "code",
"variable": "vvv",
"transform": "create"
}
]
}
]
},
{
"name": "administrationUnitCode",
"source": [
{
"context": "substract",
"element": "administrationUnitCode",
"variable": "vvv"
}
],
"target": [
{
"context": "medication",
"contextType": "variable",
"element": "form",
"variable": "vvv",
"transform": "create"
}
]
},
{
"name": "entryR",
"source": [
{
"context": "substract",
"element": "entryRelationship",
"variable": "entryR"
}
],
"rule": [
{
"name": "obs",
"source": [
{
"context": "entryR",
"element": "observation",
"variable": "observation"
}
],
"rule": [
{
"name": "ingredient",
"source": [
{
"context": "observation",
"element": "code",
"condition": "displayName = 'Grammatura'"
}
],
"target": [
{
"context": "medication",
"contextType": "variable",
"element": "ingredient",
"variable": "ingredient"
}
],
"rule": [
{
"name": "consumable",
"source": [
{
"context": "substract",
"element": "consumable",
"variable": "consumable"
}
],
"rule": [
{
"name": "product",
"source": [
{
"context": "consumable",
"element": "manufacturedProduct",
"variable": "manufacturedProduct"
}
],
"rule": [
{
"name": "material",
"source": [
{
"context": "manufacturedProduct",
"element": "manufacturedMaterial",
"variable": "manufacturedMaterial"
}
],
"rule": [
{
"name": "CE",
"source": [
{
"context": "manufacturedMaterial",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "ingredient",
"contextType": "variable",
"element": "item",
"variable": "value",
"transform": "create",
"parameter": [
{
"valueString": "CodeableConcept"
}
]
}
],
"dependent": [
{
"name": "CECodeableConcept",
"variable": [
"code",
"value"
]
}
]
}
]
}
]
}
]
},
{
"name": "strenght",
"source": [
{
"context": "observation",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "ingredient",
"contextType": "variable",
"element": "strength",
"variable": "strength"
}
],
"rule": [
{
"name": "numerator",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "strength",
"contextType": "variable",
"element": "numerator",
"variable": "numerator"
}
],
"rule": [
{
"name": "valueN",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "numerator",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "value.value"
}
]
}
]
}
]
},
{
"name": "denominator",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "strength",
"contextType": "variable",
"element": "denominator",
"variable": "denominator"
}
],
"rule": [
{
"name": "valueD",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "denominator",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueInteger": 1
}
]
}
]
}
]
}
]
}
]
},
{
"name": "quantita",
"source": [
{
"context": "observation",
"element": "code",
"condition": "displayName = 'Quantità nella Confezione'"
}
],
"rule": [
{
"name": "amount",
"source": [
{
"context": "observation",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "medication",
"contextType": "variable",
"element": "amount",
"variable": "amount"
}
],
"rule": [
{
"name": "numerator",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "amount",
"contextType": "variable",
"element": "numerator",
"variable": "numerator"
}
],
"rule": [
{
"name": "valueN",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "numerator",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "value.value"
}
]
}
]
}
]
},
{
"name": "denominator",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "amount",
"contextType": "variable",
"element": "denominator",
"variable": "denominator"
}
],
"rule": [
{
"name": "valueD",
"source": [
{
"context": "value"
}
],
"target": [
{
"context": "denominator",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueInteger": 1
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "entry",
"source": [
{
"context": "substract",
"element": "entryRelationship",
"variable": "entryRelationship"
}
],
"rule": [
{
"name": "sub",
"source": [
{
"context": "entryRelationship",
"element": "supply",
"variable": "sup"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dispenseRequest",
"variable": "dispreq"
}
],
"rule": [
{
"name": "quantity",
"source": [
{
"context": "sup"
}
],
"target": [
{
"context": "dispreq",
"contextType": "variable",
"element": "quantity",
"variable": "quantity",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "quantity",
"source": [
{
"context": "sup",
"element": "quantity",
"variable": "q"
}
],
"target": [
{
"context": "quantity",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "q.value"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "tx",
"source": [
{
"context": "substract",
"element": "text",
"variable": "tx"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "note",
"variable": "note"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "tx",
"element": "reference",
"variable": "ref"
}
],
"target": [
{
"context": "note",
"contextType": "variable",
"element": "text",
"transform": "evaluate",
"parameter": [
{
"valueString": "ref.value"
}
]
}
]
}
]
},
{
"name": "statusCode",
"source": [
{
"context": "substract",
"element": "statusCode",
"variable": "st"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "status",
"transform": "evaluate",
"parameter": [
{
"valueString": "st.code"
}
]
}
]
},
{
"name": "period",
"source": [
{
"context": "substract",
"type": "IVL_TS",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosage",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
}
],
"rule": [
{
"name": "timing",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "dosage",
"contextType": "variable",
"element": "timing",
"variable": "timing",
"transform": "create",
"parameter": [
{
"valueString": "Timing"
}
]
}
],
"rule": [
{
"name": "rep",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "timing",
"contextType": "variable",
"element": "repeat",
"variable": "rep"
}
],
"rule": [
{
"name": "period",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "rep",
"contextType": "variable",
"element": "bounds",
"variable": "period",
"transform": "create",
"parameter": [
{
"valueString": "Period"
}
]
}
],
"dependent": [
{
"name": "IVLTSPeriod",
"variable": [
"eff",
"period"
]
}
]
}
]
}
]
}
]
},
{
"name": "period",
"source": [
{
"context": "substract",
"type": "EIVL_TS",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosage",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
}
],
"rule": [
{
"name": "timing",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "dosage",
"contextType": "variable",
"element": "timing",
"variable": "timing",
"transform": "create",
"parameter": [
{
"valueString": "Timing"
}
]
}
],
"rule": [
{
"name": "rep",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "timing",
"contextType": "variable",
"element": "repeat",
"variable": "rep"
}
],
"rule": [
{
"name": "event",
"source": [
{
"context": "eff",
"element": "event",
"variable": "ev"
}
],
"target": [
{
"context": "rep",
"contextType": "variable",
"element": "when",
"transform": "evaluate",
"parameter": [
{
"valueString": "ev.code"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "tim",
"source": [
{
"context": "substract",
"type": "IVL_TS",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosage",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
},
{
"context": "dosage",
"contextType": "variable",
"element": "timing",
"variable": "timing",
"transform": "create",
"parameter": [
{
"valueString": "Timing"
}
]
},
{
"context": "timing",
"contextType": "variable",
"element": "event",
"transform": "evaluate",
"parameter": [
{
"valueString": "eff.value"
}
]
}
]
},
{
"name": "eff",
"source": [
{
"context": "substract",
"type": "PIVL_TS",
"element": "effectiveTime",
"variable": "eff"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosage",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
}
],
"rule": [
{
"name": "cod",
"source": [
{
"context": "eff"
}
],
"target": [
{
"context": "dosage",
"contextType": "variable",
"element": "timing",
"variable": "timing",
"transform": "create",
"parameter": [
{
"valueString": "Timing"
}
]
}
],
"dependent": [
{
"name": "periodTiming",
"variable": [
"eff",
"timing"
]
}
]
}
]
},
{
"name": "dosage",
"source": [
{
"context": "substract"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosage",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
}
],
"rule": [
{
"name": "routeCode",
"source": [
{
"context": "substract",
"element": "routeCode",
"variable": "vvv"
}
],
"target": [
{
"context": "dosage",
"contextType": "variable",
"element": "route",
"variable": "vvv",
"transform": "create"
}
]
}
]
},
{
"name": "dosage",
"source": [
{
"context": "substract"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosage",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
}
],
"rule": [
{
"name": "approachSiteCode",
"source": [
{
"context": "substract",
"element": "approachSiteCode",
"variable": "vvv"
}
],
"target": [
{
"context": "dosage",
"contextType": "variable",
"element": "site",
"variable": "vvv",
"transform": "create"
}
]
}
]
},
{
"name": "Dosage",
"source": [
{
"context": "substract",
"element": "doseQuantity",
"variable": "doseQuant"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosageInstruction",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
}
],
"rule": [
{
"name": "ot",
"source": [
{
"context": "doseQuant",
"element": "originalText",
"variable": "ot"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "ot",
"element": "reference",
"variable": "vvv"
}
],
"target": [
{
"context": "dosageInstruction",
"contextType": "variable",
"element": "text",
"variable": "vvv",
"transform": "create"
}
]
}
]
},
{
"name": "dosageRate",
"source": [
{
"context": "doseQuant"
}
],
"target": [
{
"context": "dosageInstruction",
"contextType": "variable",
"element": "doseAndRate",
"variable": "dosageRate"
}
],
"rule": [
{
"name": "d",
"source": [
{
"context": "doseQuant"
}
],
"target": [
{
"context": "dosageRate",
"contextType": "variable",
"element": "dose",
"variable": "d",
"transform": "create",
"parameter": [
{
"valueString": "Range"
}
]
}
],
"rule": [
{
"name": "low",
"source": [
{
"context": "doseQuant"
}
],
"target": [
{
"context": "d",
"contextType": "variable",
"element": "low",
"variable": "l",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "low",
"source": [
{
"context": "doseQuant",
"element": "low",
"variable": "lo"
}
],
"target": [
{
"context": "l",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "lo.value"
}
]
}
]
},
{
"name": "low",
"source": [
{
"context": "doseQuant",
"element": "low",
"variable": "lo"
}
],
"target": [
{
"context": "l",
"contextType": "variable",
"element": "unit",
"transform": "evaluate",
"parameter": [
{
"valueString": "lo.unit"
}
]
}
]
}
]
},
{
"name": "low",
"source": [
{
"context": "doseQuant"
}
],
"target": [
{
"context": "d",
"contextType": "variable",
"element": "high",
"variable": "h",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "high",
"source": [
{
"context": "doseQuant",
"element": "high",
"variable": "hi"
}
],
"target": [
{
"context": "h",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "hi.value"
}
]
}
]
},
{
"name": "high",
"source": [
{
"context": "doseQuant",
"element": "high",
"variable": "hi"
}
],
"target": [
{
"context": "h",
"contextType": "variable",
"element": "unit",
"transform": "evaluate",
"parameter": [
{
"valueString": "hi.unit"
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "rateq",
"source": [
{
"context": "substract",
"element": "rateQuantity",
"variable": "rateQuantity"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "dosageInstruction",
"variable": "dosageInstruction1",
"transform": "create",
"parameter": [
{
"valueString": "Dosage"
}
]
}
],
"rule": [
{
"name": "ot",
"source": [
{
"context": "rateQuantity",
"element": "originalText",
"variable": "ot"
}
],
"rule": [
{
"name": "reference",
"source": [
{
"context": "ot",
"element": "reference",
"variable": "vvv"
}
],
"target": [
{
"context": "dosageInstruction1",
"contextType": "variable",
"element": "text",
"variable": "vvv",
"transform": "create"
}
]
}
]
},
{
"name": "dosageRate",
"source": [
{
"context": "rateQuantity"
}
],
"target": [
{
"context": "dosageInstruction1",
"contextType": "variable",
"element": "doseAndRate",
"variable": "dosageRate"
}
],
"rule": [
{
"name": "d",
"source": [
{
"context": "rateQuantity"
}
],
"target": [
{
"context": "dosageRate",
"contextType": "variable",
"element": "rate",
"variable": "d",
"transform": "create",
"parameter": [
{
"valueString": "Range"
}
]
}
],
"rule": [
{
"name": "low",
"source": [
{
"context": "rateQuantity"
}
],
"target": [
{
"context": "d",
"contextType": "variable",
"element": "low",
"variable": "l",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "low",
"source": [
{
"context": "rateQuantity",
"element": "low",
"variable": "lo"
}
],
"target": [
{
"context": "l",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "lo.value"
}
]
}
]
},
{
"name": "low",
"source": [
{
"context": "rateQuantity",
"element": "low",
"variable": "lo"
}
],
"target": [
{
"context": "l",
"contextType": "variable",
"element": "unit",
"transform": "evaluate",
"parameter": [
{
"valueString": "lo.unit"
}
]
}
]
}
]
},
{
"name": "low",
"source": [
{
"context": "rateQuantity"
}
],
"target": [
{
"context": "d",
"contextType": "variable",
"element": "high",
"variable": "h",
"transform": "create",
"parameter": [
{
"valueString": "SimpleQuantity"
}
]
}
],
"rule": [
{
"name": "high",
"source": [
{
"context": "rateQuantity",
"element": "high",
"variable": "hi"
}
],
"target": [
{
"context": "h",
"contextType": "variable",
"element": "value",
"transform": "evaluate",
"parameter": [
{
"valueString": "hi.value"
}
]
}
]
},
{
"name": "high",
"source": [
{
"context": "rateQuantity",
"element": "high",
"variable": "hi"
}
],
"target": [
{
"context": "h",
"contextType": "variable",
"element": "unit",
"transform": "evaluate",
"parameter": [
{
"valueString": "hi.unit"
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name": "partRole",
"source": [
{
"context": "substract",
"element": "participant",
"variable": "part"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "e1"
},
{
"context": "e1",
"contextType": "variable",
"element": "request",
"variable": "request",
"transform": "create",
"parameter": [
{
"valueString": "BackboneElement"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "resource",
"variable": "practitioner",
"transform": "create",
"parameter": [
{
"valueString": "Practitioner"
}
]
}
],
"rule": [
{
"name": "time",
"source": [
{
"context": "part",
"element": "time",
"variable": "time"
}
],
"target": [
{
"context": "medicationRq",
"contextType": "variable",
"element": "authoredOn",
"transform": "evaluate",
"parameter": [
{
"valueString": "time.value"
}
]
}
]
},
{
"name": "perf",
"source": [
{
"context": "part",
"element": "participantRole",
"variable": "partRole"
}
],
"rule": [
{
"name": "meta",
"source": [
{
"context": "partRole"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "meta",
"variable": "meta"
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "partRole"
}
],
"target": [
{
"context": "meta",
"contextType": "variable",
"element": "tag",
"variable": "coding",
"transform": "create",
"parameter": [
{
"valueString": "Coding"
}
]
}
],
"rule": [
{
"name": "system",
"source": [
{
"context": "partRole"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://algoritmodiscoring"
}
]
}
]
},
{
"name": "code",
"source": [
{
"context": "partRole"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "ClinicalDocument/body/TerapiaFarmacologicaRicovero/participant"
}
]
}
]
}
]
}
]
},
{
"name": "identifier",
"source": [
{
"context": "partRole",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "root1",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "system",
"transform": "translate",
"parameter": [
{
"valueId": "r"
},
{
"valueString": "http://hl7.org/fhir/ConceptMap/special-oid2uri"
},
{
"valueString": "uri"
}
]
}
]
},
{
"name": "extension",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "ext"
}
]
}
]
},
{
"name": "assigningAuthorityName",
"source": [
{
"context": "id",
"element": "assigningAuthorityName",
"variable": "s"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "assigner",
"variable": "a"
},
{
"context": "a",
"contextType": "variable",
"element": "display",
"transform": "copy",
"parameter": [
{
"valueId": "s"
}
]
}
]
},
{
"name": "r",
"source": [
{
"context": "id",
"element": "root",
"variable": "r"
}
],
"rule": [
{
"name": "aut",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "id",
"variable": "uuid2",
"transform": "evaluate",
"parameter": [
{
"valueString": "r + '-' + ext"
}
]
},
{
"context": "e1",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "https://example/Practitioner/"
},
{
"valueId": "uuid2"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner/"
},
{
"valueId": "uuid1"
}
]
},
{
"context": "medicationRq",
"contextType": "variable",
"element": "performer",
"variable": "reference",
"transform": "create",
"parameter": [
{
"valueString": "Reference"
}
]
},
{
"context": "reference",
"contextType": "variable",
"element": "reference",
"transform": "evaluate",
"parameter": [
{
"valueString": "'https://example/Practitioner/' + %practitioner.id"
}
]
}
]
}
]
}
]
},
{
"name": "2.16.840.1.113883.2.9.4.3.2",
"source": [
{
"context": "partRole",
"element": "id",
"variable": "id",
"condition": "(root = '2.16.840.1.113883.2.9.4.3.2')"
}
],
"rule": [
{
"name": "UUID",
"source": [
{
"context": "id",
"element": "extension",
"variable": "ext"
}
],
"target": [
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Practitioner?identifier="
},
{
"valueId": "ext"
}
]
}
]
}
]
},
{
"name": "assi",
"source": [
{
"context": "partRole",
"element": "playingEntity",
"variable": "assi"
}
],
"rule": [
{
"name": "name",
"source": [
{
"context": "assi",
"element": "name",
"variable": "vvv"
}
],
"target": [
{
"context": "practitioner",
"contextType": "variable",
"element": "name",
"variable": "vvv",
"transform": "create"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}