This repo is maintained by the RDF subgroup of the HL7 ITS group, and is mostly used for tracking FHIR RDF issues.
RDF (Turtle) is one of three official FHIR serialization formats, along with JSON and XML.
Both JSON and RDF (Turtle)
examples are generated from XML master examples during the FHIR spec build process.
The FHIR publishing process on github generates:
- a ShEx schema for all core FHIR resources,
- a fairly minimal FHIR ontology; and
- RDF serializations for all of the FHIR examples in the FHIR specification.
The RDF and ShEx generation code in this repository is no longer maintained. See documentation below for an overview of the current generation process.
Still in use:
- scripts -- Convenience scripts for transforming FHIR RDF data
Obsolete:
data - the current stable FHIR specificationexamples -- XML examples from specificationsite -- FHIR definitions (we use the json format)rdf -- RDF representation of examplesdefinitions.shex -- shex definitions of FHIR contentdefinitions.xml -- XML definitions used in xslt transformationextract.log -- log of build for the data directory
hcls_fhir_rdf -- python 3 modules for building data directoryontology -- early work on modeling FHIR definitions in OWLtests -- python unit tests (not a lot at the moment)xsl -- XSLT 2.0 transform for converting FHIR instances from XML to RDF
-
HL7/fhir: Official source for the HL7 FHIR Specification
- Publishes the FHIR specification and its artifacts
- Uses Kindling for generating all artifact serializations
-
- Uses org.hl7.fhir.core for parsing and serialization
- Publisher.java - CLI entry point, builds artifacts for publishing
- FhirTurtleGenerator.java - builds the ontology
- TurtleSpecGenerator.java - builds pseudo-turtle templates for each resource, e.g Patient - FHIR v5.0.0
-
- TurtleParser.java - serializes R5+ resources
- RdfParser.java - serializes resource versions prior to R5
- ShExGenerator.java - serializes ShEx schemas
- TurtleGeneratorTests.java - Unit tests and convenience methods for serializing R5+ resources