org.hl7.fhir.r5.terminologies.TerminologyUtilities Maven / Gradle / Ivy
package org.hl7.fhir.r5.terminologies;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.hl7.fhir.r5.model.CanonicalResource;
import org.hl7.fhir.r5.model.Identifier;
import org.hl7.fhir.r5.model.ValueSet;
import org.hl7.fhir.r5.model.ValueSet.ConceptSetComponent;
import org.hl7.fhir.utilities.MarkedToMoveToAdjunctPackage;
import org.hl7.fhir.utilities.Utilities;
public class TerminologyUtilities {
public static Set listOids(CanonicalResource cr) {
Set oids = new HashSet<>();
if (cr.hasUrl() && cr.getUrl().startsWith("urn:oid:")) {
oids.add(cr.getUrl().substring(8));
}
for (Identifier id : cr.getIdentifier()) {
String v = id.getValue();
if (v != null && v.startsWith("urn:oid:")) {
oids.add(v.substring(8));
}
}
return oids;
}
public static List listSystems(ValueSet vs) {
Set res = new HashSet<>();
for (ConceptSetComponent inc : vs.getCompose().getInclude()) {
if (inc.hasSystem()) {
if (inc.hasVersion()) {
res.add(inc.getSystem()+"|"+inc.getVersion());
} else {
res.add(inc.getSystem());
}
}
}
for (ConceptSetComponent inc : vs.getCompose().getExclude()) {
if (inc.hasSystem()) {
if (inc.hasVersion()) {
res.add(inc.getSystem()+"|"+inc.getVersion());
} else {
res.add(inc.getSystem());
}
}
}
return Utilities.sorted(res);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy