文档详情

电力系统数据标记语言

壹****1
实名认证
店铺
DOCX
42.41KB
约16页
文档ID:544553449
电力系统数据标记语言_第1页
1/16

电力系统数据标记语言——E 语言规范Data Markup Language for Electric Power System——E Language目录前言 II1 范围 12符号定义 13基本语法 14 扩展语法 4附录A (参考性附录)E语言数据样例 8附录B (规范性附录)属性类型和量纲标准 10电力系统数据标记语言 E语言规范(以下简称“E语言”是在IEC 61970 - 301电力系统公用 数据模型CIM (Common Information Model)的面向对象抽象基础上,针对CIM在以XML方式进行描述 时的效率缺陷所制定的一种新型高效的电力系统数据标记语言E语言的命名源于Easy (简单)、Efficiency (高效)、Electric-power (电力)3个英文词头,它 将电力系统传统的面向关系的数据描述方式与面向对象的CIM相结合,既保留了面向关系方法的高效率, 继承了其长期的研究成果,又吸收了面向对象方法的优点(如类的继承性等),具有简洁、高效和适用 于电力系统的特点E 语言是一种标记语言,具有标记语言的基本特点和优点,其所形成的实例数据是一种标记化的纯 文本数据。

E语言通过少量标记符号和描述语法,可以简洁高效地描述电力系统各种简单和复杂数据模 型,数据量越大则效率越高,而且E语言比XML更符合人们使用的自然习惯,计算机处理也更简单E语言与XML均一致地遵循CIM基础对象类,以E语言描述的电力系统模型与以XML语言描述的电 力系统模型可进行双向转换本标准由国家电网公司国家电力调度通信中心提出并负责解释 本标准由国家电网公司科技部归口本标准起草单位:国家电网公司国家电力调度通信中心,国网电力科学研究院,江苏电力调度通信 中心本标准的主要起草人:辛耀中、林峰、陶洪铸、倪斌、彭清卿、李毅松、石俊杰、崔恒志、苏大威电力系统数据标记语言——E语言规范1 范围本标准规定了电力系统数据标记语言一一E语言的语法和语义E 语言主要适用于以文件方式描述和交换数据的应用场合本标准定义的E语言版本为V1.02 符号定义序号符号定 义1< >类起始符2>类结束符3系统声明结束符5@数据块头引导符(横表式)6@@数据块头引导符(单列式)7@#数据块头引导符(多列式)8#数据行引导符9//注释引导符10::类和实体连接符11=赋值连接符12名称连接符,父类与子类的连接符13/@属性别名行引导符14%属性类型行引导符15$属性量纲行引导符16:属性限值行引导符,限值上下限定义,父类名缩写定义17*指针引导符18空格由一个或连续多个空格或制表符(Tab)组成19'含空格的字符数据,前后加单引号20-该项数据为空21,对象的枚举22:=无结构数据块定义说明:以上符号均为英文半角符号。

3 基本语法E 语言数据是纯文本数据 E 语言主要通过对文本中每行第一个字符或前两个字符的使用,达到规 范文本的目的E 语言对于英文字母的大小写敏感3.1 基本结构E 语言数据文件包括注释(可选)、系统声明、数据块起始标记、数据块头定义、数据块、数据块 结束标记等部分E 语言数据有三种基本结构,即横表式结构、单列式结构和多列式结构,分别如图 1 、图 2 、图 3 所示://注释〈!System=OMS Version=1.0 Code二UTF-8 Data=1.0!〉 〈类名::实体名〉序号属性名1属性名2属性名3討1对象1值1对象1值2对象1值31#■2对象2值1对象2值2对象2值3■ ■#n …• • •〈/类名::实体名〉注释系统声明数据块起始标记数据块头定义数据块数据块结束标记图 1 E 语言数据的横表式结构//注释

注释可出现在数据文件的任意地方,既可 以独立一行,也允许在行的后部3.3 系统声明E 语言的系统声明位于数据块前端,由左尖括号加叹号并列“<!”引导开始,由叹号加右尖括号并 列“!〉”标记结束系统声明中说明产生数据的应用系统名称、采用的E语言版本、字符集和数据版 本标记内的具体内容如下:a) Sys tem=应用系统名称指产生本数据的应用系统名称b) Version二E语言版本指封装本数据所采用的E语言版本由于E语言本身的发展,语法规则和符号可能会发生变化,此版本信息可用于程序识别语言本身的差别c) Code=字符集名称指本文件所用的字符集d) Dat a=数据版本指本数据所处版本由于应用需求变化,同样类别的数据其封装结构可能会 进行局部的扩充、修改或简化,此版本信息可用于程序识别数据本身的细微差别以上各部分之间用空格分割,并且可根据系统情况进行扩展以下为一个系统声明的实际样例: <! System=OMS Version=1.0 Code=UTF-8 Data=1.0 !〉3.4 数据块起始和结束E 语言数据块的起始用尖括号“<类名〉”或“<类名::实体名〉”表示,数据块结束用尖括号内加单 斜杠“</类名〉”或“</类名::实体名〉”表示。

