Skip to content

Domain concepts and information

Use this module to describe business concepts and information before choosing persistence or implementation technology.

Source: mde/metamodels/cim/cim-domain-data.emf.

DomainConcept

An abstract domain concept concept. Use one of its concrete subtypes when creating a model instance; the shared attributes and relationships defined here still apply.

Direct supertypes: TraceableElement. Inherited attributes and marker capabilities are documented in the shared kernel; this section lists every attribute declared by this class.

Declared attributes

Attribute Type and multiplicity What it captures and why it exists Accepted values and example
glossaryDefinition String [1] Records human explanation of glossary definition for domain concept. It keeps human review and generated guidance explicit during review and transformation, so later steps do not have to infer it. Semantic validation: DomainConceptHasBusinessDefinition (domain concept has business definition) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: A confirmed order is one accepted for fulfillment by the business..
examples String [1] Records the examples value for the domain concept. This keeps the decision explicit even when the element's class or relationships remain unchanged. The repository contains no direct EVL rule, ETL assignment, or artifact-generator read for this declared field. For now, it remains a model-level fact for review and future refinement. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Domain Concept Examples.
businessOwner String [1] Records the accountable person, team, or identity for business owner for the domain concept. This keeps the decision explicit even when the element's class or relationships remain unchanged. The repository contains no direct EVL rule, ETL assignment, or artifact-generator read for this declared field. For now, it remains a model-level fact for review and future refinement. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: orders-team.

Relationships

Relationship Kind and multiplicity Meaning in the model
outgoingRelationshipsDomainRelationship reference, [*]; opposite source References the domain relationship element(s) used as outgoing relationships by this domain concept; the target may be shared elsewhere in the model.
incomingRelationshipsDomainRelationship reference, [*]; opposite target References the domain relationship element(s) used as incoming relationships by this domain concept; the target may be shared elsewhere in the model.

DomainEntity

Represents domain entity in the CIM vocabulary. It specializes DomainConcept with the details needed for this modeling concern.

Direct supertypes: DomainConcept. Inherited attributes and marker capabilities are documented in the shared kernel; this section lists every attribute declared by this class.

Declared attributes

Attribute Type and multiplicity What it captures and why it exists Accepted values and example
identityDescription String [1] How the business recognizes the same entity over time. It complements the identity strategy with human meaning that cannot be inferred from a key field alone. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Processes confirmed orders for the owning capability..
lifecycleDescription String [1] The business story of creation, change, and retirement for the entity. It gives lifecycle states and process transitions a domain explanation. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Processes confirmed orders for the owning capability..
auditRelevant Boolean [1] Whether changes or access to this entity matter as an audit trail. The flag helps later policy and storage design distinguish ordinary data from accountable business history. Either true or false. Example: true.
identityStrategy IdentityStrategy [1] The business identity approach, natural, composite, surrogate, external, or unknown, that guides PIM key design without prematurely choosing a database implementation. Exactly one of: NATURAL_KEY, COMPOSITE_NATURAL_KEY, SURROGATE_KEY, EXTERNAL_REFERENCE, UNKNOWN. Example: NATURAL_KEY.

Relationships

Relationship Kind and multiplicity Meaning in the model
lifecycleStatesLifecycleStateDefinition containment, [*] Contains the lifecycle state definition element(s) that make up this domain entity; the contained objects belong to this model element.
invariantsBusinessInvariant containment, [*] Contains the business invariant element(s) that make up this domain entity; the contained objects belong to this model element.
identityAttributesInformationItem reference, [+] References the information item element(s) used as identity attributes by this domain entity; the target may be shared elsewhere in the model.
primaryIdentityAttributeInformationItem reference, [1] References the information item element(s) used as primary identity attribute by this domain entity; the target may be shared elsewhere in the model.
attributesInformationItem reference, [*] References the information item element(s) used as attributes by this domain entity; the target may be shared elsewhere in the model.
owningCapabilityBusinessCapability reference, [?]; opposite managesEntities References the business capability element(s) used as owning capability by this domain entity; the target may be shared elsewhere in the model.

