《GB_T 16656.14-2023 工业自动化系统与集成 产品数据表达与交换 第14部分:描述方法:EXPRESS-X语言参考手册.docx》由会员分享,可在线阅读,更多相关《GB_T 16656.14-2023 工业自动化系统与集成 产品数据表达与交换 第14部分:描述方法:EXPRESS-X语言参考手册.docx(84页珍藏版)》请在三一办公上搜索。
1、ICS25.040.40CCSNIOOB中华人民共和国国家标准GB/T16656.142023/IS010303-14:2005工业自动化系统与集成产品数据表达与交换第14部分:描述方法:EXPRESs-X语言参考手册Industrialautomationsystemsandintegration-ProductdatarepresentationandexchangePart14:Descriptionmethods:TheEXPRESS-Xlanguagereferencemanual(ISO10303-14:2005,IDT2023-03-17发布45蚣货注册中Bl标UJ受阿军设会发现
2、生2023-10-01实施国家市场监督管理总局发布国家标准化管理委员会前言III引言V1 范围12 规范性引用文件13 术语和定义13.1 GB/T16656.12008中定义的术语13.2 GB/T16656.112010中定义的术语23.3 其他术语和定义24 基本原则34.1 概述34.2 执行模型的基本原则44.3 实施环境65 一致性要求75.1 EXPRESS-X的一致性类76 语言的规范语法87 基本语言元素97.1 概述97.2 保留词98 数据类型98.1 概述98.2 视图数据类型99 声明109.1 概述109.2 绑定109.3 视图声明149.4 映射声明199.5
3、模式视图声明299.6 模式映射声明299.7 局部声明309.8 常量声明319.9 函数声明319.10 过程声明319.11 规则声明3110 表达式3110.1 概述3110.2 视图调用3210.3 映射调用3410.4 部分绑定调用3710.5 FOR表达式3810.6 IF表达式4010.7 CASE表达式4010.8 正向路径操作符4110.9 反向路径操作符4211 内置函数4411.1 EXTENT-常规函数4412 范围和可见性4412.1 概述4412.2 模式视图4512.3 模式映射4512.4 视图和从属视图4512.5 视图分区标签4612.6 视图属性标识符4
4、612.7 FOR表达式4612.8 映射和从属映射4612.9 FROM语言元素4612.10 实例化循环4612.11 路径表达式4713 接口规范4713.1 概述4713.2 REFERENCE语言元素47附录A(规范性)信息对象识别49附录B(规范性)EXPRESS-X语言的语法50附录C(规范性)EXPRESS-X到EXPRESS的转换算法63附录D(资料性)实施注意事项65附录E(资料性)路径操作符UnneSl函数66附录F(资料性)映射表语义67参考文献73本文件按照GBT1.12020标准化工作导则第1部分:标准化文件的结构和起草规则的规定起草。本文件是GB/T16656的第
5、14部分。GB/T16656工业自动化系统与集成产品数据表达与交换已经发布了以下部分:一一第1部分:概述与基本原理; 第11部分:描述方法:EXPRESS语言参考手册; 第14部分:描述方法:EXPRESs-X语言参考手册;一一第21部分:实现方法:交换文件结构的纯正文编码; 第28部分:实现方法:EXPRESS模式和数据的XM1.表达(使用XM1.模式); 第31部分:一致性测试方法论与框架:基本概念; 第32部分:一致性测试方法论与框架:对测试实验室和客户的要求; 第34部分:一致性测试方法论与框架:应用协议实现的抽象测试方法; 第41部分:集成通用资源:产品描述与支持原理;一一第42部分
6、:集成通用资源:几何与拓扑表达:一一第43部分:集成通用资源:表达结构: 第44部分:集成通用资源:产品结构配置;一一第45部分:集成通用资源:材料和其他工程特性;第46部分:集成通用资源:可视化显示; 第47部分:集成通用资源:形状变化公差; 第49部分:集成通用资源:工艺过程结构和特性; 第51部分:集成通用资源:数学表达;一一第54部分:集成通用资源:分类和集合论:一第55部分:集成通用资源:过程与混合表达;第56部分:集成通用资源:状态;一第101部分:集成应用资源:绘图;第102部分:符合GB/T16656一致性规范的视图交换协议:一第105部分:集成应用资源:运动学:第238部分:
7、应用协议:计算机数值控制器用的应用解释模型;第501部分:应用解释构造:基于边的线框:第502部分:应用解释构造:基于壳的线框;一一第503部分:应用解释构造:几何有界二维线框:一一第504部分:应用解释构造:绘图注释;一一第505部分:应用解释构造:图样结构与管理;第506部分:应用解释构造:绘图元素: 第507部分:应用解释构造:几何有界曲面; 第508部分:应用解释构造:非流形曲面; 第509部分:应用解释构造:流形曲面; 第513部分:应用解释构造:基本边界表达:Ill=第520部分;应用解释构造:相关绘图元素,二第100l部分;应用模块:外观赋值;二第1。?部分;应用模块:曲线外观;
8、二二第1002部分;应用模块:颜色=第1004部分:应用模块:基本几何形状=第1005部分:应用模块:基本拓扑=第1006部分:应用模块:基础表达:- -第1007部分:应用模块;通用曲面外观;- 第1008部分;应用模块;层赋值;- 第1009部分;应用模块:形状外观和层,本文件等同采用ISO10303-14:2005工业自动化系统与集成产品数据表达与交换第14部分描述方法:EXPRESs-X语言参考手册。本文件做了下列最小限度的编辑性改动:- 删去了在正文没有引用的规范性引用文件,请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别专利的责任。本文件由中国机械工业联合会提出。本文
9、件由全国自动化系统与集成标准化技术委员会(SAC/TC159)归口o本文件主要起草单位:浙江大学、中国标准化研究院、杭州新迪数字工程系统有限公司、杭州爱科科技股份有限公司、佛山慧谷科技股份有限公司、北京知元创通信息技术有限公司、宁波智讯联科科技有限公司、上海美嘉林软件科技股份有限公司。本文件主要起草人:顾复、王志强、洪岩、邱建平、顾新建、代风、郑范瑛、方云科、纪杨建、陈凤华、彭维、陈芨熙、方萃浩、金勇华、刘守华、杨青海、岳高峰、徐凯程、高亮、尹书蕊。GB/T16656是用于计算机解释性表示和交换产品数据的国家标准,其目的是提供一种独立于任何特定系统的中性机制,描述产品整个生命周期中的产品数据。
10、该机制不仅适用于中性文件交换,而且适合作为实现和共享产品数据库以及归档的基础。GB/T16656工业自动化系统与集成产品数据表达与交换是一项由多个部分组成的标准,各部分单独出版。GB/T16656工业自动化系统与集成产品数据表达与交换由以下系列组成:第1至第19部分描述方法;第20至第29部分实现方法;第30至第39部分一致性测试方法与框架;集成应用资源;应用协议;抽象测试套件:应用模块;应用解释构造;第40至第59部分集成通用资源;第100至第199部分第200至第299部分一第300至第399部分一第400至第499部分一第500至第599部分第100O至第1999部分应用模块。本文件属于
11、GB/T16656的描述方法系列。假定使用本文件的读者熟悉ISO10303-11中定义的数据规范语言和ISo10303-21中定义的纯文本编码规范。工业自动化系统与集成产品数据表达与交换第14部分:描述方法:EXPREss-X语言参考手册1范围本文件规范了用于指定由EXPRESS模式描述的数据间关系的一种语言,以及用于规定由EXPRESS模式描述的数据的可替换视图。该语言称为EXPREss-XOEXPREss-X是一种结构化数据映射语言。它由无二义性地规范EXPRESS模式之间关系的语言元素组成。以下内容在本文件范围内:从一个EXPRESS模式描述的数据向另一个EXPRESS模式描述的数据的映
12、射,一从一个EXPRESS模式的一个版本描述的数据向该EXPRESS模式的另一个版本描述的数据的映射,其中这两个模式具有不同的名称:一一用于数据共享和数据交换应用程序的数据转换器的要求规范;一一由EXPRESS模式定义的数据的可替换视图的规范:应用协议映射表的其他表示法:一一数学上可能的双向映射;一一可以评估映射产生的数据的约束的规范。以下内容不在本文件范围之内:使用除EXPRESS之外的方式进行定义的数据映射;标识EXPRESS模式的版本:一用EXPRESS-%语言的结构的图形表示。2规范性引用文件下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,仅该日
13、期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB/T16656.1-2008工业自动化系统与集成产品数据表达与交换第1部分:概述和基本原理(ISO10303-1:1994,IDT)GB/T16656.112010工业自动化系统与集成产品数据表达与交换第11部分:描述方法:EXPRESS语言参考手册(ISO10303-11:2004,IDT)3术语和定义3.1 GB/T16656.12008中定义的术语GB/T16656.1-2008界定的下列术语适用于本文件。一一数据:信息。3.2 GB/T16656.112010中定义的术语GB/T16656.1
14、1-2010界定的下列术语适用于本文件。复合实体数据类型;复合实体(数据类型)实例:一一常量:实体;实体数据类型;一实体(数据类型)实例;一一实例;部分复合实体数据类型;一一部分复合实体值;实例集;一一简单实体(数据类型)实例;一一子类/超类图;标记:值。3.3 其他术语和定义下列术语和定义适用于本文件。3.3.1绑定范围bindingextent来自源实体数据类型范围和视图范围中的实例所构造的一组绑定实例。3.3.2绑定实例bindinginstance引用与视图或映射关联的实体数据类型实例和视图数据类型实例的一种集合。3.3.3实体数据类型范围entitydatatypeextent给定实
15、体数据类型的实例的集合。3.3.4EXPRESs-X解析器EXPRESs-Xparser能够解析采用EXPREss-X语言规范表示的工具。3.3.5EXPREss-X映射引擎EXPREss-Xmappingengine根据EXPREss-X语言规定的规范执行结构信息映射的工具。3.3.6映射map一种或多种源实体数据类型或源视图数据类型的数据与一种或多种目标实体数据类型的数据之间的关系的声明。3.3.7网络映射networkmapping到多重目标实体实例的映射。3.3.8限定绑定范围qualifiedbindingextent绑定范围的子集,由满足一组选择标准的绑定实例组成。注:如果分别满足
16、每个选择标准,则满足一组选择标准。3.3.9选择准则selectioncriterion一种逻辑表达式,只有在表达式的计算结果为TRUE时才满足条件。3.3.10源数据集sourcedataset实体数据类型实例的一个集合,这些实例由EXPRESS模式控制,并用作映射的起点。3.3.11源范围sourceextent用于创建绑定范围的视图范围或实体数据类型范围。3.3.12目标数据集targetdataset通过映射生成的实体实例的种集合。3.3.13视图viewEXPRESS模式中信息的一种组织方式。3.3.14视图数据类型viewdatatype一种视图的表示。3.3.15视图数据类型实例
17、VieWdatatypeinstance通过评估视图而建立的一种命名信息单元。3.3.16视图范围viewextent视图数据类型实例的聚合,其中包含可以在限定绑定范围内构造的所有实例。4基本原则4.1 概述以下原则适用于本文件;GB/T16656.11-2010第5章中描述的概念也适用于本文件。EXPRESs-X给出以下规定:一在模式视图(见9.5)中使用视图声明(见9.3)区分由EXPRESS模式描述的数据的视图;使用模式映射(见9.6)中的映射声明(见9.4),将由一个或多个源EXPRESS模式描述的数据映射到由一个或多个目标EXPRESS模式描述的数据。为了支持视图和映射的定义,EXP
18、RESs-X模式可以包含EXPRESS函数和过程规范。注1:在本文件中通篇使用的表达惯例是用句子的各个上下文部分讨论视图或进行映射,特别是通过在句子中加入术语(视图view)”或“(映射map)”来实现。注2:在本文件中通篇使用的表达惯例是,绑定实例表示为实体或视图实例名称的有序集合,用逗号”分隔并用尖括号“0”括起来。实例名称的顺序与主题视图或映射声明的FROM语言元素中源范围的出现顺序相对应。示例:视图声明:SCHEMA-VIEWmy_person_org_schema_view;REFERENCEFROMperson_and_org_schema;VIEWperson-org;FROMp
19、:person;o:organization;-providesorderingSE1.ECTname:STRlNG:=PJaSt_name:org:STRING:=o.department_name;END_VIEW;END_SCHEMA_VIEW;源表达模式:SCHEMAperson_and_org_schemaENTITYperson;first_name:STRING:last_name:STRING;END_ENTITY;ENTITYorganization;department_name:STRING;END.ENTITY;END_SCHEMA;数据按ISO10303-21定义的编
20、码结构编写:# 1=PERSON(James,Smith);#2=PERSON(FredriCk,Joncs);# 31=ORGANIZATIONCEngineering);# 32=ORGANIZATION(Sales,);此视图和数据的绑定实例可以按如下方式编写。绑定实例的概念在后面的条款中定义,不一定要理解该示例。但值得注意的是,每个绑定实例的第一个元素从PerSon范围提取,第二个元素从Organi-zation范围提取。此顺序对应于视图的FRoM语言元素中PerSon和Organization的描述顺序:,#2,#324.2执行模型的基本原则1 .2.1概述本文件定义了一种语言和一种
21、执行模型。执行模型由两个阶段组成:绑定过程和实例化过程。视图和映射的评估共享一个公用的绑定过程,但是在实例化方面有所不同。4 .2.2绑定过程绑定是一个给变量赋值的过程。绑定实例是一种结构,用于绑定在视图或映射声明的FROM语言元素中声明的变量。FROM语言元素引用源实体范围和视图范围。绑定的值取自这些源范围。每个绑定实例都是作为引用源扩展区的笛卡尔积计算的集的成员。这样计算的绑定实例集是给定源范围的视图或映射的绑定范围。绑定实例的变量绑定为实例化过程中视图或映射主体的求值提供了环境,其中绑定实例中引用的数据与在目标总体中创建的结构有关。因此,每个绑定实例对应于目标总体中的一个视图数据类型实例
22、(视图)或目标实体数据类型实例(映射)O映射和视图的源范围应为实体数据类型范围或视图范围。禁止引用源范围之间的循环。示例1:应用于4.1的示例中定义的视图、数据和模式的绑定过程计算person_org.,#2,#32的绑定范围。该范围以表格形式描述如下:BindingInstancePersonOrganizationfirstnameIaslnamedepartmcnt_namc#1James,Smith#31Engineering#1James,Smilh,#32Sales#2,#31)#2ErcdrickJones,#31Engineering#2,FredrickJones,#32,S
23、ales,示例2:下面的SChemaZieW是无效的:它包含一个引用循环(视图a引用视图b,视图b引用视图a).SCHEMA.V1EWinvalid;VIEWa;FROMsome_b:b:attrl:INTEGER:=some_b.aur2+2;END.VIEW;VIEWb:FROMsome_a:a;attr2:INTEGER:=some_a.attrl*3;END.VIEW;END_SCHEMA_VIEW;4.2.3实例化过程绑定是一个将实例化过程用值赋予变量的过程。每个绑定实例提供一组要绑定到变量的值。视图实例化过程是在绑定范围内为每个绑定实例计算视图主体(见9.3.2)的过程。绑定实例的
24、计算顺序没有进行制定。示例1:将绑定过程应用于4.1中示例的模式、数据和视图声明,得到PerSon_org的绑定范围:32,#2,#31,#2,#32。该示例中使用的视图声明和数据在此处重复:VIEWperson-org;FROMp:person;o:organization;providestheillustratedorderingSE1.ECTname:STRING:=p.last_name;org:STRING:=o.department_name;END_VIEW;#I=PERSONOames,Smith);#2=PERSoN(Fredrick,Jones);#31=ORGANIZA
25、TION(,Engineering,);#32=0RGANIZATION(SaIes);绑定实例对应于实体数据类型实例#1赋值给变量p.#31赋值给变量。在这个绑定中,对视图主体的求值结果是一个视图数据类型实例,其名称属性为Smith,org属性为Engineering。视图数据类型实例可以使用ISO10303-21中指定的编码作为实体数据类型实例。本测试的视图范围为:/*/*/*#2,#32*/#100=PERSON.ORG(Smith,Engineering);#101=PERSoN_ORG(Smith,Sales);#102=PERSON_ORG(Jones?Engineering);#
26、103=PERSON-ORG(,Jones,Sales,);示例2:具有类似于上一示例中使用的模式视图的结构的目标EXPRESS模式和模式映射可以定义如下:SCHEMASimilarjargetENTITYperson-org;name:STRING;org:STRING;END_ENTITY;END_SCHEMA;SCHEMA.MAPsimilar;REFERENCEFROMPCrSOn_and_Org_SChCmaASSOURCE:REFERENCEFROMsimilar-targetASTARGET;MAPpcrson_org_mapASpo:person_org;FROMp:perso
27、n;Oiorganization;SE1.ECTpo.name:=p.last_name;po.org:=o.department_name;END_MAP;END_SCHEMA_MAP;对前一个示例的数据进行求值,结果得到以下由模式SimiIaJtarget描述的实体数据类型实例:/*/*#1,#32)*/*/*#2,#32*/#100=PERSON_ORG(Smi(h,Engincering);#101=PERSoN_ORG(Smith,Sales);# 102=PERSONJDRGCJonesYEngineering);# 103=PERSON.ORG(,Jones,Sales,);当映
28、射(视图)声明主体赋值右侧的表达式仅包含源实体的属性引用(.),并且引用的属性是显式属性时,该目标实体属性(视图属性)的映射是双向的。示例3:MAPperson_org_mapASpo:person_org;FROMPiperson;Oiorganization;SE1.ECTpo.namc:=p.last_name;-bi-directionalpo.org:=o.departmcnt_namc:bi-directionalpo.industry-code=o.owning-enterise.industrj,.codc-num-bi-dircctionalpo.dept_number:=d
29、ept_func(o.department_name);-possib!ynotbi-directionalEND_MAP;属性po.dcP1.nUmber是否是双向,取决于dcpt_func函数的性质。4.2仅规定了执行模型的基本方面。有关绑定过程的详细信息,见9.2。9.3描述了视图实例化过程的细节。映射的实例化过程的详细信息在9.4中描述。4.3实施环境EXPRESs-X语言不描述实现环境。特别地,EXPRESs-X没有规定以下内容:如何解析对名称的引用;一一如何指定输入和输出数据集;如何对不符合EXPRESS模式的实例执行映射。对视图的求值得到视图范围。对映射的求值可能会在目标数据集中
30、生成实体实例。EXPRESs-X没有明确说明在初始映射之后对源数据的修改可能对视图范围或目标数据集产生的影响。5一致性要求5.1 EXPRESS-X的一致性类5.1.1 总则EXPRESS-X解析器或映射引擎实现的一致性类由实现所支持的语言的部分所定义。声明按表1中的语言子集分类。表1声明和语言子集声明子集1子集2视图声明映射声明关联映射声明常量声明功能声明过程声明规则声明EXPRESS-X解析器或映射引擎的使用者应声明关于标识符的数量和长度、处理的数字范围以及实数的最大精度的约束。为了进行一致性测试,应记录这些约束。5.1.2 EXPRESS-X解析器的一致性类EXPRESS-X解析器的实现
31、应能够解析与该实现相关联的一致性类相符的、用EXPRESS-X编写的任何形式化规范。如果EXPRESS-X解析器可以将特定级别的检查(如5.1.4所定义)应用到以EXPRESS-X编写的形式化规范中,则该解析器可以被认为符合该特定级别(如5.1.4所定义)。符合EXPRESS-X解析器的一致性类1应能解析来自语言子集1的所有声明(见表1)。符合EXPRESS-X解析器的一致性类2应能解析来自语言子集2的所有声明(见表1)。符合EXPRESS-X解析器的一致性类3应能解析可能出现在本文件中的所有声明。5.1.3 EXPRESS-X映射引擎的一致性类EXPRESS-X映射引擎的实现应能够执行任何与
32、该实现相关联的一致性类相符的、用EXPRESS-X编写的形式化规范。映射执行针对一个或多个源数据集:这些数据集如何提供给映射引擎的规范不在本文件范围之内。符合EXPRESS-X映射引擎的一致性类1应能执行来自语言子集1的所有声明(见表1)。符合EXPRESS-X映射引擎的一致性类2应能执行来自语言子集2的所有声明(见表1)。符合EXPRESS-X映射引擎的一致性类3应能执行本文件中可能出现的所有声明。5.1.4 EXPRESS-X解析器的一致性检查5.1.4.1 概述用EXPRESS-X编写的形式化规范应与以下指定的给定检查级别一致。只有在对该规范进行验证时,并针对该级别识别的所有检查以及所有
33、较低级别的验证时,形式化规范与给定级别一致。5.1.4.2 第1级:引用检查此级别包括检查形式化规范,以确保其在语法和引用上均有效。如果形式化规范符合扩展附录A中提供的主要语法规则(SyntaX)所生成的语法,则在语法上有效。如果对EXPRESS-X项的所有引用均与第13章中定义的范围和可见性规则一致,则形式化规范是引用有效的。5.1.4. 3第2级:类型检查该级别由第1级检查和形式化规范的检查组成,以确保其符合以下要求:表达式应符合第10章和GB/T16656.112010中第12章规定的规则;二二赋值应符合GB/T16656.112010中13.3规定的规则。5.1.4.4第3级:值检查该
34、级别由第2级检查和形式化规范的检查组成,以确保与GB/T16656.112010第7章至第14章所规定的“A大于B”形式的陈述相一致。这仅限于可以从文字和/或常量同时评估A和B的那些地方。5.1.4.5第4级:完整检查此级别包括形式化规范的检查,以确保其符合本文件中指定的所有规定要求。6语言的规范语法本章规定了EXPRESS-X语言的语法表示标记法。附录B给出了EXPRESS-X语言的完整语法。部分语法规则在不同的条款中出现,以便说明具体语句的语法。这部分语法规则一般是不完整的,有时需要参考附录B查找缺失的语法规则。本文件的语法规则都用矩形方框给出,方框中每条规则的左侧都有一个唯编号,用于语法
35、规则之间相互引用。EXPRESS-X语言的语法定义采用派生的沃思语法标记法(WirthSyntaxNotation,WSN)o注:沃思语法标记法(WirthSyntaXNoIalion,WSN)见参考文献1。以下给出标记的约定以及WSN本身的定义。syntax=production.production=identifier,=expression.expression=Iermterm.term=factorfactor.factor=identifier.!literalIgroup1option!repetition.identifier=charactercharacter.liter
36、al=charactcrcharacter)group=,(,expression),.option=expression.repetition=,expression.二等号一,表示一个产生式。等号左边的元素被定义为等号右边元素的组合。除了在文字中出现的空格外,一个产生式的元素之间出现的任何空格都是无意义的。一个产生式用一个圆点.结束。二要素中的标识符表示出现在另一个产生式左边的非终结符号,标识符由字母、数字和下划线组成。该语言中的关键词是用标识符仅由大写字母组成的产生式表示的。二文字一词表示不能进一步扩展的终结符号。文字是括在单引号中的独立的字符序列。当文字中出现单引号时应写两次,即各种括
37、号的语义定义如下所示: 花括号表示零或多次重复; 方括号表示可选参数; 圆括号()表示括号中的这组产生式应作为单一的产生式使用; 竖线I表示应实际选择表达式中的某一项。以下符号用于表示整个字符集和某些难以显示的特殊字符:a代表GB/T16656.1-2008中的任何字符;n代表换行符(取决于系统)(见GB/T16656.12008第7.1.5.2条)。7基本语言元素7.1 雌本章规定构成EXPRESS-X映射规范的基本元素,包括字符集(Chameler阳)、注释(remarks)、符号(Symbo1s)、保留词(reservedwords)、标识符(identifiers)和文字(IiIera
38、IS)OEXPREss-X的语言元素是在GB/T16656.112010的第7章中定义的EXPRESS语言的语言元素,但以下情况除外。7.2 保留词EXPRESS-%的保留词包括内置常量、函数和过程的关键词和名称。EXPRESS的所有保留词(GB/T16656.112010)均为EXPRESS-X的保留词。保留词不得用作标识符。EXPRESS-X的附加保留词在表2中有详细说明。表2其他EXPRESS-X关键词DEPENDENT_MAPEACHE1.SIFENDDEPENDENTMAPENDMAPEN1.SCHEMA_MAPEND_SCHEMA_VIEWEND_VIEWEXTENTIDENTIF
39、IEDBYINDEXINGMAPORDERED_BYPARTITIONSchemajiapSCHEMA_VIEwSOURCETARGETVIEW注:如果合法的EXPRESS标识符是EXPRESS-X中的保留词,则可以通过使用REFERENCE语言元素重新命名出现冲突的标识符来映射使用该标识符的模式(见13.2)o8数据类型8.1 概述此处定义的数据类型以及EXPRESS语言(GB/T16656.11-2010的第8章)中定义的数据类型作为语言的一部分提供。每个视图属性(见9.3.2)都具有关联的数据类型。8.2 视图数据类型视图数据类型由视图声明建立(见9.3)。在定义的模式映射或模式视图中,
40、为视图数据类型分配了一个标识符。该标识符引用了视图数据类型。语法:230view_reference=(schema_map_refschema_view_ref).rview_ref.规则和约束:a) view_reference应该是对在当前范围内可见的视图的引用b) view_reference不应引用从属视图(见9.3.5)。示例:以下声明定义了一个名为CircIe的视图数据类型。VIEWcircle;FROMeiellipse;WHERE(e.major_axis=e.minor-axis);SE1.ECTradius:REA1.:=e.minor_axis;centre:poin(
41、:=e.centre;END.VIEW;9声明9.1 概述本章定义EXPRESS-X中的各类声明。EXPREss-X声明可创建一个新的EXPREss-X项并将标识符与其关联。该项可能被其他标识符引用。EXPRESS-X提供以下声明:view;map;dependentmap;schemaview;schemamap。此外,EXPRESS-X规范可能包含GBT16656.11-2010中定义的以下声明:constant;function;procedure;ruleo9.2 绑定9.2.1 屣绑定范围是由源实体数据类型范围和视图范围中的实例构造的一组绑定实例。实例集的绑定范围是视图或映射声明的F
42、ROM语言元素中引用的范围的笛卡尔积。限定的绑定范围是绑定范围的子集,该绑定范围仅由WHERE语言元素在其变量与绑定实例中的值的绑定下返回TRUE的那些绑定实例组成。注:9.2中定义的规定适用于映射声明和视图声明。9.3中定义了仅适用于视图声明的规定。9.4中定义了仅适用于映射声明的规定9.2.2 绑定范围FROM语言元素在绑定范围中定义绑定实例的元素。FROM语言元素由一个或多个源参数组成。每个源参数都将标识符与范围关联。语法:228viewdecl=(root_view_decldependent_view_decllsubtype_view_decl).136map_decl=MAPin
43、ap_idStarget-parameter,target-parameter;,(map_subtype_ol_clausesxubtype_binding_headermap_decl_body)(binding_headermap_decl_bodybindingheadermap_decl_body)END_MAP;.47binding_header=PARTITIONpartition-id,from_clauselocal_declwhereclauseidentified_by_clauseordered_by_cIause.90from_c1ause=FR0Msource-pa
44、rameter,/source_parameter198source-parameter=source-parameter-id,extent_reference.83extent_reference=source_entity_referencelview_reference.规则和约束:source_parameter_ids在映射或视图声明的范围内应是唯的。绑定范围被计算为FROM语言元素中引用范围中实例的笛卡尔积。示例:在实体数据类型item和PereOn的实例集上构造绑定范围:SCHEMASOUrCe.schema;-AnEXPRESSschemaENTITYitem;itcm_numbcr:INTEGER;approved_by:STRING;END_ENT1TY;ENTITYperson;name:STRING:ENDENTITY;END_SCHEMA;SCHEMAVIEWexample;REFERENCEFROMS