OCL 语句的目标模型

当您编写“对象约束语言”(OCL)语句时,目标模型将确定 OCL 语句可以访问上下文元素的哪些功能部件。目标模型可以是用户模型或元模型。

用户模型

当您指定用户模型作为目标模型时,OCL 语句将仅用于上下文元素的用户定义的功能部件。并且,在这种情况下还不能对 OCL 语句进行求值。您此时只能对 OCL 语句进行语法分析以确保它们的语法正确。

例如,如果指定用户模型作为目标模型,并且选择类或接口作为上下文元素,则 OCL 语句将仅用于下列属性和操作:
  • 由该类或接口定义的属性
  • 由 OCL 定义的特定操作,例如,oclIsType()

元模型

当您指定元模型作为目标模型时,OCL 语句将对上下文元素的元模型功能部件以及应用于上下文元素的构造型提供的任何功能部件都具有访问权。另外,当目标模型是元模型时,可以对 OCL 语句进行语法分析以了解它们的语法是否正确,还可以对这些语句的输出进行求值。

例如,如果指定元模型作为目标模型,则 OCL 语句可以访问下列功能部件:
  • 在用于表示上下文元素的元类中定义的所有属性
  • 在应用于上下文元素的构造型中定义的属性
  • 由 OCL 定义的所有方法
相关任务
对 OCL 语句进行语法分析
对 OCL 语句求值
验证和浏览 UML 模型元素的特征

反馈