ValueObject

Represents value object in the CIM vocabulary. It specializes DomainConcept with the details needed for this modeling concern.

Direct supertypes: DomainConcept. Inherited attributes and marker capabilities are documented in the shared kernel; this section lists every attribute declared by this class.

Declared attributes

Attribute Type and multiplicity What it captures and why it exists Accepted values and example
valueType PrimitiveBusinessType [1] Records the controlled classification or strategy for value type in the value object. This keeps the decision explicit even when the element's class or relationships remain unchanged. The repository contains no direct EVL rule, ETL assignment, or artifact-generator read for this declared field. For now, it remains a model-level fact for review and future refinement. Exactly one of: TEXT, NUMBER, INTEGER, DECIMAL, BOOLEAN, DATE, TIME, DATETIME, MONEY, EMAIL, PHONE, ADDRESS, IDENTIFIER, ENUMERATION, OBJECT, LIST, DOCUMENT, BINARY. Example: TEXT.
immutable Boolean [1] For a value object, the model records whether immutable applies. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Semantic validation: ValueObjectShouldBeImmutable (value object should be immutable) in mde/validation/cim/rules/domain-data.evl the flag must be enabled for this rule to pass. Either true or false. Example: false.

Relationships

Relationship Kind and multiplicity Meaning in the model
attributesInformationItem reference, [*] References the information item element(s) used as attributes by this value object; the target may be shared elsewhere in the model.
equalityAttributesInformationItem reference, [*] References the information item element(s) used as equality attributes by this value object; the target may be shared elsewhere in the model.

DomainRelationship

Represents domain relationship in the CIM vocabulary. It specializes SemanticRelationship with the details needed for this modeling concern.

Direct supertypes: SemanticRelationship. Inherited attributes and marker capabilities are documented in the shared kernel; this section lists every attribute declared by this class.

Declared attributes

Attribute Type and multiplicity What it captures and why it exists Accepted values and example
sourceRole String [1] The name of the source concept's role in the relationship, making the direction readable in domain language rather than relying on class names. Semantic validation: DomainRelationshipHasRolesAndMultiplicities (domain relationship has roles and multiplicities) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. Transformation role: ETL rule DomainRelationship2SchemaReference in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DomainRelationship. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: order-manager.
targetRole String [1] The target concept's role as understood by the business. Together with sourceRole it prevents an association from losing its meaning during schema transformation. Semantic validation: DomainRelationshipHasRolesAndMultiplicities (domain relationship has roles and multiplicities) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. Transformation role: ETL rule DomainRelationship2SchemaReference in mde/transformations/cim-to-pim/domain-data.etl reads or derives this feature while refining DomainRelationship. ETL rule DomainRelationship2SchemaReference in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DomainRelationship. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: order-manager.
ownership Boolean [1] Whether the source concept owns the target concept's lifecycle. This is stronger than navigability and can affect composition, deletion, and persistence boundaries. Semantic validation: DomainRelationshipHasRolesAndMultiplicities (domain relationship has roles and multiplicities) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. OwnershipRelationshipUsesOwnershipType (ownership relationship uses ownership type) in mde/validation/cim/rules/domain-data.evl the flag must be enabled for this rule to pass. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/templates/docs/operations.egl. Either true or false. Example: false.
navigableFromSource Boolean [1] Whether users of the source concept need to traverse to the target. It records access intent separately from ownership and avoids generating unnecessary data joins or references. Transformation role: ETL rule DomainRelationship2SchemaReference in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DomainRelationship. Either true or false. Example: false.
navigableFromTarget Boolean [1] Whether traversal in the reverse direction is part of the domain use case. The asymmetry is important when the relationship is not a bidirectional query requirement. Either true or false. Example: false.
relationshipType DomainRelationshipType [1] The semantic kind of connection, association, composition, aggregation, generalization, dependency, or ownership, that later models use to choose a safe structural representation. Semantic validation: OwnershipRelationshipUsesOwnershipType (ownership relationship uses ownership type) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. Transformation role: ETL rule DomainRelationship2SchemaReference in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DomainRelationship. Exactly one of: ASSOCIATION, COMPOSITION, AGGREGATION, GENERALIZATION, DEPENDENCY, OWNERSHIP. Example: ASSOCIATION.

