文章插图
step的层次组织结构三层中所对应的标準由三个不同的委员会负责制定 。每一层採用了不同的信息建模工具,套用层採用了IDEF0,IDEF1X,NIAM,EXPRESS;表达层则採用了EXPRESS 。式化定义语言EXPRESSEXPRESS是一种面向对象的非程式语言,用于信息建模,既能为人所理解,又能被计算机处理(通过EXPRESS编译程式) 。EXPRESS主要用来描述套用协定或集成资源中的产品数据,使描述规範化,它是STEP中数据模型的形式化描述工具 。EXPRESS语言採用模式(schema)作为描述数据模型的基础 。标準中每个套用协定,每种资源构件都由若干个模式组成 。每个模式内包含类型(type)说明、实体(entity)定义、规则(rule)、函式(function)和过程(procedure) 。实体是重点,实体由数据(data)和行为(behavior)定义,数据说明实体的性质,行为表示约束与操作 。作为一种形式化描述语言,EXPRESS吸收了Ada,C,C++,Modula 2,Pascal,PL/1,SQL多种语言的功能,有强大的描述信息模型的能力,但又不同于程式语言,不具有输入与输出语句 。简述如下:1)丰富的数据类型EXPRESS规定了丰富的数据类型,常见的有:·简单数据类型 。包括NUMBER,REAL,INTEGER,STRING,BOOLEAN,LOGICAL,BINARY 。·聚合数据类型 。有数组(ARRAY)、表(LIST)、集合(SET)和包(BAG) 。·命名数据类型 。由用户定义,包括实体(ENTITY)和类型(TYPE) 。·构造数据类型 。包括枚举(ENUMERATION)和选择(SELECT) 。2)模式中的各种说明模式(schema)是EXPRESS描述对象的主体,也即概念模式,所以首先进行模式说明,然后在模式中再通过各种说明来进行描述,这些说明包括类型说明、实体说明、常数说明、函式说明、过程说明、规则说明,这些说明是相互并列的,其中重要的是对实体的说明 。一个实体说明的结构如下:ENTITY实体标识符;[子类,超类说明]:[显式属性];[导出属性];[逆向属性];[惟一性规则];[值域约束];END-ENTITY;【例1】定义圆为实体,使用了导出属性 。ENTITY circle;center:point;radius:REAL;DERIVEarea:REAL:=PI*radius**2;END-ENTITY;【例2】定义单位向量为实体,使用值域约束,即单位向量长度必须为1 。ENTlTY Unit-vector;a,b,e:REAL;WHERElength:a**2+b**2+c**2=1.0;END-ENTITY;【例3】定义实体A2及它的超类B2,C2ENTITY A2;SUPERTYPE OF(B2,C2);END-ENTITY;3)表达式可进行算术运算(加、减、乘、除、乘方、取模等),关係运算(等于、小于、大于等),BINARY运算(索引与连线),逻辑运算(逻辑与、或、非、异或),字元串运算(比较、索引、连线),聚合运算(索引、交、和、差、子集、超集等),实体运算(关係比较、属性访问、组访问、複杂实体构成等) 。4)执行语句 如赋值、case、if-then-else、ESCAPE、过程调用、REPEAT、RETURN和SKIP语句等,和一般程式设计语言一样丰富 。5)各种内部常量、函式和过程如常量PI,SELF,函式SIN,COS,…,EXITS,HIINDEX,SIZEOF,TYPEOF等,过程INSERT等 。6)接口语句常用语句有USE FROM,即使用另一模式中的类型或实体名,效果等于在本模式中说明一样;还有REFERENCE FROM,即引用另一模式中的实体、类型等,但在本模式内它们不能独立地实例化 。STEP的三层组织结构、参考模型及形式化定义语言EXPRESS,一起构成了STEP方法学 。STEP标準优点STEP标準具有简便、可兼容性、寿命周期长和可扩展性的优点,能够很好的解决信息集成问题,实现资源的最优组合,实现信息的无缝连线 。