DataRequirement

Struct DataRequirement 

Source
pub struct DataRequirement {
    pub id: Option<String>,
    pub extension: Option<Vec<Box<Extension>>>,
    pub type_: Box<AllTypes>,
    pub profile: Option<Vec<Box<FHIRString>>>,
    pub subject: Option<DataRequirementSubjectTypeChoice>,
    pub mustSupport: Option<Vec<Box<FHIRString>>>,
    pub codeFilter: Option<Vec<DataRequirementCodeFilter>>,
    pub dateFilter: Option<Vec<DataRequirementDateFilter>>,
    pub limit: Option<Box<FHIRPositiveInt>>,
    pub sort: Option<Vec<DataRequirementSort>>,
}
Expand description

Describes a required data item for evaluation in terms of the type of data, and optional code or date-based filters of the data.

Fields§

§id: Option<String>

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

§extension: Option<Vec<Box<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.

§type_: Box<AllTypes>

The type of the required data, specified as the type name of a resource. For profiles, this value is set to the type of the base resource of the profile.

§profile: Option<Vec<Box<FHIRString>>>

The profile of the required data, specified as the uri of the profile definition.

§subject: Option<DataRequirementSubjectTypeChoice>

The intended subjects of the data requirement. If this element is not provided, a Patient subject is assumed.

§mustSupport: Option<Vec<Box<FHIRString>>>

Indicates that specific elements of the type are referenced by the knowledge module and must be supported by the consumer in order to obtain an effective evaluation. This does not mean that a value is required for this element, only that the consuming system must understand the element and be able to provide values for it if they are available.

The value of mustSupport SHALL be a FHIRPath resolveable on the type of the DataRequirement. The path SHALL consist only of identifiers, constant indexers, and .resolve() (see the Simple FHIRPath Profile for full details).

§codeFilter: Option<Vec<DataRequirementCodeFilter>>

Code filters specify additional constraints on the data, specifying the value set of interest for a particular element of the data. Each code filter defines an additional constraint on the data, i.e. code filters are AND’ed, not OR’ed.

§dateFilter: Option<Vec<DataRequirementDateFilter>>

Date filters specify additional constraints on the data in terms of the applicable date range for specific elements. Each date filter specifies an additional constraint on the data, i.e. date filters are AND’ed, not OR’ed.

§limit: Option<Box<FHIRPositiveInt>>

Specifies a maximum number of results that are required (uses the _count search parameter).

§sort: Option<Vec<DataRequirementSort>>

Specifies the order of the results to be returned.

Trait Implementations§

Source§

impl Clone for DataRequirement

Source§

fn clone(&self) -> DataRequirement

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 DataRequirement

Source§

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

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

impl Default for DataRequirement

Source§

fn default() -> DataRequirement

Returns the “default value” for a type. Read more
Source§

impl FHIRJSONDeserializer for DataRequirement

Source§

impl FHIRJSONSerializer for DataRequirement

Source§

fn serialize_value( &self, writer: &mut dyn Write, ) -> Result<bool, SerializeError>

Source§

fn serialize_extension( &self, writer: &mut dyn Write, ) -> Result<bool, SerializeError>

Source§

fn serialize_field( &self, field: &str, writer: &mut dyn Write, ) -> Result<bool, SerializeError>

Source§

fn is_fp_primitive(&self) -> bool

Source§

impl MetaValue for DataRequirement

Source§

fn fields(&self) -> Vec<&'static str>

Source§

fn get_field<'a>(&'a self, field: &str) -> Option<&'a dyn MetaValue>

Source§

fn get_field_mut<'a>(&'a mut self, field: &str) -> Option<&'a mut dyn MetaValue>

Source§

fn get_index_mut<'a>( &'a mut self, index: usize, ) -> Option<&'a mut dyn MetaValue>

Source§

fn get_index<'a>(&'a self, _index: usize) -> Option<&'a dyn MetaValue>

Source§

fn typename(&self) -> &'static str

Source§

fn as_any(&self) -> &dyn Any

Source§

fn flatten(&self) -> Vec<&dyn MetaValue>

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.

§

impl<T> Instrument for T

§

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

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

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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.
§

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

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

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