-
Notifications
You must be signed in to change notification settings - Fork 5
CodeSystem
The OCL FHIR service converts OCL's Source into FHIR's CodeSystem resource and provides ability to interact with OCL resources in FHIR format. The CodeSystem can be retrieved using two type of identifiers:
- canonical url
- Id
Get CodeSystem
- get a single codesystem
- get a codesystem version
- get list of codesystem versions
- get list of codesystems
CodeSystem Operations
The version-less request for the code system returns most recent released version. If none of the version is released then empty response will be returned.
GET /fhir/CodeSystem/url=:url
GET /orgs/:org/CodeSystem/:id
url - The canonical url of the codesystem
org - The id of OCL organization
id - The id of OCL Source
GET /fhir/CodeSystem/url=https://www.state.gov/pepfar
GET /orgs/PEPFAR/CodeSystem/MER
Example response
{
"resourceType": "Bundle",
"id": "e689d8a8-462a-426e-bb74-cb36c1be6938",
"meta": {
"lastUpdated": "2020-12-14T13:38:22.667-05:00"
},
"type": "searchset",
"total": 1,
"link": [
{
"relation": "self",
"url": "http://localhost:8080/fhir/CodeSystem/?_format=json&url=https://www.state.gov/pepfar"
}
],
"entry": [
{
"resource": {
"resourceType": "CodeSystem",
"id": "MER",
"language": "en",
"url": "https://www.state.gov/pepfar",
"identifier": [
{
"use": "usual",
"type": {
"coding": [
{
"system": "http://hl7.org/fhir/v2/0203",
"code": "ACSN",
"display": "Accession ID"
}
],
"text": "Accession ID"
},
"system": "http://fhir.openconceptlab.org",
"value": "/orgs/PEPFAR-Test8/CodeSystem/MER/v2.0/"
}
],
"version": "v2.0",
"name": "MER Source",
"title": "DATIM Monitoring, Evaluation & Results Metadata",
"status": "active",
"date": "2020-12-01T00:00:00-05:00",
"publisher": "PEPFAR",
"contact": [
{
"name": "Jon Doe 1",
"telecom": [
{
"system": "email",
"value": "jondoe1@gmail.com",
"use": "work",
"rank": 1,
"period": {
"start": "2020-10-29T10:26:15-04:00",
"end": "2025-10-29T10:26:15-04:00"
}
}
]
}
],
"jurisdiction": [
{
"coding": [
{
"system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
"code": "USA",
"display": "United States of America"
}
]
}
],
"purpose": "Test code system",
"copyright": "This is the test source and copyright protected.",
"content": "example",
"count": 20751,
"property": [
{
"code": "conceptclass",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Classes/concepts",
"description": "Standard list of concept classes.",
"type": "string"
},
{
"code": "datatype",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Datatypes/concepts",
"description": "Standard list of concept datatypes.",
"type": "string"
},
{
"code": "inactive",
"uri": "http://hl7.org/fhir/concept-properties",
"description": "True if the concept is not considered active.",
"type": "Coding"
}
],
"concept": [
{
"code": "A08J7tE7g4m",
"display": "TB_SCREEN (N, DSD, Age): PLHIV Screened",
"designation": [
{
"language": "en",
"use": {
"code": "Short"
},
"value": "TB_SCREEN (N, DSD, Age)"
},
{
"language": "en",
"use": {
"code": "Fully Specified"
},
"value": "TB_SCREEN (N, DSD, Age): PLHIV Screened"
},
{
"language": "en",
"use": {
"code": "Code"
},
"value": "TB_SCREEN_N_DSD_Age"
}
],
"property": [
{
"code": "conceptclass",
"valueString": "Data Element"
},
{
"code": "datatype",
"valueString": "Numeric"
},
{
"code": "inactive",
"valueBoolean": false
}
]
}
]
}
}
]
}By default, first 100 concepts are returned for a code system. If user wants to get more concepts, OCL FHIR service provides pagination support for a resource. The default page value is page=1 and this number can be incremented to retrieve more concepts.
GET /fhir/CodeSystem/url=:url&version=:version
GET /orgs/:org/CodeSystem/:id/version/:version
url - The canonical url of the codesystem
org - The id of OCL organization
id - The id of OCL Source
version - The version of code system
GET /fhir/CodeSystem/url=https://www.state.gov/pepfar&version=v1.0
GET /orgs/:org/CodeSystem/MER/version/v1.0
Example response
{
"resourceType": "Bundle",
"id": "e689d8a8-462a-426e-bb74-cb36c1be6938",
"meta": {
"lastUpdated": "2020-12-14T13:38:22.667-05:00"
},
"type": "searchset",
"total": 1,
"link": [
{
"relation": "self",
"url": "http://localhost:8080/fhir/CodeSystem/?_format=json&url=https://www.state.gov/pepfar"
}
],
"entry": [
{
"resource": {
"resourceType": "CodeSystem",
"id": "MER",
"language": "en",
"url": "https://www.state.gov/pepfar",
"identifier": [
{
"use": "usual",
"type": {
"coding": [
{
"system": "http://hl7.org/fhir/v2/0203",
"code": "ACSN",
"display": "Accession ID"
}
],
"text": "Accession ID"
},
"system": "http://fhir.openconceptlab.org",
"value": "/orgs/PEPFAR-Test8/CodeSystem/MER/v1.0/"
}
],
"version": "v1.0",
"name": "MER Source",
"title": "DATIM Monitoring, Evaluation & Results Metadata",
"status": "active",
"date": "2020-12-01T00:00:00-05:00",
"publisher": "PEPFAR",
"contact": [
{
"name": "Jon Doe 1",
"telecom": [
{
"system": "email",
"value": "jondoe1@gmail.com",
"use": "work",
"rank": 1,
"period": {
"start": "2020-10-29T10:26:15-04:00",
"end": "2025-10-29T10:26:15-04:00"
}
}
]
}
],
"jurisdiction": [
{
"coding": [
{
"system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
"code": "USA",
"display": "United States of America"
}
]
}
],
"purpose": "Test code system",
"copyright": "This is the test source and copyright protected.",
"content": "example",
"count": 20751,
"property": [
{
"code": "conceptclass",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Classes/concepts",
"description": "Standard list of concept classes.",
"type": "string"
},
{
"code": "datatype",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Datatypes/concepts",
"description": "Standard list of concept datatypes.",
"type": "string"
},
{
"code": "inactive",
"uri": "http://hl7.org/fhir/concept-properties",
"description": "True if the concept is not considered active.",
"type": "Coding"
}
],
"concept": [
{
"code": "A08J7tE7g4m",
"display": "TB_SCREEN (N, DSD, Age): PLHIV Screened",
"designation": [
{
"language": "en",
"use": {
"code": "Short"
},
"value": "TB_SCREEN (N, DSD, Age)"
},
{
"language": "en",
"use": {
"code": "Fully Specified"
},
"value": "TB_SCREEN (N, DSD, Age): PLHIV Screened"
},
{
"language": "en",
"use": {
"code": "Code"
},
"value": "TB_SCREEN_N_DSD_Age"
}
],
"property": [
{
"code": "conceptclass",
"valueString": "Data Element"
},
{
"code": "datatype",
"valueString": "Numeric"
},
{
"code": "inactive",
"valueBoolean": false
}
]
}
]
}
}
]
}This request returns all released versions for a given code system. Note that this request only returns code system definitions and does not populate concepts.
GET /fhir/CodeSystem/url=:url&version=*
GET /orgs/:org/CodeSystem/:id/version
GET /orgs/:org/CodeSystem/:id/version/*
url - The canonical url of the codesystem
org - The id of OCL organization
id - The id of OCL Source
version - '*' value indicates all versions
GET /fhir/CodeSystem/url=https://www.state.gov/pepfar&version=*
GET /orgs/PEPFAR/CodeSystem/MER/version
GET /orgs/PEPFAR/CodeSystem/MER/version/*
Example response
{
"resourceType": "Bundle",
"id": "52939e86-ad18-4287-bf14-573a446adff9",
"meta": {
"lastUpdated": "2020-12-14T14:27:00.868-05:00"
},
"type": "searchset",
"total": 2,
"link": [
{
"relation": "self",
"url": "http://localhost:8080/fhir/CodeSystem/?_format=json&url=https%3A%2F%2Fwww.state.gov%2Fpepfar&version=*"
}
],
"entry": [
{
"resource": {
"resourceType": "CodeSystem",
"id": "MER",
"language": "en",
"url": "https://www.state.gov/pepfar",
"identifier": [
{
"type": {
"coding": [
{
"system": "http://hl7.org/fhir/v2/0203",
"code": "ACSN",
"display": "Accession ID"
}
],
"text": "Accession ID"
},
"system": "http://fhir.openconceptlab.org",
"value": "/orgs/PEPFAR-Test8/CodeSystem/MER/v2.0/"
}
],
"version": "v2.0",
"name": "MER Source",
"title": "DATIM Monitoring, Evaluation & Results Metadata",
"status": "active",
"date": "2020-12-01T00:00:00-05:00",
"publisher": "PEPFAR",
"contact": [
{
"name": "Jon Doe 1",
"telecom": [
{
"system": "email",
"value": "jondoe1@gmail.com",
"use": "work",
"rank": 1,
"period": {
"start": "2020-10-29T10:26:15-04:00",
"end": "2025-10-29T10:26:15-04:00"
}
}
]
}
],
"jurisdiction": [
{
"coding": [
{
"system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
"code": "USA",
"display": "United States of America"
}
]
}
],
"purpose": "Test code system",
"copyright": "This is the test source and copyright protected.",
"content": "example",
"count": 20751,
"property": [
{
"code": "conceptclass",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Classes/concepts",
"description": "Standard list of concept classes.",
"type": "string"
},
{
"code": "datatype",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Datatypes/concepts",
"description": "Standard list of concept datatypes.",
"type": "string"
},
{
"code": "inactive",
"uri": "http://hl7.org/fhir/concept-properties",
"description": "True if the concept is not considered active.",
"type": "Coding"
}
]
}
},
{
"resource": {
"resourceType": "CodeSystem",
"id": "MER",
"language": "en",
"url": "https://www.state.gov/pepfar",
"identifier": [
{
"type": {
"coding": [
{
"system": "http://hl7.org/fhir/v2/0203",
"code": "ACSN",
"display": "Accession ID"
}
],
"text": "Accession ID"
},
"system": "http://fhir.openconceptlab.org",
"value": "/orgs/PEPFAR-Test8/CodeSystem/MER/v1.0/"
}
],
"version": "v1.0",
"name": "MER Source",
"title": "DATIM Monitoring, Evaluation & Results Metadata",
"status": "active",
"content": "example",
"count": 20751,
"property": [
{
"code": "conceptclass",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Classes/concepts",
"description": "Standard list of concept classes.",
"type": "string"
},
{
"code": "datatype",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Datatypes/concepts",
"description": "Standard list of concept datatypes.",
"type": "string"
},
{
"code": "inactive",
"uri": "http://hl7.org/fhir/concept-properties",
"description": "True if the concept is not considered active.",
"type": "Coding"
}
]
}
}
]
}This request returns most recent released versions of all code systems.
GET /fhir/CodeSystem/
GET /orgs/:org/CodeSystem/
org - The id of OCL organization
GET /fhir/CodeSystem/
GET /orgs/PEPFAR/CodeSystem
Example response
{
"resourceType": "Bundle",
"id": "c260abd6-4c35-4b1d-8f43-d269e1f6f543",
"meta": {
"lastUpdated": "2020-12-14T16:43:29.773-05:00"
},
"type": "searchset",
"total": 1,
"link": [
{
"relation": "self",
"url": "http://localhost:8080/fhir/CodeSystem"
}
],
"entry": [
{
"resource": {
"resourceType": "CodeSystem",
"id": "MER1",
"language": "en",
"url": "https://www.state.gov/pepfar1",
"identifier": [
{
"type": {
"coding": [
{
"system": "http://hl7.org/fhir/v2/0203",
"code": "ACSN",
"display": "Accession ID"
}
],
"text": "Accession ID"
},
"system": "http://fhir.openconceptlab.org",
"value": "/orgs/PEPFAR-Test8/CodeSystem/MER1/v1.0/"
}
],
"version": "v1.0",
"name": "MER1 Source",
"title": "DATIM Monitoring, Evaluation & Results Metadata",
"status": "active",
"date": "2020-11-01T00:00:00-05:00",
"publisher": "PEPFAR",
"contact": [
{
"name": "Jon Doe 1",
"telecom": [
{
"system": "email",
"value": "jondoe1@gmail.com",
"use": "work",
"rank": 1,
"period": {
"start": "2020-10-29T10:26:15-04:00",
"end": "2025-10-29T10:26:15-04:00"
}
}
]
}
],
"jurisdiction": [
{
"coding": [
{
"system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
"code": "USA",
"display": "United States of America"
}
]
}
],
"purpose": "Test code system",
"copyright": "This is the test source and copyright protected.",
"content": "example",
"count": 20751,
"property": [
{
"code": "conceptclass",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Classes/concepts",
"description": "Standard list of concept classes.",
"type": "string"
},
{
"code": "datatype",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Datatypes/concepts",
"description": "Standard list of concept datatypes.",
"type": "string"
},
{
"code": "inactive",
"uri": "http://hl7.org/fhir/concept-properties",
"description": "True if the concept is not considered active.",
"type": "Coding"
}
]
}
},
{
"resource": {
"resourceType": "CodeSystem",
"id": "MER2",
"language": "en",
"url": "https://www.state.gov/pepfar2",
"identifier": [
{
"type": {
"coding": [
{
"system": "http://hl7.org/fhir/v2/0203",
"code": "ACSN",
"display": "Accession ID"
}
],
"text": "Accession ID"
},
"system": "http://fhir.openconceptlab.org",
"value": "/orgs/PEPFAR-Test8/CodeSystem/MER2/v2.0/"
}
],
"version": "v2.0",
"name": "MER2 Source",
"title": "DATIM Monitoring, Evaluation & Results Metadata",
"status": "active",
"date": "2020-12-01T00:00:00-05:00",
"publisher": "PEPFAR",
"contact": [
{
"name": "Jon Doe 2",
"telecom": [
{
"system": "email",
"value": "jondoe2@gmail.com",
"use": "work",
"rank": 1,
"period": {
"start": "2020-10-29T10:26:15-04:00",
"end": "2025-10-29T10:26:15-04:00"
}
}
]
}
],
"jurisdiction": [
{
"coding": [
{
"system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
"code": "USA",
"display": "United States of America"
}
]
}
],
"purpose": "Test code system",
"copyright": "This is the test source and copyright protected.",
"content": "example",
"count": 20751,
"property": [
{
"code": "conceptclass",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Classes/concepts",
"description": "Standard list of concept classes.",
"type": "string"
},
{
"code": "datatype",
"uri": "https://api.openconceptlab.org/orgs/OCL/sources/Datatypes/concepts",
"description": "Standard list of concept datatypes.",
"type": "string"
},
{
"code": "inactive",
"uri": "http://hl7.org/fhir/concept-properties",
"description": "True if the concept is not considered active.",
"type": "Coding"
}
]
}
}
]
}As per mSVCM profile, following FHIR operations are supported for a code system:
- $lookup
- $validate-code
GET /fhir/CodeSystem/$lookup/?system=:system&code=:code
GET /orgs/:org/CodeSystem/$lookup/?system=:system&code=:code
POST /fhir/CodeSystem/$lookup
POST /orgs/:org/CodeSystem/$lookup
system - (M) The canonical url of the codesystem
code - (M) The concept code
version - (O) The version of the codesystem
displayLanguage - (O) The requested language for display
org - The id of OCL organization
{
"resourceType":"Parameters",
"parameter": [
{
"name":"system",
"valueUri":"<system_url>"
},
{
"name":"code",
"valueCode":"<code>"
},
{
"name":"version",
"valueString":"<system_version>"
},
{
"name":"displayLanguage",
"valueCode":"<display_language>"
}
]
}
GET /fhir/CodeSystem/$lookup/?system=https://www.state.gov/pepfar&code=vpvjaSZxlaA
GET /orgs/PEPFAR/CodeSystem/$lookup/?system=https://www.state.gov/pepfar&code=vpvjaSZxlaA
Example response
{
"resourceType": "Parameters",
"parameter": [
{
"name": "name",
"valueString": "MER Source"
},
{
"name": "version",
"valueString": "v2.0"
},
{
"name": "display",
"valueString": "EA_HSS_NATIONAL_SUB_UNIT"
},
{
"name": "designation",
"part": [
{
"name": "language",
"valueCode": "en"
},
{
"name": "use",
"valueCoding": {
"display": "Short"
}
},
{
"name": "value",
"valueString": "EA_HSS_NATIONAL_SUB_UNIT"
}
]
},
{
"name": "designation",
"part": [
{
"name": "language",
"valueCode": "en"
},
{
"name": "use",
"valueCoding": {
"display": "Code"
}
},
{
"name": "value",
"valueString": "EA_HSS_NATIONAL_SUB_UNIT"
}
]
},
{
"name": "designation",
"part": [
{
"name": "language",
"valueCode": "en"
},
{
"name": "use",
"valueCoding": {
"display": "Fully Specified"
}
},
{
"name": "value",
"valueString": "EA_HSS_NATIONAL_SUB_UNIT"
}
]
}
]
}GET /fhir/CodeSystem/$validate-code/?url=:url&code=:code
GET /orgs/:org/CodeSystem/$validate-code/?url=:url&code=:code
POST /fhir/CodeSystem/$validate-code
POST /orgs/:org/CodeSystem/$validate-code
url - (M) The canonical url of the codesystem
code - (M) The concept code
version - (O) The version of the codesystem
display - (O) The display associated with the code
displayLanguage - (O) Specifies the language to be used for description when validating the display property
coding - (O) A coding to validate (Alternate way to provide url, code, version and display) (only valid in POST request)
org - The id of OCL organization
{
"resourceType":"Parameters",
"parameter": [
{
"name":"url",
"valueUri":"<system_url>"
},
{
"name":"code",
"valueCode":"<code>"
},
{
"name":"version",
"valueString":"<system_version>"
},
{
"name":"display",
"valueString":"<display>"
},
{
"name":"displayLanguage",
"valueCode":"<display_language>"
}
]
}
{
"resourceType":"Parameters",
"parameter": [
{
"name":"coding",
"valueCoding": {
"system" : "<system_url>",
"code" : "<code>",
"version": "<system_version>",
"display":"<display>"
}
},
{
"name":"displayLanguage",
"valueCode":"<display_language>"
}
]
}
NOTE:
- displayLanguage is ignored when display is not provided or empty
- If coding is provided then system,code,version,display values should be provided in coding itself. In this case values of system,code,version,display provided outside of coding will be ignored.
GET /fhir/CodeSystem/$validate-code/?url=https://www.state.gov/pepfar&code=vpvjaSZxlaA
GET /orgs/:org/CodeSystem/$validate-code/?url=https://www.state.gov/pepfar&code=vpvjaSZxlaA
Example response
{
"resourceType": "Parameters",
"parameter": [
{
"name": "result",
"valueBoolean": true
}
]
}