This commit is contained in:
Grahame Grieve 2022-03-11 13:10:53 +11:00
commit 084da8b576
4 changed files with 181 additions and 177 deletions

View File

@ -72,7 +72,7 @@ public class TerminologyClientR3 implements TerminologyClient {
@Override @Override
public ValueSet expandValueset(ValueSet vs, Parameters p, Map<String, String> params) throws FHIRException { public ValueSet expandValueset(ValueSet vs, Parameters p, Map<String, String> params) throws FHIRException {
org.hl7.fhir.dstu3.model.ValueSet vs2 = (org.hl7.fhir.dstu3.model.ValueSet) VersionConvertorFactory_30_50.convertResource(vs); org.hl7.fhir.dstu3.model.ValueSet vs2 = (org.hl7.fhir.dstu3.model.ValueSet) VersionConvertorFactory_30_50.convertResource(vs);
org.hl7.fhir.dstu3.model.ExpansionProfile p2 = (org.hl7.fhir.dstu3.model.ExpansionProfile) VersionConvertorFactory_30_50.convertResource(p); org.hl7.fhir.dstu3.model.Parameters p2 = (org.hl7.fhir.dstu3.model.Parameters) VersionConvertorFactory_30_50.convertResource(p);
vs2 = client.expandValueset(vs2, p2, params); // todo: second parameter vs2 = client.expandValueset(vs2, p2, params); // todo: second parameter
return (ValueSet) VersionConvertorFactory_30_50.convertResource(vs2); return (ValueSet) VersionConvertorFactory_30_50.convertResource(vs2);
} }

View File

@ -6874,71 +6874,71 @@ The primary difference between a medicationusage and a medicationadministration
public static FHIRVersion fromCode(String codeString) throws FHIRException { public static FHIRVersion fromCode(String codeString) throws FHIRException {
if (codeString == null || "".equals(codeString)) if (codeString == null || "".equals(codeString))
return null; return null;
if ("0.01".equals(codeString)) if ("0.01".equals(codeString))
return _0_01; return _0_01;
if ("0.05".equals(codeString)) if ("0.05".equals(codeString))
return _0_05; return _0_05;
if ("0.06".equals(codeString)) if ("0.06".equals(codeString))
return _0_06; return _0_06;
if ("0.11".equals(codeString)) if ("0.11".equals(codeString))
return _0_11; return _0_11;
if ("0.0.80".equals(codeString)) if ("0.0.80".equals(codeString))
return _0_0_80; return _0_0_80;
if ("0.0.81".equals(codeString)) if ("0.0.81".equals(codeString))
return _0_0_81; return _0_0_81;
if ("0.0.82".equals(codeString)) if ("0.0.82".equals(codeString))
return _0_0_82; return _0_0_82;
if ("0.4.0".equals(codeString)) if ("0.4.0".equals(codeString))
return _0_4_0; return _0_4_0;
if ("0.5.0".equals(codeString)) if ("0.5.0".equals(codeString))
return _0_5_0; return _0_5_0;
if ("1.0.0".equals(codeString)) if ("1.0.0".equals(codeString))
return _1_0_0; return _1_0_0;
if ("1.0.1".equals(codeString)) if ("1.0.1".equals(codeString))
return _1_0_1; return _1_0_1;
if ("1.0.2".equals(codeString)) if ("1.0.2".equals(codeString))
return _1_0_2; return _1_0_2;
if ("1.1.0".equals(codeString)) if ("1.1.0".equals(codeString))
return _1_1_0; return _1_1_0;
if ("1.4.0".equals(codeString)) if ("1.4.0".equals(codeString))
return _1_4_0; return _1_4_0;
if ("1.6.0".equals(codeString)) if ("1.6.0".equals(codeString))
return _1_6_0; return _1_6_0;
if ("1.8.0".equals(codeString)) if ("1.8.0".equals(codeString))
return _1_8_0; return _1_8_0;
if ("3.0.0".equals(codeString)) if ("3.0.0".equals(codeString))
return _3_0_0; return _3_0_0;
if ("3.0.1".equals(codeString)) if ("3.0.1".equals(codeString))
return _3_0_1; return _3_0_1;
if ("3.0.2".equals(codeString)) if ("3.0.2".equals(codeString))
return _3_0_2; return _3_0_2;
if ("3.3.0".equals(codeString)) if ("3.3.0".equals(codeString))
return _3_3_0; return _3_3_0;
if ("3.5.0".equals(codeString)) if ("3.5.0".equals(codeString))
return _3_5_0; return _3_5_0;
if ("4.0.0".equals(codeString)) if ("4.0.0".equals(codeString))
return _4_0_0; return _4_0_0;
if ("4.0.1".equals(codeString)) if ("4.0.1".equals(codeString))
return _4_0_1; return _4_0_1;
if ("4.1.0".equals(codeString)) if ("4.1.0".equals(codeString))
return _4_1_0; return _4_1_0;
if ("4.2.0".equals(codeString)) if ("4.2.0".equals(codeString))
return _4_2_0; return _4_2_0;
if ("4.3.0-snapshot1".equalsIgnoreCase(codeString)) if ("4.3.0-snapshot1".equalsIgnoreCase(codeString))
return _4_3_0SNAPSHOT1; return _4_3_0SNAPSHOT1;
if ("4.3.0-cibuild".equalsIgnoreCase(codeString)) if ("4.3.0-cibuild".equalsIgnoreCase(codeString))
return _4_3_0CIBUILD; return _4_3_0CIBUILD;
if ("4.4.0".equals(codeString)) if ("4.4.0".equals(codeString))
return _4_4_0; return _4_4_0;
if ("4.5.0".equals(codeString)) if ("4.5.0".equals(codeString))
return _4_5_0; return _4_5_0;
if ("4.6.0".equals(codeString)) if ("4.6.0".equals(codeString))
return _4_6_0; return _4_6_0;
if ("5.0.0-snapshot1".equalsIgnoreCase(codeString)) if ("5.0.0-snapshot1".equalsIgnoreCase(codeString))
return _5_0_0SNAPSHOT1; return _5_0_0SNAPSHOT1;
if ("5.0.0-cibuild".equalsIgnoreCase(codeString)) if ("5.0.0-cibuild".equalsIgnoreCase(codeString))
return _5_0_0CIBUILD; return _5_0_0CIBUILD;
throw new FHIRException("Unknown FHIRVersion code '"+codeString+"'"); throw new FHIRException("Unknown FHIRVersion code '"+codeString+"'");
} }
public String toCode() { public String toCode() {
switch (this) { switch (this) {
@ -7104,51 +7104,51 @@ public String toCode(int len) {
public static boolean isValidCode(String codeString) { public static boolean isValidCode(String codeString) {
if (codeString == null || "".equals(codeString)) if (codeString == null || "".equals(codeString))
return false; return false;
if ("0.01".equals(codeString)) if ("0.01".equals(codeString))
return true; return true;
if ("0.05".equals(codeString)) if ("0.05".equals(codeString))
return true; return true;
if ("0.06".equals(codeString)) if ("0.06".equals(codeString))
return true; return true;
if ("0.11".equals(codeString)) if ("0.11".equals(codeString))
return true; return true;
if ("0.0.80".equals(codeString)) if ("0.0.80".equals(codeString))
return true; return true;
if ("0.0.81".equals(codeString)) if ("0.0.81".equals(codeString))
return true; return true;
if ("0.0.82".equals(codeString)) if ("0.0.82".equals(codeString))
return true; return true;
if ("0.4.0".equals(codeString)) if ("0.4.0".equals(codeString))
return true; return true;
if ("0.5.0".equals(codeString)) if ("0.5.0".equals(codeString))
return true; return true;
if ("1.0.0".equals(codeString)) if ("1.0.0".equals(codeString))
return true; return true;
if ("1.0.1".equals(codeString)) if ("1.0.1".equals(codeString))
return true; return true;
if ("1.0.2".equals(codeString)) if ("1.0.2".equals(codeString))
return true; return true;
if ("1.1.0".equals(codeString)) if ("1.1.0".equals(codeString))
return true; return true;
if ("1.4.0".equals(codeString)) if ("1.4.0".equals(codeString))
return true; return true;
if ("1.6.0".equals(codeString)) if ("1.6.0".equals(codeString))
return true; return true;
if ("1.8.0".equals(codeString)) if ("1.8.0".equals(codeString))
return true; return true;
if ("3.0.0".equals(codeString)) if ("3.0.0".equals(codeString))
return true; return true;
if ("3.0.1".equals(codeString)) if ("3.0.1".equals(codeString))
return true; return true;
if ("3.3.0".equals(codeString)) if ("3.3.0".equals(codeString))
return true; return true;
if ("3.5.0".equals(codeString)) if ("3.5.0".equals(codeString))
return true; return true;
if ("4.0.0".equals(codeString)) if ("4.0.0".equals(codeString))
return true; return true;
if ("4.2.0".equals(codeString)) if ("4.2.0".equals(codeString))
return true; return true;
return false; return false;
} }
@Override @Override
@ -7169,71 +7169,71 @@ public String toCode(int len) {
if (codeString == null || "".equals(codeString)) if (codeString == null || "".equals(codeString))
if (codeString == null || "".equals(codeString)) if (codeString == null || "".equals(codeString))
return null; return null;
if ("0.01".equals(codeString)) if ("0.01".equals(codeString))
return FHIRVersion._0_01; return FHIRVersion._0_01;
if ("0.05".equals(codeString)) if ("0.05".equals(codeString))
return FHIRVersion._0_05; return FHIRVersion._0_05;
if ("0.06".equals(codeString)) if ("0.06".equals(codeString))
return FHIRVersion._0_06; return FHIRVersion._0_06;
if ("0.11".equals(codeString)) if ("0.11".equals(codeString))
return FHIRVersion._0_11; return FHIRVersion._0_11;
if ("0.0.80".equals(codeString)) if ("0.0.80".equals(codeString))
return FHIRVersion._0_0_80; return FHIRVersion._0_0_80;
if ("0.0.81".equals(codeString)) if ("0.0.81".equals(codeString))
return FHIRVersion._0_0_81; return FHIRVersion._0_0_81;
if ("0.0.82".equals(codeString)) if ("0.0.82".equals(codeString))
return FHIRVersion._0_0_82; return FHIRVersion._0_0_82;
if ("0.4.0".equals(codeString)) if ("0.4.0".equals(codeString))
return FHIRVersion._0_4_0; return FHIRVersion._0_4_0;
if ("0.5.0".equals(codeString)) if ("0.5.0".equals(codeString))
return FHIRVersion._0_5_0; return FHIRVersion._0_5_0;
if ("1.0.0".equals(codeString)) if ("1.0.0".equals(codeString))
return FHIRVersion._1_0_0; return FHIRVersion._1_0_0;
if ("1.0.1".equals(codeString)) if ("1.0.1".equals(codeString))
return FHIRVersion._1_0_1; return FHIRVersion._1_0_1;
if ("1.0.2".equals(codeString)) if ("1.0.2".equals(codeString))
return FHIRVersion._1_0_2; return FHIRVersion._1_0_2;
if ("1.1.0".equals(codeString)) if ("1.1.0".equals(codeString))
return FHIRVersion._1_1_0; return FHIRVersion._1_1_0;
if ("1.4.0".equals(codeString)) if ("1.4.0".equals(codeString))
return FHIRVersion._1_4_0; return FHIRVersion._1_4_0;
if ("1.6.0".equals(codeString)) if ("1.6.0".equals(codeString))
return FHIRVersion._1_6_0; return FHIRVersion._1_6_0;
if ("1.8.0".equals(codeString)) if ("1.8.0".equals(codeString))
return FHIRVersion._1_8_0; return FHIRVersion._1_8_0;
if ("3.0.0".equals(codeString)) if ("3.0.0".equals(codeString))
return FHIRVersion._3_0_0; return FHIRVersion._3_0_0;
if ("3.0.1".equals(codeString)) if ("3.0.1".equals(codeString))
return FHIRVersion._3_0_1; return FHIRVersion._3_0_1;
if ("3.0.2".equals(codeString)) if ("3.0.2".equals(codeString))
return FHIRVersion._3_0_2; return FHIRVersion._3_0_2;
if ("3.3.0".equals(codeString)) if ("3.3.0".equals(codeString))
return FHIRVersion._3_3_0; return FHIRVersion._3_3_0;
if ("3.5.0".equals(codeString)) if ("3.5.0".equals(codeString))
return FHIRVersion._3_5_0; return FHIRVersion._3_5_0;
if ("4.0.0".equals(codeString)) if ("4.0.0".equals(codeString))
return FHIRVersion._4_0_0; return FHIRVersion._4_0_0;
if ("4.0.1".equals(codeString)) if ("4.0.1".equals(codeString))
return FHIRVersion._4_0_1; return FHIRVersion._4_0_1;
if ("4.1.0".equals(codeString)) if ("4.1.0".equals(codeString))
return FHIRVersion._4_1_0; return FHIRVersion._4_1_0;
if ("4.2.0".equals(codeString)) if ("4.2.0".equals(codeString))
return FHIRVersion._4_2_0; return FHIRVersion._4_2_0;
if ("4.3.0-snapshot1".equalsIgnoreCase(codeString)) if ("4.3.0-snapshot1".equalsIgnoreCase(codeString))
return FHIRVersion._4_3_0SNAPSHOT1; return FHIRVersion._4_3_0SNAPSHOT1;
if ("4.3.0-cibuild".equalsIgnoreCase(codeString)) if ("4.3.0-cibuild".equalsIgnoreCase(codeString))
return FHIRVersion._4_3_0CIBUILD; return FHIRVersion._4_3_0CIBUILD;
if ("4.4.0".equals(codeString)) if ("4.4.0".equals(codeString))
return FHIRVersion._4_4_0; return FHIRVersion._4_4_0;
if ("4.5.0".equals(codeString)) if ("4.5.0".equals(codeString))
return FHIRVersion._4_5_0; return FHIRVersion._4_5_0;
if ("4.6.0".equals(codeString)) if ("4.6.0".equals(codeString))
return FHIRVersion._4_6_0; return FHIRVersion._4_6_0;
if ("5.0.0-snapshot1".equalsIgnoreCase(codeString)) if ("5.0.0-snapshot1".equalsIgnoreCase(codeString))
return FHIRVersion._5_0_0SNAPSHOT1; return FHIRVersion._5_0_0SNAPSHOT1;
if ("5.0.0-cibuild".equalsIgnoreCase(codeString)) if ("5.0.0-cibuild".equalsIgnoreCase(codeString))
return FHIRVersion._5_0_0CIBUILD; return FHIRVersion._5_0_0CIBUILD;
throw new IllegalArgumentException("Unknown FHIRVersion code '"+codeString+"'"); throw new IllegalArgumentException("Unknown FHIRVersion code '"+codeString+"'");
} }
public Enumeration<FHIRVersion> fromType(Base code) throws FHIRException { public Enumeration<FHIRVersion> fromType(Base code) throws FHIRException {
if (code == null) if (code == null)

View File

@ -132,7 +132,9 @@ public class TypesUtilities {
res.add(new WildcardInformation("Annotation", TypeClassification.DATATYPE)); res.add(new WildcardInformation("Annotation", TypeClassification.DATATYPE));
res.add(new WildcardInformation("Attachment", TypeClassification.DATATYPE)); res.add(new WildcardInformation("Attachment", TypeClassification.DATATYPE));
res.add(new WildcardInformation("CodeableConcept", TypeClassification.DATATYPE)); res.add(new WildcardInformation("CodeableConcept", TypeClassification.DATATYPE));
res.add(new WildcardInformation("CodeableReference", TypeClassification.DATATYPE)); if (!VersionUtilities.isR4BVer(version)) {
res.add(new WildcardInformation("CodeableReference", TypeClassification.DATATYPE));
}
res.add(new WildcardInformation("Coding", TypeClassification.DATATYPE)); res.add(new WildcardInformation("Coding", TypeClassification.DATATYPE));
res.add(new WildcardInformation("ContactPoint", TypeClassification.DATATYPE)); res.add(new WildcardInformation("ContactPoint", TypeClassification.DATATYPE));
res.add(new WildcardInformation("Count", TypeClassification.DATATYPE)); res.add(new WildcardInformation("Count", TypeClassification.DATATYPE));
@ -145,7 +147,9 @@ public class TypesUtilities {
res.add(new WildcardInformation("Quantity", TypeClassification.DATATYPE)); res.add(new WildcardInformation("Quantity", TypeClassification.DATATYPE));
res.add(new WildcardInformation("Range", TypeClassification.DATATYPE)); res.add(new WildcardInformation("Range", TypeClassification.DATATYPE));
res.add(new WildcardInformation("Ratio", TypeClassification.DATATYPE)); res.add(new WildcardInformation("Ratio", TypeClassification.DATATYPE));
res.add(new WildcardInformation("RatioRange", TypeClassification.DATATYPE)); if (!VersionUtilities.isR4BVer(version)) {
res.add(new WildcardInformation("RatioRange", TypeClassification.DATATYPE));
}
res.add(new WildcardInformation("Reference", " - a reference to another resource", TypeClassification.DATATYPE)); res.add(new WildcardInformation("Reference", " - a reference to another resource", TypeClassification.DATATYPE));
res.add(new WildcardInformation("SampledData", TypeClassification.DATATYPE)); res.add(new WildcardInformation("SampledData", TypeClassification.DATATYPE));
res.add(new WildcardInformation("Signature", TypeClassification.DATATYPE)); res.add(new WildcardInformation("Signature", TypeClassification.DATATYPE));

View File

@ -273,9 +273,9 @@ public class XMLUtil {
for (int i = 0; i < rawContent.length(); i++) { for (int i = 0; i < rawContent.length(); i++) {
char ch = rawContent.charAt(i); char ch = rawContent.charAt(i);
if (ch == '\'') // We don't escape ' because our code always spits out attributes surrounded by "", which means
sb.append("&#39;"); // it's not necessary to escape ' - and it's *much* less ugly and more bandwidth-efficient when we don't.
else if (ch == '&') if (ch == '&')
sb.append("&amp;"); sb.append("&amp;");
else if (ch == '"') else if (ch == '"')
sb.append("&quot;"); sb.append("&quot;");