Grahame Grieve 2020-07-22 12:28:55 +10:00
parent a4374bf671
commit 0d8aec0db5
1 changed files with 15 additions and 7 deletions

View File

@ -239,27 +239,30 @@ public class InstanceValidator extends BaseValidator implements IResourceValidat
if (c.getAppContext() instanceof Element) {
Element bnd = (Element) c.getAppContext();
Base res = resolveInBundle(url, bnd);
if (res != null)
if (res != null) {
return res;
}
}
Base res = resolveInBundle(url, c.getResource());
if (res != null)
if (res != null) {
return res;
}
res = resolveInBundle(url, c.getContainer());
if (res != null)
if (res != null) {
return res;
}
if (externalHostServices != null)
if (externalHostServices != null) {
return externalHostServices.resolveReference(c.getAppContext(), url, refContext);
else if (fetcher != null)
} else if (fetcher != null) {
try {
return fetcher.fetch(c.getAppContext(), url);
} catch (IOException e) {
throw new FHIRException(e);
}
else
} else {
throw new Error(context.formatMessage(I18nConstants.NOT_DONE_YET__RESOLVE__LOCALLY_2, url));
}
}
@ -1633,6 +1636,11 @@ public class InstanceValidator extends BaseValidator implements IResourceValidat
if ("http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version".equals(extUrl)) {
list.get(0).setExpression("Element"); // well, it can't be used anywhere but the list of places it can be used is quite long
}
if (!VersionUtilities.isThisOrLater("4.6", context.getVersion())) {
if (Utilities.existsInList(extUrl, "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", "http://hl7.org/fhir/StructureDefinition/capabilitystatement-prohibited")) {
list.get(0).setExpression("Element"); // well, they can't be used anywhere but the list of places they can be used is quite long
}
}
return list;
}