openehr-rm 0.0.128

openEHR RM Reference Model, generated from BMM: generations v1_1 (RM 1.1.0) and v1_2 (RM 1.2.0, current)
Documentation
// @generated by openehr-codegen from BMM (`GENERIC_CONTENT_ITEM`) — DO NOT EDIT.
// SPDX-FileCopyrightText: Cadasto B.V.
// SPDX-FileCopyrightText: openEHR Foundation
// SPDX-License-Identifier: Apache-2.0

//! The openEHR `GENERIC_CONTENT_ITEM` spec class, generated from the vendored BMM
//! meta-model.

use crate::v1_1::common::archetyped::archetyped::Archetyped;
use crate::v1_1::common::archetyped::feeder_audit::FeederAudit;
use crate::v1_1::common::archetyped::link::Link;
use crate::v1_1::common::archetyped::locatable::Locatable;
use crate::v1_1::data_types::text::dv_coded_text::DvCodedText;
use crate::v1_1::data_types::text::dv_text::DvText;
use crate::v1_1::foundation_types::time::iso8601_date_time::Iso8601DateTime;
use openehr_base::v1_2::base_types::identification::uid_based_id::UidBasedId;

/// Single item in generic extract, designed for 13606 and CDA data.
#[doc(alias = "GENERIC_CONTENT_ITEM")]
#[derive(Debug, Clone, PartialEq)]
pub struct GenericContentItem {
    // inherited: LOCATABLE
    /// Runtime name of this fragment, used to build runtime paths.
    ///
    /// This is the term provided via a clinical application or batch process to name this EHR construct: its retention in the EHR faithfully preserves the original label by which this entry was known to end users.
    pub name: DvText,
    /// Design-time archetype identifier of this node taken from its generating archetype; used to build archetype paths.
    ///
    /// Always in the form of an at-code, e.g.  `at0005`. This value enables a 'standardised' name for this node to be generated, by referring to the generating archetype local terminology.
    ///
    /// At an archetype root point, the value of this attribute is always the stringified form of the `_archetype_id_` found in the `_archetype_details_` object.
    pub archetype_node_id: String,
    /// Optional globally unique object identifier for root points of archetyped structures.
    pub uid: Option<UidBasedId>,
    /// Links to other archetyped structures (data whose root object inherits from `ARCHETYPED`, such as `ENTRY`, `SECTION` and so on). Links may be to structures in other compositions.
    pub links: Option<openehr_base::containers::NonEmptyVec<Link>>,
    /// Details of archetyping used on this node.
    pub archetype_details: Option<Archetyped>,
    /// Audit trail from non-openEHR system of original commit of information forming the content of this node, or from a conversion gateway which has synthesised this node.
    pub feeder_audit: Option<FeederAudit>,

    // inherited: EXTRACT_CONTENT_ITEM
    /// True if the content item carried in this container was part of the primary set for the Extract, i.e. not added due to link-following.
    pub is_primary: bool,
    /// True if the content item carried in this container is any kind of change since last send, in repeat sending situations.
    pub is_changed: Option<bool>,
    /// True if the content of this item has not been included due to insufficient access rights of requestor.
    pub is_masked: Option<bool>,
    /// Content object.
    pub item: Option<Box<Locatable>>,
    /// Identifier of model or schema used to create the content.
    pub item_type: Option<DvCodedText>,
    /// Version of model or schema used to create the content item.
    pub item_type_version: Option<String>,
    /// Reference to a demographic entity elsewhere in this Extract representing the author of the item version.
    ///
    /// The reference should be a UID corresponding to the UID of a `GENERIC_CONTENT_ITEM` containing the demographic information.
    pub author: Option<String>,
    /// Time of creation of this item version on the original system. This may be an earlier commit time, or it may be the time at which the item was created during the Extract generation process.
    pub creation_time: Option<Iso8601DateTime>,
    /// Reference to a demographic entity elsewhere in this Extract representing an authoriser of the item version, if relevant.
    ///
    /// The reference should be a UID corresponding to the UID of a `GENERIC_CONTENT_ITEM` containing the demographic information.
    pub authoriser: Option<String>,
    /// Time of authorisation of this item version on the original system where relevant.
    pub authorisation_time: Option<Iso8601DateTime>,
    /// Coded lifecycle status of the item.
    pub item_status: Option<DvCodedText>,
    /// Version id of this item in original system.
    pub version_id: Option<String>,
    /// Version set id of this item in original system, where applicable.
    pub version_set_id: Option<String>,
    /// Identifier of EMR or other system from which the item was created / extracted. Typically in the form of a domain name.
    pub system_id: Option<String>,
    /// Other details about the content item.
    pub other_details: Option<std::collections::BTreeMap<String, String>>,
}