Skip to content

Commit

Permalink
issue #3641 - pre-expand select valuesets via the VSAC Term Service
Browse files Browse the repository at this point in the history
Added a fledgling VSACRegistryResourceProvider and used it to expand US
Core ValueSets which were composed from VSAC value sets.

The expansion step was added to the ResourceProcessor.

Signed-off-by: Lee Surprenant <lmsurpre@us.ibm.com>
  • Loading branch information
lmsurpre committed May 18, 2022
1 parent fa1ba9d commit 0096e9e
Show file tree
Hide file tree
Showing 18 changed files with 8,410 additions and 4 deletions.
19 changes: 18 additions & 1 deletion conformance/fhir-ig-us-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>fhir-registry</artifactId>
<artifactId>fhir-profile</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
Expand All @@ -38,5 +38,22 @@
<version>${project.version}</version>
<scope>test</scope>
</dependency>
<!-- used to look up VSAC ValueSets for expanding US Core ValueSets -->
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>fhir-provider</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-rs-client</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http-hc</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
/*
* (C) Copyright IBM Corp. 2022
*
* SPDX-License-Identifier: Apache-2.0
*/

package com.ibm.fhir.ig.us.core;

import java.util.List;
import java.util.function.Predicate;

import com.ibm.fhir.model.annotation.Constraint;
import com.ibm.fhir.profile.constraint.spi.AbstractProfileConstraintProvider;

public class USCore500ConstraintModifier extends AbstractProfileConstraintProvider {
private static final String targetUrl = "http://hl7.org/fhir/us/core/StructureDefinition/us-core-questionnaireresponse";
private static final String targetVersion = "5.0.0";

@Override
public boolean appliesTo(String url, String version) {
return targetUrl.equals(url) && targetVersion.equals(version);
}

@Override
protected void addRemovalPredicates(List<Predicate<Constraint>> removalPredicates) {
removalPredicates.add(idEquals("sdcqr-2"));
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
com.ibm.fhir.ig.us.core.USCore500ConstraintModifier
Original file line number Diff line number Diff line change
Expand Up @@ -52,5 +52,41 @@
]
}
]
},
"expansion": {
"timestamp": "2022-05-18T05:56:23.502731Z",
"total": 5,
"contains": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-AdministrativeGender",
"version": "20210301",
"code": "F",
"display": "Female"
},
{
"system": "http://terminology.hl7.org/CodeSystem/v3-AdministrativeGender",
"version": "20210301",
"code": "M",
"display": "Male"
},
{
"system": "http://terminology.hl7.org/CodeSystem/v3-NullFlavor",
"version": "20210301",
"code": "ASKU",
"display": "asked but unknown"
},
{
"system": "http://terminology.hl7.org/CodeSystem/v3-NullFlavor",
"version": "20210301",
"code": "OTH",
"display": "other"
},
{
"system": "http://terminology.hl7.org/CodeSystem/v3-NullFlavor",
"version": "20210301",
"code": "UNK",
"display": "unknown"
}
]
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -52,5 +52,275 @@
]
}
]
},
"expansion": {
"timestamp": "2022-05-18T05:55:59.103407Z",
"total": 44,
"contains": [
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2137-8",
"display": "Spaniard"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2138-6",
"display": "Andalusian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2139-4",
"display": "Asturian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2140-2",
"display": "Castillian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2141-0",
"display": "Catalonian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2142-8",
"display": "Belearic Islander"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2143-6",
"display": "Gallego"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2144-4",
"display": "Valencian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2145-1",
"display": "Canarian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2146-9",
"display": "Spanish Basque"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2148-5",
"display": "Mexican"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2149-3",
"display": "Mexican American"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2150-1",
"display": "Mexicano"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2151-9",
"display": "Chicano"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2152-7",
"display": "La Raza"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2153-5",
"display": "Mexican American Indian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2155-0",
"display": "Central American"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2156-8",
"display": "Costa Rican"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2157-6",
"display": "Guatemalan"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2158-4",
"display": "Honduran"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2159-2",
"display": "Nicaraguan"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2160-0",
"display": "Panamanian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2161-8",
"display": "Salvadoran"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2162-6",
"display": "Central American Indian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2163-4",
"display": "Canal Zone"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2165-9",
"display": "South American"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2166-7",
"display": "Argentinean"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2167-5",
"display": "Bolivian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2168-3",
"display": "Chilean"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2169-1",
"display": "Colombian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2170-9",
"display": "Ecuadorian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2171-7",
"display": "Paraguayan"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2172-5",
"display": "Peruvian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2173-3",
"display": "Uruguayan"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2174-1",
"display": "Venezuelan"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2175-8",
"display": "South American Indian"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2176-6",
"display": "Criollo"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2178-2",
"display": "Latin American"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2180-8",
"display": "Puerto Rican"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2182-4",
"display": "Cuban"
},
{
"system": "urn:oid:2.16.840.1.113883.6.238",
"version": "1.2",
"code": "2184-0",
"display": "Dominican"
},
{
"system": "http://terminology.hl7.org/CodeSystem/v3-NullFlavor",
"version": "20210301",
"code": "ASKU",
"display": "asked but unknown"
},
{
"system": "http://terminology.hl7.org/CodeSystem/v3-NullFlavor",
"version": "20210301",
"code": "OTH",
"display": "other"
},
{
"system": "http://terminology.hl7.org/CodeSystem/v3-NullFlavor",
"version": "20210301",
"code": "UNK",
"display": "unknown"
}
]
}
}
Loading

0 comments on commit 0096e9e

Please sign in to comment.