| FHIR Infrastructure Work Group | Maturity Level: 1 | Informative | Use Context: Any | 
URL for this extension:
http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination
Status: draft. Extension maintained by: Health Level Seven, Inc. - [WG Name] WG
This extension defines a possible search parameter combination, by listing a set of search parameters and indicating whether they are required or optional. If a search combination is specified, clients should expect that they must submit a search that meets one of the required combinations or the search will be unsuccessful. If multiple search parameter combinations are specified, a client may pick between them, and supply the minimal required parameters for any of the combinations.
Comment:
For example, on the Patient Resource you could use this to state support for searching by Patient.name and Patient.gender is required.
Context of Use: Use on Element ID CapabilityStatement.rest.resource
Summary
| Name | Flags | Card. | Type | Description & Constraints![]()  | 
|---|---|---|---|---|
![]()  | 0..* | Extension | URL = http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination search-parameter-combination: This extension defines a possible search parameter combination, by listing a set of search parameters and indicating whether they are required or optional. If a search combination is specified, clients should expect that they must submit a search that meets one of the required combinations or the search will be unsuccessful. If multiple search parameter combinations are specified, a client may pick between them, and supply the minimal required parameters for any of the combinations. Use on Element ID CapabilityStatement.rest.resource  | |
![]() ![]()  | 1..* | string | A search parameter name in the combination which is required. | |
![]() ![]()  | 0..* | string | A search parameter name in the combination which is optional. | |
  Documentation for this format | ||||
Full Structure
| Name | Flags | Card. | Type | Description & Constraints![]()  | 
|---|---|---|---|---|
![]()  | 0..* | Extension | URL = http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination search-parameter-combination: This extension defines a possible search parameter combination, by listing a set of search parameters and indicating whether they are required or optional. If a search combination is specified, clients should expect that they must submit a search that meets one of the required combinations or the search will be unsuccessful. If multiple search parameter combinations are specified, a client may pick between them, and supply the minimal required parameters for any of the combinations. Use on Element ID CapabilityStatement.rest.resource  | |
![]() ![]()  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url  | |
![]() ![]()  | 1..* | Extension | A required search parameter name | |
![]() ![]() ![]()  | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]()  | 0..0 | |||
![]() ![]() ![]()  | 1..1 | uri | "required" | |
![]() ![]() ![]()  | 1..1 | string | Value of extension | |
![]() ![]()  | 0..* | Extension | An optional search parameter name | |
![]() ![]() ![]()  | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]()  | 0..0 | |||
![]() ![]() ![]()  | 1..1 | uri | "optional" | |
![]() ![]() ![]()  | 1..1 | string | Value of extension | |
![]() ![]()  | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination" | |
![]() ![]()  | 0..0 | |||
![]() ![]() ![]()  | base64Binary | |||
![]() ![]() ![]()  | boolean | |||
![]() ![]() ![]()  | canonical(Any) | |||
![]() ![]() ![]()  | code | |||
![]() ![]() ![]()  | date | |||
![]() ![]() ![]()  | dateTime | |||
![]() ![]() ![]()  | decimal | |||
![]() ![]() ![]()  | id | |||
![]() ![]() ![]()  | instant | |||
![]() ![]() ![]()  | integer | |||
![]() ![]() ![]()  | markdown | |||
![]() ![]() ![]()  | oid | |||
![]() ![]() ![]()  | positiveInt | |||
![]() ![]() ![]()  | string | |||
![]() ![]() ![]()  | time | |||
![]() ![]() ![]()  | unsignedInt | |||
![]() ![]() ![]()  | uri | |||
![]() ![]() ![]()  | url | |||
![]() ![]() ![]()  | uuid | |||
![]() ![]() ![]()  | Address | |||
![]() ![]() ![]()  | Age | |||
![]() ![]() ![]()  | Annotation | |||
![]() ![]() ![]()  | Attachment | |||
![]() ![]() ![]()  | CodeableConcept | |||
![]() ![]() ![]()  | CodeableReference | |||
![]() ![]() ![]()  | Coding | |||
![]() ![]() ![]()  | ContactPoint | |||
![]() ![]() ![]()  | Count | |||
![]() ![]() ![]()  | Distance | |||
![]() ![]() ![]()  | Duration | |||
![]() ![]() ![]()  | HumanName | |||
![]() ![]() ![]()  | Identifier | |||
![]() ![]() ![]()  | Money | |||
![]() ![]() ![]()  | Period | |||
![]() ![]() ![]()  | Quantity | |||
![]() ![]() ![]()  | Range | |||
![]() ![]() ![]()  | Ratio | |||
![]() ![]() ![]()  | RatioRange | |||
![]() ![]() ![]()  | Reference(Any) | |||
![]() ![]() ![]()  | SampledData | |||
![]() ![]() ![]()  | Signature | |||
![]() ![]() ![]()  | Timing | |||
![]() ![]() ![]()  | ContactDetail | |||
![]() ![]() ![]()  | Contributor | |||
![]() ![]() ![]()  | DataRequirement | |||
![]() ![]() ![]()  | Expression | |||
![]() ![]() ![]()  | ParameterDefinition | |||
![]() ![]() ![]()  | RelatedArtifact | |||
![]() ![]() ![]()  | TriggerDefinition | |||
![]() ![]() ![]()  | UsageContext | |||
![]() ![]() ![]()  | Dosage | |||
  Documentation for this format | ||||