Relationships

Relationship Kind and multiplicity Meaning in the model
sourceMultiplicityMultiplicity containment, [1] Contains the multiplicity element(s) that make up this domain relationship; the contained objects belong to this model element.
targetMultiplicityMultiplicity containment, [1] Contains the multiplicity element(s) that make up this domain relationship; the contained objects belong to this model element.
sourceDomainConcept reference, [1]; opposite outgoingRelationships References the domain concept element(s) used as source by this domain relationship; the target may be shared elsewhere in the model.
targetDomainConcept reference, [1]; opposite incomingRelationships References the domain concept element(s) used as target by this domain relationship; the target may be shared elsewhere in the model.

AggregateCandidate

Represents aggregate candidate in the CIM vocabulary. It specializes DomainConcept with the details needed for this modeling concern.

Direct supertypes: DomainConcept. Inherited attributes and marker capabilities are documented in the shared kernel; this section lists every attribute declared by this class.

Declared attributes

Attribute Type and multiplicity What it captures and why it exists Accepted values and example
consistencyBoundaryRationale String [1] Why these concepts must change under one consistency boundary. It is the argument that turns an entity grouping into an aggregate candidate rather than a visual cluster. Semantic validation: StrongConsistencyRequiresRationale (strong consistency requires rationale) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl reads or derives this feature while refining AggregateCandidate. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: The choice protects the business outcome while keeping the design independently deployable..
conflictResolutionPolicy String [1] What the business wants when concurrent changes conflict. This is essential input for idempotency, optimistic concurrency, retries, and manual reconciliation. Semantic validation: EventualConsistencyHasConflictPolicy (eventual consistency has conflict policy) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: STANDARD.
idempotencyBusinessKey String [1] The business key that lets a repeated command be recognized as the same intent. It is the bridge from duplicate-submission risk in CIM to an idempotency policy in PIM. Semantic validation: AggregateCommandsDeclareIdempotency (aggregate commands declare idempotency) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: orderId.
strongConsistencyRequired Boolean [1] Whether invariants require immediate agreement across the aggregate. It prevents an eventually consistent implementation from being selected where business correctness requires atomic visibility. Semantic validation: StrongConsistencyRequiresRationale (strong consistency requires rationale) in mde/validation/cim/rules/domain-data.evl the flag must be enabled for this rule to pass. StrongConsistencyExpectationIsConsistent (strong consistency expectation is consistent) in mde/validation/cim/rules/domain-data.evl the flag must be enabled for this rule to pass. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl reads or derives this feature while refining AggregateCandidate. Either true or false. Example: true.
consistencyExpectation ConsistencyExpectation [1] The acceptable consistency contract for the aggregate, including whether eventual consistency or manual reconciliation is acceptable. Semantic validation: StrongConsistencyExpectationIsConsistent (strong consistency expectation is consistent) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. EventualConsistencyHasConflictPolicy (eventual consistency has conflict policy) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining AggregateCandidate. Exactly one of: SINGLE_ENTITY, MULTI_ENTITY_STRONG_CONSISTENCY, EVENTUAL_CONSISTENCY_ACCEPTABLE, MANUAL_RECONCILIATION_ACCEPTABLE. Example: SINGLE_ENTITY.

Relationships

