通过数据名称命名实现数据自携带特征信息的方法及装置
技术领域
本发明涉及一种数据名称的命名方法及实现装置,特别是涉及通过数据名称实现数据自携带特征信息的方法及实现装置。
本发明方案应用于信息技术领域,特别是物联网应用领域和智能控制领域。
背景技术
随着信息技术的高速发展,各种应用系统大量涌现,有两个挑战越来越明显:一是,各种应用系统之间的互联互通的瓶颈已经不在数据通信上甚至不在协议标准上,几乎任何通信协议之间都可以方便地转换,更多的瓶颈在数据背后的算法逻辑上,因为互联互通的目的不只是停留在互相“看见”对方的数据值,互联互通的目的是要实现各个自治系统的协同运行!如果各自系统内存在大量定制的数据处理算法,即便数据集中也难以实现协同运行。二是,任何一个比较复杂的应用系统一旦有数据增减或数据之间的关系定义发生变动,系统的修改工作量很大,而且往往对已经稳定运行的系统的准确性和可靠性更是难以预估的影响和打击。
这些问题越来越突显,本质是人们采集的数据量越来越庞大,数据之间的关系也越来越复杂。数据和对数据的处理是信息技术的重要的基础工作,任何数据都是要在所在系统被加工、处理和利用的。此时,降低数据关系设计维护成本和代价,实现数据自主协同和数据处理算法共享是解决问题的抓手。
人们在设计数据时已经明确了每一个数据的特征属性,数据的功能、数据来自哪里服务于哪里,都已明确,遗憾的是人们一直在用各种技术另外再去定义和描述数据之间的复杂关系,实际上数据名称本身就是一个记载和传递数据特征信息的非常理想的载体!本发明方案总体构思就是让数据通过名称自携带它的特征信息。
本发明方案涉及到数据结构中树形结构的方法,为了统一技术名词,本方案借用了如下关于“树形结构”的描述中的相关术语:
树形结构指的是数据元素之间存在着“一对多”的树形关系的数据结构,是一类重要的非线性数据结构。在树形结构中,树根结点没有前驱结点,其余每个结点有且只有一个前驱结点,前驱结点也可称为父结点。叶子结点没有后续结点,其余每个结点的后续节点数可以是一个也可以是多个,同一结点的后续结点也可称为兄弟结点。另外,树形结构可表示层次关系,可表示从属关系、并列关系。
有关“数据结构”的技术知识已广泛见诸信息技术专业教科书和互联网电子百科等公开资料中。
现有相关的技术方案中数据名称本身只作为检索主键,通常采用数字串或字符串保证唯一性即可,通常另外配有文字名称便于人类阅读。
有一些可能相关的技术方案通常对数据的内容进行了约定,携带了一些字符本身之外的信息,例如我国对“居民身份证号码”这一数据的内容规定了特定的编排格式,再如互联网的 IP 地址的内容编排要求。
在互联网应用领域,有一些技术或方法为了信息便于传输,规定了信息从自有系统向外界传输时添加信息头或节点编码的方法,此类方案要求每一个节点的编码必须是全网唯一的,目的主要是便于寻址,并不涉及数据在应用层面的处理算法。
申请人未能查找到与本发明方案接近的现有技术,没有找到关于通过数据名称命名与数据特征相关联的技术方案。
发明内容
本发明基于“将描述数据‘是谁’和‘来自哪里’或‘用在哪里’这类最根本的数据特征信息直接记载到数据名称上,让数据名称自携带特征信息”这一总的发明构思公开了几种相关方法及装置。
本发明方案将以往在数据库表或数据结构中描述和定义数据之间复杂关系的特征信息“嵌入”到数据名称上,形成了数据关系信息的承载、处理和传达的全新模式,不但提高了应用系统的设计、开发效率,规范了数据处理算法或逻辑的设计方式,更是明显提升了系统的运行可靠性、可维护性和开放性,方便了独立系统的互联互通和协同运行,有显著的开拓意义。
本领域现有技术遇到这样几个主要问题:
数据之间的关系另外通过数据结构和 / 或数据库进行描述和定义,设计和修改维护这样的数据关系的代价越来越高;
共享程度较高的数据处理程序对数据关系的使用和依赖程度较高,因而应用需求或数据关系的修改维护对系统运行的稳定性影响越大;共享程度较低的数据处理程序对数据关系的使用和依赖程度较低,因而数据关系的修改维护对系统运行的稳定性影响不大,但是需求变动导致 数据处理逻辑的修改工作量很大,对系统稳定性的影响同样不容忽视;
物联网应用时代,由于采集数据量非常庞大,传统方案描述和使用数据之间关系的设计和实现越来越困难。
事实是,一个数据的初始设计和数据设立本身已经准确描述了这个数据在系统中的功能属性和从属关系,只是这些关系和属性信息没有让数据自己携带而是人们在设计数据关系时才另外 考虑,信息的“传、载”无形中多了很多环节也因此产生了很多不必要的问题。应该换个思路解决这些问题了。
本发明所采用的技术方案包括:
1 、一种数据名称的命名方法,包括数据、应用数据的系统、所述系统中的数据的属性的描述、所述系统中的数据的从属关系的描述、所述系统可识别的字符集以及树形结构表示方法,其特征在于,所述数据名称的命名方法是将所述数据的属性特征符与所述数据的从属关系中的结点特征符通过所述系统可识别的分隔方式按照所述系统约定的顺序连接而成;
2 、所述一种数据名称的命名方法,其特征在于,从所有所述数据的属性的描述中提取出所述系统包含的全部数据的属性特征,去除重复项后给每一个所述属性特征匹配一个唯一的所述属性特征符并形成属性特征符集合库,任一所述数据名称中的属性特征符部分是由所述属性特征符集合库中的属性特征符或者多个不相同的属性特征符通过所述系统可识别的分隔方式连接构成;
3 、所述一种数据名称的命名方法,其特征在于,根据所有所述数据的从属关系的描述形成所述系统及其所属全部子系统的一个树形结构图,所述树形结构图中每一个结点对应一个所述系统或者所述子系统,给每一个所述系统或者所述子系统匹配一个唯一的所述结点特征符,仅要求具有相同父结点的兄弟结点对应的所述结点特征符之间不得重复,将所有所述结点特征符去除重复项后形成结点特征符集合库,任一所述数据名称中的结点特征符部分是由所述结点特征符集合库中的结点特征符或者多个不相同的结点特征符通过所述系统可识别的分隔方式连接构成;
4 、所述一种数据名称的命名方法,其特征在于,所述系统可识别的分隔方式采用所述系统可识别 的字符集中的单个所述系统可识别的分隔字符构成并分设两种不同的分隔符,其中包括名称分隔符用于连接任意两个所述结点特征符或者用于连接所述属性特征符和所述结点特征符,还包括属性分隔符专用于连接任意两个所述属性特征符,用于所述名称分隔符和所述属性分隔符的两个不同的所述系统可识别的分隔字符在所述系统内统一约定,同时一旦选定两个字符作为所述分隔符则这两个字符均不得出现在所述属性特征符或者所述结点特征符中;
5 、所述一种数据名称的命名方法,其特征在于,所述系统约定的顺序是以所述数据的所述属性特征符部分作为所述数据名称的起始单元并按照自右至左或者自左至右的顺序方向通过所述名称分隔符再依次将所述数据直接从属的结点对应的所述结点特征符以及该所述结点的前驱结点对应的所述结点特征符直至根结点对应的所述结点特征符连接成所述数据名称,所述顺序方向一旦在所述系统内约定后不再变换。
6 、一种关联数据的查找方法,包括输入的待查找数据名称、应用数据的系统、在所述系统内按照数据名称查找并获取数据内容的基本方法以及常用循环处理方法,其特征在于,对所述系统内的所有数据名称按照所述一种数据名称的命名方法进行命名,将所述待查找数据名称代入所述循环处理方法的开始步骤,即在所述系统中调用所述按照数据名称查找并获取数据内容的基本方法,如果没有查找到该所述待查找数据或者其内容为空,则将该所述待查找数据名称中与所述属性特征符部分直接通过一个所述名称分隔符连接的那个结点特征符及其名称分隔符剪切掉,重新连接并生成一个新的待查找数据名称代入所述循环处理方法的开始步骤并继续循环处理;其中还包括,在任一循环处理过程中,当所述基本方法获取到的所述待查找数据名称的内容不为空时,则停止继续循环查找并退出所述关联数据的查找方法同时输出此时的所述待查找数据名称及其内容;当在任一循环处理过程中,经过所述剪切后的所述待查找数据名称中已经没有所述结点特征符时,则停止继续循环查找并退出所述关联数据的查找方法同时输出一个空值。
7 、一种数据与通用数据处理算法名的自动匹配方法,包括数据、应用数据的系统、待匹配数据名、所述系统中的数据处理算法的功能和输入与输出数据的描述及所述数据处理算法名,其特征在于,对所述系统内的所有数据名称按照所述一种数据名称的命名方法进行命名,根据所述数据处理算法的功能和输入与输出数据的描述形成一个特征对照表包括算法名、输出特征和输入特征分别对应所述数据处理算法名、所述输出数据属性特征符和所述输入数据属性特征符,建立一个初始内容为空的算法对照表包括输入数据名、输出数据名和算法名,将所述待匹配数据名分解为所述结点特征符部分和所述属性特征符部分,将所述属性特征符部分进一步分解为不可分割的单个所述属性特征符,然后将分解后获得的各个所述属性特征符在所述特征对照表中的输出特征栏下逐一查找,有返回时提取对应的所述数据处理算法名和所述输入数据属性特征符,然后根据所述待匹配数据名中的所述结点特征符部分与提取的所述输入数据属性特征符这两部分特征信息,在所述系统中的所有数据名中逐一查找比对,当任一数据名中完全包含所述这两部分特征信息时则为一个所述数据处理算法的输入数据名,此时将该所述任一数据名作为输入数据名、所述待匹配数据名作为输出数据名及所述数据处理 算法名作为算法名汇集作为一条记录加入到所述算法对照表中,然后继续查找比对;遍历所述系统中的所有数据作为所述待匹配数据名执行本方法上述步骤,则完成所述数据与通用数据处理算法名的自动匹配。
8 、一种数据名称的生成装置,包括待生成数据名的输入数据、应用数据的系统、输入数据的属性和从属关系的描述及所述系统可识别的字符集,其特征在于,根据所述输入数据的属性和从属关系的描述中的特征关键字,由数据属性特征符选择装置从属性特征符集合库中提取所述数据的属性特征符,由数据结点特征符选择装置从结点特征符集合库中提取所述数据的结点特征符,然后由数据名称连接装置按照所述系统选定的连接顺序方向,将所述属性特征符与所述属性特征符之间用属性分隔符连接,将所述属性特征符与所述结点特征符之间或者两个相邻的所述结点特征符之间用名称分隔符连接,输出自携带特征信息的数据名称。
本方案采用了一种全新的体现数据之间相互关系的特征信息的承载和传达模式,取得了如下明显效果:
(1) 大量减少了数据关系的设计与定义工作,显著提高了应用系统的设计、开发效率;
(2) 常用、重要的数据特征在数据名称中记载和被解析使用,明显提升了系统的运行可靠性、可维护性和开放性;
(3) 借助数据名称的规范化设计,也有助于规范数据处理算法或逻辑的设计方式;
(4) 数据不论发送到哪一级系统,数据名始终保持唯一性并自携带协同信息,是实现独立系统 互联互通和协同运行的新手段;
(5) 一种新的数据设计与管理方式,一种新的智能控制系统设计与扩展方式。
附图说明
图 1 为数据从属及子系统从属关系树形结构示意图
图 2 为本申请技术方案中数据名称自右至左命名的结构示意图
图 3 为本申请技术方案中数据名称自左至右命名的结构示意图
图 4 为本申请技术方案中一种特例的数据名称的结构示意图
图 5 为本申请技术方案中一种数据名称的生成装置结构示意图
具体实施方式
以下方案说明中括号“ () ”内的文字是一些示意性的例子,借鉴专业教材中的讲解方法,目的是为了使相关技术人员能更好、更快地理解方案的原理和方法,并非表示本发明方案只适用于这些举出的具体示例,特此说明。
本发明方案核心的构思之一是根据数据的设计定义或描述提取出数据的属性特征并命名为“属性特征符”,再提取出数据的从属路径特征命名为“结点特征符”,将这两类“特征名”用分隔符连接成一体,以此作为数据的名称!具有这样名称的数据自携带了上述“特征”,是实现系统内和系统之间信息协同处理的一种便捷的新方向和新方式。
本发明方案有几个重要特点:
一是,数据通过它的名称自携带了充分的特征信息使得信息协同无处不在、无时不有;任一数据在设计和设立之初必然要明确所述属性特征和结点特征,这两类特征体现了一个数据非常 充分的特征信息;而用于定义数据之间复杂关系的各种技术手段最根本的依据也是这两类特征,因此采用所述属性特征和结点特征命名数据名称使数据名称承载了足够充分的特征信息;
二是,不要求全球或全网统一制定编码体系,按照本方案命名的数据名称具有“天生”的唯一性,因为在任何一个不可分的最小子系统中不可能出现两个或以上具有相同功能属性的数据,即“作用”一样、“目的”一样、“来源”一样那只能是一个数据,同样在同一个系统中也不能直接下辖两个或以上完全相同的子系统 ( 例如一座建筑内有两个编号、位置等完全相同的房间 ) ,如果有也只能说明系统的设计还有缺陷,由此,按照本方案,任意两个数据名,不论在同一从属路径上还是在不同的从属路径分支上,属性特征符 + 从属路径上的结点特征符中至少有一个特征符不相同,从根本上保证了以本发明方案命名的数据名的唯一性;
三是,正是因为在本方案中不同的数据名称中存在大量同名的所述特征符,才使得数据的协同处理与算法共享成为可能 ( 例如一座建筑内有若干房间,房间都包含相同属性特征的数据如“实测温度”、“平均温度”、“设定温度”等,要使得“温度处理算法”在各个房间共享,就必须保证这些相同属性的数据名称具有相同的属性特征符如都叫“实测温度”或“设定温度”等,更进一步,要保证这些编号不同的房间都有一个同名的父结点特征符叫“房间”,不论是在一层或其它楼层都有“房间”这个结点特征符,如此,当任一房间的“实测温度”直接去触发同一个算法程序时,由于在算法程序里,程序能根据触发数据名称中的结点特征符获知这是一个“房间”的“实测温度”,而且知道是哪个房间编号的,随即把同样房间的“设定温度”数据值取来,进行比较、运算,得出结论并指令这个房间的设备启停,实现了自协同! ) ,这将开启智能协同的一种新模式;
四是,依据本发明方案所公开的总体构思和技术方案,本领域技术人员很容易在具体应用中进行发挥,例如,通过对本方案所述的数据名称中不同连接位置中的一个或一组特征符实施剪切、替换和指定添加三种名称重构手段,即能实现对数据非常灵活、可靠和高效的处理和利用效果;
五是,按照本发明方案对所述系统内所有数据名称进行命名,还有一个灵活特点,即,如果某一数据永远只可能出现并用于某一结点以下的子系统分支,那么这个数据名称中则不需要包含这个所述某一结点以上的结点对应的结点特征符;类似,如果所述系统内某一个数据要发送 到更高一级的应用系统时,只需做到这两点:一,要保证这个数据当前所在系统的根结点的结点特征符不能与更高一级系统中的兄弟结点对应的结点特征符重名,否则意味着更高一级的系统中将有两个相同的子系统分支,不符合逻辑;二,这个所述的某一个数据在升入更高一级的系统时该所述数据的从属结点路径有了延伸,相应地该所述数据的数据名称上也应按约定添加新的结点特征符即可;由此看出,按照本发明方案实施的数据名称命名机制能够使得所述系统具有很好的开放性和可集成性。
以下结合附图说明本发明技术方案的实施方式:
1 、一种数据名称的命名方法,包括数据、应用数据的系统、所述系统中的数据的属性的描述、所述系统中的数据的从属关系的描述、所述系统可识别的字符集以及树形结构表示方法,其特征在于,所述数据名称的命名方法是将所述数据的属性特征符与所述数据的从属关系中的结点特征符通过所述系统可识别的分隔方式按照所述系统约定的顺序连接而成;
任何数据在设立之初必须明确该数据的功能、作用、属性,数据的基本属性或表示单位 ( 如姓名、温度、开关等 ) ,是什么样的数据 ( 学生姓名、设定温度、实测温度、启停开关等 ) ,一旦在所述系统中设立了一个数据,那么这个数据的上述这些属性特征就是明确的和确定的,同样,所述数据的从属关系的描述也必然在数据设计之时明确和确定,从所述数据的属性的描述中必定包括数据的功能、属性、用途和处理方式 ( 如它的计算或显示的单位是摄氏温度℃、湿度%还是中文姓名或者体重 kg 等 ) 方面的信息和关键词,技术人员很容易简单变换或分拆就可以提取出属性特征,再赋予一个名称即为所述数据的属性特征符;同样,对于所述结点特征符,不论从所述数据的从属结点路径上提取还是借助所述树形结构图,容易确定每个结点所代表的子系统的作用,提取结点特征并赋予名称即为所述结点特征符;有了命名数据名称的要素,就需要一种方式把它们连接起来而且还能够辨识或拆分,因此所述系统可识别的分隔方式是有效的连接方式;按照本发明方案命名数据名称目的是为了让数据自携带特征信息并被辨识和利用,因此需要约定连接的规则包括顺序,简单说,要怎样利用特征信息就要怎样约定规则;
2 、所述一种数据名称的命名方法,其特征在于,从所有所述数据的属性的描述中提取出所述系统包含的全部数据的属性特征,去除重复项后给每一个所述属性特征匹配一个唯一的所述属性特征符并形成属性特征符集合库,任一所述数据名称中的属性特征符部分是由所述属性特征符集合库中的属性特征符或者多个不相同的属性特征符通过所述系统可识别的分隔方式连接构成;
根据系统可识别、技术人员易读和字符数最少这样的原则给每一个所述数据属性特征命名一个属性特征符,所述系统内的所有所述属性特征符不得重名并形成属性特征符集合库;建立所述属性特征符集合库是为了从全局层面进一步审视所述属性特征符的合理性并为后续新增加数据的名称命名提供要素,所述属性特征符的作用是为了和数据处理算法相呼应 ( 例如有一种专门运算“平均”数值的算法,则属性特征符就应该将“平均温度”分为“平均”和“温度”,此时这类数据的属性特征符部分至少由两个独立的属性特征符“平均”和“温度”构成 ) ;每一个所述数据的属性描述中提取出的所述属性特征有一个或者多个,取决于在所述系统中的数据处理算法如何利用或匹配这些所述属性特征 ( 如前述示例,属性特征如“学生姓名”、“设定温度”、“实测温度”和“启停开关”,或者为“学生”、“姓名”、“设定”、“实测”、“温度”、“启停”和“开关” ) ,需要注意的是,提取所述系统内每一个数据的所述属性特征后,会出现一些相同的特征 ( 如前述示例中的“温度” ) ,此时应合并同类项,保证所述属性特征符集合库中没有重复的特征;
3 、所述一种数据名称的命名方法,其特征在于,根据所有所述数据的从属关系的描述形成所述系统及其所属全部子系统的一个树形结构图,所述树形结构图中每一个结点对应一个所述系统或者所述子系统,给每一个所述系统或者所述子系统匹配一个唯一的所述结点特征符,仅要求具有相同父结点的兄弟结点对应的所述结点特征符之间不得重复,将所有所述结点特征符去除重复项后形成结点特征符集合库,任一所述数据名称中的结点特征符部分是由所述结点特征符集合库中的结点特征符或者多个不相同的结点特征符通过所述系统可识别的分隔方式连接构成;
当一个数据疑似有多个从属点时实际是两种情况,一是这个数据实际上应该复制出多个数据分别从属到需要这个数据内容的那些多个子系统对应的结点上,二是这个数据是多个子系统在各自处理算法中都需要用到的数据,由此,不论以上两种情况中的哪一种,所述的这个 数据都从属到那些所述多个子系统共同汇集到的那个最近的结点上;在所述系统的树形结构图中每一个结点都对应一个实体的或者虚拟的子系统 ( 在各种应用系统中子系统也包括子设备、子区域和子模块等 ) ,在所述树形结构图中允许存在多个相同的子系统出现在不相邻的结点上,必要时通过增加虚拟结点这种常用技术手段可以保证最终形成所述系统的一个所述树形结构图;同样,根据系统可识别、技术人员易读和字符数最少这样的原则给所述树形结构中每一个结点对应的子系统或者根结点对应的所述系统命名一个结点特征符,合并同类项形成所述结点特征符集合库;在所述树形结构图中假如具有相同父结点的兄弟结点所代表的子系统没有区别,那说明系统设计有缺陷,所以合理的系统中兄弟结点所代表的子系统有不同点,那么给它命名的结点特征符就不应重名,任意两个所述结点只要没有直接共同的父结点,这两个所述结点允许对应同一个所述结点特征符,当然这要根据所述系统的设计需要,正是因为在本方案的所述树形结构中允许出现相同或者相似功能的结点,才使得所述系统内的信息协同成为必要和可能,相同或者相似功能的所述子系统才会有也必定有相同或者相似的数据处理算法,必然要求算法共享和信息协同;所述系统内任一数据必须从属并且只能从属于一个所述树形结构中的结点,所述树形结构中任一叶子结点至少统属或称下辖一个数据;建立所述结点特征符集合库是为了有新数据出现并需要命名时能够保证命名规则的一致性;存在这样的情况,为了能够实现数据处理算法共享及信息协同,在设计制作所述树形结构图过程中,必要时添加虚拟结点对具有相同或相似数据处理要求的兄弟结点进行汇集 ( 例如一座多层建筑内各层的房间应先汇集到每层虚拟的子系统“房间”上,再前驱到某层的结点,如“ 201# ”和“ 202# ”都前驱“房间”再前驱“二层”,这样在处理“ 201# ”的数据时程序能自动获知“ 201# ”属于“房间”功能类 ) ;
4 、所述一种数据名称的命名方法,其特征在于,所述系统可识别的分隔方式采用所述系统可识别 的字符集中的单个所述系统可识别的分隔字符构成并分设两种不同的分隔符,其中包括名称分隔符用于连接任意两个所述结点特征符或者用于连接所述属性特征符和所述结点特征符,还包括属性分隔符专用于连接任意两个所述属性特征符,用于所述名称分隔符和所述属性分隔符的两个不同的所述系统可识别的分隔字符在所述系统内统一约定,同时一旦选定两个字符作为所述分隔符则这两个字符均不得出现在所述属性特征符或者所述结点特征符中;
信息系统往往都规定有系统可识别的分隔符字符集,从中挑选两个字符分别作为所述名称分隔符和所述属性分隔符即可,采用单个字符作为所述分隔符,从系统对所述名称的解析效率上及可读性方面都是更有意义的方案;单独设立所述属性分隔符能够不影响名称解析时快速区分所述属性特征符部分和所述结点特征符部分,能快速定位所述数据直接从属的结点特征符;
5 、所述一种数据名称的命名方法,其特征在于,所述系统约定的顺序是以所述数据的所述属性特征符部分作为所述数据名称的起始单元并按照自右至左或者自左至右的顺序方向通过所述名称分隔符再依次将所述数据直接从属的结点对应的所述结点特征符以及该所述结点的前驱结点对应的所述结点特征符直至根结点对应的所述结点特征符连接成所述数据名称,所述顺序方向一旦在所述系统内约定后不再变换。
按照中文描述从属路径的习惯是自左至右从根结点到叶子结点,因此通常所述顺序方向从所述属性特征符开始则应是自右至左的顺序方向;所述顺序方向的选定主要是为了所述系统的设计维护人员阅读方便考虑,只要是先从所述属性特征符部分开始再连接所述结点特征符并且所述结点特征符按照从所述数据的从属结点开始至根结点对应的所述结点特征符的顺序连接,则能保证所述系统处理所述数据名称时有最好的运行效率;另外,当遇到多个所述属性特征符时,所述属性特征符也有连接顺序的问题,从方便信息协同的作用考虑,表示所述数据 的最根本属性或指明数据显示或运算单位的所述属性特征符作为数据名称中最端头的起始单元 ( 例如“温度”、“压力”、“成绩”、“开关”等 ) ,这类细节处理的原则都是为了匹配和呼应数据处理应用中的对应方式,后面如何应用前面就相应设计,对本领域技术人员来讲都能够按各自系统的需要处理。
6 、一种关联数据的查找方法,包括输入的待查找数据名称、应用数据的系统、在所述系统内按照数据名称查找并获取数据内容的基本方法以及常用循环处理方法,其特征在于,对所述系统内的所有数据名称按照所述一种数据名称的命名方法进行命名,将所述待查找数据名称代入所述循环处理方法的开始步骤,即在所述系统中调用所述按照数据名称查找并获取数据内容的基本方法,如果没有查找到该所述待查找数据或者其内容为空,则将该所述待查找数据名称中与所述属性特征符部分直接通过一个所述名称分隔符连接的那个结点特征符及其名称分隔符剪切掉,重新连接并生成一个新的待查找数据名称代入所述循环处理方法的开始步骤并继续循环处理;其中还包括,在任一循环处理过程中,当所述基本方法获取到的所述待查找数据名称的内容不为空时,则停止继续循环查找并退出所述关联数据的查找方法同时输出此时的所述待查找数据名称及其内容;当在任一循环处理过程中,经过所述剪切后的所述待查找数据名称中已经没有所述结点特征符时,则停止继续循环查找并退出所述关联数据的查找方法同时输出一个空值;
给定一个数据名称,在信息系统内查找,如不存在这个数据名则返回空,如有设个数据名但其 值为空则也返回空,类似这样的程序实现本领域技术人员很容易实现;现有信息技术方案中不能使用“猜测”的方法去试探出某一个预期的数据是否存在于所属系统,因为无法根据返回有或没有而进一步给出下一个需要“猜测”的数据名;这个所述关联数据的查找方法的意义在于可以非常方便和灵活地实现个性化的参数设置 ( 举例说明如,一座多层建筑内各个房间都需要用相同数据处理算法调控房间的温度,全楼有一个统一的“设定温度”参数,顶层三层有本楼层统一但不同于全楼的的房间“设定温度”参数,个别房间也允许设定本房间专用的“设定温度”参数,例如获取 303 房间的“设定温度”参数的过程是:假设初始待查找数据名称形如 ( 假设名称分隔符为 *) :楼名 * 三层 * 房间 *303* 设定温度,通过本方案所述关联数据的查找方法,如返回为非空,说明 303 房间有本房间专用的“设定温度”参数,如返回空,则剪切掉“ 303* ”后,待查找数据名称形如:楼名* 三层 * 房间 * 设定温度,返回空,继续找:楼名 * 三层 * 设定温度,有返回说明三层有自己的“设定温度”参数,假如进入冬季后三层不再需要设立自己的“设定温度”参数,此时清空该数值或删除该数据,系统冬季运行时三层房间的“设定温度”自然就取到全楼的:楼名 * 设定温度 ) ,此示例表明,按照本发明方案,数据处理算法不需要针对不同对象做任何不同的设定或改变,一个完全一样的数据处理算法即能够实现灵活的、个性化的数据处理效果!从这个方案中能够进一步理解所述属性特征符放在名称的起始端头的意义、所述数据从属结点路径上的结点特征符按层级顺序连接以及 分设名称分隔符和属性分隔符的作用;本领域技术人员比较容易在本发明方案基础上在具体应用中进行发挥,例如,通过对本方案所述的数据名称中不同连接位置中的一个或一组特征符实施 剪切、替换和指定添加三种名称重构手段,即能实现对数据非常灵活、可靠和高效的处理和利用效果,各种类似的应用方案扩展应该从系统运行的最优效率的视角考虑取舍和改变,不应为了区别而区别。
7 、一种数据与通用数据处理算法名的自动匹配方法,包括数据、应用数据的系统、待匹配数据名、所述系统中的数据处理算法的功能和输入与输出数据的描述及所述数据处理算法名,其特征在于,对所述系统内的所有数据名称按照所述一种数据名称的命名方法进行命名,根据所述数据处理算法的功能和输入与输出数据的描述形成一个特征对照表包括算法名、输出特征和输入特征分别对应所述数据处理算法名、所述输出数据属性特征符和所述输入数据属性特征符,建立一个初始内容为空的算法对照表包括输入数据名、输出数据名和算法名,将所述待匹配数据名分解为所述结点特征符部分和所述属性特征符部分,将所述属性特征符部分进一步分解为不可分割的单个所述属性特征符,然后将分解后获得的各个所述属性特征符在所述特征对照表中的输出特征栏下逐一查找,有返回时提取对应的所述数据处理算法名和所述输入数据属性特征符,然后根据所述待匹配数据名中的所述结点特征符部分与提取的所述输入数据属性特征符这两部分特征信息,在所述系统中的所有数据名中逐一查找比对,当任一数据名中完全包含所述这两部分特征信息时则为一个所述数据处理算法的输入数据名,此时将该所述任一数据名作为输入数据名、所述待匹配数据名作为输出数据名及所述数据处理 算法名作为算法名汇集作为一条记录加入到所述算法对照表中,然后继续查找比对;遍历所述系统中的所有数据作为所述待匹配数据名执行本方法上述步骤,则完成所述数据与通用数据处理算法名的自动匹配。
任何数据处理算法一定有各自明确的功能设计以及输入和输出数据的定义;所述通用数据处理 算法是指数据处理算法中的输出数据能够根据数据名中所述属性特征符定位,不需借助所述数据部分或全部从属路径上的所述结点特征符实现输出数据定位,即,需要借助部分或全部从属路径上的所述结点特征符实现输出数据定位的所述数据处理算法是部分数据专属的数据处理算法;以上强调的是输出数据的定位,不能用输入数据去判断,这些应不难理解;对于不完全是所述通用数据处理算法,也能采用本发明方案所述方法,局部做一下变 通或调整,例如在属性特征符的基础上增加部分所述数据从属路径上的所述结点特征符辅助于查找比对过程,即能扩大匹配对象,即可以对非完全通用的所述数据处理算法也能实现与其相关数据的自动匹配;现有技术方案已经能够充分地将共享和共用的数据处理算法抽象出来独立封装,但在调用这些独立封装的算法时,仍需要有一段程序专门用于对象数据的预处理工作,以便为独立封装的算法准备好所有输入数据值和输出数据名或目标地址,这部分工作尚无法完全自动;本发明方案的构思是,所述系统内已经有了功能明确的独立封装算法(例如“计算平均值”的通用算法,必有多个输入、一个输出),所述系统内必有数据是这些所述独立封装算法的输出数据或称目标数据(如“某楼某层房间303#的平均温度”及“某楼某层房间101#的平均温度”等),这些所述数据一定与所述独立封装算法中的输出数据具有相同的特征(如都有“平均”这个特征标记),此时从原理上讲即可以把所有具有所述相同特征的数据找出,认定它们是所述独立封装算法的输出数据,然后通过这个所述独立封装算法反过来定位所有的输入数据(如已知“平均”+“温度”是多个“实测”+“温度”计算得到,因此通过“某楼某层房间303#”和“实测”+“温度”这两部分特征信息就能在系统中查找到其它形如“某楼某层房间303#A位置实测温度”和“某楼某层房间303#B位置实测温度”等用于计算指定输出数据所需的多个相对应的输入数据),并自动形成一个输入数据名、算法名和输出数据名的算法对照表,在所述系统运行中,当采集到任一数据值改变时,系统自行在这个所述算法对照表中查找,找到则表明要调用对应的算法,同时能够根据具有相同的算法名和输出数据名来进一步定位该算法所对应的其它输入数据名;如此,本发明方案所述一种数据与通用数据处理算法名的自动匹配方法能够保证通用算法设计实现后,系统自动查找相应的输入输出数据名,包括当系统新加入数据后,不需要变更或添加任何程序代码,只需要运行一次本发明方案所述方法即可完成数据与相应数据处理算法的自动匹配!可见本发明方案所述方法的强大功能和重要意义。
根据本发明方案所述方法和实施例,本领域技术人员能够实施更多灵活、简捷和有效适应各自需要的应用例。
图1为数据从属及子系统从属关系树形结构示意图,用于示意说明所述树形结构图的形成和结点特征符的形成方法,图中结点数目、层级数量和数据从属位置等示意信息不代表本方案只能在相同树形结构的系统中实施。图中包括:所述系统中的任一数据25必定从属一个结点,其中任一叶子结点如结点11至少下辖一个数据,非叶子结点如结点6可以不直接下辖数据,根结点1的后继结点2、结点3和结点4分别对应不同的子系统,其中所述系统内的数据25在所述树形结构中的从属路径结点依次是结点11、结点5、结点2和根结点1,当结点5和结点7代表的子系统具有相同数据处理功能时则结点5和结点7对应的所述结点特征符应同名。
图2为本申请技术方案中数据名称自右至左命名的结构示意图,所述数据名称的命名从右端所述属性特征符1开始,任意两个所述属性特征符1和2之间由所述属性分隔符7连接,所述属性特征符2与所述结点特征符3之间由所述名称分隔符6连接,所述结点特征符3是所述数据直接从属的结点对应的所述结点特征符,然后依次通过所述名称分隔符6连接至根结点对应的所述结点特征符5,形成一个完整的所述数据名称。
图3为本申请技术方案中数据名称自左至右命名的结构示意图,所述数据名称的命名从左端所述属性特征符1开始,任意两个所述属性特征符1和2之间由所述属性分隔符7连接,所述属性特征符2与所述结点特征符3之间由所述名称分隔符6连接,所述结点特征符3是所述数据直接从属的结点对应的所述结点特征符,然后依次通过所述名称分隔符6连接至根结点对应的所述结点特征符5,形成一个完整的所述数据名称。
图4为本申请技术方案中一种特例的数据名称的结构示意图,所述数据名称至少包括一个所述属性特征符1、一个所述结点特征符5和一个所述名称分隔符6。
图5为本申请技术方案中一种数据名称的生成装置结构示意图,所述一种数据名称的生成装置10以数据属性特征符选择装置2、数据结点特征符选择装置4和数据名称连接装置8为主要部件构成,其中还包括,属性特征符集合库3为数据属性特征符选择装置2提供生成所述数据名称所需的属性特征符,结点特征符集合库5为数据结点特征符选择装置4提供生成所述数据名称所需的结点特征符,名称分隔符和属性分隔符选择器7为数据名称连接装置8提供设定好的名称分隔符和属性分隔符,顺序方向选择器6为数据名称连接装置8设定特征符连接的顺序方向;该所述一种数据名称的生成装置10工作时,根据数据描述1提取有关于所述数据的属性特征符和结点特征符的关键字,然后通过数据属性特征符选择装置2和数据结点特征符选择装置4分别获得生成所述数据名称全部必须的属性特征符和结点特征符作为加工原料,最后通过数据名称连接装置8按照相关设定生成所述数据名称9。