Struct DeviceUsageInner

Source
pub struct DeviceUsageInner {
Show 42 fields pub id: Option<String>, pub meta: Option<Meta>, pub implicit_rules: Option<String>, pub language: Option<String>, pub text: Option<Narrative>, pub contained: Vec<Resource>, pub extension: Vec<Extension>, pub modifier_extension: Vec<Extension>, pub identifier: Vec<Option<Identifier>>, pub identifier_ext: Vec<Option<FieldExtension>>, pub based_on: Vec<Option<Reference>>, pub based_on_ext: Vec<Option<FieldExtension>>, pub status: DeviceUsageStatus, pub status_ext: Option<FieldExtension>, pub category: Vec<Option<CodeableConcept>>, pub category_ext: Vec<Option<FieldExtension>>, pub patient: Reference, pub patient_ext: Option<FieldExtension>, pub derived_from: Vec<Option<Reference>>, pub derived_from_ext: Vec<Option<FieldExtension>>, pub context: Option<Reference>, pub context_ext: Option<FieldExtension>, pub timing: Option<DeviceUsageTiming>, pub timing_ext: Option<DeviceUsageTimingExtension>, pub date_asserted: Option<DateTime>, pub date_asserted_ext: Option<FieldExtension>, pub usage_status: Option<CodeableConcept>, pub usage_status_ext: Option<FieldExtension>, pub usage_reason: Vec<Option<CodeableConcept>>, pub usage_reason_ext: Vec<Option<FieldExtension>>, pub adherence: Option<DeviceUsageAdherence>, pub adherence_ext: Option<FieldExtension>, pub information_source: Option<Reference>, pub information_source_ext: Option<FieldExtension>, pub device: CodeableReference, pub device_ext: Option<FieldExtension>, pub reason: Vec<Option<CodeableReference>>, pub reason_ext: Vec<Option<FieldExtension>>, pub body_site: Option<CodeableReference>, pub body_site_ext: Option<FieldExtension>, pub note: Vec<Option<Annotation>>, pub note_ext: Vec<Option<FieldExtension>>, /* private fields */
}
Expand description

A record of a device being used by a patient where the record is the result of a report from the patient or a clinician.

DeviceUsage v5.0.0

Record of use of a device

A record of a device being used by a patient where the record is the result of a report from the patient or a clinician.

Fields§

§id: Option<String>

Logical id of this artifact

The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.

Within the context of the FHIR RESTful interactions, the resource has an id except for cases like the create and conditional update. Otherwise, the use of the resouce id depends on the given use case.

§meta: Option<Meta>

Metadata about the resource

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.

§implicit_rules: Option<String>

A set of rules under which this content was created

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.

Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of its narrative along with other profiles, value sets, etc.

§language: Option<String>

Language; Language of the resource content

The base language in which the resource is written.

Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).

§text: Option<Narrative>

Text summary of the resource, for human interpretation

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.

Contained resources do not have a narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a “text blob” or where text is additionally entered raw or narrated and encoded information is added later.

§contained: Vec<Resource>

Contained, inline Resources

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.

This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags in their meta elements, but SHALL NOT have security labels.

§extension: Vec<Extension>

Additional content defined by implementations

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.

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

§modifier_extension: Vec<Extension>

Extensions that cannot be ignored

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).

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

§identifier: Vec<Option<Identifier>>

External identifier for this record

An external identifier for this statement such as an IRI.

§identifier_ext: Vec<Option<FieldExtension>>

Extension field.

§based_on: Vec<Option<Reference>>

Fulfills plan, proposal or order

A plan, proposal or order that is fulfilled in whole or in part by this DeviceUsage.

§based_on_ext: Vec<Option<FieldExtension>>

Extension field.

§status: DeviceUsageStatus

DeviceUsageStatus; active | completed | not-done | entered-in-error +

A code representing the patient or other source’s judgment about the state of the device used that this statement is about. Generally this will be active or completed.