Relationship Kind and multiplicity Meaning in the model
invariantsBusinessInvariant containment, [*] Contains the business invariant element(s) that make up this aggregate candidate; the contained objects belong to this model element.
rootDomainEntity reference, [1] References the domain entity element(s) used as root by this aggregate candidate; the target may be shared elsewhere in the model.
membersDomainEntity reference, [+] References the domain entity element(s) used as members by this aggregate candidate; the target may be shared elsewhere in the model.
contextBoundedContextCandidate reference, [?] References the bounded context candidate element(s) used as context by this aggregate candidate; the target may be shared elsewhere in the model.
handledCommandsCommand reference, [*] References the command element(s) used as handled commands by this aggregate candidate; the target may be shared elsewhere in the model.
emittedEventsBusinessEvent reference, [*] References the business event element(s) used as emitted events by this aggregate candidate; the target may be shared elsewhere in the model.

LifecycleStateDefinition

Represents lifecycle state definition in the CIM vocabulary. It specializes TraceableElement with the details needed for this modeling concern.

Direct supertypes: TraceableElement. Inherited attributes and marker capabilities are documented in the shared kernel; this section lists every attribute declared by this class.

Declared attributes

Attribute Type and multiplicity What it captures and why it exists Accepted values and example
stateName String [1] For a lifecycle state definition, the model records the stable name/key/code used for state name. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/contracts.eol. The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/validation.eol. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: ACTIVE.
initial Boolean [1] For a lifecycle state definition, the model records whether initial applies. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. The repository contains no direct EVL rule, ETL assignment, or artifact-generator read for this declared field. For now, it remains a model-level fact for review and future refinement. Either true or false. Example: false.
terminal Boolean [1] Records whether terminal applies to lifecycle state definition. The field records an explicit architectural or governance decision as an explicit, reviewable input. The repository contains no direct EVL rule, ETL assignment, or artifact-generator read for this declared field. For now, it remains a model-level fact for review and future refinement. Either true or false. Example: false.
entryCondition String [1] Records the expression or rule that governs entry condition for the lifecycle state definition. This keeps the decision explicit even when the element's class or relationships remain unchanged. The repository contains no direct EVL rule, ETL assignment, or artifact-generator read for this declared field. For now, it remains a model-level fact for review and future refinement. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: $.status == 'READY'.
exitCondition String [1] Records the expression or rule that governs exit condition for the lifecycle state definition. This keeps the decision explicit even when the element's class or relationships remain unchanged. The repository contains no direct EVL rule, ETL assignment, or artifact-generator read for this declared field. For now, it remains a model-level fact for review and future refinement. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: $.status == 'READY'.

Relationships

This class declares no direct relationships.

BusinessInvariant

Represents business invariant in the CIM vocabulary. It specializes TraceableElement with the details needed for this modeling concern.

Direct supertypes: TraceableElement. Inherited attributes and marker capabilities are documented in the shared kernel; this section lists every attribute declared by this class.

Declared attributes

Attribute Type and multiplicity What it captures and why it exists Accepted values and example
naturalLanguageStatement String [1] For a business invariant, the model records the natural language statement value. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Semantic validation: BusinessInvariantIsExpressed (business invariant is expressed) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: ACTIVE.
expression String [1] For a business invariant, the model records the expression or rule that governs expression. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Semantic validation: BusinessInvariantIsExpressed (business invariant is expressed) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: $.status == 'READY'.
violationSeverity Severity [1] For a business invariant, the model records the controlled classification or strategy represented by violation severity. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. The repository contains no direct EVL rule, ETL assignment, or artifact-generator read for this declared field. For now, it remains a model-level fact for review and future refinement. Exactly one of: INFO, WARNING, ERROR, CRITICAL, BLOCKER. Example: INFO.
expressionLanguage ExpressionLanguage [1] For a business invariant, the model records the controlled classification or strategy represented by expression language. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. The repository contains no direct EVL rule, ETL assignment, or artifact-generator read for this declared field. For now, it remains a model-level fact for review and future refinement. Exactly one of: NATURAL_LANGUAGE, OCL, FEEL, JSONPATH, JSONATA, JAVASCRIPT, TYPESCRIPT, PYTHON, SQL, REGEX, OTHER. Example: NATURAL_LANGUAGE.

Relationships

