fix wrong collection type checking FHIRPath subsetOf parameter type

This commit is contained in:
Grahame Grieve 2024-03-14 16:46:39 +11:00
parent fc8be53260
commit 564a71fe1c
2 changed files with 11 additions and 1 deletions

View File

@ -3253,7 +3253,7 @@ public class FHIRPathEngine {
return new TypeDetails(CollectionStatus.SINGLETON, TypeDetails.FP_Boolean);
}
case SubsetOf : {
checkParamTypes(exp, exp.getFunction().toCode(), paramTypes, focus);
checkParamTypes(exp, exp.getFunction().toCode(), paramTypes, focus.toUnordered());
return new TypeDetails(CollectionStatus.SINGLETON, TypeDetails.FP_Boolean);
}
case SupersetOf : {

View File

@ -405,6 +405,16 @@ public class TypeDetails {
result.types.addAll(types);
return result;
}
public TypeDetails toOrdered() {
TypeDetails result = new TypeDetails(CollectionStatus.ORDERED);
result.types.addAll(types);
return result;
}
public TypeDetails toUnordered() {
TypeDetails result = new TypeDetails(CollectionStatus.UNORDERED);
result.types.addAll(types);
return result;
}
public CollectionStatus getCollectionStatus() {
return collectionStatus;
}