DeviceUseStatment is a statement at a point in time. The status is only representative at the point when it was asserted. The value set for contains codes that assert the status of the use by the patient (for example, stopped or on hold) as well as codes that assert the status of the resource itself (for example, entered in error).

This element is labeled as a modifier because the status contains the codes that mark the statement as not currently valid.

§status_ext: Option<FieldExtension>

Extension field.

§category: Vec<Option<CodeableConcept>>

The category of the statement - classifying how the statement is made

This attribute indicates a category for the statement - The device statement may be made in an inpatient or outpatient settting (inpatient | outpatient | community | patientspecified).

§category_ext: Vec<Option<FieldExtension>>

Extension field.

§patient: Reference

Patient using device

The patient who used the device.

§patient_ext: Option<FieldExtension>

Extension field.

§derived_from: Vec<Option<Reference>>

Supporting information

Allows linking the DeviceUsage to the underlying Request, or to other information that supports or is used to derive the DeviceUsage.

The most common use cases for deriving a DeviceUsage comes from creating it from a request or from an observation or a claim. it should be noted that the amount of information that is available varies from the type resource that you derive the DeviceUsage from.

§derived_from_ext: Vec<Option<FieldExtension>>

Extension field.

§context: Option<Reference>

The encounter or episode of care that establishes the context for this device use statement

The encounter or episode of care that establishes the context for this device use statement.

§context_ext: Option<FieldExtension>

Extension field.

§timing: Option<DeviceUsageTiming>

How often the device was used

How often the device was used.

§timing_ext: Option<DeviceUsageTimingExtension>

Extension field.

§date_asserted: Option<DateTime>

When the statement was made (and recorded)

The time at which the statement was recorded by informationSource.

§date_asserted_ext: Option<FieldExtension>

Extension field.

§usage_status: Option<CodeableConcept>

DeviceUsageStatus; The status of the device usage, for example always, sometimes, never. This is not the same as the status of the statement

The status of the device usage, for example always, sometimes, never. This is not the same as the status of the statement.

§usage_status_ext: Option<FieldExtension>

Extension field.

§usage_reason: Vec<Option<CodeableConcept>>

The reason for asserting the usage status - for example forgot, lost, stolen, broken

The reason for asserting the usage status - for example forgot, lost, stolen, broken.

§usage_reason_ext: Vec<Option<FieldExtension>>

Extension field.

§adherence: Option<DeviceUsageAdherence>

How device is being used

This indicates how or if the device is being used.

§adherence_ext: Option<FieldExtension>

Extension field.

§information_source: Option<Reference>

Who made the statement

Who reported the device was being used by the patient.

§information_source_ext: Option<FieldExtension>

Extension field.

§device: CodeableReference

Code or Reference to device used

Code or Reference to device used.

§device_ext: Option<FieldExtension>

Extension field.

§reason: Vec<Option<CodeableReference>>

Why device was used

Reason or justification for the use of the device. A coded concept, or another resource whose existence justifies this DeviceUsage.

When the status is not done, the reason code indicates why it was not done.

§reason_ext: Vec<Option<FieldExtension>>

Extension field.

§body_site: Option<CodeableReference>

BodySite; Target body site

Indicates the anotomic location on the subject’s body where the device was used ( i.e. the target).

§body_site_ext: Option<FieldExtension>

Extension field.

§note: Vec<Option<Annotation>>

Addition details (comments, instructions)

Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement.

§note_ext: Vec<Option<FieldExtension>>

Extension field.

Trait Implementations§

Source§

impl Clone for DeviceUsageInner

Source§

fn clone(&self) -> DeviceUsageInner

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for DeviceUsageInner

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for DeviceUsageInner

Source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<DeviceUsageInner, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl From<DeviceUsageInner> for DeviceUsage

Source§

fn from(inner: DeviceUsageInner) -> DeviceUsage

Converts to this type from the input type.
Source§

impl PartialEq for DeviceUsageInner

Source§

fn eq(&self, other: &DeviceUsageInner) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for DeviceUsageInner

Source§

fn serialize<__S>( &self, __serializer: __S, ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for DeviceUsageInner

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,