Skip to content

Stores, data models, and access patterns

Data concepts capture storage intent, data shapes, change streams, indexes, access patterns, and the link between reads/writes and compute.

Source: mde/metamodels/pim/pim-data.emf.

StorageElement

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

Direct supertypes: TraceableElement, DeployableElement, FlowEndpoint, PolicyTarget, ProtectedResource, DataAccessTarget, ConfigurableElement. 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
persistent Boolean [1] For a storage element, the model records whether persistent applies. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Semantic validation: SensitiveStorageMustBeEncrypted (sensitive storage must be encrypted) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. PersistentStorageShouldHaveRetentionPolicy (persistent storage should have retention policy) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. Either true or false. Example: false.
encrypted Boolean [1] Records whether encrypted applies to storage element. It preserves an explicit architectural or governance decision through review and transformation, so later steps do not have to infer it. Semantic validation: SensitiveStorageMustBeEncrypted (sensitive storage must be encrypted) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. Either true or false. Example: false.
containsPersonalData Boolean [1] For a storage element, the model records the data-sensitivity classification for contains personal data. 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.

Relationships

Relationship Kind and multiplicity Meaning in the model
serviceServerlessService reference; read-only, [1]; opposite stores References the serverless service element(s) used as service by this storage element; the target may be shared elsewhere in the model.
retentionPolicyRetentionPolicy reference, [?] References the retention policy element(s) used as retention policy by this storage element; the target may be shared elsewhere in the model.
backupPolicyBackupPolicy reference, [?] References the backup policy element(s) used as backup policy by this storage element; the target may be shared elsewhere in the model.
dataProtectionPoliciesDataProtectionPolicy reference, [*] References the data protection policy element(s) used as data protection policies by this storage element; the target may be shared elsewhere in the model.

DataStore

Represents data store in the PIM vocabulary. It specializes StorageElement, RoutingTarget, SubscriptionTarget with the details needed for this modeling concern.

Direct supertypes: StorageElement, RoutingTarget, SubscriptionTarget. 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
transactional Boolean [1] Records whether transactional applies to data store. The field records an explicit architectural or governance decision as an explicit, reviewable input. Semantic validation: DataStoreHasAccessPattern (data store has access pattern) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. TransactionalStoreNeedsTransactionalConsistency (transactional store needs transactional consistency) in mde/validation/pim/rules/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 DataStore. Either true or false. Example: false.
readOptimized Boolean [1] For a data store, the model records whether read optimized applies. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataStore. Either true or false. Example: false.
writeOptimized Boolean [1] Records whether write optimized applies to data store. This keeps the decision explicit even when the element's class or relationships remain unchanged. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataStore. Either true or false. Example: false.
appendOnly Boolean [1] Records whether append only applies to data store. It preserves an explicit architectural or governance decision through review and transformation, so later steps do not have to infer it. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataStore. Either true or false. Example: false.
changeStreamRequired Boolean [1] Records whether change stream required applies to data store. The field records an explicit architectural or governance decision as an explicit, reviewable input. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataStore. ETL rule DataStore2DynamoDbTable in mde/transformations/pim-to-awspsm/data-messaging-events.etl reads or derives this feature while refining DataStore. Either true or false. Example: true.
pointInTimeRecoveryRequired Boolean [1] Records whether point in time recovery required applies to data store. This keeps the decision explicit even when the element's class or relationships remain unchanged. Semantic validation: SourceOfTruthShouldHavePitrOrBackup (source of truth should have pitr or backup) in mde/validation/pim/rules/data.evl the related value or object must be explicitly provided. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataStore. ETL rule DataStore2DynamoDbTable in mde/transformations/pim-to-awspsm/data-messaging-events.etl assigns or materializes this feature while refining DataStore. Either true or false. Example: true.
expectedDataVolume String [1] Records the expected data volume value for the data store. This keeps the decision explicit even when the element's class or relationships remain unchanged. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataStore. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Data Store Expected Data Volume.
expectedAccessRate String [1] Records the expected access rate value for the data store. This keeps the decision explicit even when the element's class or relationships remain unchanged. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataStore. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Data Store Expected Access Rate.
storeKind StoreKind [1] Stores the controlled classification or strategy represented by store kind on the data store. The field keeps the model explicit and reviewable during review and transformation instead of leaving the decision to an inferred default. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataStore. ETL rule DataStore2DynamoDbTable in mde/transformations/pim-to-awspsm/data-messaging-events.etl assigns or materializes this feature while refining DataStore. Exactly one of: KEY_VALUE, DOCUMENT, RELATIONAL, GRAPH, SEARCH, TIME_SERIES, CACHE, OBJECT. Example: KEY_VALUE.
consistencyNeed ConsistencyNeed [1] Records controlled classification or strategy represented by consistency need for data store. It keeps this decision explicit during review and transformation, so later steps do not have to infer it. Semantic validation: TransactionalStoreNeedsTransactionalConsistency (transactional store needs transactional consistency) in mde/validation/pim/rules/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 DataStore. Exactly one of: EVENTUAL, STRONG, TRANSACTIONAL, READ_YOUR_WRITES. Example: EVENTUAL.