Relationship Kind and multiplicity Meaning in the model
expressionModelExpression containment, [?] Contains the expression element(s) that make up this business invariant; the contained objects belong to this model element.
constrainedConceptsDomainConcept reference, [*] References the domain concept element(s) used as constrained concepts by this business invariant; the target may be shared elsewhere in the model.

InformationItem

Represents information item in the CIM vocabulary. It specializes TraceableElement with the details needed for this modeling concern.

Direct supertypes: TraceableElement. Inherited attributes and marker capabilities are documented in the shared kernel; this section lists every attribute declared by this class.

Declared attributes

Attribute Type and multiplicity What it captures and why it exists Accepted values and example
businessName String [1] The domain-facing name of the information, distinct from a generated field name. It keeps schemas and storage designs understandable to business reviewers. Semantic validation: UniqueChildNames (unique child names) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. InformationItemHasBusinessName (information item has business name) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: InformationItemExample.
required Boolean [1] Whether the business considers the information necessary for a valid instance or message. It becomes a required-field decision in contracts and persistence mappings. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/contracts.eol. The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/values.eol. Either true or false. Example: true.
collection Boolean [1] Whether one occurrence or a set of occurrences is expected. This changes the shape of generated schema fields and the way transformations construct nested data. Semantic validation: PersonalOrSensitiveInformationHasPrivacyConstraint (personal or sensitive information has privacy constraint) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. CollectionInformationHasMultiplicity (collection information has multiplicity) in mde/validation/cim/rules/domain-data.evl the flag must be enabled for this rule to pass. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/iam.eol. Either true or false. Example: false.
example String [1] A representative business value used to clarify format and meaning; it is illustrative data, not a default or a secret. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/awspsm2artifacts.egx. The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/paths.eol. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Information Item Example.
allowedValues String [*] The finite vocabulary accepted for the item when free text would permit invalid domain states. CIM-to-PIM can use it to construct enum-like contract fields. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/templates/infrastructure/sam-template.egl. A collection of values. Example: [READY, READY-2].
formatHint String [1] A format qualification such as ISO date, currency scale, or identifier convention that primitive type alone cannot express. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Information Item Format Hint.
minValue String [1] The lower business boundary for numeric, temporal, or ordered values; it turns a narrative rule into a checkable constraint. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: READY.
maxValue String [1] The upper business boundary, used alongside minValue to prevent values that are technically well-typed but invalid for the domain. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: READY.
minLength Integer [1] The shortest permitted textual or collection representation, useful for identifiers, descriptions, and bounded payloads. Semantic validation: LengthBoundsAreConsistent (length bounds are consistent) in mde/validation/cim/rules/domain-data.evl the related value or object must be explicitly provided. A numeric Integer value; use the unit or boundary documented for this attribute. Example: 1.
maxLength Integer [1] The largest permitted textual or collection representation, protecting contracts and storage from unbounded business input. Semantic validation: LengthBoundsAreConsistent (length bounds are consistent) in mde/validation/cim/rules/domain-data.evl the related value or object must be explicitly provided. A numeric Integer value; use the unit or boundary documented for this attribute. Example: 1.
pattern String [1] A regular-expression shape for values such as codes, identifiers, or normalized strings. It captures syntax while businessValidationRule carries richer semantics. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/cfn.eol. The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/validation.eol. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: ^[A-Z]{2}-[0-9]{6}$.
unit String [1] The unit attached to a numeric quantity, such as EUR, seconds, kilograms, or percent, so downstream calculations do not treat a naked number as self-explanatory. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: milliseconds.
businessValidationRule String [1] The domain rule that primitive typing and simple bounds cannot express. It is a prompt for semantic validation or a deliberate manual decision during refinement. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: amount must be greater than zero.
derived Boolean [1] Whether the value is calculated from other information rather than independently entered or stored. The derivation must be explained so persistence and contract generation do not duplicate authority. Semantic validation: CollectionInformationHasMultiplicity (collection information has multiplicity) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. DerivedInformationHasDerivationRule (derived information has derivation rule) in mde/validation/cim/rules/domain-data.evl the flag must be enabled for this rule to pass. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/templates/lambda/go-handler.egl. The artifact generator references this feature in mde/generation/awspsm-to-artifacts/templates/tests/fixtures-readme.egl. Either true or false. Example: false.
derivationRule String [1] How a derived value is calculated and from which facts. It preserves the formula or business reasoning needed to reproduce the value in PIM. Semantic validation: DerivedInformationHasDerivationRule (derived information has derivation rule) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: $.status == 'READY'.
sourceOfTruth String [1] The system, process, or concept that owns the authoritative value. It prevents multiple generated components from silently becoming competing writers. Semantic validation: SearchOrReportItemHasSourceOfTruth (search or report item has source of truth) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Information Item Source Of Truth.
externallyShared Boolean [1] Whether the data crosses the domain boundary. This flag brings contract, privacy, security, and compatibility concerns into the model before implementation. Either true or false. Example: false.
auditRelevant Boolean [1] Whether creation, change, or access should be attributable for audit purposes, independent of whether the item is personally identifiable. Either true or false. Example: true.
searchRelevant Boolean [1] Whether the item participates in user search or lookup behavior, informing access patterns and index candidates later in PIM. Semantic validation: SearchOrReportItemHasSourceOfTruth (search or report item has source of truth) in mde/validation/cim/rules/domain-data.evl the flag must be enabled for this rule to pass. Either true or false. Example: false.
reportingRelevant Boolean [1] Whether the item is needed for reporting or analytical views, which may require retention, projection, or read-model treatment. Semantic validation: SearchOrReportItemHasSourceOfTruth (search or report item has source of truth) in mde/validation/cim/rules/domain-data.evl the flag must be enabled for this rule to pass. Either true or false. Example: false.
retentionRelevant Boolean [1] Whether retention or deletion policy must explicitly account for the item rather than inheriting a generic data-store default. Either true or false. Example: false.
type PrimitiveBusinessType [1] The business primitive used to classify the item before a provider-independent field type is chosen. It is the first step in transforming domain information into schemas and data models. Semantic validation: StructuredItemsUseObjectOrList (structured items use object or list) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. UniqueChildNames (unique child names) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/cfn.eol. The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/contracts.eol. Exactly one of: TEXT, NUMBER, INTEGER, DECIMAL, BOOLEAN, DATE, TIME, DATETIME, MONEY, EMAIL, PHONE, ADDRESS, IDENTIFIER, ENUMERATION, OBJECT, LIST, DOCUMENT, BINARY. Example: TEXT.

