StructureDefinition class
StructureDefinition A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types.
- Mixed in types
- Annotations
-
- @freezed
Constructors
-
StructureDefinition({@Default(R5ResourceType.StructureDefinition) @JsonKey(unknownEnumValue: R5ResourceType.StructureDefinition) R5ResourceType resourceType, @JsonKey(includeFromJson: true, includeToJson: false) int? dbId, @JsonKey(name: 'id') FhirId? fhirId, FhirMeta? meta, FhirUri? implicitRules, @JsonKey(name: '_implicitRules') Element? implicitRulesElement, FhirCode? language, @JsonKey(name: '_language') Element? languageElement, Narrative? text, List<
Resource> ? contained, @JsonKey(name: 'extension') List<FhirExtension> ? extension_, List<FhirExtension> ? modifierExtension, FhirUri? url, @JsonKey(name: '_url') Element? urlElement, List<Identifier> ? identifier, String? version, @JsonKey(name: '_version') Element? versionElement, String? versionAlgorithmString, @JsonKey(name: '_versionAlgorithmString') Element? versionAlgorithmStringElement, Coding? versionAlgorithmCoding, String? name, @JsonKey(name: '_name') Element? nameElement, String? title, @JsonKey(name: '_title') Element? titleElement, FhirCode? status, @JsonKey(name: '_status') Element? statusElement, FhirBoolean? experimental, @JsonKey(name: '_experimental') Element? experimentalElement, FhirDateTime? date, @JsonKey(name: '_date') Element? dateElement, String? publisher, @JsonKey(name: '_publisher') Element? publisherElement, List<ContactDetail> ? contact, FhirMarkdown? description, @JsonKey(name: '_description') Element? descriptionElement, List<UsageContext> ? useContext, List<CodeableConcept> ? jurisdiction, FhirMarkdown? purpose, @JsonKey(name: '_purpose') Element? purposeElement, FhirMarkdown? copyright, @JsonKey(name: '_copyright') Element? copyrightElement, String? copyrightLabel, @JsonKey(name: '_copyrightLabel') Element? copyrightLabelElement, List<Coding> ? keyword, FhirCode? fhirVersion, @JsonKey(name: '_fhirVersion') Element? fhirVersionElement, List<StructureDefinitionMapping> ? mapping, FhirCode? kind, @JsonKey(name: '_kind') Element? kindElement, @JsonKey(name: 'abstract') FhirBoolean? abstract_, @JsonKey(name: '_abstract') Element? abstractElement, List<StructureDefinitionContext> ? context, List<String> ? contextInvariant, @JsonKey(name: '_contextInvariant') List<Element> ? contextInvariantElement, FhirUri? type, @JsonKey(name: '_type') Element? typeElement, FhirCanonical? baseDefinition, FhirCode? derivation, @JsonKey(name: '_derivation') Element? derivationElement, StructureDefinitionSnapshot? snapshot, StructureDefinitionDifferential? differential}) -
StructureDefinition A definition of a FHIR structure. This resource is
used to describe the underlying resources, data types defined in FHIR,
and also for describing extensions and constraints on resources and data
types.
constfactory
-
StructureDefinition.fromJson(Map<
String, dynamic> json) -
Factory constructor, accepts Map<String, dynamic> as an argument
factory
- StructureDefinition.fromJsonString(String source)
-
Acts like a constructor, returns a StructureDefinition, accepts a
String as an argument, mostly because I got tired of typing it out
factory
- StructureDefinition.fromYaml(dynamic yaml)
-
Factory constructor that accepts a String in YAML format as an argument
factory
Properties
- abstract_ → FhirBoolean?
-
abstract_ ("abstract") Whether structure this definition describes is
abstract or not - that is, whether the structure is not intended to
be instantiated. For Resources and Data types, abstract types will
never be exchanged between systems.
no setterinherited
- abstractElement → Element?
-
abstractElement ("_abstract") Extensions for abstract
no setterinherited
- baseDefinition → FhirCanonical?
-
baseDefinition An absolute URI that is the base structure from which
this type is derived, either by specialization or constraint.
no setterinherited
-
contact
→ List<
ContactDetail> ? -
contact Contact details to assist a user in finding and communicating
with the publisher.
no setterinherited
-
contained
→ List<
Resource> ? -
contained These resources do not have an independent existence apart
from the resource that contains them - they cannot be identified
independently, nor can they have their own independent transaction
scope. This is allowed to be a Parameters resource if and only if it
is referenced by a resource that provides context/meaning.
no setterinherited
-
context
→ List<
StructureDefinitionContext> ? -
context Identifies the types of resource or data type elements to
which the extension can be applied. For more guidance on using the
'context' element, see the defining extensions
page.
no setterinherited
-
contextInvariant
→ List<
String> ? -
contextInvariant A set of rules as FHIRPath Invariants about when the
extension can be used (e.g. co-occurrence variants for the extension).
All the rules must be true.
no setterinherited
-
contextInvariantElement
→ List<
Element> ? -
contextInvariantElement ("_contextInvariant") Extensions for
contextInvariant
no setterinherited
- copyright → FhirMarkdown?
-
copyright A copyright statement relating to the structure definition
and/or its contents. Copyright statements are generally legal
restrictions on the use and publishing of the structure definition.
The short copyright declaration (e.g. (c) '2015+ xyz organization'
should be sent in the copyrightLabel element.
no setterinherited
- copyrightElement → Element?
-
copyrightElement ("_copyright") Extensions for copyright
no setterinherited
- copyrightLabel → String?
-
copyrightLabel A short string (<50 characters), suitable for
inclusion in a page footer that identifies the copyright holder,
effective period, and optionally whether rights are resctricted. (e.g.
'All rights reserved', 'Some rights reserved').
no setterinherited
- copyrightLabelElement → Element?
-
copyrightLabelElement ("_copyrightLabel") Extensions for
copyrightLabel
no setterinherited
-
copyWith
→ $StructureDefinitionCopyWith<
StructureDefinition> -
no setterinherited
- date → FhirDateTime?
-
date The date (and optionally time) when the structure definition
was last significantly changed. The date must change when the business
version changes and it must change if the status code changes. In
addition, it should change when the substantive content of the
structure definition changes.
no setterinherited
- dateElement → Element?
-
dateElement ("_date") Extensions for date
no setterinherited
- dbId → int?
-
no setterinherited
- derivation → FhirCode?
-
derivation How the type relates to the baseDefinition.
no setterinherited
- derivationElement → Element?
-
derivationElement ("_derivation") Extensions for derivation
no setterinherited
- description → FhirMarkdown?
-
description A free text natural language description of the structure
definition from a consumer's perspective.
no setterinherited
- descriptionElement → Element?
-
descriptionElement ("_description") Extensions for description
no setterinherited
- differential → StructureDefinitionDifferential?
-
differential A differential view is expressed relative to the base
StructureDefinition - a statement of differences that it applies.
no setterinherited
- experimental → FhirBoolean?
-
experimental A Boolean value to indicate that this structure
definition is authored for testing purposes (or
education/evaluation/marketing) and is not intended to be used for
genuine usage.
no setterinherited
- experimentalElement → Element?
-
experimentalElement ("_experimental") Extensions for experimental
no setterinherited
-
extension_
→ List<
FhirExtension> ? -
extension_ ("extension") May be used to represent additional
information that is not part of the basic definition of the resource.
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.
no setterinherited
- fhirId → FhirId?
-
id The logical id of the resource, as used in the URL for the
resource. Once assigned, this value never changes.
no setterinherited
- fhirVersion → FhirCode?
-
fhirVersion The version of the FHIR specification on which this
StructureDefinition is based - this is the formal version of the
specification, without the revision number, e.g.
publication
.major
.minor
, which is 4.6.0. for this version.no setterinherited - fhirVersionElement → Element?
-
fhirVersionElement ("_fhirVersion") Extensions for fhirVersion
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
-
identifier
→ List<
Identifier> ? -
identifier A formal identifier that is used to identify this
structure definition when it is represented in other formats, or
referenced in a specification, model, design or an instance.
no setterinherited
- implicitRules → FhirUri?
-
implicitRules A reference to a set of rules that were followed when
the resource was constructed, and which must be understood when
processing the content. Often, this is a reference to an
implementation guide that defines the special rules along with other
profiles etc.
no setterinherited
- implicitRulesElement → Element?
-
implicitRulesElement ("_implicitRules") Extensions for implicitRules
no setterinherited
-
jurisdiction
→ List<
CodeableConcept> ? -
jurisdiction A legal or geographic region in which the structure
definition is intended to be used.
no setterinherited
-
keyword
→ List<
Coding> ? -
keyword (DEPRECATED) A set of key words or terms from external
terminologies that may be used to assist with indexing and searching
of templates nby describing the use of this structure definition, or
the content it describes.
no setterinherited
- kind → FhirCode?
-
kind Defines the kind of structure that this definition is describing.
no setterinherited
- kindElement → Element?
-
kindElement ("_kind") Extensions for kind
no setterinherited
- language → FhirCode?
-
language The base language in which the resource is written.
no setterinherited
- languageElement → Element?
-
languageElement ("_language") Extensions for language
no setterinherited
-
mapping
→ List<
StructureDefinitionMapping> ? -
mapping An external specification that the content is mapped to.
no setterinherited
- meta → FhirMeta?
-
meta The metadata about the resource. This is content that is
maintained by the infrastructure. Changes to the content might not
always be associated with version changes to the resource.
no setterinherited
-
modifierExtension
→ List<
FhirExtension> ? -
modifierExtension May be used to represent additional information
that is not part of the basic definition of the resource and that
modifies the understanding of the element that contains it 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 is allowed to 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).
no setterinherited
- name → String?
-
name A natural language name identifying the structure definition.
This name should be usable as an identifier for the module by machine
processing applications such as code generation.
no setterinherited
- nameElement → Element?
-
nameElement ("_name") Extensions for name
no setterinherited
- path → String
-
Local Reference for this Resource, form is "ResourceType/Id"
no setterinherited
- publisher → String?
-
publisher The name of the organization or individual responsible for
the release and ongoing maintenance of the structure definition.
no setterinherited
- publisherElement → Element?
-
publisherElement ("_publisher") Extensions for publisher
no setterinherited
- purpose → FhirMarkdown?
-
purpose Explanation of why this structure definition is needed and
why it has been designed as it has.
no setterinherited
- purposeElement → Element?
-
purposeElement ("_purpose") Extensions for purpose
no setterinherited
- resourceType → R5ResourceType
-
resourceType This is a StructureDefinition resource
no setterinherited
- resourceTypeString → String?
-
produce a string of the resourceType
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- snapshot → StructureDefinitionSnapshot?
-
snapshot A snapshot view is expressed in a standalone form that can
be used and interpreted without considering the base
StructureDefinition.
no setterinherited
- status → FhirCode?
-
status The status of this structure definition. Enables tracking the
life-cycle of the content.
no setterinherited
- statusElement → Element?
-
statusElement ("_status") Extensions for status
no setterinherited
- text → Narrative?
-
text A human-readable narrative that contains a summary of the
resource and can be used to represent the content of the resource to a
human. The narrative need not encode all the structured data, but is
required to contain sufficient detail to make it "clinically safe" for
a human to just read the narrative. Resource definitions may define
what content should be represented in the narrative to ensure clinical
safety.
no setterinherited
- thisReference → Reference
-
Convenience method to return a Reference referring to that Resource
no setterinherited
- title → String?
-
title A short, descriptive, user-friendly title for the structure
definition.
no setterinherited
- titleElement → Element?
-
titleElement ("_title") Extensions for title
no setterinherited
- type → FhirUri?
-
type The type this structure describes. If the derivation kind is
'specialization' then this is the master definition for a type, and
there is always one of these (a data type, an extension, a resource,
including abstract ones). Otherwise the structure definition is a
constraint on the stated type (and in this case, the type cannot be an
abstract type). References are URLs that are relative to
http://hl7.org/fhir/StructureDefinition e.g. "string" is a reference
to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are
only allowed in logical models, where they are required.
no setterinherited
- typeElement → Element?
-
typeElement ("_type") Extensions for type
no setterinherited
- url → FhirUri?
-
url An absolute URI that is used to identify this structure
definition when it is referenced in a specification, model, design or
an instance; also called its canonical identifier. This SHOULD be
globally unique and SHOULD be a literal address at which an
authoritative instance of this structure definition is (or will be)
published. This URL can be the target of a canonical reference. It
SHALL remain the same when the structure definition is stored on
different servers.
no setterinherited
- urlElement → Element?
-
urlElement ("_url") Extensions for url
no setterinherited
-
useContext
→ List<
UsageContext> ? -
useContext The content was developed with a focus and intent of
supporting the contexts that are listed. These contexts may be general
categories (gender, age, ...) or may be references to specific
programs (insurance plans, studies, ...) and may be used to assist
with indexing and searching for appropriate structure definition
instances.
no setterinherited
- version → String?
-
version The identifier that is used to identify this version of the
structure definition when it is referenced in a specification, model,
design or instance. This is an arbitrary value managed by the
structure definition author and is not expected to be globally unique.
There is no expectation that versions can be placed in a
lexicographical sequence, so authors are encouraged to populate the
StructureDefinition.versionAlgorithm
x
element to enable comparisons. If there is no managed version available, authors can consider using ISO date/time syntax (e.g., '2023-01-01').no setterinherited - versionAlgorithmCoding → Coding?
-
versionAlgorithmCoding Indicates the mechanism used to compare
versions to determine which is more current.
no setterinherited
- versionAlgorithmString → String?
-
versionAlgorithmString Indicates the mechanism used to compare
versions to determine which is more current.
no setterinherited
- versionAlgorithmStringElement → Element?
-
versionAlgorithmStringElement ("_versionAlgorithmString") Extensions
for versionAlgorithmString
no setterinherited
- versionElement → Element?
-
versionElement ("_version") Extensions for version
no setterinherited
Methods
-
newId(
) → Resource -
returns the same resource with a new ID (even if there is already an ID
present)
inherited
-
newIdIfNoId(
) → Resource -
returns the same resource with a new ID if there is no current ID
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDbJson(
) → Map< String, dynamic> -
The normal toJson ignores the dbId, and produces the fhirId as the id
However, if you're going to use this as a database entry, you have to
switch those two ids
inherited
-
toJson(
) → Map< String, dynamic> -
inherited
-
toJsonString(
) → String -
Another convenience method because more and more I'm transmitting FHIR
data as a String and not a Map
override
-
toString(
) → String -
A string representation of this object.
inherited
-
toYaml(
) → String -
Produces a Yaml formatted String version of the object
override
-
updateVersion(
{FhirMeta? oldMeta}) → Resource -
Updates the meta field of this Resource, updates the meta.lastUpdated
field, adds 1 to the version number
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited