diff --git a/onfhir-validation/src/main/scala/io/onfhir/validation/FhirContentValidator.scala b/onfhir-validation/src/main/scala/io/onfhir/validation/FhirContentValidator.scala index 64283514..91335b89 100644 --- a/onfhir-validation/src/main/scala/io/onfhir/validation/FhirContentValidator.scala +++ b/onfhir-validation/src/main/scala/io/onfhir/validation/FhirContentValidator.scala @@ -93,7 +93,7 @@ class FhirContentValidator(fhirConfig:FhirConfig, profileUrl:String, referenceRe extractFieldNameAndDataType(field, allRestrictions) match { //If there is no definition for the element, return error case None => - if(!isAllAbstract || forceRecognitionOfElementsEvenForAbstractChain) + if(!isAllAbstract || resourceElementRestrictions.nonEmpty || forceRecognitionOfElementsEvenForAbstractChain) FhirContentValidator.convertToOutcomeIssue(FHIRUtil.mergeElementPath(parentPath, field), Seq(ConstraintFailure(s"Unrecognized element '${FHIRUtil.mergeElementPath(parentPath, field)}' !"))) else //If we are validating against an abstract chain just ignore unknown elements Nil