1、GB ICS 03.220.20;35.240.60 R 07 和国国家标准主t-、中华人民GB/T 28425一2012消息集模板智能运输系统Intelligent transport systems-Message set template 2012-10-01实施2012-06-29发布发布中华人民共和国国家质量监督检验检夜总局中国国家标准化管理委员会、ra&PH制喜铃叫伪SHmw 脯惘码gt JeJ问dd可睦GB/T 28425一2012目次前言.皿1 范围2 规范性引用文件-3 术语、定义和缩略语.1 4 消息集模板(MST)框架.2 5 消息集模板(MST)属性4附录A(资料性附录
2、)消息的指导原则及示例.附录B(规范性附录)消息标识模式.I GB/T 28425一2012目lJi=i 本标准按照GB/T1. 1-2009给出的规则起草。本标准由全国智能运输系统标准化技术委员会CSAC/TC268)提出并归口。本标准起草单位:交通运输部公路科学研究院、北京经纬融通信息技术有限公司。本标准主要起草人=鲍枫、张林、杨琪、张北海、陈劲风、赵建丽。而皿GB/T 28425-2012 智能运输系统消息集模板1 范围本标准规定了智能运输系统(lTS)消息集模板的框架、属性。本标准适用于ITS中各种应用系统之间的消息交换,也适合于用户对ITS消息的逻辑说明。2 规范性引用文件下列文件对
3、于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB/T 16262. 1 信息技术抽象语法记法一(ASN.l)第1部分:基本记法规范GB/T 16262.2 信息技术抽象语法记法一(ASN.l)第2部分:信息客体规范ISO 14813-6智能运输系统参考模型体系结构第6部分:用ASN.1表示的数据(lntelligenttransport systems-Reference model architecture(s) for the ITS sector-Part 6: Data present
4、ation in ASN. l) 3 术语、定义和缩暗语3.1 术语和定义下列术语和定义适用于本文件。3. 1. 1 属性attribute 某元素固有的、内在的特征。3. 1.2 数据帧data frame 使用单一名称进行引用的一组数据元素的集合。注z采用单一名称进行引用便于在一个消息体的规范中对那些在通常情况下一起出现的数据元素例如一个ASN.l序列,序列的集合,或选择的集合进行重新利用。但是,这一数据概念类型同样可以为其他用途定义数据元素组。3. 1.3 终端应用end-application 与网络通信堆战相分离的那一部分计算机程序。一个应用端不包含在OSI网络参考模型的应用层及其以
5、下的各层次中。3. 1. 4 外部数据源foreign data source 由ITS领域外的数据源提供的数据字典或消息集合。3.1.5 消息message 由消息元数据组合成的一组数据元素或数据帧,用于传递一个完整的消息单元。注2一个消息是来自于消息模板集合的一个抽象描述,并不是一个单独的消息实例。1 GB/T 28425-2012 3. 1.6 消息属性message aUribute 在逻辑层次上,对一条消息的数据交换需求、解释和处理的详尽描述。3. 1.7 消息体message body 消息规范中描述消息中所包含的数据元素和数据帧的部分。3. 1. 8 消息组message gro
6、up 相关消息组成的集合。3.1.9 消息实曹:IJmessage instance 实际产生的一条包含了数据元素的实际值。3. 1. 10 消息集message set 基于ITS类命名的一类消息的集合。3. 1. 11 消息集模摄message set template (MST) 用于描述ITS消息的属性和句法的抽象结构,即运用消息集模板产生消息标准的规则。3.2 缩略语下列缩略语适用于本文件。ASN.l:抽象语法记法一(AbstractSyntax Notation One) DSRC:专用短程通信(DedicatedShort-range Communications) ID:标识(
7、Identifier) 10S:信息对象规范CInformationObject Specification) ISP:信息服务提供商(Information Service Provider) ITS:智能运输系统CIntelligentTransport Systems) MST:消息集模板(MessageSet Template) NTCIP:国家智能运输系统通信协议(Nationaltransportation communications for ITS protocol) OID:对象标识(ObjectIdentifier) OSI:开放系统互联(OpenSystem Interc
8、onnection) TMC:交通管理中心(TrafficManagement Center) 4 消息集模板(MST)框架4. 1 概述ITS消息集模板描述的消息独立于应用层面的逻辑层面上,并且在所有的OSI网络层次之上,在某些标准中,把这种逻辑层次称为终端应用。MST由元数据属性(包含与消息相关的数据交换要求)、消息属性和消息体(即对消息中包含的数据元素的描述构成。以上内容应以ASN.l表述。一个ASN.l的消息对象规范应用于将元数据属性、消息体和消息属性规范组合为正式的、完整的逻辑消息(参见附录A)。一条ITS消息可根据一些相关的划分标准归类到一个或多个消息组中去,一条ITS消息可同时属
9、于多个消息组。GB/T 28425-2012 示例=按照消息主题的性质划分,事故车辆消息可能既属于路侧警告消息组,又属于车辆事件消息组。同样,在某个ITS的功能领域中,一条消息可被列入一个或多个消息集中,在这种情况下,这些消息集可能又属于更大的一个消息集一交通管理消息集。消息集模板应该是一个统一的、规范的、对所有的ITS消息都一致的模板。在此前提下,为了处理消息间存在的较大差异,消息集合模板的许多属性是可选的。4.2 框架MST具体框架见图10元数据属性图1ITS消息的框架4.3 应用MST定义ITS消息4.3.1 定义ITS消息中的元数据MST第一个方面是定义消息元数据,元数据是对消息定义的
10、简化数据。本标准中定义消息元数据的一系列必选的和可选的属性。当应用和/或传输环境要求支持MST定义的消息时,该需求应在逻辑层定义,应以与传输介质无关的方式表达。4.3.2 定义消息体MST的第二个方面是对消息体或内容的定义。定义消息时,消息的内容应以详细说明的方式定义(包含数据元素组的数据帧,在某些情况下还包含其他的数据概念类型),并按消息类型、使用条件、适用环境、出现次序等进行归类和打包。这些数据元素的实例化组成了消息实例的实际消息体。由数据元素和数据帧组成的消息体应使用一个指定的ASN.1名称(符合ASN.1命名规范的名称)。数据元素的描述性名称可作为消息规范的一部分,可加入ASN.1的名
11、称。每个描述性名称和其相应的ASN.1名称应成对的出现。将描述性名称转变为ASN.1名称参见附录A描述。将数据概念(数据元素、数据帧、和/或其他数据概念类型)打包或分组为消息可包括以下部分或全部定义:一一数据概念构成消息体,包括它们的分类或顺序、适用条件;3 G/T 28425-2012 一一在构成消息体的数据概念中的序列、序列片断的可重复性;一一在构成消息体的数据概念中的默认值、可选值和条件值。消息规范中允许数据概念的重复。消息规范中只使用数据元素可避免模糊性(这种情况专指为了一些特定的目的而使用底层的数据棋念)。但是通过将数据按照ASN.1中指定的顺序和集合结构进行分组,信息中可以使用更加
12、复杂的数据结构。通常情况下,对数据序列和其他类型的数据分组方式可以按照数据帧的数据概念类型进行处理。如果元数据直接来源于ITS功能域的数据字典和/或ITS数据登记簿,消息规范则应包含数据帧和数据元素,这些数据帧和数据元素在ITS功能域的数据字典和/或ITS数据登记薄中有明确的表述。元数据的取值范围,包括数据元素的值、值的枚举类型以及确定数据元素值域的有效性,都在ITS功能域数据字典和/或ITS数据登记簿中进行定义。数据单元的数据类型以及相关的大小限制,也在ITS功能域数据字典和/或ITS数据登记簿中作为元数据的一部分进行定义。包含在ITS功能域数据字典和/或ITS数据登记簿的附加信息中的消息规
13、范中的数据元素相关的任何元数据,应与数据字典或数据注册表保持一致。4.3.3 使用ASN.1旬法ASN.1句法结构用于定义消息属性和包含消息体的数据元素。ASN.1句法结构见GB/T16262. 1和GB/T 16262.2,依照ASN.1句法结构的规则,可以得到有效的ASN.1数据组成。ASN.1的结构及使用参见附录A。4.3.4 在ASN.1中打包IOSASN.1的信息对象是一种语法机制,用于将消息属性和消息体分组成单个实体。5 消息集模板(MST)属性5. 1 元数据属性5. 1. 1 基本属性5. 1. 1. 1 描述性名称(必选属性)定义:描述性名称是用来标识消息的名词或词组。描述:
14、描述性名称说明了数据概念的意义,构建方式见附录B中描述数据元素的构建方式。消息的描述性名称宜采用ENTITY_Property _representationclassterm(实体一特性-表达类项)的格式,其中ENTITY表示功能或功能域(例如:事故管理),representationclassterm表示消息或数据帧。示例:INCIDENT _Description_message 5. 1. 1. 2 描述性名称的内容(可选属性)4 定义:描述性名称的内容是与描述性名称相关的ITS功能域的描述。描述z功能域可为如下:一一交通管理;一一运输管理;一一紧急事件处理;一一运营车辆管理;一一出行
15、者服务; -一电子收费服务;一-一车辆管理和控制;-一计划管理和实施。如果同时具有多个功能域,则采用ITS作为描述性名称的内容。5. 1. 1. 3 定义(必选属性)GB/T 28425一2012定义:对消息及其使用目的和使用途径的基于自然语言的文本的描述。这需要定义数据交换需求(即消息是否需要响应,是否需要信息接收系统对其进行处理等),也可能包括功能域的数据,和/或发送/接受的数据的应用,如基于国家ITS体系架构的数据流。描述:它由描述消息的文本组成。示例2这条消息定义了故障车辆向监控中心提出的路边援助请求,收到该消息后,监控中心进行确认并分析救援请求消息,迅速做出适当的回应。5. 1. 1
16、. 4 来源(可选属性)定义:消息的来源。描述:消息最初的输入来源。示例2消息集外部TMC通信(MS-ETMCC)。5. 1. 1. 5 类名(消息集)(可选属性)定义:根据消息含义而划分的消息集的名称和数量。描述:对每一个类名,应有一个分类模式名和一个分类模式版本。示例:对于TMC到ISP的通信,消息集包括2一一路网描述;一一当前路网状态;一一预测的路网状态;一一计划内的道路事件;一一当前路网事件及路网事件更新。5. 1. 1.6 分类模式名(若类名已定义,则为必选属性F否则本属性不适用)定义:包含类名的分类模式的标识符(比如标题或数量)。5. 1. 1. 7 分类模式版本(若类名己定义,则
17、为必选属性;否则本属性不适用)定义:包含类名的分类模式版本号。示iJtJ: Vl 5. 1. 1. 8 数据概念类型(必选属性)定义z数据概念的类型归类。描述:本属性对消息的惟一有效值是Message,对数据帧的惟一有效值是DataFrame。示例:Message, DataFrame 5. 1. 1. 9 关键词(可选属性)定义:用来搜寻和恢复消息的一个或多个重要的词。5 GB/T 28425-2012 描述:关键词可取自这些数据概念:定义、描述性名称、类名,也可取自同这些数据棋念紧密相关的元数据属性。某些关键词可从ITS数据登记簿中的控制词列表中指定。示例:Link, Segment, L
18、ink Performance 5. 1. 1. 10 美联数据概念(可选属性,与关联类型一起使用)定义:与被指定的消息存在某种关联的其他数据概念。示例:Travel Advisory飞出行建议)对于消息messagelncident Notice气事故警示)而言,Travel Advisory(出行建议)就是与其相关的一条关联消息。与关联类型一起使用。5. 1. 1. 11 关联类型(可选属性,与关联数据概念一起使用)定义:用于表述数据概念与其关联数据概念之间关系特征的一个词或短语。描述:合法值是Generates和Generatedby。其他合法值可以是加入数据注册表的函数,并且在控制词列
19、表中记录归档。与关联数据概念一起使用。具体含义如下:一-Generates:系统接收到该消息后生成由关联数据概念定义的系列消息;一-Generatedby:系统仅生成特定的信息,以响应由关联数据概念定义的消息。示例:Generated by;例如一条出行者建议消息的运行依赖于一条事件消息的接收。5. 1. 1. 12 备注(可选属性)定义:消息的注释或其他相关内容。描述:这项元数据属性不受本标准内容的限制。示例相关内容请查看高速公路通行能力手册。5. 1. 1. 13 符号名(可选属性)定义:在应用程序和/或通信程序中的使用的消息的名称。示例:Traveler Advisory(出行建议)5.
20、 1. 1. 14 符号名用法(可选属性)定义:使用的符号名的应用程序名称。示例:Traveler lnformation API 5. 1. 1. 15 ASN.1名称(必选属性)定义z用ASN.l语法及命名规范来表示的消息名。注释:ASN. 1数据元素命名规范的内容,以及从ITS数据字典中的数据元素名称到ASN.l中的名称转换的内容,可参考附录Bo示1JtJ: N earestStopRequest 5. 1. 1. 16 限制条件(可选属性)定义z对所有限制条件进行的文本说明,而不仅是本标准中明确描述的其他元属性的限制。描述:包括硬件或软件应用的限制条件。示1JtJ:在不同媒介的列表形式
21、中,必须可显示出版时间表。5. 1.2 管理元数据属性5. 1. 2. 1 数据概念标识符(可选属性)定义z与语义元关的顺序分配的阿拉伯数字标识符。6 描述:当消息进入ITS数据登记薄时自动为之分配本元数据属性值。示例:3937205. 1. 2. 2 数据概念版本号(可选属性)定义:表示消息的修订或完善并且不改变语义内容的参考信息。G/T 28425-2012 描述:版本号主要用以表示那些附属性的、非语义性的小修改。若消息进行了语义上的修改,那么就应该创建新的不同的消息。本版本号应由数据注册系统自动维护。示0IJ: V3 5. 1. 2. 3 安全等级(可选属性)定义:如果消息包含敏感信息,
22、应用系统或通信系统应具有的适当的安全等级和类型选择。描述:如果考虑安全问题,本元数据属性就可用于定义安全相关内容的需求,如加密(即数据所有交换路径中都需要加密),ID验证,密码,及是否允许重定向/转发等。这些需求应处于逻辑层面,且不应对那些有保密需求的系统做过度的限制。在传输过程中,消息经过未授权的系统时,消息不可阅读。注释:在ITS中该属性主要用于与财务相关的消息中,也可以用于任何特定的消息、消息集或消息组中。私人消息可能有特别的安全要求。因此这些要求应明确说明,以便通信协议/网络协议能够明确这些需求,并对之进行相应处理。5. 1. 2. 4 注册日期(可选属性)定义:消息进入ITS数据注册
23、表的日期。描述:本元属性值在消息进入ITS数据注册表时自动分配。示例:20000229(02/29/2000) 5. 1. 2. 5 最后修改日期(可选属性)定义:消息在ITS数据注册表中进行最后一次版本更新的日期。描述:本元属性值在消息进入ITS数据注册表时自动分配。示例:19991210(10/10/1999) 5. 1. 2. 6 最后修改的用户(可选属性)定义:更改消息定义的最后一个用户的标识。描述:本元数据属性值在消息进入ITS数据注册表时自动分配。示0IJ: ITE MS-ETMCC项目小组的JohnDoe将标识为222948的数据概念用在消息中。这个例子中,本元数据属性相关的数据
24、概念记录就会出现jdoe56435. 1. 2. 7 注册机构(可选属性;如果是外部注册则为必选)定义:消息注册所在机构的信息。描述:属性的值通常为ITSRegistrar 0 示例:一一一ITSRegistrar; 一一-EP A Registrar。7 G/T 28425-2012 5. 1. 2. 8 注册电话号码(可选属性,如果是外部注册则为必选)定义:注册机构的电话号码(包括电话号码的国家编码、地区编码)描述:本条属性的值通常为ITSRegistrar的电话号码。示例:1. 202. 999. 9999 5. 1.2.9 消息的组织名称(可选属性)定义:负责该消息的组织名称。示例:I
25、TEMS-ETMCC project team 5. 1.2. 10 管理员电话号码(可选属性)定义:授权数据管理员的电话号码(包括电话号码的国家编码、地区编码)示例:1. 202. 888. 8888 5. 1.2. 11 消息提交组织的名称(可选属性)定义:负责将消息提交到数据注册表的组织机构名称。描述:该组织负责对信息进行标识、归档以及提交注册信息。示例:ITEMS-ETMCC project team(lTE M5-ETMCC项目组)5. 1. 2.12 消息提交组织的电话号码(可选属性)定义:消息提交组织的电话号码(包括电话号码的国家编码、地区编码)示例:1. 202. 777. 7
26、777 5.1.2.13 用户(可选属性)定义z具有使用数据登记簿权限的用户名称示例:aneDoe 5. 1. 2. 14 视图消息组名J(可选属性)定义:根据消息性质指定的消息组名称或数字标识描述:一条消息可能同时属于多个消息组注释:在使用时该元数据属性用于记录、描述信息或说明信息的组织结构,但该属性并非正式的信息模板分类表。示例:Roadside alerts(路侧报警)5.1.2.15 同义描述性名称(可选属性)定义:描述性名称不同,但表达同一消息的消息名称。描述:该属性只有在两条消息的语义相同,且有同一消息体时才使用。注释.同义的描述性名称只在必要时引人。示例:消息TravelersA
27、dvisory可能会有一个同义的描述性名称TravelersAlert。5. 1. 2. 16 同义描述性名称的环境(如果已定义同义描述性名称,则为必选属性,否则对消息不适用)定义:使用同义描述性名称的ITS领域。示19tJ: Provide Vehicle Monitoring and Control 8 GB/T 28425-2012 5.2 消息属性5.2. 1 必选属性5.2. 1. 1 消息标识符定义:消息的惟-ASN.l对象标识,描述见附录A。示例:运输通信接口专用规范(TheTransit Communications lnterface Profile -TCIP)中定义了一条
28、公共交通(NTCIP 1401v. 01. 08 B2J)消息:CptStopPoint.它的消息对象标识为cpt16. 。这条消息完整的对象标识如下z(iso (1) identified-organization (3) dod (6) internet (1) private (4) enterprises (1) nema (1206) transportation (4) tcip (3) cpt (1) cptstoppoint (16) 或13 6 1 4 1 1206 4 3 1 16 5.2. 1.2 元数据源描述:用于说明描述和解释数据元素的元数据的具体来源,它的值包含了消
29、息体中的数据实示例。该属性的默认值为direct(直接),该值假设接收系统知道所有发送的数据的含义,该含义基于所有数据元素都符合在ITS功能域数据字典和/或ITS数据登记得中的定义。Indirect(间接)表示消息实示例中至少包含一些接收系统不能识别的数据元素,这些数据是由MST兼容格式以外的系统所定义。在此情况下,在消息体规范中的元数据源要对所有未在ITSDR中数据元素给出定义,这些定义要参考外部数据源(示例:如没有在ITS领域中使用的数据字典或注册表)。Embedded(嵌入)表示消息实示例中包含在ITS功能域数据字典和/或ITS数据登记簿中没有的、也不在外部数据源中的数据元素的元数据(作
30、为消息体的一部分)。如果在这种情况下制定规范,元数据就要在消息体规范中定义。如果事先不知道元数据(就是说一些特定的消息,其数据和元数据只有在消息创建时才能确定),需要预先为此数据定义(embedded勺的占位符。这个消息实示例则应包含一个数据元素的嵌入规范。至于如何实现则根据具体的消息实现环境不同而变化。例如:一个描述自身的数据系统。在适当的定义了参考数据或嵌入元数据时,该属性值可定义为direct/indirect/ em bedded 示例:一-Direct(直接h-一一lndirect(间接h一-Embedded(嵌入)。5.2.2 可选属性5.2.2.1 优先级定义z确定消息是否收到优
31、先级要求,如果是,就需要定义优先级模式和/或消息的优先级。描述:指定优先级或者元优先级。如果具有优先级,这种属性也被用来指定优先级模式和/或消息的优先级,默认的是无优先级。注释:有一种全球ITS优先级模式可在ITS消息广播中使用。对于特定的消息集或消息组可能会有其他的优先级模式。在消息规范中应当考虑这些模式的相关知识。无线消息可能是roundrobin(轮询)优先级模式的备选方案,即重要的消息在任何时间都可以发送,而次重要的消息只能在时间允许的时候发送。在这种情况下的优先级模式将有两个值:紧急模式和时间允许模式。9 GB/T 28425-2012 示lJ: 一一优先级,紧急和时间允许z-一优先
32、级,紧急/正常/低;一一优先级,1-10(10是最高级h一一元优先级。5.2.2.2 频率/消息模式定义:表示消息实例预计发生的速率或次数,周期型消息的模式。描述:说明消息实例是周期型、事件驱动型或用户驱动型。如果为周期型消息实例,消息集开发者所提供的说明书中会有关于频率或者频幅的内容。本属性允许多选,例如,周期型和事件驱动型。示例:一一周期型,20s; 一一事件驱动型;一一用户驱动型。5.2.2.3 发送确认定义:表示任何消息实例都可能/确定要返回收到的确认信息。可包括重试规则。描述:使用时应定义确定还是可能。消息集的开发者应向使用者提供如何使用该属性的用户手册。示lJ: 一一确定,关键的金
33、融交易,4h后重试。一一确定,当确认发生交通事故Traffic _ incident时发送此信息。5.2.3 扩展属性用户可按应用需求,按以上方式定义扩张属性。5.3 配置管理在不改变消息含义的条件下,通过版本管理反映实际情况的变化。如果消息变化太大以至其含义发生了改变,定义消息的责任方应撤销旧消息,并用新的消息替代(新消息具有不同的消息标识)。在这种情况下,应该建立旧信息与代替它的新信息之间的参照关系。属性相关数据概念(Relateddata concept)和关系类型(Relationshiptype)用来表示这种参照关系。10 G/T 28425-2012 附录A(资料性附录)消息的指导
34、原则及示例A.1 ASN.1旬法的使用基本的ASN.1结构如下:a) TYPE(类型):定义将数据单元打包形成消息的方式。消息本身也应表示成一个TYPE结构。组成消息的数据单元也可表示成TYPE结构(见下文的IDENTIFIER)。所有的TYPE都应给定一个符合ASN.l的句法的名称。b) IDENTIFlER(标识符):应使用一个与给定消息类型相关联的标识符,对消息中的每个数据单元加以标识。IDENTIFIER应属于ASN.1中的名称(来自ITS功能领壤的数据字典和(或)ITS数据登记簿)。还可通过一个映射到相应标识符的类型结构,可连同对消息中的数据元素进行标识。在此情况下,类型参考应用描述
35、性名称(来自可用的ITS功能领域数据字典和(或)ITS数据登记簿)来进行规范化。c) SEQUENCE(序列):用Sequence Type (序列类型)对有序数据元素组进行说明,具体如下:1) OPTIONAL(可选),DEFAULT(默认):序列中的每一个数据单元,都可用可选和(或)默认结构来进行声明。被声明为可选的数据元素可能会出现在序列的一个给定的序列实示例中,也可能不会。而被声明为默认的数据单元,其默认值应按ASN.1句法来定义。一个给定的序列实示例,若没有对其某个指定为默认值的数据单元赋值,那么它的值将被定义为默认值。2) ElementSetSpec(数据元素集合运算):数据元素
36、集通过以下几种数据集运算方式形成时,该结构被用来说明序列中的数据集合,这儿种运算方式是:与运算,或运算和非运算。注1:不同的数据单元序列组成了不同的逻辑消息,因此与之相关的消息标识符也各不相同。注2:对于元确定序列的数据元京(即数据元素的排序并不重要)的消息,其数据元京可通过SEQUENCE(序列)结构以任意次序标识。在此情况下,可以加上如下注释z本序列各数据单元概念不相关,被定义的数据单元序列已经是一个逻辑序列。也可以这么注释:对于给定的消息,数据单元应以一个元序表的形式(如一个集合进行元序概念化处理,如果此点非常重要,ASN.l集合结构应按SEQUENCE结构进行元序化。d) SET(集合
37、):数据单元的概念上的无序组合应该用SetType(集合类型)来说明。任何一种以下的集合运算都可在组成集合的数据单元上执行,这几种运算方式是:与运算、或运算和非运算。如果消息的数据单元没有事先定义,接收系统应使用另一种方式才能解释消息实示例。在此情况下,发送中的消息应在消息实示例中定义同消息实示例中的数据单元值相对应的数据单元列表,否则接收消息系统将无法确认哪些数据单元确定是属于消息实示例的。e) CHOICE(选择):说明可选的数据元素。即在选择声明中,通过在数据单元中给定值域,以及该数据单元对另一类型的依顿关系(如另一个数据单元),对CHOICE(选择)类型的制约条件进行说明。f) SEQ
38、UENE OF(关于的序列)和SIZE(容量)结构:某个序列中的重复数据元素、另一个序列中的数据元素重复序列,都应用与SEQUENCEOF结构相关联的SIZE结构来声明。若数据项的循环是元序的,且这种无序是概念上的无序,那么应该用SETOF(关于的集合)结构来代替SEQUENCEOF结构。如果某个数据元素组经常性地出现在多个消息体的说明中,可用数据概念类型数据帧来建立一个单一的涉及整个组的数据概念。这个组可能是11 GB/T 28425-2012 sequenceC序歹们、setC集合)、sequenceof C关于的序列)、setof、(关于的集合)或者choiceC选择)。数据帧有一个AS
39、N.l名称,一个描述性名称,以及其他一些与之相关的最小属性。使用数据帧可提供有效的捷径,对于消息用户而言,在某些情况下使用组合的名称有比单独的数据元素名称更丰富的含义。数据帧仅仅是一个用户定义的结构类型,按照ASN.l句法里的类型参考来定义。g) OPTIONAL WITH COMPONENTSC可选性的制约条件):用OPTIONALWITH COMPO NENTS来定义序列的相关性,以表示其制约条件。h) IMPORTS FROMC导人来源):若数据元素的元数据由外部数据注册表定义,可用IMPORTSFROM结构间接将其合并(依照参考)到消息体定义中。关键词FROM后面的模块标识符应出现在导
40、出模块的顶部,即需要和外部数据注册表进行协调,以确保所参考的数据格式与ITSMST兼容。i) CommentsC备注):Comments结构可包含在任何消息的说明中,仅用于注释消息;该结构在消息定义中没有正式含义。Comments以双连字号开始,以双连字号或者新的一行结束。Comments可被放在行中,也可直接嵌入它们所注释的行下面。A.2 ASN.1旬法使用示例typeC类型,一种typereference)和identifierC标识符)用来联系数据单元同它们打包形成的消息,使用ASN.l句法和典型的ASN.l缩进格式。示例:typereference: =SEQUENCE or CHOI
41、 identif ier 1 optional data ele皿四ttypereference, identifier 2 optional data element typerefer自lce,identifier n optional data el四enttypereference 就格式而言,后面的括号也可单独放在一行,表达式的缩进量同它所包括的结构相关。以上面的示例为示例,下面的表达式也是合法的。示lJ: identif ier n optional data el四enttypereference 某些消息可能是类消息,即消息体的部分或所有组成元素(如数据单元)在消息定义中被表示
42、为高级对象类。在此情况下,实际上也可用来组成消息实示例的子类可用CHOICE结构来定义。示例zGetRequest:=SEQUEN臼(request-type TypeOfRequest where Location ) . . TypeOfRequest: : = CHOICE roadStatus RoadCondition 四StatusEmergencies 在此示例中,数据元素在消息的首序列中的位置,指明了可被消息请求的通信块的类型。该请求可能为请求获得道路条件、紧急情况、或其他与交通相关的通信内容。在上示例中,第二个序列总是数据元素的位置。然而,这个数据元素可能也含有大量其他的可能
43、,它也可用CHOICE结构来声明。在某些情况下,序列中第二个数据元素可能会随第一个序列位置的变化而变化。在此情况下,可指定对数据12 GB/T 28425-2012 元素嵌套序列的选择。在某序列中的循环数据元素和在另一序列中数据元素的循环序列,都以与SEQUENCEOF结构相关联的SIZE结构来声明。示1:B: =SEQUENCE SIZE (10) OF且且: = SEQUENCE v扛1VehicleIdentificationNumber , age且ge对于在一个范围内变化的循环,除了下面这种情形,句法同上所述:B: =SEQUENCE SIZE (5. .10) OF且类型参考A既可
44、以是单一的数据元素,也可是一个数据元素序列。长消息序列中的局部序列应以类型A的方式定义,然后依照参考来嵌套。换而言之,每一个嵌套序列都应通过一个单独的类型定义来处理。ASN.1允许这样的嵌套序列直接嵌入行中。然而,这种情况比起(子序列用单独的类型陈述来定义而言,将降低其可读性和持续性。一个序列之内的从属性可用OPTIONALWITH COMPONENTS来声明,以表明其制约条件。示例:且:=SEQUEN臼age OPTIONAL (田工THCOMPO阻NTS(vin P阻SENT,age PRESENT) 同样,象vinPRESENT, manufactureDate ABSENT这样的条件可
45、用此类方式来说明。A.3 定义消息体(用ASN.1)的指南及示例A. 3.1 将ITS数据字典描述性名称转换成ASN.1名称在ITS数据字典中,用ASN.lName的元数据属性描述ASN.l一致性名称,该元数据属性(ASN. 1 Name)对所有数据元素都具有强制性。ASN.1命名规则如下:ASN.l中可组成名称的字符集是:AZ,az,连字符,09;一一类型参考名应以大写字母开头;一一标识符应以小写字母开头;一一名称(如某个类型参考或者标识符中不能含有两个或者两个以上的连续连字符,也不能以连字符开始或结束;一一命名时不能超过最大规定长度。示例:PersonnelInfo:=SEQ田NCE na
46、me PersonNa皿e,age且.ge,address HomeAddress PersonName: =VisibleString (S工ZE(1.64) 且ge:=INTEGER (0. .160) HomeAddress: =VisibleString (SIZE(1. .100) 或者也可以这样表示,PersonnelInfo: =SEQUENCE n四eVisibleString (S工ZE(1.64) , 13 GB/T 28425-2012 age INTEGER (0. .160). address VisibleString (SIZE(l. .100) Personne
47、lInfo , PersonN ame, Age,和HomeAddress是类型参考;name,age,和address是标识符。当类型参考仅做为媒介使用时,字段名(在ITS数据字典术语中)的类型参考可被省略。对于ITS消息,数据类型和字段元数据都在数据字典中给出。这个示例用C语言来描述为ztypedef char PersonNarr叫65J;typedef uns igned short Age; typedef char HomeAddresslOlJ; typedef struct PersonName n缸ne;且geage; HomeAddress address; Personn
48、ellnfo; 将ITS数据字典里数据单元的描述性名称转换成ASN.l一致性名称的过程如下:a) 来自数据字典描述性名称的实体型术语转换方式是:将所有字母都是大写的术语转化成只有首字母是大写的术语(其他字母转化为小写字母)。去掉术语中的任何连字符,包括为了修饰而用做分隔符的连字符。修饰符要被放在整个类型的前面,而不是后面。术语可作为一条单独的ASN.l类型参考,以避免当需要它时会产生混淆,可当成描述特性术语的类型参考的一部分使用,在后面的情况里,要去掉在实体型术语和特性术语之间的下划线,在实体型术语和特性术语之间可以加一个连字符,来代替被去掉的下划线。b) 来自数据字典描述性名称的特性术语转换方式是:从第一个字母是大写的术语转化到所有的字母都为小写。依照复合词的生成规则,在复合词中加上连字符(除非连字符本身已经存在)。这样,该术语就成为一个ASN.l的标识符。如果特性术语在ASN.l中,以序列里的字段名或者标识符的方式被明确表示,则显示一个可选的过度状态。最小化时,它可被看作同实体类型相关的序列里的字段名或标识符。当特性术语在数据字典中时,它也以同样的方式被转化,但