Struct Provenance

Source
pub struct Provenance(pub Box<ProvenanceInner>);
Expand description

Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies.

Provenance v5.0.0

Who, What, When for a set of resources

Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies.

Some parties may be duplicated between the target resource and its provenance. For instance, the prescriber is usually (but not always) the author of the prescription resource. This resource is defined with close consideration for W3C Provenance.

Tuple Fields§

§0: Box<ProvenanceInner>

Implementations§

Source§

impl Provenance

Source

pub fn builder() -> ProvenanceBuilder

Start building an instance.

Source§

impl Provenance

Source

pub const fn resource_type() -> ResourceType

Get the resource type for this FHIR resource.

Trait Implementations§

Source§

impl BaseResource for Provenance

Source§

fn id(&self) -> &Option<String>

Get id.
Source§

fn id_mut(&mut self) -> &mut Option<String>

Get id mutably.
Source§

fn set_id(&mut self, value: Option<String>)

Set id.
Source§

fn meta(&self) -> &Option<Meta>

Get meta.
Source§

fn meta_mut(&mut self) -> &mut Option<Meta>

Get meta mutably.
Source§

fn set_meta(&mut self, value: Option<Meta>)

Set meta.
Source§

fn implicit_rules(&self) -> &Option<String>

Get implicit_rules.
Source§

fn implicit_rules_mut(&mut self) -> &mut Option<String>

Get implicit_rules mutably.
Source§

fn set_implicit_rules(&mut self, value: Option<String>)

Set implicit_rules.
Source§

fn language(&self) -> &Option<String>

Get language.
Source§

fn language_mut(&mut self) -> &mut Option<String>

Get language mutably.
Source§

fn set_language(&mut self, value: Option<String>)

Set language.
Source§

impl Clone for Provenance

Source§

fn clone(&self) -> Provenance

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 Provenance

Source§

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

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

impl Deref for Provenance

Source§

type Target = ProvenanceInner

The resulting type after dereferencing.
Source§

fn deref(&self) -> &<Provenance as Deref>::Target

Dereferences the value.
Source§

impl DerefMut for Provenance

Source§

fn deref_mut(&mut self) -> &mut <Provenance as Deref>::Target

Mutably dereferences the value.
Source§

impl<'de> Deserialize<'de> for Provenance

Source§

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

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

impl DomainResource for Provenance

Source§

fn id(&self) -> &Option<String>

Get id.
Source§

fn id_mut(&mut self) -> &mut Option<String>

Get id mutably.
Source§

fn set_id(&mut self, value: Option<String>)

Set id.
Source§

fn meta(&self) -> &Option<Meta>

Get meta.
Source§

fn meta_mut(&mut self) -> &mut Option<Meta>

Get meta mutably.
Source§

fn set_meta(&mut self, value: Option<Meta>)

Set meta.
Source§

fn implicit_rules(&self) -> &Option<String>

Get implicit_rules.
Source§

fn implicit_rules_mut(&mut self) -> &mut Option<String>

Get implicit_rules mutably.
Source§

fn set_implicit_rules(&mut self, value: Option<String>)

Set implicit_rules.
Source§

fn language(&self) -> &Option<String>

Get language.
Source§

fn language_mut(&mut self) -> &mut Option<String>

Get language mutably.
Source§

fn set_language(&mut self, value: Option<String>)

Set language.
Source§

fn text(&self) -> &Option<Narrative>

Get text.
Source§

fn text_mut(&mut self) -> &mut Option<Narrative>

Get text mutably.
Source§

fn set_text(&mut self, value: Option<Narrative>)

Set text.
Source§

fn contained(&self) -> &Vec<Resource>

Get contained.
Source§

fn contained_mut(&mut self) -> &mut Vec<Resource>

Get contained mutably.
Source§

fn set_contained(&mut self, value: Vec<Resource>)

Set contained.
Source§

fn extension(&self) -> &Vec<Extension>

Get extension.
Source§

fn extension_mut(&mut self) -> &mut Vec<Extension>

Get extension mutably.
Source§

fn set_extension(&mut self, value: Vec<Extension>)

Set extension.
Source§

fn modifier_extension(&self) -> &Vec<Extension>

Get modifier_extension.
Source§

fn modifier_extension_mut(&mut self) -> &mut Vec<Extension>

Get modifier_extension mutably.
Source§

fn set_modifier_extension(&mut self, value: Vec<Extension>)

Set modifier_extension.
Source§

impl From<Provenance> for Resource

Source§

fn from(resource: Provenance) -> Resource

Converts to this type from the input type.
Source§

impl From<ProvenanceInner> for Provenance

Source§

fn from(inner: ProvenanceInner) -> Provenance

Converts to this type from the input type.
Source§

impl NamedResource for Provenance

Source§

const FHIR_VERSION: &'static str = "5.0.0"

The FHIR version of this resource.
Source§

const TYPE: ResourceType = ResourceType::Provenance

The ResourceType of this resouce.
Source§

impl PartialEq for Provenance

Source§

fn eq(&self, other: &Provenance) -> 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 Provenance

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<'a> TryFrom<&'a Resource> for &'a Provenance

Source§

type Error = WrongResourceType

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

fn try_from( resource: &'a Resource, ) -> Result<&'a Provenance, <&'a Provenance as TryFrom<&'a Resource>>::Error>

Performs the conversion.
Source§

impl<'a> TryFrom<&'a mut Resource> for &'a mut Provenance

Source§

type Error = WrongResourceType

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

fn try_from( resource: &'a mut Resource, ) -> Result<&'a mut Provenance, <&'a mut Provenance as TryFrom<&'a mut Resource>>::Error>

Performs the conversion.
Source§

impl TryFrom<Resource> for Provenance

Source§

type Error = WrongResourceType

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

fn try_from( resource: Resource, ) -> Result<Provenance, <Provenance as TryFrom<Resource>>::Error>

Performs the conversion.
Source§

impl StructuralPartialEq for Provenance

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<R> AnyResource<FhirR5> for R

Source§

const TYPE: ResourceType = const TYPE: r5::resources::ResourceType = R::TYPE;

ResourceType of this resource.
Source§

const TYPE_STR: &'static str = const TYPE_STR: &'static str = R::TYPE.as_str();

Resource type of the resource as &str. Must be valid for use in URLs.
Source§

fn id(&self) -> Option<&str>

Get the resource’s ID as string.
Source§

fn set_id(&mut self, id: String)

Set the resource’s ID.
Source§

fn version_id(&self) -> Option<&str>

Get the resource’s version ID as string.
Source§

fn set_version_id(&mut self, version_id: String)

Set the resource’s version ID.
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<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<R, V> ResourceWrite<V> for R

Source§

async fn update( &mut self, conditional: bool, client: &Client<V>, ) -> Result<bool, Error>

Update the current version of the resource on the server. Returns whether the resource was created.
Source§

async fn create(&mut self, client: &Client<V>) -> Result<String, Error>

Create this resource on the server. Returns the resource ID.
Source§

async fn delete(self, client: &Client<V>) -> Result<(), Error>

Delete this resource on the FHIR server.
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,