Snapshot 3: Connectathon 32 Base

This is Snapshot #3 for FHIR R5, released to support Connectathon 32. For a full list of available versions, see the Directory of published versions.

Extension: CapabilityStatement Search Parameter Combination

FHIR Infrastructure Work Group Maturity Level: 1Trial UseUse Context: Any
Official URL: http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination Version: 5.0.0-snapshot3
draft as of 2022-08-15 Computable Name: CSSearchParameterCombination
Flags: Non-Modifier OID: 2.16.840.1.113883.4.642.5.1044

Context of Use: Use on Element ID CapabilityStatement.rest.resource

Definition

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.
  • If no parameters in the set of search parameters are listed as required, then at least one of the listed optional parameters must be present. This shorthand method is the same as repeating the entire extension for each combination of optional and required search parameters.

Comment:

For example, on the Patient Resource you could use this to state support for searching by Patient.name and Patient.gender is required.

Extension Content

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. CSSearchParameterCombination0..*ExtensionURL = http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination
CSSearchParameterCombination: 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.
  • If no parameters in the set of search parameters are listed as required, then at least one of the listed optional parameters must be present. This shorthand method is the same as repeating the entire extension for each combination of optional and required search parameters.



Use on Element ID CapabilityStatement.rest.resource
... required0..*stringA required search parameter name

... optional0..*stringAn optional search parameter name


doco Documentation for this format

Full Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..*ExtensionURL = http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination
CSSearchParameterCombination: 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.
  • If no parameters in the set of search parameters are listed as required, then at least one of the listed optional parameters must be present. This shorthand method is the same as repeating the entire extension for each combination of optional and required search parameters.



Use on Element ID CapabilityStatement.rest.resource
... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... extension:required 0..*ExtensionA required search parameter name
.... id 0..1idUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"required"
.... value[x] 1..1stringValue of extension
... extension:optional 0..*ExtensionAn optional search parameter name
.... id 0..1idUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"optional"
.... value[x] 1..1stringValue of extension
... value[x] 0..0

doco Documentation for this format

XML Template

<!-- CSSearchParameterCombination -->doco

<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"> I 0..* Extension  <!-- I 0..* A required search parameter name -->
  <valueString value="[string]"/><!-- I 1..1 Value of extension -->
 </extension>
 <extension url="optional"> I 0..* Extension  <!-- I 0..* An optional search parameter name -->
  <valueString value="[string]"/><!-- I 1..1 Value of extension -->
 </extension>
</extension>

JSON Template

{ // CSSearchParameterCombination
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // A required search parameter name // I
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "required", // R! 
        "valueString" : "<string>" // I R! Value of extension
      },
      { // An optional search parameter name // I
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "optional", // R! 
        "valueString" : "<string>" // I R! Value of extension
      }
    ],
    "extension" : [{ Extension }], // IAdditional content defined by implementations
    "extension" : [{ Extension }], // IA required search parameter name
    "extension" : [{ Extension }], // IAn optional search parameter name
    "url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination" // R! 
  // value[x]: Value of extension: Prohibited
  }

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. CSSearchParameterCombination0..*ExtensionURL = http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination
CSSearchParameterCombination: 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.
  • If no parameters in the set of search parameters are listed as required, then at least one of the listed optional parameters must be present. This shorthand method is the same as repeating the entire extension for each combination of optional and required search parameters.



Use on Element ID CapabilityStatement.rest.resource
... required0..*stringA required search parameter name

... optional0..*stringAn optional search parameter name


doco Documentation for this format

Full Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..*ExtensionURL = http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination
CSSearchParameterCombination: 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.
  • If no parameters in the set of search parameters are listed as required, then at least one of the listed optional parameters must be present. This shorthand method is the same as repeating the entire extension for each combination of optional and required search parameters.



Use on Element ID CapabilityStatement.rest.resource
... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... extension:required 0..*ExtensionA required search parameter name
.... id 0..1idUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"required"
.... value[x] 1..1stringValue of extension
... extension:optional 0..*ExtensionAn optional search parameter name
.... id 0..1idUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"optional"
.... value[x] 1..1stringValue of extension
... value[x] 0..0

doco Documentation for this format

XML Template

<!-- CSSearchParameterCombination -->doco

<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"> I 0..* Extension  <!-- I 0..* A required search parameter name -->
  <valueString value="[string]"/><!-- I 1..1 Value of extension -->
 </extension>
 <extension url="optional"> I 0..* Extension  <!-- I 0..* An optional search parameter name -->
  <valueString value="[string]"/><!-- I 1..1 Value of extension -->
 </extension>
</extension>

JSON Template

{ // CSSearchParameterCombination
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // A required search parameter name // I
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "required", // R! 
        "valueString" : "<string>" // I R! Value of extension
      },
      { // An optional search parameter name // I
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "optional", // R! 
        "valueString" : "<string>" // I R! Value of extension
      }
    ],
    "extension" : [{ Extension }], // IAdditional content defined by implementations
    "extension" : [{ Extension }], // IA required search parameter name
    "extension" : [{ Extension }], // IAn optional search parameter name
    "url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-search-parameter-combination" // R! 
  // value[x]: Value of extension: Prohibited
  }

 

Constraints

  • ele-1: All FHIR elements must have a @value or children (xpath: hasValue() or (children().count() > id.count()))
  • ext-1: Must have either extensions or value[x], not both (xpath: extension.exists() != value.exists())
  • ele-1: On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: hasValue() or (children().count() > id.count()))
  • ext-1: On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: extension.exists() != value.exists())
  • ele-1: On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: hasValue() or (children().count() > id.count()))
  • ext-1: On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: extension.exists() != value.exists())
  • ele-1: On Extension.extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension.extension: hasValue() or (children().count() > id.count()))
  • ext-1: On Extension.extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension.extension: extension.exists() != value.exists())
  • ele-1: On Extension.extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.extension.value[x]: hasValue() or (children().count() > id.count()))
  • ele-1: On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: hasValue() or (children().count() > id.count()))
  • ext-1: On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: extension.exists() != value.exists())
  • ele-1: On Extension.extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension.extension: hasValue() or (children().count() > id.count()))
  • ext-1: On Extension.extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension.extension: extension.exists() != value.exists())
  • ele-1: On Extension.extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.extension.value[x]: hasValue() or (children().count() > id.count()))
  • ele-1: On Extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.value[x]: hasValue() or (children().count() > id.count()))

Search

No Search Extensions defined for this resource

Examples of this extension

No examples found.