Relationships

Relationship Kind and multiplicity Meaning in the model
ownedDataModelsDataModel containment, [*]; opposite dataStore Contains the data model element(s) that make up this data store; the contained objects belong to this model element.
accessPatternsAccessPattern containment, [*]; opposite dataStore Contains the access pattern element(s) that make up this data store; the contained objects belong to this model element.
indexCandidatesIndexCandidate containment, [*]; opposite dataStore Contains the index candidate element(s) that make up this data store; the contained objects belong to this model element.
changeStreamDataChangeStream containment, [?]; opposite dataStore Contains the data change stream element(s) that make up this data store; the contained objects belong to this model element.

DataChangeStream

Represents data change stream in the PIM vocabulary. It specializes TraceableElement, DeployableElement, InvocationSource, EventCarrier, FlowEndpoint, PolicyTarget with the details needed for this modeling concern.

Direct supertypes: TraceableElement, DeployableElement, InvocationSource, EventCarrier, FlowEndpoint, PolicyTarget. 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
enabled Boolean [1] Records whether enabled applies to data change stream. 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. Either true or false. Example: true.
orderingRequirement OrderingRequirement [1] Records the precedence value for ordering requirement for the data change stream. 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: NONE, PER_KEY, GLOBAL. Example: NONE.
deliverySemantics DeliverySemantics [1] Records the controlled classification or strategy for delivery semantics in the data change stream. 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: AT_MOST_ONCE, AT_LEAST_ONCE, EFFECTIVELY_ONCE_WITH_IDEMPOTENCY, EXACTLY_ONCE_REQUIRED. Example: AT_MOST_ONCE.

Relationships

Relationship Kind and multiplicity Meaning in the model
dataStoreDataStore reference; read-only, [1]; opposite changeStream References the data store element(s) used as data store by this data change stream; the target may be shared elsewhere in the model.
emittedEventsEventType reference, [*] References the event type element(s) used as emitted events by this data change stream; the target may be shared elsewhere in the model.

ObjectStore

Represents object store in the PIM vocabulary. It specializes StorageElement, InvocationSource, RoutingTarget, SubscriptionTarget, EventCarrier with the details needed for this modeling concern.

