fix up extension context checking
This commit is contained in:
parent
be01ae2c21
commit
9cf8e0368c
|
@ -4151,7 +4151,6 @@ public class FHIRPathEngine {
|
|||
String param = nl.get(0).primitiveValue();
|
||||
|
||||
List<Base> result = new ArrayList<Base>();
|
||||
|
||||
if (focus.size() == 1) {
|
||||
String cnt = focus.get(0).primitiveValue();
|
||||
if ("hex".equals(param)) {
|
||||
|
@ -4164,7 +4163,6 @@ public class FHIRPathEngine {
|
|||
result.add(new StringType(new String(enc.decode(cnt))));
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
|
|
@ -2037,10 +2037,18 @@ public class InstanceValidator extends BaseValidator implements IResourceValidat
|
|||
}
|
||||
} else if (ctxt.getType() == ExtensionContextType.EXTENSION) {
|
||||
contexts.append("x:" + ctxt.getExpression());
|
||||
String ext = stack.getElement().getNamedChildValue("url");
|
||||
String ext = null;
|
||||
if (stack.getElement().getName().startsWith("value")) {
|
||||
NodeStack estack = stack.getParent();
|
||||
if (estack != null && estack.getElement().fhirType().equals("Extension")) {
|
||||
ext = estack.getElement().getNamedChildValue("url");
|
||||
}
|
||||
} else {
|
||||
ext = stack.getElement().getNamedChildValue("url");
|
||||
}
|
||||
if (ctxt.getExpression().equals(ext)) {
|
||||
ok = true;
|
||||
} else {
|
||||
} else if (ext != null) {
|
||||
plist.add(ext);
|
||||
}
|
||||
} else if (ctxt.getType() == ExtensionContextType.FHIRPATH) {
|
||||
|
|
Loading…
Reference in New Issue