openehr-am 0.0.78

openEHR AM Archetype Model, generated from BMM: generations v1_4 (AM 1.4.0, ADL 1.4) and v2_4 (AM 2.4.0, ADL 2; current)
Documentation
// @generated by openehr-codegen from BMM (`BMM_SCHEMA_DESCRIPTOR`) — DO NOT EDIT.
// SPDX-FileCopyrightText: Vernum Projecten B.V.
// SPDX-FileCopyrightText: openEHR Foundation
// SPDX-License-Identifier: Apache-2.0

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

use crate::v2_4::bmm::core::bmm_model::BmmModel;
use crate::v2_4::bmm3::model_access::bmm_schema::BmmSchema;

/// Descriptor for a BMM schema. Contains a meta-data table of attributes obtained from a mini-ODIN parse of the  schema file.
#[doc(alias = "BMM_SCHEMA_DESCRIPTOR")]
#[derive(Debug, Clone, PartialEq)]
pub struct BmmSchemaDescriptor {
    /// Persistent form of model.
    pub bmm_schema: Option<BmmSchema>,
    /// Computable form of model.
    pub bmm_model: Option<BmmModel>,
    /// Schema id, formed by
    ///
    /// `{BMM_DEFINITIONS}.create_schema_id(
    ///   meta_data.item({BMM_DEFINITIONS}.Metadata_model_publisher),
    ///   meta_data.item({BMM_DEFINITIONS}.Metadata_schema_name),
    ///   meta_data.item({BMM_DEFINITIONS}.Metadata_model_release)`
    ///
    /// e.g. `openehr_rm_1.0.3`, `openehr_test_1.0.1`, `iso_13606_1_2008_2.1.2`.
    pub schema_id: String,
    /// Table of `{key, value}` of schema meta-data, keys are string values defined by `{BMM_DEFINITIONS}.Metadata_*` constants.
    pub meta_data: std::collections::BTreeMap<String, String>,
    /// Identifiers of schemas included by this schema.
    pub includes: Option<Vec<String>>,
}