Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

11 add rd cdm entirely #13

Merged
merged 4 commits into from
Sep 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 17 additions & 9 deletions .github/workflows/pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,15 +31,24 @@ jobs:
mkdir -p gh-pages
touch gh-pages/.nojekyll

function branch_exists {
git show-ref refs/heads/$1 > /dev/null 2>&1
}

function build_docs {
# The function will checkout a branch and build the Javadoc & documentation
# into provided documentation directory.
# The function will checkout a branch and build the Sphinx docs
# into the provided documentation directory.
BRANCH=${1}
DOCDIR=${2}

git checkout ${BRANCH}
git fetch
git pull

if branch_exists ${BRANCH}; then
git checkout ${BRANCH}
git fetch
git pull
else
echo "Branch ${BRANCH} does not exist. Skipping..."
return
fi

## Init the target folder.
# We will put all site documentation there.
Expand All @@ -57,12 +66,11 @@ jobs:
cd ..
}

# We store the docs for `main` in `stable` dir
# We store the docs for `main` in `stable` dir, if it exists
build_docs main stable
# We store the docs for `development` in `latest` dir
# We store the docs for `develop` in `latest` dir
build_docs develop latest


- name: Deploy documentation
if: ${{ github.event_name == 'push' }}
uses: JamesIves/[email protected]
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ An ontology-based Rare Disease Common Data Model (RD CDM) to enable
international registry use, HL7 FHIR, and GA4GH Phenopackets.

