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 (`P_BMM_INDEXED_CONTAINER_PROPERTY`) — DO NOT EDIT.

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

use crate::bmm::core::bmm_container_property::BmmContainerProperty;
use crate::bmm_persistence::p_bmm_indexed_container_type::PBmmIndexedContainerType;
use openehr_base::prelude::Interval;

/// The openEHR `P_BMM_INDEXED_CONTAINER_PROPERTY` class (the vendored BMM carries no documentation for it).
#[doc(alias = "P_BMM_INDEXED_CONTAINER_PROPERTY")]
#[derive(Debug, Clone, PartialEq)]
pub struct PBmmIndexedContainerProperty {
    // inherited: P_BMM_MODEL_ELEMENT
    /// Optional documentation of this element.
    pub documentation: Option<String>,

    // inherited: P_BMM_PROPERTY
    /// Name of this property within its class. Persisted attribute.
    pub name: String,
    /// True if this property is mandatory in its class. Persisted attribute.
    pub is_mandatory: Option<bool>,
    /// True if this property is computed rather than stored in objects of this class. Persisted Attribute.
    pub is_computed: Option<bool>,
    /// True if this property is info model 'infrastructure' rather than 'data'. Persisted attribute.
    pub is_im_infrastructure: Option<bool>,
    /// True if this property is info model 'runtime' settable property. Persisted attribute.
    pub is_im_runtime: Option<bool>,
    /// Type definition of this property, if not a simple String type reference. Persistent attribute.
    pub type_def: Option<PBmmIndexedContainerType>,
    /// `BMM_PROPERTY` created by `_create_bmm_property_`.
    pub bmm_property: Option<BmmContainerProperty>,

    // inherited: P_BMM_CONTAINER_PROPERTY
    /// Cardinality of this property in its class. Persistent attribute.
    pub cardinality: Option<Interval<i32>>,
}