Direct supertypes: StorageElement, InvocationSource, RoutingTarget, SubscriptionTarget, EventCarrier. 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
objectTypes String [*] For a object store, the model records the object types value. 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. A collection of values. Example: [BUSINESS, BUSINESS-2].
versioningRequired Boolean [1] Records compatibility/version marker for versioning required for object store. It keeps compatibility and contract evolution explicit during review and transformation, so later steps do not have to infer it. Semantic validation: VersionedObjectStoreShouldHaveLifecycleDecision (versioned object store should have lifecycle decision) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. Transformation role: ETL rule ObjectStore2S3Bucket in mde/transformations/pim-to-awspsm/data-messaging-events.etl reads or derives this feature while refining ObjectStore. Either true or false. Example: true.
lifecyclePolicyRequired Boolean [1] Records whether lifecycle policy required applies to object store. It preserves an explicit architectural or governance decision through review and transformation, so later steps do not have to infer it. Semantic validation: VersionedObjectStoreShouldHaveLifecycleDecision (versioned object store should have lifecycle decision) in mde/validation/pim/rules/data.evl the value must be present and non-blank. Transformation role: ETL rule ObjectStore2S3Bucket in mde/transformations/pim-to-awspsm/data-messaging-events.etl reads or derives this feature while refining ObjectStore. Either true or false. Example: true.
eventNotificationRequired Boolean [1] Records whether event notification required applies to object store. The field records an explicit architectural or governance decision as an explicit, reviewable input. Semantic validation: ObjectStoreWithEventsShouldDeclareEventTypes (object store with events should declare event types) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. Transformation role: ETL rule ObjectStore2S3Bucket in mde/transformations/pim-to-awspsm/data-messaging-events.etl assigns or materializes this feature while refining ObjectStore. ETL rule ObjectStore2S3Bucket in mde/transformations/pim-to-awspsm/data-messaging-events.etl reads or derives this feature while refining ObjectStore. Either true or false. Example: true.
maxObjectSize String [1] For a object store, the model records the max object size value. 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. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Object Store Max Object Size.

Relationships

Relationship Kind and multiplicity Meaning in the model
notificationRulesObjectNotificationRule containment, [*]; opposite objectStore Contains the object notification rule element(s) that make up this object store; the contained objects belong to this model element.
objectMetadataSchemasSchema reference, [*] References the schema element(s) used as object metadata schemas by this object store; the target may be shared elsewhere in the model.
emittedEventsEventType reference, [*] References the event type element(s) used as emitted events by this object store; the target may be shared elsewhere in the model.

ObjectNotificationRule

Represents object notification rule in the PIM 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
eventTypes String [*] Records the event types value for object notification rule. It keeps this decision explicit during review and transformation, so later steps do not have to infer it. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/cfn.eol. A collection of values. Example: [BUSINESS, BUSINESS-2].
filterPrefix String [1] Stores the filter prefix value on the object notification rule. The field keeps the model explicit and reviewable during review and transformation instead of leaving the decision to an inferred default. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/cfn.eol. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Object Notification Rule Filter Prefix.
filterSuffix String [1] Records the filter suffix value for object notification rule. It keeps this decision explicit during review and transformation, so later steps do not have to infer it. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/cfn.eol. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Object Notification Rule Filter Suffix.

Relationships

Relationship Kind and multiplicity Meaning in the model
objectStoreObjectStore reference; read-only, [1]; opposite notificationRules References the object store element(s) used as object store by this object notification rule; the target may be shared elsewhere in the model.
emittedEventsEventType reference, [*] References the event type element(s) used as emitted events by this object notification rule; the target may be shared elsewhere in the model.
targetsRoutingTarget reference, [*] References the routing target element(s) used as targets by this object notification rule; the target may be shared elsewhere in the model.

DataModel

Represents data model in the PIM vocabulary. It specializes TraceableElement, FlowEndpoint, PolicyTarget with the details needed for this modeling concern.

Direct supertypes: TraceableElement, FlowEndpoint, PolicyTarget. 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
aggregateRef String [1] Records the aggregate ref value for the data model. This keeps the decision explicit even when the element's class or relationships remain unchanged. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataModel. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Data Model Aggregate Ref.
ownershipBoundary String [1] Stores the accountable person, team, or identity for ownership boundary on the data model. The field records accountability and access review as an explicit, reviewable input. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataModel. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: orders-team.
sourceOfTruth Boolean [1] For a data model, the model records the origin/source selected for source of truth. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Semantic validation: SourceOfTruthCannotBeReadModel (source of truth cannot be read model) in mde/validation/pim/rules/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 DataModel. Either true or false. Example: false.
readModel Boolean [1] For a data model, the model records whether read model applies. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Semantic validation: SourceOfTruthCannotBeReadModel (source of truth cannot be read model) in mde/validation/pim/rules/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 DataModel. Either true or false. Example: false.
auditRequired Boolean [1] Records whether audit required applies to data model. This keeps the decision explicit even when the element's class or relationships remain unchanged. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataModel. Either true or false. Example: true.
dataModelKind SchemaKind [1] For a data model, the model records the controlled classification or strategy represented by data model kind. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Transformation role: ETL rule Aggregate2DataStore in mde/transformations/cim-to-pim/domain-data.etl assigns or materializes this feature while refining DataModel. Exactly one of: REQUEST, RESPONSE, ERROR, EVENT, MESSAGE, ENTITY, VALUE_OBJECT, READ_MODEL, CONFIGURATION. Example: REQUEST.