XML Template
<!-- search-parameter-combination --><extension xmlns="http://hl7.org/fhir" url="http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination" > <-- extension sliced by value:url in the specified orderOpen--> <extension url="required">
1..* Extension <!--
1..* A required search parameter name --> <valueString value="[string]"/><!--
1..1 Value of extension --> </extension> <extension url="optional">
0..* Extension <!--
0..* An optional search parameter name --> <valueString value="[string]"/><!--
1..1 Value of extension --> </extension> </extension>
JSON Template
{ // search-parameter-combination
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // A required search parameter name // C? R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "required", // R! 
        "valueString" : "<string>" // C? R! Value of extension
      },
      { // An optional search parameter name // C?
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "optional", // R! 
        "valueString" : "<string>" // C? R! Value of extension
      }
    ],
    "url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination", // R! 
// value[x]: Value of extension. One of these 51:
  }
 Summary
| Name | Flags | Card. | Type | Description & Constraints![]()  | 
|---|---|---|---|---|
![]()  | 0..* | Extension | URL = http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination search-parameter-combination: This extension defines a possible search parameter combination, by listing a set of search parameters and indicating whether they are required or optional. If a search combination is specified, clients should expect that they must submit a search that meets one of the required combinations or the search will be unsuccessful. If multiple search parameter combinations are specified, a client may pick between them, and supply the minimal required parameters for any of the combinations. Use on Element ID CapabilityStatement.rest.resource  | |
![]() ![]()  | 1..* | string | A search parameter name in the combination which is required. | |
![]() ![]()  | 0..* | string | A search parameter name in the combination which is optional. | |
  Documentation for this format | ||||
