> 译文仅供阅读便利。具有规范效力的是英文原文。 # MMAS-Core **元宇宙规范** **文档编号:** MU-V2-ARCH-001 **标题:** 元模型架构标准 - 核心架构 **文档类别:** 规范性 **版本:** 2.0(草案) **状态:** 工作草案 **规范性引用:** 元宇宙宪章(MUC)、Versioning、Naming-Conventions、Validation、MMAS-Package、MMAS-Conformance **说明性引用:** 元宇宙联邦协议(MUFP) **版权:** © Orkestron.AI **许可:** Apache-2.0 --- # 1. 目的 本文档定义元宇宙生态中每一个元模型都必须遵循的基础架构构件。 MMAS-Core 确立一套共同的语义架构,使彼此独立的元模型既能自主演进,又能保持互操作。 MMAS-Core 并不只是构件的目录。它定义了唯一的架构**组合模型**:一条正典层级,规定每个语义原语如何嵌套进下一层,从整个元模型一直向下到单个属性、关系、事件、契约与投影,再向上回到描述这一组合的清单。正如 UML 定义了构筑任何模型所用的核心建模构件,MMAS-Core 定义了构筑元宇宙中任何元模型所用的核心组合构件。版本管理、校验、打包与合规都引用这唯一的模型,而不是各自另立一套。 MMAS-Core 扩展元宇宙宪章(MUC)。 --- # 2. 适用范围 本规范适用于任何声明 MMAS 合规的元模型,无论其领域、实现技术或存储机制为何。 --- # 3. 架构原则 每个元模型都必须: - 符合元宇宙宪章; - 描述语义而非实现; - 保持稳定的身份; - 把模式与实例数据分开; - 支持联邦; - 支持演进; - 保持机器可读与人可读。 --- # 4. 组合层级 MMAS-Core 定义唯一一条正典的组合层级。每个元模型都必须能够表达为下述概念的严格嵌套,并且每一个合规的工具、校验器与联邦代理都必须对该层级作出相同的解释。 该层级自上而下读作包含,自下而上读作描述: - **元模型**包含一个或多个 **bundle**; - **bundle** 包含一个或多个**层**; - **层**包含一个或多个**对象**; - **对象**由**属性**描述,并由**关系**、**事件**、**契约**与**投影**加以连接、限定、演进与治理; - 整个组合由一份**清单**加以概括并使之可被发现。 ## 4.0.1 层级示意图(Mermaid) ```mermaid flowchart TD MM[Meta-Model] B[Bundles] L[Layers] O[Objects] P[Properties] R[Relationships] E[Events] C[Contracts] PR[Projections] MAN[Manifest] MM --> B B --> L L --> O O --> P O --> R O --> E O --> C O --> PR MM -.described by.-> MAN MAN -.summarizes.-> B ``` ## 4.0.2 层级示意图(ASCII) ```text Meta-Model │ ├── Manifest .............. (describes & summarizes the whole composition) │ └── Bundles └── Layers └── Objects ├── Properties ...... what the object is ├── Relationships ... how it connects to other objects ├── Events .......... how it changes over time ├── Contracts ....... under which rules it may be used └── Projections ..... how it appears in a given context ``` 这条层级是 MMAS 的核心。它正是 [Versioning](Versioning.md) 所版本化、[Validation](Validation.md) 逐级校验、[MMAS-Package](MMAS-Package.md) 所打包、[MMAS-Conformance](MMAS-Conformance.md) 所衡量成熟度的那个结构。无法用这条层级表达的元模型就不符合 MMAS。 --- # 5. 核心构件 每个元模型都必须由以下架构概念组成,它们正是第 4 节所定义组合层级中具名的各层。 ## 5.1 元模型 元模型定义某一领域的语义结构。 元模型必须具备: - 唯一标识符; - 命名空间; - 版本; - 所有者; - 清单; - 兼容性声明。 --- ## 5.2 bundle bundle 把语义上相关的概念归为一组。 bundle 必须: - 只承担单一职责; - 尽量减少依赖; - 公布其导出的概念。 示例: - 身份 - 知识 - 治理 - 运行时 --- ## 5.3 层 层表示某个 bundle 内部一项连贯的语义关切。 层必须: - 单独看仍然可理解; - 避免职责重叠; - 公开稳定的标识符。 --- ## 5.4 对象 对象表示语义实体。 对象必须具备: - 身份; - 生命周期; - 所有权; - 溯源; - 可追溯性。 --- ## 5.5 属性 属性描述对象。 每个属性都应当声明: - 类型; - 基数; - 是否可选; - 出处; - 置信度(在适用时)。 --- ## 5.6 关系 关系连接对象。 关系必须显式定义: - 源; - 目标; - 语义含义; - 基数。 --- ## 5.7 事件 事件描述有意义的变化。 事件应当是不可变且可追溯的。事件原语在 [Event](../04-core-concepts/Event.md) 中有详细定义。 --- ## 5.8 投影 投影是对象在特定上下文中的表示。 投影不得重新定义对象身份。 --- ## 5.9 契约 契约定义治理交互、披露或联邦的语义协议。 --- ## 5.10 上下文 上下文决定语义如何被解释。 只要含义依赖于上下文,上下文就必须显式。 --- # 6. 公共模式 每个元模型都必须公开一份模式。 该模式必须描述结构,而不要求披露实例数据。 模式发现必须能够独立于数据访问而进行。 --- # 7. 模式与实例的分离 MMAS 区分: - 元模型(模式) - 实例(事实) 知识交换必须先从模式发现开始,然后才是实例披露。 --- # 8. 外部语义模型 元模型可以导入外部标准。 导入的概念必须保留指向以下内容的引用: - 来源标准; - 版本; - 命名空间。 本地扩展不得修改导入的语义。 相反,它们必须扩展这些语义。 --- # 9. 可扩展性 只要可行,元模型就必须通过扩展而不是修改来演进。 扩展必须: - 声明所有权; - 声明兼容性; - 保留既有语义。 --- # 10. 技术无关 MMAS 定义架构,而不是存储。 合规的实现可以使用: - Git 仓库; - 图数据库; - 关系数据库; - 文档存储; - API; - 知识图谱; - 事件流。 没有任何实现技术具有规范效力。 --- # 11. 架构不变量 每个符合 MMAS 的元模型都必须保留: - 身份; - 语义一致性; - 可追溯性; - 所有权; - 上下文; - 版本管理; - 联邦就绪度。 --- # 12. 与其他标准的关系 MMAS-Core 建立在 MUC 之上,并提供其余 MMAS 文档各自专门化的那个组合模型: - [Versioning](Versioning.md) 为该层级及其元素做版本管理; - [Naming Conventions](Naming-Conventions.md) 为该层级及其元素命名; - [Validation](Validation.md) 在 V0-V5 各级校验该层级; - [MMAS-Package](MMAS-Package.md) 把该层级打包以供分发; - [MMAS-Conformance](MMAS-Conformance.md) 在该层级之上衡量架构成熟度。 MUFP 定义联邦行为。 --- # 13. 未来方向 组合层级刻意保持有限且稳定,但它作为共享参照模型的角色,引出对一种专门的、机器可执行表达的需要。未来的**元宇宙图示语言(MUDL)**将把该层级及其实例的视觉与文本记法标准化,使本文档中的 Mermaid 与 ASCII 两种呈现成为同一部规范性图示标准的两个档案,而不再是示意性的例子。MUDL 将涵盖元素形状、包含语义、投影叠加与联邦视图,使工具能够确定性地绘制任何元模型,并把图示回转为 MMAS 结构。 --- # 结语 MMAS-Core 定义了元宇宙生态中构筑每一个元模型所用的共同架构语言。 各领域自身的语义则被刻意留给各个元模型。