Relationships

Relationship Kind and multiplicity Meaning in the model
storageFieldsDataField containment, [*]; opposite dataModel Contains the data field element(s) that make up this data model; the contained objects belong to this model element.
dataStoreDataStore reference; read-only, [1]; opposite ownedDataModels References the data store element(s) used as data store by this data model; the target may be shared elsewhere in the model.
schemaSchema reference, [1] References the schema element(s) used as schema by this data model; the target may be shared elsewhere in the model.
accessPatternsAccessPattern reference, [*] References the access pattern element(s) used as access patterns by this data model; the target may be shared elsewhere in the model.

DataField

Represents data field in the PIM 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
identifier Boolean [1] Records whether identifier applies to data field. It preserves an explicit architectural or governance decision through review and transformation, so later steps do not have to infer it. Semantic validation: SensitiveDataFieldIsClassified (sensitive data field is classified) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. IdentifierFieldShouldBeRequired (identifier field should be required) in mde/validation/pim/rules/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. Either true or false. Example: false.
partitionKeyCandidate Boolean [1] Records whether partition key candidate applies to data field. 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.
sortKeyCandidate Boolean [1] For a data field, the model records whether sort key candidate 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.
indexedCandidate Boolean [1] For a data field, the model records whether indexed candidate 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.
required Boolean [1] Records whether required applies to data field. This keeps the decision explicit even when the element's class or relationships remain unchanged. Semantic validation: SensitiveDataFieldIsClassified (sensitive data field is classified) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. IdentifierFieldShouldBeRequired (identifier field should be required) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. Either true or false. Example: true.
personalData Boolean [1] For a data field, the model records the data-sensitivity classification for personal data. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Semantic validation: SensitiveDataFieldIsClassified (sensitive data field is classified) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. Either true or false. Example: false.
sensitiveData Boolean [1] Stores the data-sensitivity classification for sensitive data on the data field. The field records privacy, encryption, and access decisions as an explicit, reviewable input. Semantic validation: SensitiveDataFieldIsClassified (sensitive data field is classified) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. Either true or false. Example: false.
classification String [1] Stores the data-sensitivity classification for classification on the data field. The field records privacy, encryption, and access decisions as an explicit, reviewable input. Semantic validation: SensitiveDataFieldIsClassified (sensitive data field is classified) in mde/validation/pim/rules/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.
storageName String [1] For a data field, the model records the stable name/key/code used for storage name. 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. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: DataFieldExample.
fieldType FieldType [1] For a data field, the model records the controlled classification or strategy represented by field type. 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: STRING, INTEGER, NUMBER, BOOLEAN, DATE, TIME, DATETIME, OBJECT, ARRAY, ENUM, BINARY, MONEY, UUID, EMAIL, URI, MAP, UNION. Example: STRING.

Relationships

Relationship Kind and multiplicity Meaning in the model
dataModelDataModel reference; read-only, [1]; opposite storageFields References the data model element(s) used as data model by this data field; the target may be shared elsewhere in the model.

AccessPattern

