docs: private SubscriptionMatchResult matchIdsWithAndOr(String theParamName, List<List<IQueryParameterType>> theAndOrParams, RuntimeResourceDefinition theResourceDefinition, IBaseResource theResource, ResourceIndexedSearchParams theSearchParams) {
  		if (theAndOrParams.isEmpty()) {
  			return SubscriptionMatchResult.successfulMatch();
  		}
  
  		if (hasQualifiers(theAndOrParams)) {
  			return SubscriptionMatchResult.unsupportedFromParameterAndReason(theParamName, SubscriptionMatchResult.STANDARD_PARAMETER);
  		}
  		if (hasPrefixes(theAndOrParams)) {
  
  			return SubscriptionMatchResult.unsupportedFromParameterAndReason(theParamName, SubscriptionMatchResult.PREFIX);
  
  		}
  		if (hasChain(theAndOrParams)) {
  			return SubscriptionMatchResult.unsupportedFromParameterAndReason(theParamName, SubscriptionMatchResult.CHAIN);
  		}
  		switch (theParamName) {
  			case IAnyResource.SP_RES_ID:
  
  				return SubscriptionMatchResult.fromBoolean(matchIdsAndOr(theAndOrParams, theResource));
  
  			case IAnyResource.SP_RES_LANGUAGE:
  			case Constants.PARAM_HAS:
  			case Constants.PARAM_TAG:
  			case Constants.PARAM_PROFILE:
  			case Constants.PARAM_SECURITY:
  
  				return SubscriptionMatchResult.unsupportedFromParameterAndReason(theParamName, SubscriptionMatchResult.PARAM);
  
  			default:
  
  				String resourceName = theResourceDefinition.getName();
  				RuntimeSearchParam paramDef = mySearchParamRegistry.getActiveSearchParam(resourceName, theParamName);
  				return matchResourceParam(theParamName, theAndOrParams, theSearchParams, resourceName, paramDef);
  		}
  	}