一种ODX标签类管理方法、系统及电子设备和存储介质技术方案

技术编号:20160455 阅读:29 留言:0更新日期:2019-01-19 00:13
本申请公开了一种ODX标签类管理方法、系统及一种电子设备和计算机可读存储介质,该方法包括:通过识别所述XSD文件中的关键字得到所有标签类的类名和成员变量类;根据所述标签类的类名和成员变量类生成每个所述标签类对应的结构体。本申请提供的ODX标签类管理方法,能够对XSD文件进行解析,通过识别其中的关键字得到各标签类的类名,以及与各标签类有关系的其它标签类,并为每个标签类建立结构体。该结构体中包含该标签类的类名和成员变量类,清晰的体现了各标签类之间的关系。由此可见,本申请提供的ODX标签类管理方法通过XSD文件中的关键字实现了ODX标签类的自动识别与管理。

【技术实现步骤摘要】
一种ODX标签类管理方法、系统及电子设备和存储介质
本申请涉及计算机
,更具体地说,涉及一种ODX标签类管理方法、系统及一种电子设备和一种计算机可读存储介质。
技术介绍
ODX(英文全称:OpenDiagnosticDataExchange)是一种开放式的诊断数据格式,用于车辆全生命周期中诊断数据的交互。随着汽车行业的不断发展,ODX得到了越来越多的应用。目前,最新版本的ODX为2.2.0,整个ODX数据模型分为ODX-D、ODX-C、ODX-V、ODX-E、ODX-FD、ODX-F及ODX-M等各层,在应用ODX时,需要对各标签类的关系进行整理。在现有技术中,一般采取手工方法,即逐个查看XSD(中文全称:XML结构定义,英文全称:XMLSchemasDefinition)文件进行整理,XML(中文全称:可扩展标记语言,英文全称:ExtensibleMarkupLanguage)是一种用于标记电子文件使其具有结构性的标记语言。但是由于涉及XSD文件四百多个类,许多类又有着一些同样的父类,工作量比较大,而且容易遗漏不易于验证,ODX标签类管理效率较低。因此,如何提高ODX标签类的管理效率是本领域技术人员需要解决的问题。
技术实现思路
本申请的目的在于提供一种ODX标签类管理方法、系统及一种电子设备和一种计算机可读存储介质,提高了ODX标签类的管理效率。为实现上述目的,本申请提供了一种ODX标签类管理方法,包括:获取XSD文件;通过识别所述XSD文件中的关键字得到所有标签类的类名和成员变量类;根据所述标签类的类名和成员变量类生成每个所述标签类对应的结构体。其中,所述成员变量类包括所述标签类的基类和组合聚合类。其中,还包括:确定所述XSD文件的每个诊断层对应的目标标签类,并根据所述目标标签类对应的结构体为所述诊断层建立标签类结构。其中,所述确定所述XSD文件的每个诊断层对应的目标标签类,包括:识别所述XSD文件中的XML标签得到每个所述诊断层;识别每个所述XML标签中的关键字得到每个所述诊断层对应的所述目标标签类。其中,所述识别每个所述XML标签中的关键字得到每个所述诊断层对应的所述目标标签类,包括:通过每个所述XML标签中的关键字得到每个所述诊断层直接使用的直接标签类;递归查询所述直接标签类的结构体得到所述直接标签类所有的成员变量类;将所述直接标签类和所述直接标签类所有的成员变量类作为所述目标标签类。其中,根据所述目标标签类对应的结构体为所述诊断层建立标签类结构之后,还包括:通过比较所有所述标签类结构体,确定所有所述诊断层的公共类、每个所述诊断层的特有类。其中,还包括:通过比较所有所述标签类结构与所有所述标签类的结构体,得到所有所述诊断层均没有使用的标签类。为实现上述目的,本申请提供了一种ODX标签类管理系统,包括:获取模块,用于获取XSD文件;识别模块,用于通过识别所述XSD文件中的关键字得到所有标签类的类名和成员变量类;生成模块,用于根据所述标签类的类名和成员变量类生成每个所述标签类对应的结构体。其中,所述成员变量类包括所述标签类的基类和组合聚合类。其中,还包括:建立模块,用于确定所述XSD文件的每个诊断层对应的目标标签类,并根据所述目标标签类对应的结构体为所述诊断层建立标签类结构。其中,所述建立模块包括:识别单元,用于识别所述XSD文件中的XML标签得到每个所述诊断层;确定单元,用于识别每个所述XML标签中的关键字得到每个所述诊断层对应的所述目标标签类。其中,所述确定单元包括:第一确定子单元,用于通过每个所述XML标签中的关键字得到每个所述诊断层直接使用的直接标签类;查询子单元,用于递归查询所述直接标签类的结构体得到所述直接标签类所有的成员变量类;第二确定子单元,用于将所述直接标签类和所述直接标签类所有的成员变量类作为所述目标标签类。其中,还包括:第一确定模块,用于通过比较所有所述标签类结构体,确定所有所述诊断层的公共类、每个所述诊断层的特有类。其中,还包括:第二确定模块,用于通过比较所有所述标签类结构与所有所述标签类的结构体,得到所有所述诊断层均没有使用的标签类。为实现上述目的,本申请提供了一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述ODX标签类管理方法的步骤。为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述ODX标签类管理方法的步骤。通过以上方案可知,本申请提供的一种ODX标签类管理方法,包括:获取XSD文件;通过识别所述XSD文件中的关键字得到所有标签类的类名和成员变量类;根据所述标签类的类名和成员变量类生成每个所述标签类对应的结构体。本申请提供的ODX标签类管理方法,能够对XSD文件进行解析,通过识别其中的关键字得到各标签类的类名,以及与各标签类有关系的其它标签类,并为每个标签类建立结构体。该结构体中包含该标签类的类名和成员变量类,清晰的体现了各标签类之间的关系。由此可见,本申请提供的ODX标签类管理方法通过XSD文件中的关键字实现了ODX标签类的自动识别与管理。本申请还公开了一种ODX标签类管理系统及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例公开的一种ODX标签类管理方法的流程图;图2为本申请实施例公开的另一种ODX标签类管理方法的流程图;图3为本申请实施例公开的又一种ODX标签类管理方法的流程图;图4为本申请实施例公开的一种ODX标签类管理系统的结构图;图5为本申请实施例公开的一种电子设备的结构图;图6为本申请实施例公开的另一种电子设备的结构图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。在现有技术中由于采用手工方式导致ODX标签的识别与管理效率较低,因此在本申请中,根据XSD文件中的关键字对标签类进行自动识别,还可以根据关键字确定各标签类的基类和成员变量类,即确定各标签类之间的关系,并为每个标签类建立结构体,各便签类之间的关系清晰明了。本申请实施例公开了一种ODX标签类管理方法,提高了ODX标签类的管理效率。参见图1,本申请实施例公开的一种ODX标签类管理方法的流程图,如图1所示,包括:S101:获取XSD文件;S102:通过识别所述XSD文件中的关键字得到所有标签类的类名和成员变量类;此处的XSD文件可以为odx2.2.xsd标准规则文件,关键字例如XSD文件中“<xsd:”、“complexType”、“name”、“type”、“minOccurs”、“maxOccurs”、“};”、“class”等。本文档来自技高网...