Full Structure
| Name | Flags | Card. | Type | Description & Constraints![]()  | 
|---|---|---|---|---|
![]()  | 0..* | Extension | URL = http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination search-parameter-combination: This extension defines a possible search parameter combination, by listing a set of search parameters and indicating whether they are required or optional. If a search combination is specified, clients should expect that they must submit a search that meets one of the required combinations or the search will be unsuccessful. If multiple search parameter combinations are specified, a client may pick between them, and supply the minimal required parameters for any of the combinations. Use on Element ID CapabilityStatement.rest.resource  | |
![]() ![]()  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url  | |
![]() ![]()  | 1..* | Extension | A required search parameter name | |
![]() ![]() ![]()  | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]()  | 0..0 | |||
![]() ![]() ![]()  | 1..1 | uri | "required" | |
![]() ![]() ![]()  | 1..1 | string | Value of extension | |
![]() ![]()  | 0..* | Extension | An optional search parameter name | |
![]() ![]() ![]()  | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]()  | 0..0 | |||
![]() ![]() ![]()  | 1..1 | uri | "optional" | |
![]() ![]() ![]()  | 1..1 | string | Value of extension | |
![]() ![]()  | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination" | |
![]() ![]()  | 0..0 | |||
![]() ![]() ![]()  | base64Binary | |||
![]() ![]() ![]()  | boolean | |||
![]() ![]() ![]()  | canonical(Any) | |||
![]() ![]() ![]()  | code | |||
![]() ![]() ![]()  | date | |||
![]() ![]() ![]()  | dateTime | |||
![]() ![]() ![]()  | decimal | |||
![]() ![]() ![]()  | id | |||
![]() ![]() ![]()  | instant | |||
![]() ![]() ![]()  | integer | |||
![]() ![]() ![]()  | markdown | |||
![]() ![]() ![]()  | oid | |||
![]() ![]() ![]()  | positiveInt | |||
![]() ![]() ![]()  | string | |||
![]() ![]() ![]()  | time | |||
![]() ![]() ![]()  | unsignedInt | |||
![]() ![]() ![]()  | uri | |||
![]() ![]() ![]()  | url | |||
![]() ![]() ![]()  | uuid | |||
![]() ![]() ![]()  | Address | |||
![]() ![]() ![]()  | Age | |||
![]() ![]() ![]()  | Annotation | |||
![]() ![]() ![]()  | Attachment | |||
![]() ![]() ![]()  | CodeableConcept | |||
![]() ![]() ![]()  | CodeableReference | |||
![]() ![]() ![]()  | Coding | |||
![]() ![]() ![]()  | ContactPoint | |||
![]() ![]() ![]()  | Count | |||
![]() ![]() ![]()  | Distance | |||
![]() ![]() ![]()  | Duration | |||
![]() ![]() ![]()  | HumanName | |||
![]() ![]() ![]()  | Identifier | |||
![]() ![]() ![]()  | Money | |||
![]() ![]() ![]()  | Period | |||
![]() ![]() ![]()  | Quantity | |||
![]() ![]() ![]()  | Range | |||
![]() ![]() ![]()  | Ratio | |||
![]() ![]() ![]()  | RatioRange | |||
![]() ![]() ![]()  | Reference(Any) | |||
![]() ![]() ![]()  | SampledData | |||
![]() ![]() ![]()  | Signature | |||
![]() ![]() ![]()  | Timing | |||
![]() ![]() ![]()  | ContactDetail | |||
![]() ![]() ![]()  | Contributor | |||
![]() ![]() ![]()  | DataRequirement | |||
![]() ![]() ![]()  | Expression | |||
![]() ![]() ![]()  | ParameterDefinition | |||
![]() ![]() ![]()  | RelatedArtifact | |||
![]() ![]() ![]()  | TriggerDefinition | |||
![]() ![]() ![]()  | UsageContext | |||
![]() ![]() ![]()  | Dosage | |||
  Documentation for this format | ||||
XML Template
<!-- search-parameter-combination --><extension xmlns="http://hl7.org/fhir" url="http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination" > <-- extension sliced by value:url in the specified orderOpen--> <extension url="required">
1..* Extension <!--
1..* A required search parameter name --> <valueString value="[string]"/><!--
1..1 Value of extension --> </extension> <extension url="optional">
0..* Extension <!--
0..* An optional search parameter name --> <valueString value="[string]"/><!--
1..1 Value of extension --> </extension> </extension>
JSON Template
{ // search-parameter-combination
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // A required search parameter name // C? R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "required", // R! 
        "valueString" : "<string>" // C? R! Value of extension
      },
      { // An optional search parameter name // C?
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "optional", // R! 
        "valueString" : "<string>" // C? R! Value of extension
      }
    ],
    "url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination", // R! 
// value[x]: Value of extension. One of these 51:
  }
 
Constraints