CapabilityStatementResource constructor

const CapabilityStatementResource({
  1. @JsonKey(name: 'id') FhirId? 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. FhirCode? conditionalDelete,
  24. @JsonKey(name: '_conditionalDelete') Element? conditionalDeleteElement,
  25. List<FhirCode>? referencePolicy,
  26. @JsonKey(name: '_referencePolicy') List<Element?>? referencePolicyElement,
  27. List<String>? searchInclude,
  28. @JsonKey(name: '_searchInclude') List<Element?>? searchIncludeElement,
  29. List<String>? searchRevInclude,
  30. @JsonKey(name: '_searchRevInclude') List<Element?>? searchRevIncludeElement,
  31. List<CapabilityStatementSearchParam>? searchParam,
  32. List<CapabilityStatementOperation>? operation,
})

CapabilityStatementResource A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server 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_ 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 manageable, 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 manageable, 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 Extensions for type

profile A specification of the profile that describes the solution's overall support for the resource, including any constraints on cardinality, bindings, lengths or other limitations. See further discussion in Using Profiles.

supportedProfile A list of profiles that represent different use cases supported by the system. For a server, "supported by the system" means the system hosts/produces a set of resources that are conformant to a particular profile, and allows clients that use its services to search using this profile and to find appropriate data. For a client, it means the system will search by this profile and process data according to the guidance implicit in the profile. See further discussion in Using Profiles.

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

documentationElement 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 Extensions for versioning

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

readHistoryElement 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 Extensions for updateCreate

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

conditionalCreateElement Extensions for conditionalCreate

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

conditionalReadElement Extensions for conditionalRead

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

conditionalUpdateElement Extensions for conditionalUpdate

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

conditionalDeleteElement Extensions for conditionalDelete

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

referencePolicyElement Extensions for referencePolicy

searchInclude A list of _include values supported by the server.

searchIncludeElement Extensions for searchInclude

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

searchRevIncludeElement 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') FhirId? fhirId,

  /// [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 manageable, 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 manageable, 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] Extensions for type
  @JsonKey(name: '_type') Element? typeElement,

  /// [profile] A specification of the profile that describes the solution's
  /// overall support for the resource, including any constraints on
  /// cardinality, bindings, lengths or other limitations. See further
  ///  discussion in [Using Profiles](profiling.html#profile-uses).
  FhirCanonical? profile,

  /// [supportedProfile] A list of profiles that represent different use cases
  /// supported by the system. For a server, "supported by the system" means the
  /// system hosts/produces a set of resources that are conformant to a
  /// particular profile, and allows clients that use its services to search
  /// using this profile and to find appropriate data. For a client, it means
  /// the system will search by this profile and process data according to the
  /// guidance implicit in the profile. 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] 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] 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] 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] Extensions for updateCreate
  @JsonKey(name: '_updateCreate') Element? updateCreateElement,

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

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

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

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

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

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

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

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

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

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

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

  /// [searchIncludeElement] 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] 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;