【技术保护点】
1.一种ODX标签类管理方法,其特征在于,包括:获取XSD文件;通过识别所述XSD文件中的关键字得到所有标签类的类名和成员变量类;根据所述标签类的类名和成员变量类生成每个所述标签类对应的结构体。

【技术特征摘要】
1.一种ODX标签类管理方法,其特征在于,包括:获取XSD文件;通过识别所述XSD文件中的关键字得到所有标签类的类名和成员变量类;根据所述标签类的类名和成员变量类生成每个所述标签类对应的结构体。2.根据权利要求1所述ODX标签类管理方法,其特征在于,所述成员变量类包括所述标签类的基类和组合聚合类。3.根据权利要求1所述ODX标签类管理方法,其特征在于,还包括:确定所述XSD文件的每个诊断层对应的目标标签类,并根据所述目标标签类对应的结构体为所述诊断层建立标签类结构。4.根据权利要求3所述ODX标签类管理方法,其特征在于,所述确定所述XSD文件的每个诊断层对应的目标标签类,包括:识别所述XSD文件中的XML标签得到每个所述诊断层;识别每个所述XML标签中的关键字得到每个所述诊断层对应的所述目标标签类。5.根据权利要求4所述ODX标签类管理方法,其特征在于,所述识别每个所述XML标签中的关键字得到每个所述诊断层对应的所述目标标签类,包括:通过每个所述XML标签中的关键字得到每个所述诊断层直接使用的直接标签类;递归查询所述直接标签类的结构体得到所述直接标签类所有的成员变量类;将所述直...

【专利技术属性】
技术研发人员:刘均周辉濂
申请(专利权)人:深圳市元征科技股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1