the manifest can be used in:
- ShEx.JS shex-simple interface
the manifest can be used in:
| - schemaLabel: schema | |
| schemaURL: schema.shex | |
| dataLabel: data | |
| dataURL: data.ttl | |
| queryMap: | | |
| <PatientX>@START | |
| staticVars: {} | |
| outputSchemaURL: outputSchema.shex | |
| outputShapeMap: "<tag:BPfhir123>@<collector>" | |
| status: conformant |
| BASE <http://my.data.example/medical/> | |
| PREFIX med: <http://dam.example/med#> | |
| PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> | |
| <PatientX> | |
| med:name "Sue" ; | |
| med:reports <Report1>, <Report2> . | |
| <Report1> | |
| med:reportNo "one" ; | |
| med:results <Res00>, <Res01> . | |
| <Res00> | |
| med:systolic [ | |
| med:value "100"^^xsd:float ; | |
| med:units "mmHg" | |
| ] ; | |
| med:diastolic [ | |
| med:value "60"^^xsd:float ; | |
| med:units "mmHg" | |
| ] . | |
| <Res01> | |
| med:systolic [ | |
| med:value "101"^^xsd:float ; | |
| med:units "mmHg" | |
| ] ; | |
| med:diastolic [ | |
| med:value "61"^^xsd:float ; | |
| med:units "mmHg" | |
| ] . | |
| <Report2> | |
| med:reportNo "two" ; | |
| med:results <Res10>, <Res11> . | |
| <Res10> | |
| med:systolic [ | |
| med:value "110"^^xsd:float ; | |
| med:units "mmHg" | |
| ] ; | |
| med:diastolic [ | |
| med:value "70"^^xsd:float ; | |
| med:units "mmHg" | |
| ] . | |
| <Res11> | |
| med:systolic [ | |
| med:value "111"^^xsd:float ; | |
| med:units "mmHg" | |
| ] ; | |
| med:diastolic [ | |
| med:value "71"^^xsd:float ; | |
| med:units "mmHg" | |
| ] ; | |
| med:someConstProp "asdf" . |
| PREFIX fhir: <http://hl7.org/fhir-rdf/> | |
| PREFIX sct: <http://snomed.info/sct/> | |
| PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> | |
| PREFIX bp: <http://shex.io/extensions/Map/#BPDAM-> | |
| PREFIX Map: <http://shex.io/extensions/Map/#> | |
| start = @<collector> | |
| <Patient> { | |
| fhir:Patient.name LITERAL %Map:{ bp:name %}; | |
| } | |
| <collector> { | |
| fhir:item @<BPreport>* | |
| } | |
| <BPreport> { | |
| a [fhir:DiagnosticReport]?; | |
| fhir:status ["final"]; | |
| fhir:subject @<Patient>; | |
| fhir:coding { fhir:code [sct:Blood_Pressure] }; | |
| fhir:component @<sysBP>; | |
| fhir:component @<diaBP> | |
| } | |
| <BPfhir> { | |
| a [fhir:Observation]?; | |
| fhir:subject @<Patient>; | |
| fhir:coding { fhir:code [sct:Blood_Pressure] }; | |
| fhir:component @<sysBP>; | |
| fhir:component @<diaBP> | |
| } | |
| <sysBP> { | |
| a [fhir:Observation]?; | |
| fhir:coding { fhir:code [sct:Systolic_Blood_Pressure] }; | |
| fhir:valueQuantity { | |
| a [fhir:Quantity]?; | |
| fhir:value xsd:float %Map:{ bp:sysVal %}; | |
| fhir:units xsd:string %Map:{ bp:sysUnits %} | |
| } | |
| } | |
| <diaBP> { | |
| a [fhir:Observation]?; | |
| fhir:coding { fhir:code [sct:Diastolic_Blood_Pressure] }; | |
| fhir:valueQuantity { | |
| a [fhir:Quantity]?; | |
| fhir:value xsd:float %Map:{ bp:diaVal %}; | |
| fhir:units xsd:string %Map:{ bp:diaUnits %} | |
| }; | |
| fhir:foo xsd:string? %Map:{ <http://abc.example/someConstant> %} | |
| } |
| PREFIX : <http://dam.example/med#> | |
| PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> | |
| PREFIX bp: <http://shex.io/extensions/Map/#BPDAM-> | |
| PREFIX Map: <http://shex.io/extensions/Map/#> | |
| start = @<PatientDAM> | |
| <PatientDAM> { | |
| :name LITERAL %Map:{ bp:name %}; | |
| :reports @<ReportsDAM>* %Map:{ bp:reports %} | |
| } | |
| <ReportsDAM> { | |
| :reportNo LITERAL %Map:{ bp:reportNo %}; | |
| :results @<BPunitsDAM>* %Map:{ bp:bp %} | |
| } | |
| <BPunitsDAM> { | |
| :systolic { | |
| :value xsd:float %Map:{ bp:sysVal %}; | |
| :units xsd:string %Map:{ bp:sysUnits %} | |
| }; | |
| :diastolic { | |
| :value xsd:float %Map:{ bp:diaVal %}; | |
| :units xsd:string %Map:{ bp:diaUnits %} | |
| }; | |
| :someConstProp xsd:string? %Map:{ <http://abc.example/someConstant> %} | |
| } |