《能源互联网 应用JSON格式交换数据模型.docx》由会员分享,可在线阅读,更多相关《能源互联网 应用JSON格式交换数据模型.docx(18页珍藏版)》请在第一文库网上搜索。
1、ICS27.010F10T/CEC电力企业联合会标准T/CECXXXX-20XX能源互联网应用JSON格式交换数据模型(征求意见稿)Energyinternet一app1icationofJSONformatexchangedatamode120XX-XX-XX实施20XX-XX-XX发布中国电力企业联合会发布目次前言III1范围12规范性引用文件13术语和定义14技术原则25精简的JSON语法35.1 JSON的数据类型35.2 JSON的字符集45.3 JSON的两种结构45.4 JSON的缩进格式56与CIM的映射56.1 数据类型的映射56.2 CIM类的映射56.3属性的映射5附录A
2、(规范性附录)与CIM/RDF格式的映射8A.1命名空间的映射8A.2元素的映射8A.3多个重复标签的元素映射81.1 4注释元素的映射9附录B(规范性附录)与C1M/E格式的映射101.2 1元素的映射101.3 横表式结构的映射101.4 纵表式结构的映射101.5 注释的映射111.6 系统声明的映射11附录C(资料性附录)CIM/RDF映射为JSON样例(部分)12本文件按照GB/T1.1-2023标准化工作导则第1部分:标准化文件的结构和起草规则的规定起草。请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别专利的责任。本文件由中国电力企业联合会提出。本文件由中国电力企业联
3、合会能源互联网标准化技术委员会(CEC/TC13)归口。本文件起草单位:本文件主要起草人:本文件为首次发布。本文件在执行过程中的意见或建议可反馈至中国电力企业联合会标准化管理中心(北京市白广路二条一号,100761)。能源互联网应用JSON格式交换数据模型1范围本文件规定了能源互联网JSON格式数据模型的技术原则、语法、与建模语言的映射及与现行数据格式的映射等主要技术要求。本文件适用于能源互联网的数据交互、检验、格式转换、数据处理等工作。2规范性引用文件下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)
4、适用于本文件。D1/T890.2能量管理系统应用程序接口(EMS-APD第2部分:术语D1ZT1080.2电力企业应用集成配电管理的系统接口第2部分:术语IEC61968-2:2011术语(G1ossaiy)IETFRFC6901JavaScriptObjectNotation(JSON)PointerApri12013IETFRFC3986UniformResourceIdentifier(URI):GenericSyntaxJanuary2005IETFRFC6596TheCanonica11inkRe1ationApri12012IETFJSONschemaSpecificationIn
5、ternetDraft(draft-07)March2019IETFJSONschemaSpecificationInternetDraft(draft2019-09;former1ydraft-08)September2019SemanticAnnotationsforWSD1andXM1SchemaW3CRecommendation28August2007IETFRFC6901JavaScriptObjectNotation(JSON)PointerApri12013IETFRFC3986UniformResourceIdentifier(URI):GenericSyntaxJanuary
6、2005IETFRFC6596TheCanonica11inkRe1ationApri12012IETFJSONschemaSpecificationInternetDraft(draft-07)March2019ISO8601-信息交换-日期和时间的表示法3术语和定义D1zT890.2、D1ZT1080.2和IEC61968-2:2011界定的及下列术语和定义适用于本文件。3.1公共信息模型commoninformationmode1(CIM)一种描述电力企业中与电力运行有关的主要对象逻辑结构和关系的信息模型。3.2统一建模语言unifiedmode1ing1anguage(UM1)一种在软
7、件工程领域中,通用的、标准的和可视化的面向信息系统分析设计的信息建模语言。3.3主题域(包)package一种基于业务管理内容和过程的耦合度对业务管理对象进行分类的集合。3.4通用信息模型/资源描述框架CIM/RDF(CommonInformationMode1ResourceDescriptionFramework)是将CIM数据模型表示为RDF(ResourceDescriptionFramework)格式的一种方式。通常是XM1(可扩展标记语言)文件。3.5可扩展标记语言XM1XM1(Extensib1eMarkup1anguage)是一种可扩展标记语言,用于描述数据的结构和内容。它是一
8、种纯文本格式,由标签和文本组成,并且具有自定义的标签。3.6元素E1ement元素(EIe1nent)是XM1的基本组成单元。一个元素由以下几部分组成:1)开始标签(StartTag):用于标识元素的开始,并指定元素的名称。它是以尖括号Y开始,紧接着是元素名称,然后以尖括号”结束。2)结束标签(EndTag):用于标识元素的结束。它与开始标签的格式相似,但在元素名称前加上斜杠V3)元素内容(E1ementContent):位于开始标签和结束标签之间的部分,包含了元素所表示的实际数据或其他嵌套的子元素。4)属性(Attributes):可选的属性为元素提供附加的信息。属性出现在开始标签中,由属性
9、名和属性值组成。属性名和属性值之间由等号”=连接,并用引号包围。5)命名空间声明(NamespaceDec1aration):可选的命名空间声明用于给元素和其子元素的命名空间提供唯一标识符。命名空间声明通常位于开始标签的属性列表中。3.7JSON(JavaScriptObjectNotation)一种轻量级的数据交换格式,使用键值对的方式组织数据,其中键和值之间使用冒号进行分隔,不同的键值对之间使用逗号分隔。键通常为字符串类型,值可以是字符串、数字、布尔值、数组、对象或者nu11。3.8键值对Key-Va1uePair一种常见的数据组织方式,用于将一个值与一个唯一的标识符(键)关联起来。键Ke
10、y键是用于标识和访问值的唯一标识符。在JSON中,数据类型应为字符串。值Va1ue值是与键相关联的数据。它可以是字符串、数字、布尔值、数组、对象或者nu11。4.1简单性原则使用直观且易读的键值对结构,减少复杂性。4. 2独立性原则JSON是独立于任何编程语言的文本格式。4.3 可读性原则JSON使用人类可读的UniCOde字符,并使用缩进和换行符进行格式化,提高可读性。4.4 兼容性原则与建模语言的映射尽量采用建模语言的术语,命名空间。5精简的JSON语法5.1 JSoN的数据类型5. 1.1字符串字符串是双引号包围的字符序列。在字符串中,可以使用反斜杠进行转义,以表示特殊字符或插入引号。示
11、例:He11o,Wor1d!”“Thisstringcontainsdoub1equotes.New1ine:n,Tab:t5.1.2 数字数字是以常规的数值格式表示的,包括整数和浮点数,浮点数可用科学计数法表示,不应包含千位分隔符、货币符号或任何其他非数字字符。示例:整数:10,-15浮点数:-3.14,1e65.1.3 布尔值布尔值只有两个取值:true和fa1se。5.1.4 nu1Inu11表示为空值或缺失值。nu11是JSON的关键字。5.1.5 对象对象是一组键值对,对象是由花括号包围的,每个键值对之间使用逗号分隔。示例:key1:va1ue1”,“key2:va1ue2”,“ke
12、y3:va1ue3”5.1.6 数组数组表示为方括号口包裹的有序值序列。每个值之间使用逗号分隔。示例1:va1ue1,va1ue2,va1ue3”数组中的值可具有不同的类型,也可以包含嵌套的数组,从而创建多维数组的结构。示例2:app1e,“banana”,orange,grape,me1onJ,“pineapp1e”5.2JSON的字符集JSON使用Unicode字符集表示文本数据。5. 3JSON的两种结构JSON有两种结构,一种是键值对的集合,一种是有序列表。6. 3.1键值对集合键应为字符串类型,键区分大小写字母。键中不宜使用特殊字符或汉字。值可以是字符串、数字、布尔值、数组、对象或者
13、IW11。键值对的集合是无序的,各个键值对之间应以逗号分隔。示例1:值为字符串:mRID:V1_01示例2:值为数字:vo1tage:10示例3:值为对象:nVo1tage1eve1:(mRID:nV1_01,namen:nV1_42_1)7. 3.2有序列表有序列表即为数组,数组表示为一个以方括号包围的元素列表,其中的元素按顺序被定义和排列。5.4JSON的缩进格式宜使用空格或制表符来缩进层级,增强可读性。每一层宜缩进相同数量的空白字符。6与CIM的映射6.1 数据类型的映射CIM模型的基本数据类型可以下表方式映射为相应的JSON数据类型CIM基本数据类型映射的JSON数据类型Boo1ean
14、(布尔型)布尔值Decima1(数字型)数字F1oat(浮点型)数字Integer(整数型)数字Doub1e(双精度浮点型)数字String(字符型)字符串Date(日期型)字符串DateTime(H期时间型)字符串Duration(时间间隔型)字符串Time(时间型)字符串MonthDay(月内日历型)字符串6.2 CIM类的映射CIM模型以类为基本数据单元,C1M模型数据向JSON数据格式的映射应以类的映射为基本映射结构。一个CIM类的实例,可映射为JSON的一个键值对,其中键应为其类名。其值应为对象,包含C1M类各个属性的映射。6.3属性的映射6.3.1简单属性的映射C1M类的简单属性,即可用基本数据类型表示的属性。简单属性可直接映射为键值对。健应为相应的属性名,值为相应的属性值。示例:name”:变压器”6.3.2复杂属性的映射C1M类的笈杂属性,即用C1M模型自定义的数据类型表示的属性。复杂属性可直接映射为键值对。键应为相应的属性名,值为相应的属性值。属性值应满足C1M模型中定义的数据类型的限定。示例:g0ch:0.36.3.3关联属性的映射CIM类的关联属性,即用于定义CIM模型中的关联关系的属性。6.3.3.1可使用1ink对象映射关联属性。1ink对象定义如下:1ink:re1ation”:CIM关联关系字符串,refID:关联类