Represents access pattern in the PIM 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
patternName String [1] Records the validation pattern for pattern name for the access pattern. This keeps the decision explicit even when the element's class or relationships remain unchanged. Transformation role: ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl assigns or materializes this feature while refining AccessPattern. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: ^[A-Z][A-Za-z0-9_-]*$.
queryBy String [1] Records the query by value for access pattern. It keeps this decision explicit during review and transformation, so later steps do not have to infer it. Semantic validation: AccessPatternNamesQueryShape (access pattern names query shape) in mde/validation/pim/rules/data.evl the rule's diagnostic or remediation guidance refers to this feature. Transformation role: ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl assigns or materializes this feature while refining AccessPattern. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Access Pattern Query By.
sortBy String [1] Records the sort by value for the access pattern. This keeps the decision explicit even when the element's class or relationships remain unchanged. Semantic validation: AccessPatternNamesQueryShape (access pattern names query shape) in mde/validation/pim/rules/data.evl the rule's diagnostic or remediation guidance refers to this feature. Transformation role: ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl assigns or materializes this feature while refining AccessPattern. 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. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Access Pattern Sort By.
filterBy String [1] Records the filter by value for access pattern. It keeps this decision explicit during review and transformation, so later steps do not have to infer it. Semantic validation: AccessPatternNamesQueryShape (access pattern names query shape) in mde/validation/pim/rules/data.evl the rule's diagnostic or remediation guidance refers to this feature. Transformation role: ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl assigns or materializes this feature while refining AccessPattern. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Access Pattern Filter By.
projection String [1] Records the projection value for access pattern. It keeps this decision explicit during review and transformation, so later steps do not have to infer it. Semantic validation: AccessPatternNamesQueryShape (access pattern names query shape) in mde/validation/pim/rules/data.evl the rule's diagnostic or remediation guidance refers to this feature. Transformation role: ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl assigns or materializes this feature while refining AccessPattern. Generation role: The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/cfn.eol. A free-form String, subject to this class's semantic meaning and any EVL constraints. Example: Access Pattern Projection.
highCardinality Boolean [1] For a access pattern, the model records whether high cardinality applies. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Semantic validation: HighFrequencyAccessPatternShouldHaveIndex (high frequency access pattern should have index) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. Transformation role: ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl assigns or materializes this feature while refining AccessPattern. ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl reads or derives this feature while refining AccessPattern. Either true or false. Example: false.
highFrequency Boolean [1] Records whether high frequency applies to access pattern. The field records an explicit architectural or governance decision as an explicit, reviewable input. Semantic validation: HighFrequencyAccessPatternShouldHaveIndex (high frequency access pattern should have index) in mde/validation/pim/rules/data.evl the feature participates in a semantic validation condition. Transformation role: ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl assigns or materializes this feature while refining AccessPattern. Either true or false. Example: false.
stronglyConsistentReadRequired Boolean [1] Records whether strongly consistent read required applies to access pattern. It preserves an explicit architectural or governance decision through review and transformation, so later steps do not have to infer it. Transformation role: ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl assigns or materializes this feature while refining AccessPattern. Either true or false. Example: true.
transactionalWriteRequired Boolean [1] Records whether transactional write required applies to access pattern. This keeps the decision explicit even when the element's class or relationships remain unchanged. Transformation role: ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl assigns or materializes this feature while refining AccessPattern. Either true or false. Example: true.
expectedItemsReturned Integer [1] Records the expected items returned value for access pattern. It keeps an operational boundary that should not be left to provider defaults explicit during review and transformation, so later steps do not have to infer it. Transformation role: ETL rule Query2AccessPattern in mde/transformations/cim-to-pim/behavior-contracts.etl assigns or materializes this feature while refining AccessPattern. A numeric Integer value; use the unit or boundary documented for this attribute. Example: 1.
latencyTargetMs String [1] Records the destination selected for latency target ms for the access pattern. 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: Access Pattern Latency Target Ms.
operation DataAccessMode [1] Records controlled classification or strategy represented by operation for access pattern. It keeps this decision explicit during review and transformation, so later steps do not have to infer it. Semantic validation: AccessPatternOperationDefined (access pattern operation defined) in mde/validation/pim/rules/data.evl the related value or object must be explicitly provided. AccessPatternNamesQueryShape (access pattern names query shape) in mde/validation/pim/rules/data.evl the rule's diagnostic or remediation guidance refers to this feature. 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/cfn.eol. Exactly one of: READ, WRITE, READ_WRITE, APPEND, DELETE. Example: READ.
accessPatternKind AccessPatternKind [1] Stores the validation pattern for access pattern kind on the access pattern. The field records input/schema validation 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. Exactly one of: GET_BY_ID, QUERY_BY_KEY, SCAN_FILTERED, SEARCH_TEXT, AGGREGATE_REPORT, WRITE_COMMAND, APPEND_EVENT. Example: GET_BY_ID.

