Release 5 Draft Ballot

This page is part of the FHIR Specification (v4.6.0: R5 Draft Ballot). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions

Codesystem-capability-features.json

Vocabulary Work GroupMaturity Level: N/AStandards Status: Informative

Raw JSON (canonical form + also see JSON Format Specification)

Definition for Code System CapabilityFeatures

{
  "resourceType" : "CodeSystem",
  "id" : "capability-features",
  "meta" : {
    "lastUpdated" : "2021-04-15T12:25:09.461+10:00"
  },
  "text" : {
    "status" : "generated",
    "div" : "<div>!-- Snipped for Brevity --></div>"
  },
  "url" : "http://hl7.org/fhir/CodeSystem/capability-features",
  "version" : "4.6.0",
  "name" : "CapabilityFeatures",
  "title" : "Capability Features",
  "status" : "active",
  "date" : "2020-09-21",
  "publisher" : "HL7 (FHIR Project)",
  "description" : "A feature that may be declared in a capability statement. For discussion, see [[[CapabilityStatement2]]] Notes",
  "caseSensitive" : true,
  "hierarchyMeaning" : "is-a",
  "compositional" : true,
  "content" : "complete",
  "property" : [{
    "code" : "kind",
    "_code" : {
      "extension" : [{
        "url" : "http://hl7.org/fhir/StructureDefinition/rendered-value",
        "valueString" : "Kind"
      }]
    },
    "uri" : "http://hl7.org/fhir/CodeSystem/capability-features#properties-kind",
    "description" : "This property defines whether the concept is a feature (that can be present or absent, or have a feature) or a value (the value of a defined feature), or a context (can be used to qualify the scope of a feature)",
    "type" : "code"
  },
  {
    "code" : "context",
    "_code" : {
      "extension" : [{
        "url" : "http://hl7.org/fhir/StructureDefinition/rendered-value",
        "valueString" : "Context"
      }]
    },
    "uri" : "http://hl7.org/fhir/CodeSystem/capability-features#properties-context",
    "description" : "This property defines the contexts to which this feature applies",
    "type" : "code"
  },
  {
    "code" : "values",
    "_code" : {
      "extension" : [{
        "url" : "http://hl7.org/fhir/StructureDefinition/rendered-value",
        "valueString" : "Values"
      }]
    },
    "uri" : "http://hl7.org/fhir/CodeSystem/capability-features#properties-values",
    "description" : "This specifies what the values for a feature can be ",
    "type" : "code"
  },
  {
    "code" : "qualification",
    "_code" : {
      "extension" : [{
        "url" : "http://hl7.org/fhir/StructureDefinition/rendered-value",
        "valueString" : "Qualification"
      }]
    },
    "uri" : "http://hl7.org/fhir/CodeSystem/capability-features#properties-qualification",
    "description" : "This specifies how a context entry can be qualified",
    "type" : "code"
  },
  {
    "code" : "scope",
    "_code" : {
      "extension" : [{
        "url" : "http://hl7.org/fhir/StructureDefinition/rendered-value",
        "valueString" : "Scope"
      }]
    },
    "uri" : "http://hl7.org/fhir/CodeSystem/capability-features#properties-scope",
    "description" : "This property defines the feature scope in which a feature exists (e.g. sub-context)",
    "type" : "code"
  }],
  "concept" : [{
    "code" : "features",
    "display" : "Root concept for all feature definitions",
    "property" : [{
      "code" : "kind",
      "valueCode" : "internal"
    }],
    "concept" : [{
      "code" : "feature-header",
      "display" : "Whether the server supports the Required-Feature header by which a client makes a feature as mandatory for processing a requrest properly",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest"
      },
      {
        "code" : "values",
        "valueCode" : "#booleans"
      }]
    },
    {
      "code" : "security-cors",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest"
      },
      {
        "code" : "values",
        "valueCode" : "#booleans"
      }]
    },
    {
      "code" : "security-service",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest"
      },
      {
        "code" : "values",
        "valueCode" : "http://hl7.org/fhir/ValueSet/restful-security-service"
      }]
    },
    {
      "code" : "versioning",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "#versioning"
      }]
    },
    {
      "code" : "readHistory",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "#booleans"
      }]
    },
    {
      "code" : "updateCreate",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "#booleans"
      }]
    },
    {
      "code" : "updateCreate",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "#booleans"
      }]
    },
    {
      "code" : "conditionalCreate",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "#booleans"
      }]
    },
    {
      "code" : "conditionalRead",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "#conditional-read-status"
      }]
    },
    {
      "code" : "conditionalUpdate",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "#booleans"
      }]
    },
    {
      "code" : "conditionalDelete",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "#conditional-delete-status"
      }]
    },
    {
      "code" : "referencePolicy",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "#reference-handling-policy"
      }]
    },
    {
      "code" : "searchInclude",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "http://hl7.org/fhir/ValueSet/search-parameters"
      }]
    },
    {
      "code" : "searchRevInclude",
      "property" : [{
        "code" : "kind",
        "valueCode" : "feature"
      },
      {
        "code" : "context",
        "valueCode" : "rest.resource"
      },
      {
        "code" : "values",
        "valueCode" : "http://hl7.org/fhir/ValueSet/search-parameters"
      }]
    }]
  },
  {
    "code" : "values",
    "display" : "Root concept for all feature values",
    "property" : [{
      "code" : "kind",
      "valueCode" : "internal"
    }],
    "concept" : [{
      "code" : "booleans",
      "display" : "Values that are booleans",
      "property" : [{
        "code" : "kind",
        "valueCode" : "internal"
      }],
      "concept" : [{
        "code" : "true",
        "display" : "Value is true",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "false",
        "display" : "Value is false",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      }]
    },
    {
      "code" : "versioning",
      "display" : "Values for versioning feature",
      "property" : [{
        "code" : "kind",
        "valueCode" : "internal"
      }],
      "concept" : [{
        "code" : "no-version",
        "display" : "No VersionId Support",
        "definition" : "VersionId meta-property is not supported (server) or used (client).",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "versioned",
        "display" : "Versioned",
        "definition" : "VersionId meta-property is supported (server) or used (client).",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "versioned-update",
        "display" : "VersionId tracked fully",
        "definition" : "VersionId must be correct for updates (server) or will be specified (If-match header) for updates (client).",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      }]
    },
    {
      "code" : "conditional-read-status",
      "display" : "Values for conditional-read-status",
      "property" : [{
        "code" : "kind",
        "valueCode" : "internal"
      }],
      "concept" : [{
        "code" : "not-supported",
        "display" : "Not Supported",
        "definition" : "No support for conditional reads.",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "modified-since",
        "display" : "If-Modified-Since",
        "definition" : "Conditional reads are supported, but only with the If-Modified-Since HTTP Header.",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "not-match",
        "display" : "If-None-Match",
        "definition" : "Conditional reads are supported, but only with the If-None-Match HTTP Header.",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "full-support",
        "display" : "Full Support",
        "definition" : "Conditional reads are supported, with both If-Modified-Since and If-None-Match HTTP Headers.",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      }]
    },
    {
      "code" : "conditional-delete-status",
      "display" : "Values for conditional-delete-status",
      "property" : [{
        "code" : "kind",
        "valueCode" : "internal"
      }],
      "concept" : [{
        "code" : "not-supported",
        "display" : "Not Supported",
        "definition" : "No support for conditional deletes.",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "single",
        "display" : "Single Deletes Supported",
        "definition" : "Conditional deletes are supported, but only single resources at a time.",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "multiple",
        "display" : "Multiple Deletes Supported",
        "definition" : "Conditional deletes are supported, and multiple resources can be deleted in a single interaction.",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      }]
    },
    {
      "code" : "reference-handling-policy",
      "display" : "Values for reference-handling-policy",
      "property" : [{
        "code" : "kind",
        "valueCode" : "internal"
      }],
      "concept" : [{
        "code" : "literal",
        "display" : "Literal References",
        "definition" : "The server supports and populates Literal references (i.e. using Reference.reference) where they are known (this code does not guarantee that all references are literal; see 'enforced').",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "logical",
        "display" : "Logical References",
        "definition" : "The server allows logical references (i.e. using Reference.identifier).",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "resolves",
        "display" : "Resolves References",
        "definition" : "The server will attempt to resolve logical references to literal references - i.e. converting Reference.identifier to Reference.reference (if resolution fails, the server may still accept resources; see logical).",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "enforced",
        "display" : "Reference Integrity Enforced",
        "definition" : "The server enforces that references have integrity - e.g. it ensures that references can always be resolved. This is typically the case for clinical record systems, but often not the case for middleware/proxy systems.",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      },
      {
        "code" : "local",
        "display" : "Local References Only",
        "definition" : "The server does not support references that point to other servers.",
        "property" : [{
          "code" : "kind",
          "valueCode" : "value"
        }]
      }]
    }]
  },
  {
    "code" : "contexts",
    "display" : "Root concept for all context definitions",
    "property" : [{
      "code" : "kind",
      "valueCode" : "internal"
    }],
    "concept" : [{
      "code" : "rest",
      "display" : "The REST API as a whole",
      "property" : [{
        "code" : "kind",
        "valueCode" : "context"
      },
      {
        "code" : "qualification",
        "valueCode" : "server|client"
      }]
    },
    {
      "code" : "resource",
      "display" : "Support for a resource on the REST API",
      "property" : [{
        "code" : "kind",
        "valueCode" : "context"
      },
      {
        "code" : "qualification",
        "valueCode" : "resource type"
      },
      {
        "code" : "scope",
        "valueCode" : "rest"
      }]
    },
    {
      "code" : "interaction",
      "display" : "Support for a interaction (not on a resource) on the REST API",
      "property" : [{
        "code" : "kind",
        "valueCode" : "context"
      },
      {
        "code" : "qualification",
        "valueCode" : "interaction.code"
      },
      {
        "code" : "scope",
        "valueCode" : "rest"
      },
      {
        "code" : "scope",
        "valueCode" : "resource"
      }]
    },
    {
      "code" : "searchParam",
      "display" : "Support for a search parameter across resources on the REST API",
      "property" : [{
        "code" : "kind",
        "valueCode" : "context"
      },
      {
        "code" : "qualification",
        "valueCode" : "searchparam.code"
      },
      {
        "code" : "scope",
        "valueCode" : "rest"
      },
      {
        "code" : "scope",
        "valueCode" : "resource"
      }]
    },
    {
      "code" : "operation",
      "display" : "Support for a operation not on a resource on the REST API",
      "property" : [{
        "code" : "kind",
        "valueCode" : "context"
      },
      {
        "code" : "qualification",
        "valueCode" : "operation.name"
      },
      {
        "code" : "scope",
        "valueCode" : "rest"
      },
      {
        "code" : "scope",
        "valueCode" : "resource"
      }]
    },
    {
      "code" : "compartment",
      "display" : "Support for a compartment on the REST API",
      "property" : [{
        "code" : "kind",
        "valueCode" : "context"
      },
      {
        "code" : "qualification",
        "valueCode" : "compartment.code"
      },
      {
        "code" : "scope",
        "valueCode" : "rest"
      }]
    }]
  }]
}

Usage note: every effort has been made to ensure that the examples are correct and useful, but they are not a normative part of the specification.