<!-- Python CI and Documentation Status Badges -->
[![Python CI](https://github.com/BIH-CEI/rd-cdm/actions/workflows/python_ci.yml/badge.svg)](https://github.com/{OWNER}/{REPO}/actions/workflows/python_ci.yml)
[![Python CI](https://github.com/BIH-CEI/rd-cdm/actions/workflows/python_ci.yml/badge.svg)](https://github.com/BIH-CEI/rd-cdm/actions/workflows/python_ci.yml)
[![Documentation Status](https://readthedocs.org/projects/rd-cdm/badge/?version=latest)](https://rd-cdm.readthedocs.io/en/latest/?badge=latest)

<!-- JSON Creation and Validation Badges -->
Expand Down
File renamed without changes.
24 changes: 23 additions & 1 deletion res/v2_0_0/rd_cdm_codesystems_v2_0_0.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,28 @@
"url": "http://www.sequenceontology.org/",
"synonyms": []
},
{
"codeSystemName": "International Classification of Diseases, Ninth Revision",
"namespace_prefix": "ICD9",
"version": "unknown",
"url": "https://www.cdc.gov/nchs/icd/icd9.htm",
"synonyms": [
"ICD-9",
"ICD_9"
]
},
{
"codeSystemName": "International Classification of Diseases, Tenth Revision, German Modification",
"namespace_prefix": "ICD10GM",
"version": "unknown",
"url": "https://www.bfarm.de/EN/Code-systems/Classifications/ICD/ICD-10-GM/_node.html",
"synonyms": [
"ICD10-GM",
"ICD-10-GM",
"ICD10_GM",
"ICD_10_GM"
]
},
{
"codeSystemName": "International Classification of Diseases, Tenth Revision, Clinical Modification",
"namespace_prefix": "ICD10CM",
Expand Down Expand Up @@ -75,7 +97,7 @@
"synonyms": []
},
{
"codeSystemName": "International Classification of Functioning, Disability and Health (ICF)",
"codeSystemName": "International Classification of Functioning, Disability and Health",
"namespace_prefix": "ICF",
"version": "1.0.2",
"url": "https://www.who.int/classifications/icf/en/",
Expand Down
268 changes: 241 additions & 27 deletions res/v2_0_0/rd_cdm_data_elements_v2_0_0.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@
"n/a"
],
"valueSet": null,
"fhirExpression_v4.0.1": "Patient.identifier.value",
"recommendedVS_fhir": null,
"phenopacketSchemaElement_v2.0": "Individual.id",
"recommendedVS_phenopacket": null,
"fhirExpression_v4_0_1": "Patient.identifier.value",
"recommendedDataSpec_fhir": "n/a",
"phenopacketSchemaElement_v2_0": "Individual.id",
"recommendedDataSpec_phenopackets": "string",
"description": "The (local) patient-related identification code."
},
{
Expand All @@ -26,14 +26,13 @@
"elementCodeSystem": "SNOMED",
"dataType": "Date",
"dataSpecification": [
"YYYY-MM-DD",
"ISO 8601"
"YYYY-MM-DD"
],
"valueSet": null,
"fhirExpression_v4.0.1": "Encounter.period.start",
"recommendedVS_fhir": null,
"phenopacketSchemaElement_v2.0": "Individual.time_at_last_encounter",
"recommendedVS_phenopacket": null,
"fhirExpression_v4_0_1": "Encounter.period.start",
"recommendedDataSpec_fhir": "n/a",
"phenopacketSchemaElement_v2_0": "Individual.time_at_last_encounter",
"recommendedDataSpec_phenopackets": "TimeElement",
"description": "The date of admission or data capture of the individual."
},
{
Expand All @@ -49,10 +48,10 @@
"YYYY-MM-DD"
],
"valueSet": null,
"fhirExpression_v4.0.1": "Patient.birthDate",
"recommendedVS_fhir": null,
"phenopacketSchemaElement_v2.0": "Individual.date_of_birth",
"recommendedVS_phenopacket": null,
"fhirExpression_v4_0_1": "Patient.birthDate",
"recommendedDataSpec_fhir": "n/a",
"phenopacketSchemaElement_v2_0": "Individual.date_of_birth",
"recommendedDataSpec_phenopackets": "TimeElement",
"description": "The individual's date of birth."
},
{
Expand All @@ -65,20 +64,235 @@
"dataSpecification": [
"VSe / VSc"
],
"valueSet": {
"valueSetName": "Sex at Birth Value Set v2.0.0",
"valueSetOrigin": "RD CDM v2.0.0",
"valueSetLink": "https://github.com/BIH-CEI/rd-cdm",
"display": "Sex at Birth",
"valueSetCode": "281053000",
"valueSetCodeSystem": "SNOMED",
"valueSetChoices": []
},
"fhirExpression_v4.0.1": "Patient.extension:individual-recordedSexOrGender",
"recommendedVS_fhir": "Recorded Sex Or Gender Type",
"phenopacketSchemaElement_v2.0": "Individual.sex",
"recommendedVS_phenopacket": "Sex",
"valueSet": "Sex at Birth Value Set v2.0.0",
"fhirExpression_v4_0_1": "Patient.extension:individual-recordedSexOrGender",
"recommendedDataSpec_fhir": "Recorded Sex Or Gender Type",
"phenopacketSchemaElement_v2_0": "Individual.sex",
"recommendedDataSpec_phenopackets": "Sex",
"description": "The individual's sex that was assigned at birth."
},
{
"ordinal": "2.3",
"section": "2. Personal Information",
"elementName": "Karyotypic Sex",
"elementCode": "1296886006",
"elementCodeSystem": "SNOMED",
"dataType": "Code",
"dataSpecification": [
"VSc"
],
"valueSet": "Karyotypic Sex Value Set v2.0.0",
"fhirExpression_v4_0_1": "Observation.value",
"recommendedDataSpec_fhir": "n/a",
"phenopacketSchemaElement_v2_0": "Individual.karyotypic_sex",
"recommendedDataSpec_phenopackets": "Karyotypic Sex",
"description": "The chromosomal sex of an individual."
},
{
"ordinal": "2.4",
"section": "2. Personal Information",
"elementName": "Gender Identity",
"elementCode": "263495000",
"elementCodeSystem": "SNOMED",
"dataType": "Code",
"dataSpecification": [
"VSe / VSc"
],
"valueSet": "Gender Identity Value Set v2.0.0",
"fhirExpression_v4_0_1": "Patient.extension:individual-genderIdentity",
"recommendedDataSpec_fhir": "Gender Identity",
"phenopacketSchemaElement_v2_0": "Individual.gender",
"recommendedDataSpec_phenopackets": "OntologyClass",
"description": "The self-assigned gender of the individual."
},
{
"ordinal": "2.5",
"section": "2. Personal Information",
"elementName": "Country of Birth",
"elementCode": "370159000",
"elementCodeSystem": "SNOMED",
"dataType": "Code",
"dataSpecification": [
"VS"
],
"valueSet": null,
"fhirExpression_v4_0_1": "Patient.extension:patient-birthPlace",
"recommendedDataSpec_fhir": "DataType: Address",
"phenopacketSchemaElement_v2_0": "n/a",
"recommendedDataSpec_phenopackets": "n/a",
"description": "The individual's country of birth."
},
{
"ordinal": "3.1",
"section": "3. Patient Status",
"elementName": "Vital Status",
"elementCode": "278844005",
"elementCodeSystem": "SNOMED",
"dataType": "Code",
"dataSpecification": [
"VSe / VSc"
],
"valueSet": "Vital Status Value Set v2.0.0",
"fhirExpression_v4_0_1": "Patient.deceased.deceasedBoolean|Observation.value",
"recommendedDataSpec_fhir": "Boolean|Code",
"phenopacketSchemaElement_v2_0": "Individual.VitalStatus.status",
"recommendedDataSpec_phenopackets": "Value Set: Status",
"description": "The individual\u2019s general clinical status or vital status."
},
{
"ordinal": "3.2",
"section": "3. Patient Status",
"elementName": "Time of Death",
"elementCode": "398299004",
"elementCodeSystem": "SNOMED",
"dataType": "Date",
"dataSpecification": [
"YYYY",
"YYYY-MM",
"YYYY-MM-DD"
],
"valueSet": null,
"fhirExpression_v4_0_1": "Patient.deceasedDateTime",
"recommendedDataSpec_fhir": "DateTime",
"phenopacketSchemaElement_v2_0": "Individual.VitalStatus.time_of_death",
"recommendedDataSpec_phenopackets": "TimeElement",
"description": "If deceased, the individual\u2019s date of death."
},
{
"ordinal": "3.3",
"section": "3. Patient Status",
"elementName": "Cause of Death",
"elementCode": "184305005",
"elementCodeSystem": "SNOMED",
"dataType": "Code",
"dataSpecification": [
"ICD-10CM"
],
"valueSet": null,
"fhirExpression_v4_0_1": "Observation.value.coding.code",
"recommendedDataSpec_fhir": "Code|CodeableConcept",
"phenopacketSchemaElement_v2_0": "Individual.VitalStatus.cause_of_death",
"recommendedDataSpec_phenopackets": "OntologyClass",
"description": "If deceased, the individual\u2019s primary cause of death."
},
{
"ordinal": "3.4",
"section": "3. Patient Status",
"elementName": "Age Category",
"elementCode": "105727008",
"elementCodeSystem": "SNOMED",
"dataType": "Code",
"dataSpecification": [
"VSe"
],
"valueSet": "Age Category Value Set v2.0.0",
"fhirExpression_v4_0_1": "Observation.value.coding.code",
"recommendedDataSpec_fhir": "CodableConcept",
"phenopacketSchemaElement_v2_0": "Individual.time_at_last_encounter.ontology_class",
"recommendedDataSpec_phenopackets": "TimeElement",
"description": "The individual's age category at the time of data capture."
},
{
"ordinal": "3.5",
"section": "3. Patient Status",
"elementName": "Length of Gestation at Birth [weeks+days]",
"elementCode": "412726003",
"elementCodeSystem": "SNOMED",
"dataType": "String",
"dataSpecification": [
"XX+X"
],
"valueSet": null,
"fhirExpression_v4_0_1": "Observation.component:weeks.valueQuantity|Observation.component:days.valueQuantity",
"recommendedDataSpec_fhir": "Quantity",
"phenopacketSchemaElement_v2_0": "n/a",
"recommendedDataSpec_phenopackets": "n/a",
"description": "The duration of the pregnancy in weeks and days, formatted as XX+X (weeks+days)."
},
{
"ordinal": "3.6",
"section": "3. Patient Status",
"elementName": "Undiagnosed RD Case",
"elementCode": "723663001",
"elementCodeSystem": "SNOMED",
"dataType": "Code",
"dataSpecification": [
"VSe"
],
"valueSet": "Undiagnosed RD Case Value Set v2.0.0",
"fhirExpression_v4_0_1": "(Condition.code)",
"recommendedDataSpec_fhir": "Code(e.g. ORDO:616874 - Rare disorder without a determined diagnosis after full investigation)",
"phenopacketSchemaElement_v2_0": "(Disease.term)",
"recommendedDataSpec_phenopackets": "(OntologyClass (e.g. ORDO:616874 - Rare disorder without a determined diagnosis after full investigation))",
"description": "Identifies cases where an RD diagnosis has not been established."
},
{
"ordinal": "4.1",
"section": "4. Care Pathway",
"elementName": "Encounter Start",
"elementCode": "encounter.period.start",
"elementCodeSystem": "HL7FHIR",
"dataType": "Date",
"dataSpecification": [
"YYYY-MM-DD"
],
"valueSet": null,
"fhirExpression_v4_0_1": "Encounter.period.start",
"recommendedDataSpec_fhir": "DateTime",
"phenopacketSchemaElement_v2_0": "n/a",
"recommendedDataSpec_phenopackets": "n/a",
"description": "The beginning of an encounter of the individual."
},
{
"ordinal": "4.2",
"section": "4. Care Pathway",
"elementName": "Encounter End",
"elementCode": "encounter.period.end",
"elementCodeSystem": "HL7FHIR",
"dataType": "Date",
"dataSpecification": [
"YYYY-MM-DD"
],
"valueSet": null,
"fhirExpression_v4_0_1": "Encounter.period.end",
"recommendedDataSpec_fhir": "DateTime",
"phenopacketSchemaElement_v2_0": "n/a",
"recommendedDataSpec_phenopackets": "n/a",
"description": "The end of an encounter of the individual."
},
{
"ordinal": "4.3",
"section": "4. Care Pathway",
"elementName": "Encounter Status",
"elementCode": "305058001",
"elementCodeSystem": "SNOMED",
"dataType": "Code",
"dataSpecification": [
"VSe / VSc"
],
"valueSet": "Encounter Status Value Set v2.0.0",
"fhirExpression_v4_0_1": "Encounter.status",
"recommendedDataSpec_fhir": "ValueSet: EncounterStatus",
"phenopacketSchemaElement_v2_0": "n/a",
"recommendedDataSpec_phenopackets": "n/a",
"description": "The status of an encounter of the individual at the time of data capture."
},
{
"ordinal": "4.4",
"section": "4. Care Pathway",
"elementName": "Encounter Class",
"elementCode": "encounter.class",
"elementCodeSystem": "HL7FHIR",
"dataType": "Code",
"dataSpecification": [
"VSe / VSc"
],
"valueSet": "Encounter Class Value Set v2.0.0",
"fhirExpression_v4_0_1": "Encounter.class",
"recommendedDataSpec_fhir": "ValueSet: EncounterClass",
"phenopacketSchemaElement_v2_0": "n/a",
"recommendedDataSpec_phenopackets": "n/a",
"description": "The class of an encounter of the individual at the time of data capture."
}
]
}
Loading
Loading