Class SearchParameter
- java.lang.Object
-
- org.linuxforhealth.fhir.model.visitor.AbstractVisitable
-
- org.linuxforhealth.fhir.model.resource.Resource
-
- org.linuxforhealth.fhir.model.resource.DomainResource
-
- org.linuxforhealth.fhir.model.resource.SearchParameter
-
- All Implemented Interfaces:
Visitable
@Generated("org.linuxforhealth.fhir.tools.CodeGenerator") public class SearchParameter extends DomainResource
A search parameter that defines a named search item that can be used to search/filter on a resource.Maturity level: FMM3 (Trial Use)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SearchParameter.Builder
static class
SearchParameter.Component
Used to define the parts of a composite search parameter.
-
Field Summary
-
Fields inherited from class org.linuxforhealth.fhir.model.resource.DomainResource
contained, extension, modifierExtension, text
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(java.lang.String elementName, int elementIndex, Visitor visitor)
Accept a Visitor and invoke the appropriate visit methods.static SearchParameter.Builder
builder()
boolean
equals(java.lang.Object obj)
java.util.List<ResourceTypeCode>
getBase()
The base resource type(s) that this search parameter can be used against.java.util.List<String>
getChain()
Contains the names of any search parameters which may be chained to the containing search parameter.Code
getCode()
The code used in the URL or the parameter name in a parameters resource for this search parameter.java.util.List<SearchComparator>
getComparator()
Comparators supported for the search parameter.java.util.List<SearchParameter.Component>
getComponent()
Used to define the parts of a composite search parameter.java.util.List<ContactDetail>
getContact()
Contact details to assist a user in finding and communicating with the publisher.DateTime
getDate()
The date (and optionally time) when the search parameter was published.Canonical
getDerivedFrom()
Where this search parameter is originally defined.Markdown
getDescription()
And how it used.Boolean
getExperimental()
A Boolean value to indicate that this search parameter is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.String
getExpression()
A FHIRPath expression that returns a set of elements for the search parameter.java.util.List<CodeableConcept>
getJurisdiction()
A legal or geographic region in which the search parameter is intended to be used.java.util.List<SearchModifierCode>
getModifier()
A modifier supported for the search parameter.Boolean
getMultipleAnd()
Whether multiple parameters are allowed - e.g.Boolean
getMultipleOr()
Whether multiple values are allowed for each time the parameter exists.String
getName()
A natural language name identifying the search parameter.String
getPublisher()
The name of the organization or individual that published the search parameter.Markdown
getPurpose()
Explanation of why this search parameter is needed and why it has been designed as it has.PublicationStatus
getStatus()
The status of this search parameter.java.util.List<ResourceTypeCode>
getTarget()
Types of resource (if a resource is referenced).SearchParamType
getType()
The type of value that a search parameter may contain, and how the content is interpreted.Uri
getUrl()
An absolute URI that is used to identify this search parameter when it is referenced in a specification, model, design or an instance; also called its canonical identifier.java.util.List<UsageContext>
getUseContext()
The content was developed with a focus and intent of supporting the contexts that are listed.String
getVersion()
The identifier that is used to identify this version of the search parameter when it is referenced in a specification, model, design or instance.String
getXpath()
An XPath expression that returns a set of elements for the search parameter.XPathUsageType
getXpathUsage()
How the search parameter relates to the set of elements returned by evaluating the xpath query.boolean
hasChildren()
int
hashCode()
SearchParameter.Builder
toBuilder()
Create a new Builder from the contents of this Resource-
Methods inherited from class org.linuxforhealth.fhir.model.resource.DomainResource
getContained, getExtension, getModifierExtension, getText
-
Methods inherited from class org.linuxforhealth.fhir.model.resource.Resource
as, getId, getImplicitRules, getLanguage, getMeta, is
-
-
-
-
Method Detail
-
getUrl
public Uri getUrl()
An absolute URI that is used to identify this search parameter when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this search parameter is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the search parameter is stored on different servers.- Returns:
- An immutable object of type
Uri
that is non-null.
-
getVersion
public String getVersion()
The identifier that is used to identify this version of the search parameter when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the search parameter author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.- Returns:
- An immutable object of type
String
that may be null.
-
getName
public String getName()
A natural language name identifying the search parameter. This name should be usable as an identifier for the module by machine processing applications such as code generation.- Returns:
- An immutable object of type
String
that is non-null.
-
getDerivedFrom
public Canonical getDerivedFrom()
Where this search parameter is originally defined. If a derivedFrom is provided, then the details in the search parameter must be consistent with the definition from which it is defined. i.e. the parameter should have the same meaning, and (usually) the functionality should be a proper subset of the underlying search parameter.- Returns:
- An immutable object of type
Canonical
that may be null.
-
getStatus
public PublicationStatus getStatus()
The status of this search parameter. Enables tracking the life-cycle of the content.- Returns:
- An immutable object of type
PublicationStatus
that is non-null.
-
getExperimental
public Boolean getExperimental()
A Boolean value to indicate that this search parameter is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.- Returns:
- An immutable object of type
Boolean
that may be null.
-
getDate
public DateTime getDate()
The date (and optionally time) when the search parameter was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the search parameter changes.- Returns:
- An immutable object of type
DateTime
that may be null.
-
getPublisher
public String getPublisher()
The name of the organization or individual that published the search parameter.- Returns:
- An immutable object of type
String
that may be null.
-
getContact
public java.util.List<ContactDetail> getContact()
Contact details to assist a user in finding and communicating with the publisher.- Returns:
- An unmodifiable list containing immutable objects of type
ContactDetail
that may be empty.
-
getDescription
public Markdown getDescription()
And how it used.- Returns:
- An immutable object of type
Markdown
that is non-null.
-
getUseContext
public java.util.List<UsageContext> getUseContext()
The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate search parameter instances.- Returns:
- An unmodifiable list containing immutable objects of type
UsageContext
that may be empty.
-
getJurisdiction
public java.util.List<CodeableConcept> getJurisdiction()
A legal or geographic region in which the search parameter is intended to be used.- Returns:
- An unmodifiable list containing immutable objects of type
CodeableConcept
that may be empty.
-
getPurpose
public Markdown getPurpose()
Explanation of why this search parameter is needed and why it has been designed as it has.- Returns:
- An immutable object of type
Markdown
that may be null.
-
getCode
public Code getCode()
The code used in the URL or the parameter name in a parameters resource for this search parameter.- Returns:
- An immutable object of type
Code
that is non-null.
-
getBase
public java.util.List<ResourceTypeCode> getBase()
The base resource type(s) that this search parameter can be used against.- Returns:
- An unmodifiable list containing immutable objects of type
ResourceTypeCode
that is non-empty.
-
getType
public SearchParamType getType()
The type of value that a search parameter may contain, and how the content is interpreted.- Returns:
- An immutable object of type
SearchParamType
that is non-null.
-
getExpression
public String getExpression()
A FHIRPath expression that returns a set of elements for the search parameter.- Returns:
- An immutable object of type
String
that may be null.
-
getXpath
public String getXpath()
An XPath expression that returns a set of elements for the search parameter.- Returns:
- An immutable object of type
String
that may be null.
-
getXpathUsage
public XPathUsageType getXpathUsage()
How the search parameter relates to the set of elements returned by evaluating the xpath query.- Returns:
- An immutable object of type
XPathUsageType
that may be null.
-
getTarget
public java.util.List<ResourceTypeCode> getTarget()
Types of resource (if a resource is referenced).- Returns:
- An unmodifiable list containing immutable objects of type
ResourceTypeCode
that may be empty.
-
getMultipleOr
public Boolean getMultipleOr()
Whether multiple values are allowed for each time the parameter exists. Values are separated by commas, and the parameter matches if any of the values match.- Returns:
- An immutable object of type
Boolean
that may be null.
-
getMultipleAnd
public Boolean getMultipleAnd()
Whether multiple parameters are allowed - e.g. more than one parameter with the same name. The search matches if all the parameters match.- Returns:
- An immutable object of type
Boolean
that may be null.
-
getComparator
public java.util.List<SearchComparator> getComparator()
Comparators supported for the search parameter.- Returns:
- An unmodifiable list containing immutable objects of type
SearchComparator
that may be empty.
-
getModifier
public java.util.List<SearchModifierCode> getModifier()
A modifier supported for the search parameter.- Returns:
- An unmodifiable list containing immutable objects of type
SearchModifierCode
that may be empty.
-
getChain
public java.util.List<String> getChain()
Contains the names of any search parameters which may be chained to the containing search parameter. Chained parameters may be added to search parameters of type reference and specify that resources will only be returned if they contain a reference to a resource which matches the chained parameter value. Values for this field should be drawn from SearchParameter.code for a parameter on the target resource type.- Returns:
- An unmodifiable list containing immutable objects of type
String
that may be empty.
-
getComponent
public java.util.List<SearchParameter.Component> getComponent()
Used to define the parts of a composite search parameter.- Returns:
- An unmodifiable list containing immutable objects of type
SearchParameter.Component
that may be empty.
-
hasChildren
public boolean hasChildren()
- Overrides:
hasChildren
in classDomainResource
-
accept
public void accept(java.lang.String elementName, int elementIndex, Visitor visitor)
Description copied from interface:Visitable
Accept a Visitor and invoke the appropriate visit methods. A typical implementation would look like this:if (visitor.preVisit(this)) { visitor.visitStart(elementName, elementIndex, this); if (visitor.visit(elementName, elementIndex, this)) { // visit children } visitor.visitEnd(elementName, elementIndex, this); visitor.postVisit(this); }
- Specified by:
accept
in interfaceVisitable
- Specified by:
accept
in classAbstractVisitable
- Parameters:
elementName
- the name of the element in the context of this visitelementIndex
- the index of the element in a list or -1 if it is not contained within a Listvisitor
- the visitor to use
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toBuilder
public SearchParameter.Builder toBuilder()
Description copied from class:Resource
Create a new Builder from the contents of this Resource- Specified by:
toBuilder
in classDomainResource
-
builder
public static SearchParameter.Builder builder()
-
-