CapabilityStatementResource constructor

const CapabilityStatementResource({
  1. @JsonKey(name: 'id') String? fhirId,
  2. @JsonKey(name: 'extension') List<FhirExtension>? extension_,
  3. List<FhirExtension>? modifierExtension,
  4. FhirCode? type,
  5. @JsonKey(name: '_type') Element? typeElement,
  6. FhirCanonical? profile,
  7. List<FhirCanonical>? supportedProfile,
  8. FhirMarkdown? documentation,
  9. @JsonKey(name: '_documentation') Element? documentationElement,
  10. List<CapabilityStatementInteraction>? interaction,
  11. FhirCode? versioning,
  12. @JsonKey(name: '_versioning') Element? versioningElement,
  13. FhirBoolean? readHistory,
  14. @JsonKey(name: '_readHistory') Element? readHistoryElement,
  15. FhirBoolean? updateCreate,
  16. @JsonKey(name: '_updateCreate') Element? updateCreateElement,
  17. FhirBoolean? conditionalCreate,
  18. @JsonKey(name: '_conditionalCreate') Element? conditionalCreateElement,
  19. FhirCode? conditionalRead,
  20. @JsonKey(name: '_conditionalRead') Element? conditionalReadElement,
  21. FhirBoolean? conditionalUpdate,
  22. @JsonKey(name: '_conditionalUpdate') Element? conditionalUpdateElement,
  23. FhirBoolean? conditionalPatch,
  24. @JsonKey(name: '_conditionalPatch') Element? conditionalPatchElement,
  25. FhirCode? conditionalDelete,
  26. @JsonKey(name: '_conditionalDelete') Element? conditionalDeleteElement,
  27. List<FhirCode>? referencePolicy,
  28. @JsonKey(name: '_referencePolicy') List<Element>? referencePolicyElement,
  29. List<String>? searchInclude,
  30. @JsonKey(name: '_searchInclude') List<Element>? searchIncludeElement,
  31. List<String>? searchRevInclude,
  32. @JsonKey(name: '_searchRevInclude') List<Element>? searchRevIncludeElement,
  33. List<CapabilityStatementSearchParam>? searchParam,
  34. List<CapabilityStatementOperation>? operation,
})

CapabilityStatementResource A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server or Client for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.

id Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

extension_ ("extension") May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

modifierExtension May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

type A type of resource exposed via the restful interface.

typeElement ("_type") Extensions for type

profile A system-wide profile that is applied across all instances of the resource supported by the system. For example, if declared on Observation, this profile is the "superset" of capabilities for laboratory and vitals and other domains. See further discussion in Using Profiles.

supportedProfile A list of profiles representing different use cases the system hosts/produces. A supported profile is a statement about the functionality of the data and services provided by the server (or the client) for supported use cases. For example, a system can define and declare multiple Observation profiles for laboratory observations, vital sign observations, etc. By declaring supported profiles, systems provide a way to determine whether individual resources are conformant. See further discussion in Using Profiles.

documentation Additional information about the resource type used by the system.

documentationElement ("_documentation") Extensions for documentation

interaction Identifies a restful operation supported by the solution.

versioning This field is set to no-version to specify that the system does not support (server) or use (client) versioning for this resource type. If this has some other value, the server must at least correctly track and populate the versionId meta-property on resources. If the value is 'versioned-update', then the server supports all the versioning features, including using e-tags for version integrity in the API.

versioningElement ("_versioning") Extensions for versioning

readHistory A flag for whether the server is able to return past versions as part of the vRead operation.

readHistoryElement ("_readHistory") Extensions for readHistory

updateCreate A flag to indicate that the server allows or needs to allow the client to create new identities on the server (that is, the client PUTs to a location where there is no existing resource). Allowing this operation means that the server allows the client to create new identities on the server.

updateCreateElement ("_updateCreate") Extensions for updateCreate

conditionalCreate A flag that indicates that the server supports conditional create.

conditionalCreateElement ("_conditionalCreate") Extensions for conditionalCreate

conditionalRead A code that indicates how the server supports conditional read.

conditionalReadElement ("_conditionalRead") Extensions for conditionalRead

