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.
Implements
Inherited Members
Namespace: fhirCsR2.Models
Assembly: fhirCsR2.dll
Syntax
public class StructureDefinition : DomainResource, IFhirJsonSerializable
Properties
| Improve this Doc View Source_Abstract
Extension container element for Abstract
Declaration
public Element _Abstract { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Base
Extension container element for Base
Declaration
public Element _Base { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_ConstrainedType
Extension container element for ConstrainedType
Declaration
public Element _ConstrainedType { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Context
Extension container element for Context
Declaration
public List<Element> _Context { get; set; }
Property Value
| Type | Description |
|---|---|
| fhirCsR2.Models.List<Element> |
_ContextType
Extension container element for ContextType
Declaration
public Element _ContextType { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Copyright
Extension container element for Copyright
Declaration
public Element _Copyright { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Date
Extension container element for Date
Declaration
public Element _Date { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Description
Extension container element for Description
Declaration
public Element _Description { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Display
Extension container element for Display
Declaration
public Element _Display { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Experimental
Extension container element for Experimental
Declaration
public Element _Experimental { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_FhirVersion
Extension container element for FhirVersion
Declaration
public Element _FhirVersion { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Kind
Extension container element for Kind
Declaration
public Element _Kind { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Name
Extension container element for Name
Declaration
public Element _Name { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Publisher
Extension container element for Publisher
Declaration
public Element _Publisher { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Requirements
Extension container element for Requirements
Declaration
public Element _Requirements { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Status
Extension container element for Status
Declaration
public Element _Status { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Url
Extension container element for Url
Declaration
public Element _Url { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
_Version
Extension container element for Version
Declaration
public Element _Version { get; set; }
Property Value
| Type | Description |
|---|---|
| Element |
Abstract
Whether structure this definition describes is abstract or not - that is, whether an actual exchanged item can ever be of this type.
Declaration
public bool Abstract { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Base
An absolute URI that is the base structure from which this set of constraints is derived.
Declaration
public string Base { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Code
Assist in searching for appropriate StructureDefinitions.
Declaration
public List<Coding> Code { get; set; }
Property Value
| Type | Description |
|---|---|
| fhirCsR2.Models.List<Coding> |
ConstrainedType
The type of type that is being constrained - a data type, an extension, a resource, including abstract ones. If this field is present, it indicates that the structure definition is a constraint. If it is not present, then the structure definition is the definition of a base structure.
Declaration
public string ConstrainedType { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Contact
Contacts to assist a user in finding and communicating with the publisher.
Declaration
public List<StructureDefinitionContact> Contact { get; set; }
Property Value
| Type | Description |
|---|---|
| fhirCsR2.Models.List<StructureDefinitionContact> |
Context
Identifies the types of resource or data type elements to which the extension can be applied.
Declaration
public List<string> Context { get; set; }
Property Value
| Type | Description |
|---|---|
| fhirCsR2.Models.List<System.String> |
ContextType
If this is an extension, Identifies the context within FHIR resources where the extension can be used.
Declaration
public string ContextType { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
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 details of the constraints and mappings.
Declaration
public string Copyright { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Date
The date this version of the structure definition was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the structure definition changes.
Declaration
public string Date { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Description
A free text natural language description of the StructureDefinition and its use.
Declaration
public string Description { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Differential
A differential view is expressed relative to the base StructureDefinition - a statement of differences that it applies.
Declaration
public StructureDefinitionDifferential Differential { get; set; }
Property Value
| Type | Description |
|---|---|
| StructureDefinitionDifferential |
Display
Defined so that applications can use this name when displaying the value of the extension to the user.
Declaration
public string Display { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Experimental
Allows filtering of StructureDefinitions that are appropriate for use vs. not.
Declaration
public bool? Experimental { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<System.Boolean> |
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 1.0.2 for this version.
Declaration
public string FhirVersion { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Identifier
Formal identifier that is used to identify this StructureDefinition when it is represented in other formats, or referenced in a specification, model, design or an instance (should be globally unique OID, UUID, or URI), (if it's not possible to use the literal URI).
Declaration
public List<Identifier> Identifier { get; set; }
Property Value
| Type | Description |
|---|---|
| fhirCsR2.Models.List<Identifier> |
Kind
Defines the kind of structure that this definition is describing.
Declaration
public string Kind { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Mapping
An external specification that the content is mapped to.
Declaration
public List<StructureDefinitionMapping> Mapping { get; set; }
Property Value
| Type | Description |
|---|---|
| fhirCsR2.Models.List<StructureDefinitionMapping> |
Name
A free text natural language name identifying the StructureDefinition.
Declaration
public string Name { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Publisher
Helps establish the "authority/credibility" of the structure definition. May also allow for contact.
Declaration
public string Publisher { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Requirements
Explains why this structure definition is needed and why it's been constrained as it has.
Declaration
public string Requirements { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
ResourceType
Resource Type Name
Declaration
public override string ResourceType { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
Overrides
| Improve this Doc View SourceSnapshot
A snapshot view is expressed in a stand alone form that can be used and interpreted without considering the base StructureDefinition.
Declaration
public StructureDefinitionSnapshot Snapshot { get; set; }
Property Value
| Type | Description |
|---|---|
| StructureDefinitionSnapshot |
Status
Allows filtering of StructureDefinitions that are appropriate for use vs. not.
Declaration
public string Status { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Url
So you can say, in a StructureDefinition, what the full extension URLs should be. This is required to allow hosting StructureDefinitions on multiple different servers, and to allow for the editorial process.
Declaration
public string Url { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
UseContext
Assist in searching for appropriate content.
Declaration
public List<CodeableConcept> UseContext { get; set; }
Property Value
| Type | Description |
|---|---|
| fhirCsR2.Models.List<CodeableConcept> |
Version
There may be multiple resource versions of the StructureDefinition that have this same identifier. The resource version id will change for technical reasons, whereas the stated version number needs to be under the author's control.
Declaration
public string Version { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Methods
| Improve this Doc View SourceDeserializeJson(ref Utf8JsonReader, JsonSerializerOptions)
Deserialize a JSON object
Declaration
public void DeserializeJson(ref Utf8JsonReader reader, JsonSerializerOptions options)
Parameters
| Type | Name | Description |
|---|---|---|
| Utf8JsonReader | reader | |
| JsonSerializerOptions | options |
DeserializeJsonProperty(ref Utf8JsonReader, JsonSerializerOptions, String)
Deserialize a JSON property
Declaration
public void DeserializeJsonProperty(ref Utf8JsonReader reader, JsonSerializerOptions options, string propertyName)
Parameters
| Type | Name | Description |
|---|---|---|
| Utf8JsonReader | reader | |
| JsonSerializerOptions | options | |
| System.String | propertyName |
SerializeJson(Utf8JsonWriter, JsonSerializerOptions, Boolean)
Serialize to a JSON object
Declaration
public void SerializeJson(Utf8JsonWriter writer, JsonSerializerOptions options, bool includeStartObject = true)
Parameters
| Type | Name | Description |
|---|---|---|
| Utf8JsonWriter | writer | |
| JsonSerializerOptions | options | |
| System.Boolean | includeStartObject |