类名::实体名”中,前者表示数据块内数据对象的类,后者表示数据块内数据的归属对象如数 据块起始符“<调度日报::华东〉”指明了数据块内的数据是调度日报类,并且这些数据归属于华东电网, 即这些数据为华东电网的调度日报数据类和实体名称之后可跟若干个标记属性名及其值,标记属性名与属性值之间用等号“=”相连,多 个属性名值之间用空格分割如Date=' YYYY-MM-DD',表示报表数据的日期数据块中如果只包含一个对象也可以用一行来描述,采用如下格式:<类名::实体名 属性1=值1 属性2=值2 /〉3.5 数据块头定义数据块头定义用地址符“@”标记,用于表明数据的基本结构:即横表式、单列式或多列式数据 块头定义的具体标记如下:a) 单地址符“@”表示数据的基本结构为横表式,其语法为:@ 序号 属性名 1 属性名 2 属性名 3 …“@”、序号、各属性名之间使用空格分割,序号也可用数据ID表示(下同),单列式和 多列式结构对于序号的处理方式类似横表式结构的数据块中每个对象占一行、每个属性占一 列,适用于表格类数据,或属性较少且对象较多的数据,如图1 所示b) 双地址符“@@”表示数据的基本结构为单列式,其语法为:@@ 序号 属性名 属性值 “@@”、序号、属性名、各属性值之间通过空格分割。

单列式结构的数据块中每个属性占 一行,属性名和值各占一列,适合于单个对象且属性较多的数据,如图2 所示c) 单地址符和井号“@#”表示数据的基本结构为多列式,其语法为:@# 序号 属性名 对象名 1 对象名 2 对象名 3 … “@#”、序号、属性名、各对象名之间通过空格分割多列式结构的数据块中每个属性占 一行,每个对象占一列,适合于对象数相对固定且属性较多的数据,如图3 所示3.6 数据块数据块由多个数据行组成,每个数据行由井号“#”引导数据行中的各数据值之间通过空格分割数据行的表达方式与数据块头定义一一对应数据块的第一列总是在“#”后跟一个或多个空格,空格后加序号,如“# 10”,使序号单独成为 一列该序号表示本行数据在本数据块中的顺序,以 1开始编号序号后面跟一空格后开始数据值序列 3.7 空格E 语言中使用空格作为分割符,如数据块中每行各项内容之间使用空格分割空格分割符由一个或连 续多个空格或制表符<Tab)组成如果字符串数据中含有空格字符则需在字符串数据前后加单引号'”3.8 连接符a) 类与实体连接符:用号::”表示,用于类和实体之间的连接,如:<调度日报::华东>b) 赋值连接符:用等号号 =”表示,用于数据块起始标记内属性名与属性值之间的连接,如: <调度日报::华东 日期=‘2006-04-02' 时间=‘23:15:00' >。

c) 名称连接符:用小数点号 .”表示,用于连接层次结构的类或实体用于实体的层次描述如: 号华中.河南.郑州”;用于类及属性的层次描述如:号线路.阻抗”等4 扩展语法为保持 E 语言的完整性和灵活性,定义下列扩展语法4.1 属性类型定义在数据块头定义中,如果是横表式结构数据,可以为每个属性增加类型定义,此定义为可选 类型定义行用百分号号%”引导,后面跟一空格及类型序列,与横表式结构属性序列一一对应,指 明各属性的数据类型,数据类型长度不做限制规定:i (int)表示整数类型,f (float)表示浮点数 类型,s (string)表示字符串类型,p (pointer)表示指针类型,如图4所示属性类型遵循附录B 的规定4.2 属性量纲定义 在数据块头定义中,如果是横表式结构数据,可以为每个属性增加量纲定义,此定义为可选 量纲定义行用美元符号$”引导,后面跟一空格及量纲序列,与横表式结构属性序列一一对应,指 明各属性的量纲,例如:MW, kV等,若某属性没有量纲时,用号-”表示,如图4所示量纲标准遵循 附录 B 的规定4.3 属性限值定义在数据块头定义中,如果是横表式结构的数据,可以为每个属性增加限值定义,此定义为可选。

限值定义行用冒号号:”引导,后面跟一空格及限值序列,与横表式结构属性序列一一对应,指明 各属性的限值限值用号最小允许值:最大允许值”表示,例如:号月”的限值为号1:12”如果没有 最小限值限制,左侧位置不填,如号 :100”;如果没有最大限值,右侧位置不填,如号 10:”;如果上 下均无限值则用号-”表示,如图 4所示//数据类型、量纲和限值描述〈Line >@序号I_NodeJ_NodeRXCx%issfff$———Q1:10—————#1辛安洹安0.01940.0592。

下载提示
相似文档
正为您匹配相似的精品文档