Canonical Resource Management Infrastructure Implementation Guide
1.0.0 - STU1

Publication Build: This will be filled in by the publication tooling

## Resource Profile: CRMI Shareable SearchParameter

Official URL: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablesearchparameter | Version: 1.0.0
Standards status: Trial-use | Maturity Level: 3 | Computable Name: CRMIShareableSearchParameter
Other Identifiers: OID:2.16.840.1.113883.4.642.40.38.42.57

Enforces the minimum information set for the search parameter metadata required by HL7 and other organizations that share and publish search parameters

Usage:

- Examples for this Resource Profile: ShareableSearchParameterExample

### Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

- Differential Table
- Key Elements Table
- Snapshot Table
- Statistics/References
- All

This structure is derived from SearchParameter

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
SearchParameter |  | 1..1 | SearchParameter | Search parameter for a resource
Slices for extension |  |  |  | Content/Rules for all slices
knowledgeCapability | S | 0..* | code | shareable | computable | publishable | executable URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability Binding: KnowledgeCapability (required)
artifactComment | S | 0..* | (Complex) | Additional documentation, review, or usage guidance URL: http://hl7.org/fhir/StructureDefinition/cqf-artifactComment
versionAlgorithm | S | 0..1 | string, Coding | How to compare versions URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm Binding: VersionAlgorithm (extensible)
versionPolicy | S | 0..1 | CodeableConcept | metadata | strict URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy Binding: Artifact Version Policy (extensible): The versioning policy of the artifact
title | S | 1..1 | string | Name for this artifact (human friendly) URL: http://hl7.org/fhir/StructureDefinition/artifact-title
url | S | 1..1 | uri | Canonical identifier for this search parameter, represented as a URI (globally unique)
version | S | 1..1 | string | Business version of the search parameter
name | S | 1..1 | string | Name for this search parameter (computer friendly)
status | S | 1..1 | code | draft | active | retired | unknown
experimental | S | 1..1 | boolean | For testing purposes, not real usage
publisher | S | 0..1 | string | Name of the publisher (organization or individual)
description | S | 1..1 | markdown | Natural language description of the search parameter
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
SearchParameter | C | 1..1 | SearchParameter | Search parameter for a resource spd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation spd-1: If an xpath is present, there SHALL be an xpathUsage spd-2: Search parameters can only have chain names when the search parameter type is 'reference'
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  | 1..* | Extension | Extension Slice: Unordered, Open by value:url
knowledgeCapability | S | 0..* | code | shareable | computable | publishable | executable URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability Binding: KnowledgeCapability (required)
artifactComment | S | 0..* | (Complex) | Additional documentation, review, or usage guidance URL: http://hl7.org/fhir/StructureDefinition/cqf-artifactComment
versionAlgorithm | S | 0..1 | string, Coding | How to compare versions URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm Binding: VersionAlgorithm (extensible)
versionPolicy | S | 0..1 | CodeableConcept | metadata | strict URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy Binding: Artifact Version Policy (extensible): The versioning policy of the artifact
title | S | 1..1 | string | Name for this artifact (human friendly) URL: http://hl7.org/fhir/StructureDefinition/artifact-title
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
url | S Σ | 1..1 | uri | Canonical identifier for this search parameter, represented as a URI (globally unique)
version | S Σ | 1..1 | string | Business version of the search parameter
name | S Σ C | 1..1 | string | Name for this search parameter (computer friendly)
status | ?!S Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact.
experimental | S Σ | 1..1 | boolean | For testing purposes, not real usage
publisher | S Σ | 0..1 | string | Name of the publisher (organization or individual)
description | S Σ | 1..1 | markdown | Natural language description of the search parameter
code | Σ | 1..1 | code | Code used in URL
base | Σ | 1..* | code | The resource type(s) this search parameter applies to Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
type | Σ | 1..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters.
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
SearchParameter.status | required | PublicationStatus `http://hl7.org/fhir/ValueSet/publication-status|4.0.1` from the FHIR Standard
SearchParameter.base | required | ResourceType `http://hl7.org/fhir/ValueSet/resource-types|4.0.1` from the FHIR Standard
SearchParameter.type | required | SearchParamType `http://hl7.org/fhir/ValueSet/search-param-type|4.0.1` from the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | SearchParameter | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | SearchParameter | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() |
dom-4 | error | SearchParameter | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() |
dom-5 | error | SearchParameter | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | SearchParameter | A resource should have narrative for robust management : text.`div`.exists() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
spd-0 | warning | SearchParameter | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') |
spd-1 | error | SearchParameter | If an xpath is present, there SHALL be an xpathUsage : xpath.empty() or xpathUsage.exists() |
spd-2 | error | SearchParameter | Search parameters can only have chain names when the search parameter type is 'reference' : chain.empty() or type = 'reference' |

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
SearchParameter | C | 1..1 | SearchParameter | Search parameter for a resource spd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation spd-1: If an xpath is present, there SHALL be an xpathUsage spd-2: Search parameters can only have chain names when the search parameter type is 'reference'
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 1..* | Extension | Extension Slice: Unordered, Open by value:url
knowledgeCapability | S | 0..* | code | shareable | computable | publishable | executable URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability Binding: KnowledgeCapability (required)
artifactComment | S | 0..* | (Complex) | Additional documentation, review, or usage guidance URL: http://hl7.org/fhir/StructureDefinition/cqf-artifactComment
versionAlgorithm | S | 0..1 | string, Coding | How to compare versions URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm Binding: VersionAlgorithm (extensible)
versionPolicy | S | 0..1 | CodeableConcept | metadata | strict URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy Binding: Artifact Version Policy (extensible): The versioning policy of the artifact
title | S | 1..1 | string | Name for this artifact (human friendly) URL: http://hl7.org/fhir/StructureDefinition/artifact-title
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
url | S Σ | 1..1 | uri | Canonical identifier for this search parameter, represented as a URI (globally unique)
version | S Σ | 1..1 | string | Business version of the search parameter
name | S Σ C | 1..1 | string | Name for this search parameter (computer friendly)
derivedFrom |  | 0..1 | canonical(SearchParameter) | Original definition for the search parameter
status | ?!S Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact.
experimental | S Σ | 1..1 | boolean | For testing purposes, not real usage
date | Σ | 0..1 | dateTime | Date last changed
publisher | S Σ | 0..1 | string | Name of the publisher (organization or individual)
contact | Σ | 0..* | ContactDetail | Contact details for the publisher
description | S Σ | 1..1 | markdown | Natural language description of the search parameter
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for search parameter (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.
purpose |  | 0..1 | markdown | Why this search parameter is defined
code | Σ | 1..1 | code | Code used in URL
base | Σ | 1..* | code | The resource type(s) this search parameter applies to Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
type | Σ | 1..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters.
expression | C | 0..1 | string | FHIRPath expression that extracts the values
xpath | C | 0..1 | string | XPath that extracts the values
xpathUsage | C | 0..1 | code | normal | phonetic | nearby | distance | other Binding: XPathUsageType (required): How a search parameter relates to the set of elements returned by evaluating its xpath query.
target |  | 0..* | code | Types of resource (if a resource reference) Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
multipleOr |  | 0..1 | boolean | Allow multiple values per parameter (or)
multipleAnd |  | 0..1 | boolean | Allow multiple parameters (and)
comparator |  | 0..* | code | eq | ne | gt | lt | ge | le | sa | eb | ap Binding: SearchComparator (required): What Search Comparator Codes are supported in search.
modifier |  | 0..* | code | missing | exact | contains | not | text | in | not-in | below | above | type | identifier | ofType Binding: SearchModifierCode (required): A supported modifier for a search parameter.
chain |  | 0..* | string | Chained names supported
component |  | 0..* | BackboneElement | For Composite resources to define the parts
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
definition |  | 1..1 | canonical(SearchParameter) | Defines how the part works
expression |  | 1..1 | string | Subexpression relative to main expression
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
SearchParameter.language | preferred | CommonLanguages
Additional Bindings | Purpose
AllLanguages | Max Binding
`http://hl7.org/fhir/ValueSet/languages` from the FHIR Standard
SearchParameter.status | required | PublicationStatus `http://hl7.org/fhir/ValueSet/publication-status|4.0.1` from the FHIR Standard
SearchParameter.jurisdiction | extensible | Jurisdiction ValueSet `http://hl7.org/fhir/ValueSet/jurisdiction` from the FHIR Standard
SearchParameter.base | required | ResourceType `http://hl7.org/fhir/ValueSet/resource-types|4.0.1` from the FHIR Standard
SearchParameter.type | required | SearchParamType `http://hl7.org/fhir/ValueSet/search-param-type|4.0.1` from the FHIR Standard
SearchParameter.xpathUsage | required | XPathUsageType `http://hl7.org/fhir/ValueSet/search-xpath-usage|4.0.1` from the FHIR Standard
SearchParameter.target | required | ResourceType `http://hl7.org/fhir/ValueSet/resource-types|4.0.1` from the FHIR Standard
SearchParameter.comparator | required | SearchComparator `http://hl7.org/fhir/ValueSet/search-comparator|4.0.1` from the FHIR Standard
SearchParameter.modifier | required | SearchModifierCode `http://hl7.org/fhir/ValueSet/search-modifier-code|4.0.1` from the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | SearchParameter | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | SearchParameter | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() |
dom-4 | error | SearchParameter | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() |
dom-5 | error | SearchParameter | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | SearchParameter | A resource should have narrative for robust management : text.`div`.exists() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
spd-0 | warning | SearchParameter | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') |
spd-1 | error | SearchParameter | If an xpath is present, there SHALL be an xpathUsage : xpath.empty() or xpathUsage.exists() |
spd-2 | error | SearchParameter | Search parameters can only have chain names when the search parameter type is 'reference' : chain.empty() or type = 'reference' |

This structure is derived from SearchParameter

Summary

Mandatory: 5 elements
Must-Support: 12 elements

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
- http://hl7.org/fhir/StructureDefinition/cqf-artifactComment
- http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
- http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
- http://hl7.org/fhir/StructureDefinition/artifact-title

Maturity: 3

Differential View

This structure is derived from SearchParameter

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
SearchParameter |  | 1..1 | SearchParameter | Search parameter for a resource
Slices for extension |  |  |  | Content/Rules for all slices
knowledgeCapability | S | 0..* | code | shareable | computable | publishable | executable URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability Binding: KnowledgeCapability (required)
artifactComment | S | 0..* | (Complex) | Additional documentation, review, or usage guidance URL: http://hl7.org/fhir/StructureDefinition/cqf-artifactComment
versionAlgorithm | S | 0..1 | string, Coding | How to compare versions URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm Binding: VersionAlgorithm (extensible)
versionPolicy | S | 0..1 | CodeableConcept | metadata | strict URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy Binding: Artifact Version Policy (extensible): The versioning policy of the artifact
title | S | 1..1 | string | Name for this artifact (human friendly) URL: http://hl7.org/fhir/StructureDefinition/artifact-title
url | S | 1..1 | uri | Canonical identifier for this search parameter, represented as a URI (globally unique)
version | S | 1..1 | string | Business version of the search parameter
name | S | 1..1 | string | Name for this search parameter (computer friendly)
status | S | 1..1 | code | draft | active | retired | unknown
experimental | S | 1..1 | boolean | For testing purposes, not real usage
publisher | S | 0..1 | string | Name of the publisher (organization or individual)
description | S | 1..1 | markdown | Natural language description of the search parameter
Documentation for this format

Key Elements View

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
SearchParameter | C | 1..1 | SearchParameter | Search parameter for a resource spd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation spd-1: If an xpath is present, there SHALL be an xpathUsage spd-2: Search parameters can only have chain names when the search parameter type is 'reference'
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  | 1..* | Extension | Extension Slice: Unordered, Open by value:url
knowledgeCapability | S | 0..* | code | shareable | computable | publishable | executable URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability Binding: KnowledgeCapability (required)
artifactComment | S | 0..* | (Complex) | Additional documentation, review, or usage guidance URL: http://hl7.org/fhir/StructureDefinition/cqf-artifactComment
versionAlgorithm | S | 0..1 | string, Coding | How to compare versions URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm Binding: VersionAlgorithm (extensible)
versionPolicy | S | 0..1 | CodeableConcept | metadata | strict URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy Binding: Artifact Version Policy (extensible): The versioning policy of the artifact
title | S | 1..1 | string | Name for this artifact (human friendly) URL: http://hl7.org/fhir/StructureDefinition/artifact-title
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
url | S Σ | 1..1 | uri | Canonical identifier for this search parameter, represented as a URI (globally unique)
version | S Σ | 1..1 | string | Business version of the search parameter
name | S Σ C | 1..1 | string | Name for this search parameter (computer friendly)
status | ?!S Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact.
experimental | S Σ | 1..1 | boolean | For testing purposes, not real usage
publisher | S Σ | 0..1 | string | Name of the publisher (organization or individual)
description | S Σ | 1..1 | markdown | Natural language description of the search parameter
code | Σ | 1..1 | code | Code used in URL
base | Σ | 1..* | code | The resource type(s) this search parameter applies to Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
type | Σ | 1..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters.
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
SearchParameter.status | required | PublicationStatus `http://hl7.org/fhir/ValueSet/publication-status|4.0.1` from the FHIR Standard
SearchParameter.base | required | ResourceType `http://hl7.org/fhir/ValueSet/resource-types|4.0.1` from the FHIR Standard
SearchParameter.type | required | SearchParamType `http://hl7.org/fhir/ValueSet/search-param-type|4.0.1` from the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | SearchParameter | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | SearchParameter | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() |
dom-4 | error | SearchParameter | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() |
dom-5 | error | SearchParameter | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | SearchParameter | A resource should have narrative for robust management : text.`div`.exists() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
spd-0 | warning | SearchParameter | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') |
spd-1 | error | SearchParameter | If an xpath is present, there SHALL be an xpathUsage : xpath.empty() or xpathUsage.exists() |
spd-2 | error | SearchParameter | Search parameters can only have chain names when the search parameter type is 'reference' : chain.empty() or type = 'reference' |

Snapshot View

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
SearchParameter | C | 1..1 | SearchParameter | Search parameter for a resource spd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation spd-1: If an xpath is present, there SHALL be an xpathUsage spd-2: Search parameters can only have chain names when the search parameter type is 'reference'
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 1..* | Extension | Extension Slice: Unordered, Open by value:url
knowledgeCapability | S | 0..* | code | shareable | computable | publishable | executable URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability Binding: KnowledgeCapability (required)
artifactComment | S | 0..* | (Complex) | Additional documentation, review, or usage guidance URL: http://hl7.org/fhir/StructureDefinition/cqf-artifactComment
versionAlgorithm | S | 0..1 | string, Coding | How to compare versions URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm Binding: VersionAlgorithm (extensible)
versionPolicy | S | 0..1 | CodeableConcept | metadata | strict URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy Binding: Artifact Version Policy (extensible): The versioning policy of the artifact
title | S | 1..1 | string | Name for this artifact (human friendly) URL: http://hl7.org/fhir/StructureDefinition/artifact-title
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
url | S Σ | 1..1 | uri | Canonical identifier for this search parameter, represented as a URI (globally unique)
version | S Σ | 1..1 | string | Business version of the search parameter
name | S Σ C | 1..1 | string | Name for this search parameter (computer friendly)
derivedFrom |  | 0..1 | canonical(SearchParameter) | Original definition for the search parameter
status | ?!S Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact.
experimental | S Σ | 1..1 | boolean | For testing purposes, not real usage
date | Σ | 0..1 | dateTime | Date last changed
publisher | S Σ | 0..1 | string | Name of the publisher (organization or individual)
contact | Σ | 0..* | ContactDetail | Contact details for the publisher
description | S Σ | 1..1 | markdown | Natural language description of the search parameter
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for search parameter (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.
purpose |  | 0..1 | markdown | Why this search parameter is defined
code | Σ | 1..1 | code | Code used in URL
base | Σ | 1..* | code | The resource type(s) this search parameter applies to Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
type | Σ | 1..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters.
expression | C | 0..1 | string | FHIRPath expression that extracts the values
xpath | C | 0..1 | string | XPath that extracts the values
xpathUsage | C | 0..1 | code | normal | phonetic | nearby | distance | other Binding: XPathUsageType (required): How a search parameter relates to the set of elements returned by evaluating its xpath query.
target |  | 0..* | code | Types of resource (if a resource reference) Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
multipleOr |  | 0..1 | boolean | Allow multiple values per parameter (or)
multipleAnd |  | 0..1 | boolean | Allow multiple parameters (and)
comparator |  | 0..* | code | eq | ne | gt | lt | ge | le | sa | eb | ap Binding: SearchComparator (required): What Search Comparator Codes are supported in search.
modifier |  | 0..* | code | missing | exact | contains | not | text | in | not-in | below | above | type | identifier | ofType Binding: SearchModifierCode (required): A supported modifier for a search parameter.
chain |  | 0..* | string | Chained names supported
component |  | 0..* | BackboneElement | For Composite resources to define the parts
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
definition |  | 1..1 | canonical(SearchParameter) | Defines how the part works
expression |  | 1..1 | string | Subexpression relative to main expression
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
SearchParameter.language | preferred | CommonLanguages
Additional Bindings | Purpose
AllLanguages | Max Binding
`http://hl7.org/fhir/ValueSet/languages` from the FHIR Standard
SearchParameter.status | required | PublicationStatus `http://hl7.org/fhir/ValueSet/publication-status|4.0.1` from the FHIR Standard
SearchParameter.jurisdiction | extensible | Jurisdiction ValueSet `http://hl7.org/fhir/ValueSet/jurisdiction` from the FHIR Standard
SearchParameter.base | required | ResourceType `http://hl7.org/fhir/ValueSet/resource-types|4.0.1` from the FHIR Standard
SearchParameter.type | required | SearchParamType `http://hl7.org/fhir/ValueSet/search-param-type|4.0.1` from the FHIR Standard
SearchParameter.xpathUsage | required | XPathUsageType `http://hl7.org/fhir/ValueSet/search-xpath-usage|4.0.1` from the FHIR Standard
SearchParameter.target | required | ResourceType `http://hl7.org/fhir/ValueSet/resource-types|4.0.1` from the FHIR Standard
SearchParameter.comparator | required | SearchComparator `http://hl7.org/fhir/ValueSet/search-comparator|4.0.1` from the FHIR Standard
SearchParameter.modifier | required | SearchModifierCode `http://hl7.org/fhir/ValueSet/search-modifier-code|4.0.1` from the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | SearchParameter | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | SearchParameter | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() |
dom-4 | error | SearchParameter | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() |
dom-5 | error | SearchParameter | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | SearchParameter | A resource should have narrative for robust management : text.`div`.exists() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
spd-0 | warning | SearchParameter | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') |
spd-1 | error | SearchParameter | If an xpath is present, there SHALL be an xpathUsage : xpath.empty() or xpathUsage.exists() |
spd-2 | error | SearchParameter | Search parameters can only have chain names when the search parameter type is 'reference' : chain.empty() or type = 'reference' |

This structure is derived from SearchParameter

Summary

Mandatory: 5 elements
Must-Support: 12 elements

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
- http://hl7.org/fhir/StructureDefinition/cqf-artifactComment
- http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
- http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
- http://hl7.org/fhir/StructureDefinition/artifact-title

Maturity: 3

Other representations of profile: CSV, Excel, Schematron