OCL FHIR Core (beta)
OCL supports a subset of the FHIR R4B Terminology Services specification. OCL FHIR Core (beta) implementation supports the FHIR CodeSystem
, ValueSet
and ConceptMap
terminology resources and their operations ($validate-code
, $lookup
, $expand
, and $translate
) in alignment with the IHE Sharing Valuesets and Concept Maps (SVCM) Profile. Users may interchangeably interact with terminology resources loaded into OCL using the OCL FHIR Core API or the OCL API.
OCL Cabability Statement DRAFT: https://fhir.openconceptlab.org/fhir/
FHIR Validator
The FHIR Validator is deployed at: https://fhir-validator.qa.openconceptlab.org. Requests may use GET
or POST
. The FHIR Validator is used by OCL to transform XML FHIR requests to JSON, which is natively understood by OCL.
Example requests:
curl --location --request GET 'https://fhir.qa.openconceptlab.org/fhir/CodeSystem' --header 'Accept: application/xml'
curl --location --request GET 'https://fhir.qa.openconceptlab.org/fhir/CodeSystem' --header 'Accept: application/fhir+xml'
curl --location --request GET 'https://fhir.qa.openconceptlab.org/fhir/ValueSet' --header 'Accept: application/xml'
FHIR NPM Package Import
This feature provides an API method to import FHIR NPM Packages directly from the HL7 FHIR NPM Package Registry. It also enhances the bulk import tool in OCL to support FHIR resources and Does 44.
The integral part of the work is to make large imports memory efficient by implementing streamed file read as opposed to loading the entire file in memory.
The implementation so far includes:
Endpoint for fetching a package from NPM registry and importing for authenticated users under a selected namespace (org or user) (API only) (must for MVP)
Overwrite existing resources if id and version matches in the same namespace (must for MVP)
Create new versions of resources if only id matches (must for MVP)
Import all currently supported resources i.e. CodeSystem, ValueSet, ConceptMap (must for MVP)
Remaining work:
Endpoint for uploading and importing a package for authenticated users under a selected namespace (org or user) (API only) (must for MVP)
UI for uploading or fetching a package and importing (UI only) (must for MVP)
Fetching dependent packages (must for MVP)
A summary of imported packages and created/updated resources (nice to have for MVP)
A dialog presented before importing for the user to confirm which lists all package dependencies that needs to be imported (nice to have for MVP)