Relationships

Relationship Kind and multiplicity Meaning in the model
dataStoreDataStore reference; read-only, [1]; opposite accessPatterns References the data store element(s) used as data store by this access pattern; the target may be shared elsewhere in the model.
usedByFunctionsFunctionTarget reference, [*] References the function target element(s) used as used by functions by this access pattern; the target may be shared elsewhere in the model.
exposedByRoutesRouteEndpoint reference, [*] References the route endpoint element(s) used as exposed by routes by this access pattern; the target may be shared elsewhere in the model.

IndexCandidate

Represents index candidate in the PIM 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
indexPurpose String [1] Records the human explanation of index purpose for the index candidate. 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: Reserve inventory for a confirmed order..
partitionKeyField String [1] For a index candidate, the model records the data location or endpoint represented by partition key field. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Semantic validation: ProductionIndexSupportsAccessPattern (production index supports access pattern) in mde/validation/pim/rules/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.
sortKeyField String [1] Stores the data location or endpoint represented by sort key field on the index candidate. The field keeps the model explicit and reviewable during review and transformation instead of leaving the decision to an inferred default. 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: orderId.
projectionFields String [*] Records the projection fields value for index candidate. It keeps this decision explicit during review and transformation, so later steps do not have to infer it. 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 collection of values. Example: [Index Candidate Projection Fields, Index Candidate Projection Fields-2].
unique Boolean [1] For a index candidate, the model records whether unique applies. 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/sam.eol. The artifact generator references this feature in mde/generation/awspsm-to-artifacts/lib/validation.eol. Either true or false. Example: false.
requiredForProduction Boolean [1] For a index candidate, the model records whether required for production applies. Keeping the fact with its owning element lets validation and refinement inspect it before artifact generation. Semantic validation: ProductionIndexSupportsAccessPattern (production index supports access pattern) in mde/validation/pim/rules/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/trace.eol. The artifact generator references this feature in mde/generation/awspsm-to-artifacts/templates/docs/generation-report.egl. Either true or false. Example: true.

Relationships

Relationship Kind and multiplicity Meaning in the model
dataStoreDataStore reference; read-only, [1]; opposite indexCandidates References the data store element(s) used as data store by this index candidate; the target may be shared elsewhere in the model.
supportsAccessPatternsAccessPattern reference, [*] References the access pattern element(s) used as supports access patterns by this index candidate; the target may be shared elsewhere in the model.

DataAccess

Represents data access in the PIM 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
transactional Boolean [1] Records whether transactional applies to data access. 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. Either true or false. Example: false.
purpose String [1] Stores the human explanation of purpose on the data access. The field keeps the model explicit and reviewable during review and transformation instead of leaving the decision to an inferred default. Semantic validation: GeneratesOrReferencesPermission (generates or references permission) in mde/validation/pim/rules/data.evl the value must be present and non-blank. DataAccessHasPurpose (data access has purpose) in mde/validation/pim/rules/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: Reserve inventory for a confirmed order..
mode DataAccessMode [1] Records controlled classification or strategy represented by mode for data access. It keeps this decision explicit during review and transformation, so later steps do not have to infer it. Semantic validation: DataAccessConsistentWithFunctionRefs (data access consistent with function refs) in mde/validation/pim/rules/data.evl the value participates in a membership or uniqueness check. 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. Exactly one of: READ, WRITE, READ_WRITE, APPEND, DELETE. Example: READ.

Relationships

Relationship Kind and multiplicity Meaning in the model
functionFunctionTarget reference, [1] References the function target element(s) used as function by this data access; the target may be shared elsewhere in the model.
storeStorageElement reference, [1] References the storage element element(s) used as store by this data access; the target may be shared elsewhere in the model.
dataModelsDataModel reference, [*] References the data model element(s) used as data models by this data access; the target may be shared elsewhere in the model.
accessPatternsAccessPattern reference, [*] References the access pattern element(s) used as access patterns by this data access; the target may be shared elsewhere in the model.