Search code examples
hl7-fhirhapi-fhir

Hapi Fhir Constants for "Common Parameters defined for all resources"


http://www.hl7.org/implement/standards/fhir/search.html#advanced

Common Parameters defined for all resources:
Name    Type    Description Paths
_id token   Resource id (not a full URL)    Resource.id
_lastUpdated    date    Date last updated. Server has discretion on the boundary precision  Resource.meta.lastUpdated
_tag    token   Search by a resource tag    Resource.meta.tag
_profile    uri Search for all resources tagged with a profile  Resource.meta.profile
_security   token   Search by a security label  Resource.meta.security
_text   string  Text search against the narrative   
_content    string  Text search against the entire resource 
_list   string  All resources in nominated list (by id, not a full URL) 
_query  string  Custom named query  

Is there a Hapi Fhir "constant" somewhere for these?

Today I happen to be looking for "_profile".

I've check the SP_ values for

org.hl7.fhir.r4.model.DomainResource;
org.hl7.fhir.r4.model.ListResource;
org.hl7.fhir.r4.model.Resource

but no luck.

I found org.hl7.fhir.r4.model.Resource.SP_RES_ID (as "_id")

String SP_RES_ID = "_id";

But not for the other "standard" ones.

Thanks.

Gradle package reference:

implementation group: 'ca.uhn.hapi.fhir', name: 'hapi-fhir-structures-r4', version: hapiFhirVersion

    hapiFhirVersion = '5.1.0'

Solution

  • I found some

    https://hapifhir.io/hapi-fhir/apidocs/hapi-fhir-base/ca/uhn/fhir/rest/api/Constants.html#PARAM_PROFILE

    Package ca.uhn.fhir.rest.api
    
     Constants.PARAM_PROFILE
    
    public static final String PARAM_PROFILE = "_profile";
    

    and some others since you found this question!

    /**
     * Used in paging links
     */
    public static final String PARAM_BUNDLETYPE = "_bundletype";
    public static final String PARAM_FILTER = "_filter";
    public static final String PARAM_CONTAINED = "_contained";
    public static final String PARAM_CONTAINED_TYPE = "_containedType";
    public static final String PARAM_CONTENT = "_content";
    public static final String PARAM_COUNT = "_count";
    public static final String PARAM_DELETE = "_delete";
    public static final String PARAM_ELEMENTS = "_elements";
    public static final String PARAM_ELEMENTS_EXCLUDE_MODIFIER = ":exclude";
    public static final String PARAM_FORMAT = "_format";
    public static final String PARAM_HAS = "_has";
    public static final String PARAM_HISTORY = "_history";
    public static final String PARAM_INCLUDE = "_include";
    public static final String PARAM_INCLUDE_QUALIFIER_RECURSE = ":recurse";
    public static final String PARAM_INCLUDE_RECURSE = "_include" + PARAM_INCLUDE_QUALIFIER_RECURSE;
    public static final String PARAM_INCLUDE_QUALIFIER_ITERATE = ":iterate";
    public static final String PARAM_INCLUDE_ITERATE = "_include" + PARAM_INCLUDE_QUALIFIER_ITERATE;
    public static final String PARAM_LASTUPDATED = "_lastUpdated";
    public static final String PARAM_NARRATIVE = "_narrative";
    public static final String PARAM_PAGINGACTION = "_getpages";
    public static final String PARAM_PAGINGOFFSET = "_getpagesoffset";
    public static final String PARAM_PRETTY = "_pretty";
    public static final String PARAM_PRETTY_VALUE_FALSE = "false";
    public static final String PARAM_PRETTY_VALUE_TRUE = "true";
    public static final String PARAM_PROFILE = "_profile";
    public static final String PARAM_QUERY = "_query";
    public static final String PARAM_RESPONSE_URL = "response-url"; //Used in messaging
    public static final String PARAM_REVINCLUDE = "_revinclude";
    public static final String PARAM_REVINCLUDE_RECURSE = PARAM_REVINCLUDE + PARAM_INCLUDE_QUALIFIER_RECURSE;
    public static final String PARAM_REVINCLUDE_ITERATE = PARAM_REVINCLUDE + PARAM_INCLUDE_QUALIFIER_ITERATE;
    public static final String PARAM_SEARCH = "_search";
    public static final String PARAM_SECURITY = "_security";
    public static final String PARAM_SINCE = "_since";
    public static final String PARAM_SORT = "_sort";
    public static final String PARAM_SORT_ASC = "_sort:asc";
    public static final String PARAM_SORT_DESC = "_sort:desc";
    public static final String PARAM_SOURCE = "_source";
    public static final String PARAM_SUMMARY = "_summary";
    public static final String PARAM_TAG = "_tag";
    public static final String PARAM_TAGS = "_tags";
    public static final String PARAM_TEXT = "_text";
    public static final String PARAM_VALIDATE = "_validate";
    public static final String PARAMQUALIFIER_MISSING = ":missing";
    public static final String PARAMQUALIFIER_MISSING_FALSE = "false";
    public static final String PARAMQUALIFIER_MISSING_TRUE = "true";
    public static final String PARAMQUALIFIER_STRING_CONTAINS = ":contains";
    public static final String PARAMQUALIFIER_STRING_EXACT = ":exact";
    public static final String PARAMQUALIFIER_TOKEN_TEXT = ":text";