Relationships

Relationship Kind and multiplicity Meaning in the model
cardinalityMultiplicity containment, [?] Contains the multiplicity element(s) that make up this information item; the contained objects belong to this model element.
subItemsInformationItem containment, [*]; opposite parent Contains the information item element(s) that make up this information item; the contained objects belong to this model element.
parentInformationItem reference; read-only, [?]; opposite subItems References the information item element(s) used as parent by this information item; the target may be shared elsewhere in the model.
classificationDataClassification reference, [?] References the data classification element(s) used as classification by this information item; the target may be shared elsewhere in the model.
privacyConstraintsPrivacyConstraint reference, [*]; opposite dataItems References the privacy constraint element(s) used as privacy constraints by this information item; the target may be shared elsewhere in the model.
complianceConstraintsComplianceConstraint reference, [*] References the compliance constraint element(s) used as compliance constraints by this information item; the target may be shared elsewhere in the model.

DataClassification

Represents data classification in the CIM vocabulary. It specializes TraceableElement with the details needed for this modeling concern.

Direct supertypes: TraceableElement. Inherited attributes and marker capabilities are documented in the shared kernel; this section lists every attribute declared by this class.

Declared attributes

Attribute Type and multiplicity What it captures and why it exists Accepted values and example
confidentialityLevel String [1] The access sensitivity assigned by the organization, distinct from the item's business type. It drives who may view or operate on the information. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: INFO.
regulatoryCategory String [1] The legal or policy category that makes the data subject to special controls, such as health, financial, or regulated information. Semantic validation: RegulatedDataHasRegulatoryCategory (regulated data has regulatory category) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Data Classification Regulatory Category.
encryptionExpected Boolean [1] Whether confidentiality requires encryption at rest or in transit. PIM and PSM security policies use this intent when selecting storage and key controls. Semantic validation: SensitiveDataRequiresProtectionExpectation (sensitive data requires protection expectation) in mde/validation/cim/rules/domain-data.evl the flag must be enabled for this rule to pass. Transformation role: ETL rule DataClassification2DataProtectionPolicy in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataClassification. Either true or false. Example: false.
maskingExpected Boolean [1] Whether ordinary displays, logs, or support views must hide part of the value. It protects sensitive data even when access is otherwise authorized. Transformation role: ETL rule DataClassification2DataProtectionPolicy in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataClassification. Either true or false. Example: false.
minimizationRequired Boolean [1] Whether the system should collect or retain only the smallest useful amount of this data, making privacy a modeling constraint rather than a documentation afterthought. Either true or false. Example: true.
consentRequired Boolean [1] Whether processing depends on explicit data-subject consent, which affects workflow, authorization, and deletion handling. Either true or false. Example: true.
auditAccessRequired Boolean [1] Whether reads as well as writes must be auditable, important for sensitive records where access itself is regulated. Semantic validation: SensitiveDataRequiresProtectionExpectation (sensitive data requires protection expectation) in mde/validation/cim/rules/domain-data.evl the flag must be enabled for this rule to pass. Transformation role: ETL rule DataClassification2DataProtectionPolicy in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataClassification. Either true or false. Example: true.
deletionRightApplies Boolean [1] Whether a data-subject deletion right applies. This is a lifecycle obligation that can require a cross-store erasure design. Transformation role: ETL rule DataClassification2DataProtectionPolicy in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataClassification. Either true or false. Example: false.
classificationRationale String [1] The reasoning behind the classification and controls. It lets reviewers challenge an overly broad or weak sensitivity decision with evidence. Semantic validation: RegulatedDataHasRegulatoryCategory (regulated data has regulatory category) in mde/validation/cim/rules/domain-data.evl the value must be present and non-blank. Transformation role: ETL rule DataClassification2DataProtectionPolicy in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataClassification. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: The choice protects the business outcome while keeping the design independently deployable..
kind DataKind [1] The business sensitivity category, such as personal, financial, health, or authentication secret, used to select the relevant governance policies. Semantic validation: DataClassificationHasKind (data classification has kind) in mde/validation/cim/rules/domain-data.evl the related value or object must be explicitly provided. SensitiveDataRequiresProtectionExpectation (sensitive data requires protection expectation) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. Transformation role: ETL rule DataClassification2DataProtectionPolicy in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataClassification. Exactly one of: PUBLIC, INTERNAL, CONFIDENTIAL, PERSONAL, SENSITIVE_PERSONAL, FINANCIAL, HEALTH, AUTHENTICATION_SECRET, REGULATED. Example: PUBLIC.
identifiability Identifiability [1] How directly the information identifies a person. It separates anonymous, pseudonymous, indirect, and direct identification for privacy analysis. Semantic validation: SensitiveDataRequiresProtectionExpectation (sensitive data requires protection expectation) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. PersonalDataHasIdentifiability (personal data has identifiability) in mde/validation/cim/rules/domain-data.evl the feature participates in a semantic validation condition. Transformation role: ETL rule DataClassification2DataProtectionPolicy in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataClassification. Exactly one of: NON_PERSONAL, PSEUDONYMOUS, DIRECTLY_IDENTIFYING, INDIRECTLY_IDENTIFYING, ANONYMOUS. Example: NON_PERSONAL.

Relationships

This class declares no direct relationships.