conditionalUpdate A flag that indicates that the server supports conditional update.

conditionalUpdateElement ("_conditionalUpdate") Extensions for conditionalUpdate

conditionalPatch A flag that indicates that the server supports conditional patch.

conditionalPatchElement ("_conditionalPatch") Extensions for conditionalPatch

conditionalDelete A code that indicates how the server supports conditional delete.

conditionalDeleteElement ("_conditionalDelete") Extensions for conditionalDelete

referencePolicy A set of flags that defines how references are supported.

referencePolicyElement ("_referencePolicy") Extensions for referencePolicy

searchInclude A list of _include values supported by the server.

searchIncludeElement ("_searchInclude") Extensions for searchInclude

searchRevInclude A list of _revinclude (reverse include) values supported by the server.

searchRevIncludeElement ("_searchRevInclude") Extensions for searchRevInclude

searchParam Search parameters for implementations to support and/or make use of - either references to ones defined in the specification, or additional ones defined for/by the implementation.

operation Definition of an operation or a named query together with its parameters and their meaning and type. Consult the definition of the operation for details about how to invoke the operation, and the parameters.

Implementation

const factory CapabilityStatementResource({
  /// [id] Unique id for the element within a resource (for internal
  ///  references). This may be any string value that does not contain spaces.
  @JsonKey(name: 'id') String? fhirId,

  /// [extension_] ("extension") May be used to represent additional
  ///  information that is not part of the basic definition of the element.
  ///  To make the use of extensions safe and managable, there is a strict
  ///  set of governance applied to the definition and use of extensions.
  ///  Though any implementer can define an extension, there is a set of
  ///  requirements that SHALL be met as part of the definition of the
  ///  extension.
  @JsonKey(name: 'extension') List<FhirExtension>? extension_,

  /// [modifierExtension] May be used to represent additional information
  ///  that is not part of the basic definition of the element and that
  ///  modifies the understanding of the element in which it is contained
  ///  and/or the understanding of the containing element's descendants.
  ///  Usually modifier elements provide negation or qualification. To make
  ///  the use of extensions safe and managable, there is a strict set of
  ///  governance applied to the definition and use of extensions. Though any
  ///  implementer can define an extension, there is a set of requirements
  ///  that SHALL be met as part of the definition of the extension.
  ///  Applications processing a resource are required to check for modifier
  ///  extensions.Modifier extensions SHALL NOT change the meaning of any
  ///  elements on Resource or DomainResource (including cannot change the
  ///  meaning of modifierExtension itself).
  List<FhirExtension>? modifierExtension,

  /// [type] A type of resource exposed via the restful interface.
  FhirCode? type,

  /// [typeElement] ("_type") Extensions for type
  @JsonKey(name: '_type') Element? typeElement,

  /// [profile] A system-wide profile that is applied across *all* instances
  ///  of the resource supported by the system. For example, if declared on
  ///  Observation, this profile is the "superset" of capabilities for
  ///  laboratory *and* vitals *and* other domains. See further discussion in
  ///  [Using Profiles](profiling.html#profile-uses).
  FhirCanonical? profile,

  /// [supportedProfile] A list of profiles representing different use cases
  ///  the system hosts/produces. A supported profile is a statement about
  ///  the functionality of the data and services provided by the server (or
  ///  the client) for supported use cases. For example, a system can define
  ///  and declare multiple Observation profiles for laboratory observations,
  ///  vital sign observations, etc. By declaring supported profiles, systems
  ///  provide a way to determine whether individual resources are
  ///  conformant. See further discussion in [Using
  ///  Profiles](profiling.html#profile-uses).
  List<FhirCanonical>? supportedProfile,

  /// [documentation] Additional information about the resource type used by
  ///  the system.
  FhirMarkdown? documentation,

  /// [documentationElement] ("_documentation") Extensions for documentation
  @JsonKey(name: '_documentation') Element? documentationElement,

  /// [interaction] Identifies a restful operation supported by the solution.
  List<CapabilityStatementInteraction>? interaction,

  /// [versioning] This field is set to no-version to specify that the system
  ///  does not support (server) or use (client) versioning for this resource
  ///  type. If this has some other value, the server must at least correctly
  ///  track and populate the versionId meta-property on resources. If the
  ///  value is 'versioned-update', then the server supports all the
  ///  versioning features, including using e-tags for version integrity in
  ///  the API.
  FhirCode? versioning,

  /// [versioningElement] ("_versioning") Extensions for versioning
  @JsonKey(name: '_versioning') Element? versioningElement,

  /// [readHistory] A flag for whether the server is able to return past
  ///  versions as part of the vRead operation.
  FhirBoolean? readHistory,

  /// [readHistoryElement] ("_readHistory") Extensions for readHistory
  @JsonKey(name: '_readHistory') Element? readHistoryElement,

  /// [updateCreate] A flag to indicate that the server allows or needs to
  ///  allow the client to create new identities on the server (that is, the
  ///  client PUTs to a location where there is no existing resource).
  ///  Allowing this operation means that the server allows the client to
  ///  create new identities on the server.
  FhirBoolean? updateCreate,

  /// [updateCreateElement] ("_updateCreate") Extensions for updateCreate
  @JsonKey(name: '_updateCreate') Element? updateCreateElement,

  /// [conditionalCreate] A flag that indicates that the server supports
  ///  conditional create.
  FhirBoolean? conditionalCreate,

  /// [conditionalCreateElement] ("_conditionalCreate") Extensions for
  ///  conditionalCreate
  @JsonKey(name: '_conditionalCreate') Element? conditionalCreateElement,

  /// [conditionalRead] A code that indicates how the server supports
  ///  conditional read.
  FhirCode? conditionalRead,

  /// [conditionalReadElement] ("_conditionalRead") Extensions for
  ///  conditionalRead
  @JsonKey(name: '_conditionalRead') Element? conditionalReadElement,

  /// [conditionalUpdate] A flag that indicates that the server supports
  ///  conditional update.
  FhirBoolean? conditionalUpdate,

  /// [conditionalUpdateElement] ("_conditionalUpdate") Extensions for
  ///  conditionalUpdate
  @JsonKey(name: '_conditionalUpdate') Element? conditionalUpdateElement,

  /// [conditionalPatch] A flag that indicates that the server supports
  ///  conditional patch.
  FhirBoolean? conditionalPatch,

  /// [conditionalPatchElement] ("_conditionalPatch") Extensions for
  ///  conditionalPatch
  @JsonKey(name: '_conditionalPatch') Element? conditionalPatchElement,

  /// [conditionalDelete] A code that indicates how the server supports
  ///  conditional delete.
  FhirCode? conditionalDelete,

  /// [conditionalDeleteElement] ("_conditionalDelete") Extensions for
  ///  conditionalDelete
  @JsonKey(name: '_conditionalDelete') Element? conditionalDeleteElement,

  /// [referencePolicy] A set of flags that defines how references are
  ///  supported.
  List<FhirCode>? referencePolicy,

  /// [referencePolicyElement] ("_referencePolicy") Extensions for
  ///  referencePolicy
  @JsonKey(name: '_referencePolicy') List<Element>? referencePolicyElement,

  /// [searchInclude] A list of _include values supported by the server.
  List<String>? searchInclude,

  /// [searchIncludeElement] ("_searchInclude") Extensions for searchInclude
  @JsonKey(name: '_searchInclude') List<Element>? searchIncludeElement,

  /// [searchRevInclude] A list of _revinclude (reverse include) values
  ///  supported by the server.
  List<String>? searchRevInclude,

  /// [searchRevIncludeElement] ("_searchRevInclude") Extensions for
  ///  searchRevInclude
  @JsonKey(name: '_searchRevInclude') List<Element>? searchRevIncludeElement,

  /// [searchParam] Search parameters for implementations to support and/or
  ///  make use of - either references to ones defined in the specification,
  ///  or additional ones defined for/by the implementation.
  List<CapabilityStatementSearchParam>? searchParam,

  /// [operation] Definition of an operation or a named query together with
  ///  its parameters and their meaning and type. Consult the definition of
  ///  the operation for details about how to invoke the operation, and the
  ///  parameters.
  List<CapabilityStatementOperation>? operation,
}) = _CapabilityStatementResource;