openehr-lang 0.0.2

openEHR LANG 1.0.0: BMM/P_BMM object model (generated from BMM) plus a hand-written ODIN instance parser (the `odin` module — deliberately off the codegen path).
Documentation
// @generated by openehr-codegen from BMM (`BMM_MODEL_METADATA`) — DO NOT EDIT.

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

use crate::bmm3::core::model::bmm_model::BmmModel;

/// Core properties of `BMM_MODEL`, may be used in a serial representation as well, such as `P_BMM_SCHEMA`.
#[doc(alias = "BMM_MODEL_METADATA")]
#[derive(Debug, Clone, PartialEq)]
pub struct BmmModelMetadataData {
    /// Publisher of model expressed in the schema.
    pub rm_publisher: String,
    /// Release of model expressed in the schema as a 3-part numeric, e.g. "3.1.0" .
    pub rm_release: String,
}

/// Polymorphic slot of `BMM_MODEL_METADATA`, dispatched on each payload's `_type`.
///
/// Core properties of `BMM_MODEL`, may be used in a serial representation as well, such as `P_BMM_SCHEMA`.
#[doc(alias = "BMM_MODEL_METADATA")]
#[derive(Debug, Clone, PartialEq)]
pub enum BmmModelMetadata {
    /// The `BMM_MODEL` subtype of `BMM_MODEL_METADATA`.
    BmmModel(BmmModel),
    /// An instance of `BMM_MODEL_METADATA` itself (its own, least-rich form).
    BmmModelMetadata(BmmModelMetadataData),
}