1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
// @generated by openehr-codegen from BMM (`EXTRACT`) — DO NOT EDIT.
// SPDX-FileCopyrightText: Cadasto B.V.
// SPDX-FileCopyrightText: openEHR Foundation
// SPDX-License-Identifier: Apache-2.0
//! The openEHR `EXTRACT` 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::data_types::quantity::date_time::dv_date_time::DvDateTime;
use crate::v1_1::data_types::text::dv_text::DvText;
use crate::v1_1::ehr_extract::common::extract_chapter::ExtractChapter;
use crate::v1_1::ehr_extract::common::extract_participation::ExtractParticipation;
use crate::v1_1::ehr_extract::common::extract_spec::ExtractSpec;
use openehr_base::v1_2::base_types::identification::hier_object_id::HierObjectId;
use openehr_base::v1_2::base_types::identification::uid_based_id::UidBasedId;
/// Generic model of an Extract of some information from a repository.
#[doc(alias = "EXTRACT")]
#[derive(Debug, Clone, PartialEq)]
pub struct Extract {
// 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>,
/// The content extracted and serialised from the source repository for this Extract.
pub chapters: Option<Vec<ExtractChapter>>,
/// The specification that this Extract actually conforms to; might not be identical with the specification of the corresponding request.
pub specification: Option<ExtractSpec>,
/// Reference to causing Request, if any.
pub request_id: Option<HierObjectId>,
/// Creation time of this Extract
pub time_created: DvDateTime,
/// Identifier of creating system.
pub system_id: HierObjectId,
/// Number of this Extract response in sequence of responses to Extract request identified by `_request_id_`. If this is the sole response, or there was no request, value is 1.
pub sequence_nr: i32,
/// Participations relevant to the creation of this Extract.
pub participations: Option<Vec<ExtractParticipation>>,
}