一种基于语义的物联网物品信息跟踪和追溯方法\n技术领域\n[0001] 本发明属于信息技术领域,尤其涉及一种基于语义的物联网物品信息的跟踪与追溯方法。\n背景技术\n[0002] 随着信息技术的迅速发展,RFID技术、传感器技术和嵌入式智能技术为网络服务提供了基础的“信息传感器”,将通过物质世界极大程度地数字化,将物质世界中的物质流动过程和虚拟世界中的信息处理的过程有效地结合起来。物联网通过装置在物体上的各种信息传感设备,如RFID装置、红外感应器、全球定位系统、激光扫描器等等,赋予物体智能,并通过接口与互联网相连而形成一个物品与物品相连的巨大网络。通过为每一个物品赋予一个唯一的电子标识,就可以基于RFID等自动识别和数据采集技术将物品流动的过程与信息流动的过程结合起来,并通过与互联网相连的信息服务器提供对应该唯一电子标识的物品的全部信息。融合了RFID技术、传感器技术和嵌入式智能技术,物联网将任何时间、任何地点人与人之间交互的互联网拓展延伸到人与物、物与物之间交互新维度。其最终目标不仅是为每一件物品建立唯一的、开放的标识,更重要的是依靠高效的信息获取和信息交换,实现信息在物品价值链相关者(供应链上下游、行业监管部门等)之间及时、准确、方便的共享和交互,在对物品进行单品实时跟踪的同时,还能够促进整个供应链的优化,提高生产效率。\n[0003] 随着生产力水平和社会物质水平的提高,企业、消费者以及社会相关管理部门都迫切希望能够掌握每件产品的来龙去脉,从而实现对产品质量/安全的严格把关。通过对物品信息的跟踪和追溯,提供物品从源头到消耗使用的全生命周期信息,是物联网公共服务体系价值的重要体现。通常来说,物品跟踪是指从物品流经的上游至下游,跟随一个特定的物品单元或一批产品所运行的路径,获得路径上各个环节的重要信息的能力,例如:对于蔬菜和肉类产品的跟踪,指获得其从种植、饲养到加工、包装销售各个环节相关信息的能力,这一能力对于召回对人类健康有威胁的产品,具有重要的意义。物品追溯则是指从供应链的下游至上游,识别一个特定的单元或一批产品的来源的能力,即通过记录标识的方法回溯某个实体来历的能力。物品追溯对于发现质量问题,落实问题责任具有重要的意义。通过实施有效、准确的物品跟踪与追溯,不仅可以确定原料或部件的来源、产品的加工历史、产品配送过程中的流通和位置,还可以为用户提供某个时间和空间范围内定性和定量的对海量物品信息的快速查找方式。\n[0004] 更加便捷和透明化的信息获取模式使企业信息系统不再局限于企业内部的局部应用,而不断向企业价值链的上下游延伸拓展,从集中式的闭环本地后台信息系统逐渐发展成为广域、分布、开环、综合的复杂系统——物联网应用。开环物联网应用往往涉及跨越企业边界、区域甚至国界的多个参与者,各类数据分布异构。随着应用需求的不断增加,需要能够透明地获取和处理来自海量数据源中的有用数据,实现多个软硬件系统以及不同信息源之间的互操作。这就需要建立异构系统之间信息共享和交换的物品信息模型,用以描述物联网应用中所有物品相关的需要共享和交换的数据。现有的物品信息模型虽然可以应用在存货跟踪、事务自动处理、供应链管理、机器操纵和物对物通讯等方面,但是由于是以物品唯一电子标识作为索引,因此很难满足每个企业、每个行业的需要。如EPC global的EPC信息网络体系中以EPC编码作为索引,使用物理标识语言(PML)作为数据交换的基础。\n物理标识语言分为核心层(PML Core)与扩展层(PML Extension)两部分,其核心层用于描述由RFID前端采集的数据,包括位置信息、传感信息等,扩展层则用于提供与RFID系统相关的业务事件的描述。PML只能记录标记有唯一电子标识的物品和其所处环境最基本的物理属性,但对于物品流通过程中的复杂编码信息交换,或者从上游至下游的跟踪以及从下游至上游的追溯则无能为力。\n[0005] 例如在很多典型开环供应链应用中,原材料供应商、生产商、第三方物流商、分销商和零售商等按照物品流动的前后顺序关系相互联,系构成了供应链的多个参与节点。携带电子标识的物品从起点开始,在各个参与节点之间顺序流动。但是物流期间由于在制造、配送、分销、零售等不同物流节点上的加工、组装、装箱、分拆等操作,带来物品标识基本承载体的变化,使标识物品的电子标签的形态和标签中的数据都可能发生改变。例如:在生产商节点某单件商品由6个零件组装构成,在经过生产商节点后,原有的6个零件的物品标识被一个新商品的标识所替代;在分销商节点将30件商品装入一个包装箱,500个包装箱装又装入一个集装箱内运输,使原有的商品标识被隐含在包装箱或集装箱的标识中。如此等等,在绝大多数典型的物联网应用中,很难保证物品流通过程中“可见”的(系统中记录的)电子标识从始至终的唯一性。因此,如果仅根据单一电子标识(如某个零件或某个包装箱的唯一电子标识)进行信息交换、跟踪与追溯,那么由于组装、装箱、分拆等物流操作造成物流过程中该标识被隐藏,使信息跟踪与追溯只能获得由该标识标记的片段,而无法得到完整的物品信息。\n[0006] 针对开环物联网应用中物流操作造成物品唯一编码在物流过程中被隐藏的常见模式,需要一种能够利用分布在物品各个流通过程中的信息片段,最终拼接出包含物品从原材料、加工、运输、销售直到使用全生命周期过程关键信息的完整记录的物品信息跟踪与追溯方法。这种方法既是将物品流动与信息流动的过程结合起来实现信息增值的重要手段,也是产品防伪、食品安全监管等重要社会性应用的技术支撑。\n发明内容\n[0007] 为了解决现有技术在开环物联网应用中随着物流操作使物品的形态发生变化,监管的对象信息也随之发生改变,如组装操作使原来的多个物品标识被隐含到组装形成的新物品标识中,从而带来的信息跟踪断链问题,本发明的目的是提供一种基于语义的物联网物品信息跟踪与追溯方法。\n[0008] 为达成所述目的,本发明的一方面是提供一种利用物联网物品信息跟踪系统,实现基于语义的物联网物品信息跟踪方法的步骤包括如下:\n[0009] 步骤1:查询物品信息的用户在物品流通过程的起始节点或某一个中间节点通过物品信息跟踪与追溯客户端输入需要跟踪的物品唯一编码,发起针对该唯一编码物品的跟踪查询请求;\n[0010] 步骤2:在物品信息跟踪与追溯服务器上,将发起物品信息跟踪请求的节点作为被查询的当前节点,将物品唯一编码作为被查询物品编码,使用由被查询物品编码和当前节点上的信息服务器地址组成的二元值对作为对当前查询节点的标识;\n[0011] 步骤3:物品信息跟踪与追溯服务器使用当前节点的二元值对标识中所提供的被查询物品编码作为参数,按照当前节点标识中所提供的信息服务器地址调用当前节点提供的信息服务,查询在当前节点上标签属性值为被查询物品编码的物品信息记录;\n[0012] 步骤4:物品信息跟踪与追溯服务器从调用当前节点信息服务获取的物品信息记录中提取当前节点的节点类型,并从操作属性中标识物品去向的去往语义标签中提取其中记录的下游信息服务器地址以及去往下游的物品编码的数据,将这些数据加入到一个待查询列表的头部;所述待查询列表由多个二元值对组成,其中的每个二元值对由下游物品编码和下游信息服务器地址构成,并以栈的形式存储该待查询列表;\n[0013] 步骤5:当从去往语义标签中提取的数据已全部被加入到待查询列表中,物品信息跟踪与追溯服务器将当前节点的状态设置为已访问,并将当前节点的标识加入到一个已访问列表中;\n[0014] 步骤6:物品信息跟踪与追溯服务器从待查询列表中弹出位于栈首的元素,所述栈首元素是一个由下游物品编码和下游信息服务器地址构成的二元值对,判断该元素是否已存在于已访问列表中,如果在已访问列表中已经存在,表示该元素标识的节点已经被访问过,抛弃该元素,重复步骤6,否则进行步骤7;\n[0015] 步骤7:物品信息跟踪与追溯服务器检查从待查询列表中弹出的元素,如果弹出的元素为空值,说明待查询列表中已经没有等待查询的内容,物品信息跟踪过程已经完成,转步骤8,否则,将从待查询列表栈首弹出的元素作为新的当前节点的标识,转步骤3;\n[0016] 步骤8:物品信息跟踪与追溯服务器对按上述步骤从物品流经的各个节点所获取的物品流通过程相关信息进行整合,获得整合信息,将整合后的信息发送给发起跟踪查询请求的物品信息跟踪与追溯客户端。\n[0017] 其中:所述物品信息包括对物品流通过程中流经的不同节点分别使用不同的标记进行标注;并在每个物品流经的节点上,对静态的标签属性、物品属性和动态的物流操作事件属性、状态属性及流向属性分别建立对应的语义标签进行存储,并使用物品的唯一编码建立索引;所述节点具有不同类型,所述节点类型是起点节点、流经节点、组装节点、分拆节点和终点这五种类型之一。\n[0018] 其中:所述物品唯一编码是由物品流通环节的各个节点为经过该节点的物品赋予的有规则的数字及符号的组合,其规则保证该数字及符号的组合不会在任何其它物品上出现。\n[0019] 其中:所述物品信息服务器地址是IP地址、网址、数据库指针或文件路径。\n[0020] 其中:所述操作属性是提供对物品在流通过程中所经历的物流业务事件的名称、时间、操作人员,以及物品在业务过程中的状态和流动去向信息的描述,是动态的信息,针对不同应用具有不同的电子档案扩展语义结构。\n[0021] 其中:所述标识物品去向的去往语义标签是提供物品从当前节点所去向的下游节点的物品信息存储位置,即所述信息服务器地址,以及在当前节点由于加工再造、分拆和组装这三类物流操作带来物品唯一编码一对一、一对多或多对一的映射转换关系。\n[0022] 其中:所述从操作属性的去往语义标签中所提取的记录的下游信息服务器地址以及去往下游的物品编码的数据,对于起点、流经节点和组装类型的节点,该数据是一个由下游物品编码和下游信息服务器地址构成的二元值对;对于分拆类型的节点,该数据是多个由下游物品编码和下游信息服务器地址构成的值对;而对于终点,则该数据为空值。\n[0023] 为达成所述目的,本发明的第二方面是提供一种利用基于语义的物联网物品信息跟踪的追溯方法,该追溯方法包括以下步骤:\n[0024] 步骤S1:查询物品信息的用户在物品流通过程的终止节点或某一个中间节点通过物品信息跟踪与追溯客户端输入需要跟踪的物品唯一编码,发起针对该唯一编码物品的追溯查询请求;\n[0025] 步骤S2:在物品信息跟踪与追溯服务器上,将发起物品信息追溯请求的节点作为被查询的当前节点,将物品唯一编码作为被查询物品编码,使用由被查询物品编码和当前节点上的信息服务器地址组成的二元值对作为对当前查询节点的标识;\n[0026] 步骤S3:物品信息跟踪与追溯服务器使用当前节点的二元值对标识中所提供的被查询物品编码作为参数,按照当前节点标识中所提供的信息服务器地址调用当前节点提供的信息服务,查询在当前节点上标签属性值为被查询物品编码的物品信息记录;\n[0027] 步骤S4:物品信息跟踪与追溯服务器从调用当前节点信息服务获取的物品信息记录中提取当前节点的节点类型,从操作属性中标识物品来源的来自语义标签中提取其中记录的上游信息服务器地址以及对应的上游物品唯一编码的数据,将这些数据加入到一个待查询列表的头部,所述待查询列表由多个二元值对组成,其中的每个二元值对由上游物品编码和上游信息服务器地址构成,并以栈的形式存储该待查询列表;\n[0028] 步骤S5:当从来自语义标签中提取的数据已经被全部加入到待查询列表后,物品信息跟踪与追溯服务器将当前节点的状态设置为已访问,并将当前节点的标识加入到一个已访问列表中;\n[0029] 步骤S6:物品信息跟踪与追溯服务器从待查询列表中弹出位于栈首的元素,所述栈首的元素是一个由上游物品编码和上游信息服务器地址构成的二元值对,判断该元素是否已存在于已访问列表中,如果在已访问列表中已经存在,表示该元素标识的节点已经被访问过,抛弃该元素,重复步骤S6,否则进行步骤S7;\n[0030] 步骤S7:物品信息跟踪与追溯服务器检从查待查询列表中弹出的元素,如果弹出元素为空值,说明待查询列表中已经没有等待查询的内容,物品信息追溯过程已经完成,转步骤S8,否则,将从待查询列表栈首弹出的元素设为新的当前节点的标识,转步骤S3;\n[0031] 步骤S8:物品信息跟踪与追溯服务器对按上述步骤对从物品流经的各节点所获取的物品流通过程相关信息进行整合,获得整合信息,将整合后的信息发送给发起追溯查询请求的客户端。\n[0032] 其中:所述标识物品来源的来自语义标签是提供对于当前节点上某物品所来自的上游节点的物品信息存储位置为信息服务器地址,以及在当前节点由于加工再造、分拆和组装这三类物流操作带来物品唯一编码一对一、一对多或多对一的映射转换关系。\n[0033] 其中:所述从操作属性的来自语义标签中所提取的记录的上游信息服务器地址以及对应的上游物品唯一编码的数据,对于终点、流经节点和分拆类型的节点,该数据是一个由上游物品编码和上游信息服务器地址构成的二元值对;对于组装类型的节点,该数据是多个由上游物品编码和上游信息服务器地址构成的值对;而对于起点,则该数据为空值。\n[0034] 本发明的有益效果是:使用本发明的方法,上游节点可随时获得产品的流向信息,在出现质量事故时也可实施准确的产品召回;而下游节点可迅速地判断物品来历,在出现质量事故时也可快速地追查责任原因。利用操作语义标签所提供的上下游物品编码的映射关系,实现从节点信息片段到物品全生命周期信息的拼接,解决开环物联网应用中,物流操作造成物品唯一编码在物流过程中被隐藏时无法查找完整记录的问题。\n附图说明\n[0035] 图1为本发明提供的一种物品流通过程中标识物品的电子编码随物品或其包装形态变化而发生改变的示意图。\n[0036] 图1a为对图1所示物品流通过程的抽象描述图。\n[0037] 图2为本发明提供的物联网物品信息跟踪系统示意图。\n[0038] 图3为本发明提供的一种基于语义的物联网物品信息跟踪方法的流程图。\n[0039] 图4为本发明提供的一种基于语义的物联网物品信息追溯方法的流程图。\n[0040] 图5为本发明提供的一个具体实施例的物品流通过程的全生命周期抽象描述图。\n具体实施方式\n[0041] 为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。\n[0042] 本发明提供一个物联网物品信息跟踪系统以及在该系统基础之上的一种基于语义的物联网物品信息跟踪方法及追溯方法。该方法以射频识别(RFID)电子标签对物品的唯一标识为基础,将物品流经的节点分为起点、终点、流经节点、组装节点、和分拆节点五种类型,将物品信息使用标签属性、节点属性、物品属性和操作属性等不同的语义标签进行标注,并分布地存储于物品流经的各个节点上,使物品的跟踪与追溯过程可以根据语义标签提供的节点语义和操作语义获得物品在加工再造、分拆或组合前后的编码映射关系,并能够根据语义标签所提供的上下游节点关系和物品信息的访问地址,从相关节点提取的需要信息片段,最终按照物品流经关系拼接形成物品全生命周期的完整信息。\n[0043] (一)物品流通过程描述\n[0044] 附图1为本发明提供的一种物品流通过程中标识物品的电子编码随物品或其包装形态变化而发生改变的示意图。图中示意了物联网中最常见的商品流通过程,包括:制造商节点甲1、制造商节点乙2、分销商节点甲3、分销商节点乙4、零售商节点甲5、零售商节点乙6、零售商节点丙7、消费者8,以及产品9、产品10、产品11、产品12和包装运输箱13,其中制造商节点生产的每一件产品均采用唯一电子编码进行标识,经分销商节点配送到零售商节点销售,最终流入消费者手中。附图1示意了:制造商节点甲1生产的产品9、产品10分别以唯一编码UID1和唯一编码UID2标识,制造商节点乙2生产的产品11、产品12分别以唯一编码UID3和唯一编码UID4标识;使用唯一编码UID1标识的产品9由分销商节点甲\n3配送给零售商节点甲5;使用唯一编码UID4标识的产品12由分销商节点乙4配送给零售商节点丙7;来自制造商节点甲1编码为UID2的产品10和来自制造商节点乙2编码为UID3的产品11均通过分销商节点甲3配送给零售商节点乙6,分销商节点甲3将编码为UID2的产品10和编码为UID3的产品11这两件产品打包到一个以唯一编码UID5标识的包装运输箱13中,配送到零售商节点乙6;在零售商节点乙6处,再将运输箱13拆包,得到标识为唯一编码UID2和唯一编码UID3的产品10和产品11,最终将其销售给不同的消费者8。\n[0045] 如图1所示的物品流通过程中,产品在从源头到消费者流动时由于打包、分拆等物流操作的作用,导致物品的形态、物品标识的载体和标识携带的数据(物品编码)多次发生改变。现有依靠物品唯一编码进行检索的物品信息跟踪方法,只能得到图1中出现该唯一编码环节的信息片段,而无法为使用者提供产品全生命周期过程所有关键信息的完整记录。例如在附图1中,消费者采用现有依赖于物品唯一编码的信息跟踪方法追溯标志为唯一编码UID2的产品10的信息,则只能获得标记为UID2的产品10来自零售商节点乙6的信息片段,由于在零售环节的上游产品10的唯一编码UID2被隐含在包装运输箱13中,现有方法因为缺乏对编码变更关系的考虑而无法将存在关联关系的信息片段拼接成为物品的全生命周期信息链,在出现质量事故时,将难以迅速追查责任原因,并对同样可能出现事故的其它产品实施准确召回。\n[0046] 带来物品标识变化的途径可基本归结为三种:其一是分拆——一个大件的物品被拆分成多个更小的物品,每一个新物品将被分配新的标签,例如猪肉生产过程中,整猪被分解为各个不同部位贴标销售;其二是组合——多个物品被打包成为一个更大的单元,合并后被分配给一个新的唯一编码,这在物品货运过程中十分常见,例如打包、集装箱货运;三是再造,即一个物品经过重新加工后成为一件新的物品,在加工的过程中物品的形态已经发生了很大的变化,不能再用加工前的唯一编码来表示,例如将一块原木加工为一张圆桌,或将一块石头加工为一件工艺品。\n[0047] 基于以上所述三种途径,本发明将附图1所示物联网物品流通过程中涉及的节点\n1-7抽象为如图1a所示的:起点14、流经节点15、组装节点16、拆分节点17和终点18五种类别,得到对物品流通过程的抽象描述。利用RFID的识别能力和数据获取能力收集分布在物品各个流经节点上的信息片段,并通过建立分拆、组合和再造操作所带来物品编码变更的前后映射关系,实现物品全生命周期信息链的拼接。\n[0048] 各类节点上物品标识的变化关系如下:\n[0049] 流经节点15:流经关系,物品只流经,除了入库、出处等物流操作外,不对物品进行加工操作,物品编码在通过节点前后保持一致,流经关系是一种一对一定关系;\n[0050] 组装节点16:组装关系,多个部件被组装形成一个新的物品,是一种多对一的关系,例如冰箱由压缩机、柜体、柜门组装形成。\n[0051] 拆分节点17:拆分关系,一个物品被分解成为多个更小的新物品,是一种一对多的关系,例如一头整猪被分解成为:内脏、前腿、后腿、排骨等等部件被贴标销售。\n[0052] 起点14:物品从无到有经生产和制造产生,只有输出的物品,无输入物品和上游节点,是物品信息追溯的源头。\n[0053] 终点18:与起点相反,物品从有到无被消耗,只有输入的物品,无输出的物品和下游节点,是物品信息跟踪的终点。\n[0054] 以上五类节点和三种基本关系,是物品流通过程中存在的基本关系,例如前文所述的“再造”操作节点,可以用只有一个部件的一类特殊组装关系或拆分关系来描述。其它更为复杂的关系,则可通过上述三种基本关系的组合获得。例如包装运输关系可由组装→流经→分拆组合表达:被运输的物品首先经过组装节点,多个小件物品被封装在更大的运输单元中;运输过程中的运输单元流经多个企业,也可能在运输过程中进一步被打包进入车皮、集装箱等等;到分销环节,打包运输的运输单元再通过拆分节点,被拆分为小件包装,分发到不同的零售门店;零售门店将小件包装拆分为物品单品出售。其中,同一个单位在不同物品的流通过程中,可能具有不同的节点类型。以图1中的分销商节点甲3为例,它在编码标记为UID1的产品9的流通过程中扮演流经节点的角色,而在编码为UID2和UID3的产品10和产品11的流通过程中则是组装节点:它将分别标记为UID2和UID3的产品10、产品11打包到编码为UID5的运输包装箱13中运输。\n[0055] (二)物联网物品信息跟踪系统\n[0056] 附图2示意了实现本发明基于语义的物联网物品信息跟踪与追溯方法的物联网物品信息跟踪系统,图中示出:物品信息跟踪与追溯服务器F1、物品信息跟踪与追溯客户端F2、物品信息服务器F3和查询物品信息F4的用户。如图2所示的物联网物品信息跟踪系统由多个物品信息跟踪与追溯客户端F2、多个物品信息服务器F3和一到多个物品信息跟踪与追溯服务器F1构成。其中,物品信息跟踪与追溯客户端F2由显示设备和RFID读写装置构成;物品信息服务器F3包括存储物品信息的数据库,并以信息服务的方式向物品信息跟踪与追溯服务器F1提供对物品信息的访问。\n[0057] 在物品流经的每一个物理节点上(包括所有物流的参与者,如附图1所示的节点\n1-7上)均同时部署物品信息跟踪与追溯客户端F2和物品信息服务器F3;物品信息跟踪与追溯服务器F1可以部署在上述任意一个或多个节点上,也可以设立专用的物品信息跟踪与追服务节点;物品信息跟踪与追溯服务器F1通过有线或无线数据网络与物品信息跟踪与追溯客户端F2和物品信息服务器F3相连接。\n[0058] 查询物品信息的用户F4可以在任一物品流经的节点使用物品信息跟踪与追溯客户端F2,通过其中的RFID读写装置读入物品上的唯一编码向物品信息跟踪与追溯服务器F1发起对物品信息的跟踪或追溯查询;物品信息跟踪与追溯服务器F1使用本发明所述的物品信息跟踪与追溯方法获得物品物流过程全部信息,并通过数据网络将跟踪与追溯的结果发送到发起物品信息查询请求的客户端F2上,显示给查询用户。\n[0059] (三)物品流通信息语义模型\n[0060] 在如图2所示物联网物品跟踪系统中,物品流通的相关信息分布地存储于地域分布的各个物流节点上的物品信息服务器F3中,以信息服务的方式供物品信息跟踪与追溯服务器F1访问。要实现对物品全生命周期的信息跟踪与追溯,在物品信息服务器F2上除了能够提供物品流通过程中的每一个相关节点前后的物品编码变更的映射关系,还必须记录本节点上下游的物品信息访问的地址和节点与节点之间的上下游关系,这样才能保证跟踪与追溯方法能够从分布的物流节点中获取所有的物品相关信息,并根据上下游关系和编码映射关系,拼接获得物品全生命周期的完整信息记录。\n[0061] 因此,为了将物品在流通过程中分布于起点、流经节点、组合节点、分拆节点和终点上的信息片段收集并按物品的流经过程有序地组织起来,需要在现有的物联网数据模型中引入标签属性、基本属性、事件属性、状态属性、上下游关系、编码映射关系等语义,语义化地描述物品商业信息、流动信息和质量信息,形成对标准物品信息描述语言的扩展集,以生成相应的描述方案。通过将扩展信息与已有系统相互融合的信息服务接口,用户可根据需求自由定制丰富的物品信息,计算机可联网利用语义上下文对信息进行聚合,加强信息的有效利用,实现信息管理的智能化。基于语义的物联网物品信息模型可以用来描述各种物品信息,以实现物品信息的分类和分级,便于在各种应用平台下进行信息交换和信息集成。\n[0062] 基于语义的物联网物品信息模型包括以下三方面内容,这些信息可通过通用的标准词汇表来分配和确定,同时对于物品个性化信息的描述,物品信息的描述规范也可支持语义扩展,从而使物品信息的描述更具灵活性和开放性。\n[0063] (1)物品标签属性:使用语义标签
、标注。提供物品上粘贴的电子标签内存储的相应数据,主要记录与物品对应的唯一电子编码,它是由物品流通环节各个节点为经过该节点的物品赋予的有规则数字及符号的组合,其规则保证该数字及符号的组合不会在任何其它物品上出现。物品编码现已有多种公开规则,按这些规则的编码均可保证物品编码的唯一性。\n[0064] (2)物品属性:使用语义标签使用语义标签
、标注。提供对物品特征及相关属性的描述。物品属性又分为描述物品通用属性的基础属性和对某些物品特有属性进行描述的扩展属性。基础属性使用语义标签
、标注,提供任何产品都应具有的基础属性,如物品名称、产地、生产厂商、分类、批次等静态信息,揭示所有物品的通用属性。扩展属性使用语义标签
标注,记录某些产品所特有的属性,不同产品的扩展属性各不相同,可根据具体应用扩展定义。例如在冷链物流应用中,纸屋牛奶具有扩展属性:储藏温度低于2摄氏度。\n[0065] (3)物品操作属性:使用语义标签
、标注。提供物品所经历的物流操作相关信息,记录物品所经历的物流操作名称、操作时间、操作人员等信息,以及物流操作所带来的新旧物品编码映射关系、物流上下游关系等。物品操作属性又分为事件属性、状态属性和流向属性,分别用语义标签
、
、
标记。其中事件属性
提供物品在流通过程中发生的业务事件的描述,如生产、分发、货运、补货、检验等业务过程,操作人员;状态属性
提供物品在流通过程中所发生的业务事件的具体参数,如扫描时间、扫描节点、当前温度等信息。事件属性和状态属性均属于动态信息,根据不同应用跟踪与追溯的具体需求以确定具体内容。流向属性
提供物品的来自和去往语义,分别用
和
语义标签标注。“from”语义标签记录本节点所接收的物品唯一编码及其来源的上游节点信息服务地址;“to”语义标签则记录本节点发出的物品的编码及其去向的下游节点信息服务地址。\n[0066] 基于语义标签的物品信息模型如下表所示:\n[0067] \n[0068] \n[0069] 上述物联网物品信息模型中提供了Who、What、Where和When这4W语义要素。例如:标签属性下的
语义标签中的数据标识了物品的Who属性;物品基本属性中的物品名称、造厂商、生产批次和物品扩展属性则标识了物品的Who和What属性;当物品标签被某个特定位置的读写装置识读时,操作属性中的读写装置身份信息即标定了操作发生的位置空间Where属性;而from和to语义标签中的address数据还提供了网络环境中的物品信息空间Where属性;最后,物品经过读取点的读取时间记录了物品流通过程中发生的每件事件的时间When属性。通过在物品流经的各个节点上存储的物品语义标签记录了物品的标签属性、物品属性和操作属性,在跟踪或追溯时不仅可以通过物品唯一编码进行检索,还可以通过物品属性值和物品唯一编码映射表进行批量检索——例如查找在某个物流仓库在10:32发出的一辆温度曾高于26度的冷冻货车中运送的50箱速冻鸡肉的最终销售地点,或查找某辆刹车板出现质量安全事故的汽车的刹车板供货商生产的该批次产品质量检验员等。\n[0070] 此外,物品流通过程中所流经的不同类型节点,其类型语义使用语义标签、进行标注,其中起点用sn(start node)表示,流经节点用fn(flow-by node)表示,组装节点用an(aggregating node)表示,分拆节点用dn(dispatching node)表示,终点用en(end node)表示。\n[0071] 上述物品信息在原材料供应商、制造厂商、配送商、批发商、零售商等环节的信息服务器中分布存储,各供应链参与者享有对本环节物流信息的掌控权,以信息服务的方式与合作合伙进行信息共享。使用本发明所述的物品信息跟踪与追溯方法,可以在其中的任意节点发起物品跟踪或追溯请求,将分布在不同节点上分散存储的物品信息安照物品流经的顺序,拼接成为一条以原材料供货商为起点,直至零售商为终点的物品全生命周期信息链,使得在任何时刻、任何地点均可掌握系统中任何物品的来龙去脉。\n[0072] (四)物品流通信息跟踪与追溯方法基本原理\n[0073] 本发明所述的一种基于语义的物联网物品信息跟踪与追溯方法,包括物品信息跟踪和物品信息追溯两部分内容。物品信息跟踪指从物品流经的上游至下游,跟随一个特定的物品单元或一批产品所运行的路径,获得路径上各个环节的重要信息的能力,例如:对于蔬菜和肉类产品的跟踪,指获得其从种植、饲养到加工、包装销售各个环节相关信息的能力,这一能力对于招回对人类健康有威胁的产品,具有重要的意义。追溯则是指从供应链的下游至上游,识别一个特定的单元或一批产品的来源的能力,即通过记录标识的方法回溯某个实体来历的能力。追溯对于发现质量问题,落实问题责任具有重要的意义。\n[0074] 基于语义的物联网物品信息跟踪与追溯,其基本原理是:根据存储于各节点信息服务器中的物品信息语义模型,在发起查询的节点上通过物品唯一编码为索引,查询标签属性与被查询编码匹配的物品信息,获得节点上存储的物品生命周期信息片段。进一步根据物品信息模型中操作属性提供的“流向属性”标签,可从语义标签获得该产品来自的上游节点信息访问地址,以及在上游节点上所对应物品编码标识;\n进而使用从语义标签所获得的物品编码访问上游节点的信息服务器,得到在上游节点上存储的物品信息片段;以此类推,通过依次对上游节点的访问,追溯物品流通过程的全部信息。同理,根据流向属性中的语义标签中对下游节点信息访问地址和对应的物品编码的记录,可依次访问下游节点,实现对物品流通过程中的信息跟踪。对于组装和分拆这两类节点存在多对一和一对多的编码映射关系,在物品信息跟踪与追溯方法中采用泛洪(flood)方式,依次使用和标签中所记录的所有映射编码到其相应的信息服务器上检索物品信息。由于物品信息模型的和语义标签即提供了物品流向信息,又提供了物流节点带来了物品编码变化的映射关系,尽管物品来流通过程中由于物流操作而带来了多次表示编码的转换,如多个部件被组装形成一个新的物品的多对一关系,或一个物品被分解成为多个更小的新物品的一对多关系,甚至是一个物品经过加工形成一个新的物品的一转一关系,都可以利用分布在物品各个物流节点上的信息片段,根据编码映射关系及上下游物流关系拼接出物品全生命周期过程中全部关键信息的完整记录,实现从原材料到最终消费品的物品全生命周期跟踪与追溯。\n[0075] (五)物品流通信息跟踪方法步骤\n[0076] 基于语义的物联网物品信息跟踪方法,是将物品流经过程按从上游到下游顺序描述为一棵由<物品编码,流经信息服务器地址>作为节点的有向无环树:该有向树以发起物品信息跟踪查询的物品编码和对应的信息服务器地址作为根节点;对构成树的各个节点,以其相应的物品信息模型中语义标签中的每一对元组作为该节点的子节点。物品流通信息跟踪的实现,即是对上述有向无环树的构造和遍历过程。本发明采用深度优先的遍历原则,物品流通信息跟踪方法具体步骤如附图3所示:\n[0077] S301:查询物品信息的用户在物品流通过程的起始节点或某一个中间节点通过物品信息跟踪与追溯客户端输入需要跟踪的物品唯一编码以及属性信息,发起针对该唯一编码物品的跟踪查询请求;\n[0078] S302:物品信息跟踪与追溯服务器将发起物品信息跟踪请求的节点作为被查询的当前节点,以S301所输入的物品唯一编码作为被查询物品编码,使用二元值对被查询物品编码和当前节点的信息服务器地址来标识被查询的当前节点;\n[0079] S303:物品信息跟踪与追溯服务器使用当前节点标识中所提供的被查询物品编码为参数,按照当前节点标识所提供的当前节点的信息服务器地址调用当前节点的信息服务,查询在当前节点上标签属性被查询物品编码相匹配的物品信息记录;\n[0080] S304:在物品信息跟踪与追溯服务器上,从获取的物品信息记录中提取当前节点的节点类型,从操作属性中标识物品去向的语义标签中提取其中记录的下游信息服务器地址以及去往下游的物品编码:对于流经节点和组装节点,从语义标签中将获得由下游物品编码和下游信息服务器地址组成的一个二元值对;对于分拆节点,则将从语义标签中获得由多个<下游物品编码,下游信息服务器地址>值对所构成的一个列表;而对于终点,则从语义标签中提取的数据为空;进一步,把从语义标签中提取的上述数据加入到一个待查询列表的头部,该待查询列表是由多个<下游物品编码,下游信息服务器地址>值对所构成的一个列表,以栈的形式进行存储;\n[0081] S305:把语义标签记录全部提取并加入到待查询列表后,物品信息跟踪与追溯服务器将当前节点的状态设置为已访问,加入到已访问列表中;\n[0082] S306:物品信息跟踪与追溯服务器从待查询列表中弹出位于栈首的元素,该元素是一个由下游物品编码,下游信息服务器地址组成的二元值对;判断该元素是否已存在于已访问列表中,如果在已访问列表中已经存在,则表示该元素标识的节点已经被访问过,抛弃该元素,重复步骤S306,否则转S307;\n[0083] S307:检查从待查询列表中弹出的元素,如果该元素为空值,说明物品信息跟踪过程已经完成,转S308。否则,物品信息跟踪与追溯服务器将从带查询列表栈首弹出的元素设为当前节点,转S303。\n[0084] S308:物品信息跟踪与追溯服务器整合从按上述步骤从物品流经各节点所获取的物品流通过程相关信息,将整合后的信息发送给发起跟踪查询请求的物品信息跟踪与追溯客户端,显示给用户。\n[0085] (六)物品流通信息追溯方法步骤\n[0086] 基于语义的物联网物品信息追溯方法,是将物品流经过程按从下游到上游的顺序描述为一棵由物品编码和流经信息服务器地址作为节点的有向无环树:该有向树以发起物品信息跟踪查询的物品编码和对应的信息服务器地址作为根节点;对构成树的各个节点,以其相应的物品信息模型中语义标签中的每一对元组作为该节点的子节点。与物品流通信息跟踪方法类似,物品流通信息追溯的实现,也是对上述有向无环树的构造和遍历过程,本发明仍然采用深度优先的遍历原则,具体步骤如附图4所示:\n[0087] S401:查询物品信息的用户在物品流终止节点或某一个起始或中间节点通过物品信息跟踪与追溯客户端输入需要跟踪的物品唯一编码以及属性信息,发起针对该唯一编码物品的追溯查询请求;\n[0088] S402:物品信息跟踪与追溯服务器将发起物品信息跟踪请求的节点作为当前节点,S401所输入的物品唯一编码作为被查询物品编码使用二元值对被查询物品编码和当前节点的信息服务器地址来标识被查询的当前节点;\n[0089] S403:物品信息跟踪与追溯服务器使用当前节点标识所提供的被查询物品编码为参数,按照当前节点标识所提供的当前节点信息服务器地址调用当前节点的信息服务,查询在当前节点上标签属性被查询物品编码相匹配的物品信息记录;\n[0090] S404:在物品信息跟踪与追溯服务器上,从获取的物品信息记录中提取当前节点的节点类型,从操作属性中标识物品来源的语义标签中提取其中记录的上游信息服务器地址以及对应的上游物品唯一编码:对于流经节点和分拆节点,从语义标签中将获得由上游物品编码和上游信息服务器地址组成的一个值对;对于组装节点,则将从语义标签中获得由上游物品编码和上游信息服务器地址组成的多个值对所构成的一个列表;而对于起点,则从语义标签中提取的数据为空;进一步,把从语义标签中提取的数据加入到一个待查询列表的头部:该待查询列表是由多个上游物品编码和上游信息服务器地址二元值对所构成的一个列表,以栈的形式存储;\n[0091] S405:把语义标签中的记录全部提取并加入到待查询列表后,物品信息跟踪与追溯服务器并将当前节点的状态设置为已访问,加入到已访问列表中;\n[0092] S406:物品信息跟踪与追溯服务器从待查询列表中弹出位于栈首的元素,该元素是一个由上游物品编码和上游信息服务器地址组成的二元值对,判断该元素是否已存在于已访问列表中,如果在已访问列表中已经存在,则表示该元素标识的节点已经被访问过,抛弃该元素,重复步骤S406,否则转S407;\n[0093] S407:如果从待查询列表中弹出的元素为空,说明物品信息追溯过程已经完成,转S408。否则,将从带查询列表栈首弹出的元素设为当前节点,转S403。\n[0094] S408:物品信息跟踪与追溯服务器整合从按上述步骤从物品流经各节点所获取的物品流通过程相关信息,将整合后的信息发送给发起追溯查询请求的用户。\n[0095] (七)基于语义的物联网物品信息跟踪和追溯方法实施示例\n[0096] 如附图5示意了一个物品从原材料供应商G1经过加工车间G2、中转仓库G3、制造车间G4、制成品仓库G5、第三方货运配送商G6,最终以零售商G7为终点的物品全生命周期过程。\n[0097] 制造产品的基础原材料的从原材料供应商G1发货,原材料供应商G1构成了物品流通生命周期的起点。这一节点上的物料信息中:语义标签内的节点属性标识为sn,说明该段信息记录存储于物流起点上;相应的,语义标签内的记录则为空;语义标签内包含一对元素UID0和××制造制造厂的信息服务访问地址,表明物品唯一编码为UID0的物料被送往××制造厂,在××制造厂中标志为UID0的物料信息,可以使用语义标签中记录的信息服务器地址去访问。原材料供应商提供的物品信息存储在原材料供应商的信息服务器上,通过信息服务接口供业务伙伴查询,其具体内容如下所示:\n[0098] \n[0099] 当一件标志为UID0的基础原材料运至制造商的加工车间G2,首先在加工车间G2经过加工后形成三件副产品,分别用唯一编码UID1,UID2和UID3标识。即加工车间是一个分拆节点,经过该分拆节点后,原编码UID0被新产生的三个新编码UID1、UID2和UID3所替代。在加工车间G2节点,其对于基础原材料UID0而言是一个将UID0分拆成为UID1、UID2和UID3的分拆节点,因此在加工车间G2节点上存储的对应UID0的物品信息中,语义标签内的节点属性标识为dn,说明该段信息记录存储在物流环节中的一个分拆节点;语义标签中记录其对应的上游节点中存储的索引即物品唯一信息UID0,以及相应的上游××原材料厂的信息服务访问地址;由于物品被分拆为三个副产品,产生了UID1、UID2和UID3三个新物品编码,因此在物品信息内容中包含3个语义标签,分别提供UID1、UID2和UID3及其相应去往的下游节点的信息服务访问地址。加工车间节点上,物品UID0的信息内容记录如下:\n[0100] \n[0101] \n[0102] 同时,在加工车间G2节点分拆所产生的副产品UID1、UID2和UID3的信息,也被分别存储于制造商的信息服务器上,对于这三个物品唯一编码索引的物品信息而言,语义标签内的节点属性标识为dn,语义标签内的记录为UID0和原材料厂的信息服务地址。以第一种副产品UID1为例,其信息内容在信息服务器上记录如下:\n[0103] \n[0104] 三种副产品运输到企业中转仓库G3中进行临时中转,中转仓库G3节点属于流经节点,物品唯一编码没有发生变化。在中转库G3节点信息服务器中存储的物品信息,语义标签内的节点属性标识为fn,说明对于该编码索引的物品,本节点为流经节点;因为物品在经过流经节点前后并无变化,因此该节点上物品属性为空;流经属性中存在一个标签和一个标签。仍然以副产品UID1为例,在中转仓库G3节点所记录的该副产品的信息内容如下:\n[0105] \n[0106] 如附图3所示进入制造车间G4环节,在制造车间G4出现了两种情况一是标识为UID1和第UID2的副产品被加工整合为一种新产品UID4,二是标识为UID3的副产品经过另一套生产线被加工为标识为UID5新产品。因此该制造车间G4节点对于UID1和UID2副产品而言是组装节点。对于标识为UID3的副产品,制造车间G4节点则可以视为一种只有一个单输入的特殊组装节点。对于这三个唯一编码索引的物品信息,语义标签属性值为an,流向属性中,只有一个标签和一个标签。在制造车间G4节点信息服务器上,对标识为UID1的产品信息记录如下:\n[0107] \n[0108] 对UID2和UID3副产品的信息记录,除标签属性外,与上相同。除此以外,制造车间节点还作为组装节点,记录标识为UID4和UID5的制成品信息。其中对于UID4索引的物品信息,其流向属性中有对应UID1和UID2的两个语义标签,和一个对应UID4的语义标签。\n[0109] 图例3中,标志为UID4和UID5的两件新产品进入企业的制成品仓库G5储存之后,这两件产品与其它产品一道被打在一个集装箱中,经过第三方配送机构运输到批发商G6处后,再次拆分为单件商品并交给零售商G7上架销售。对于成品UID4和UID5,成品库G5作为组装节点,使成品库G5之后的物流中,UID4和UID5标识的成品被一个新的标识UID6所代替;第三方配送机构和批发商G6则是对应于UID6的拆分节点。由于唯一编码为UID4和UID5所对应的两件产品在销售到最终消费者手中后即消耗掉,因此产品的生命周期到零售商7节点处就全部结束,零售商G7成为产品流通的终点。制成品仓库G5节点、第三方配送机构和批发商G6节点所记录的信息内容都与前例类似,零售商节点G7的信息服务器地址在后文中表示为G7-IS,在此不再赘述。而对于UID4和UID5索引的物品而言零售商G7节点是其物流的终点,其语义标签中属性为en,流向属性中的语义标签内容为空。以唯一编码为UID4所对应的产品为例,零售商G7节点记录的信息如下:\n[0110] \n[0111] 根据如附图3所示物品信息跟踪方法的步骤,对于如图5所示实施例的物品信息跟踪具体实施过程如下:\n[0112] (1)原材料供应商G1使用部署于其上的的物品信息跟踪与追溯客户端F2,通过与客户端集成的RFID读写器扫描物品RFID标签或直接输入物品唯一编码,发起针对标识为唯一编码UID0的原材料的信息跟踪;\n[0113] (2)物品信息跟踪与追溯服务器F1将发起物品信息跟踪请求的原材料供应商节点G1作为被查询的当前节点,以唯一编码UID0作为被查询物品编码,使用二元值对标识该查询节点(其中G1-IS代表原材料供应商节点G1上部署的信息服务访问地址);\n[0114] (3)物品信息跟踪与追溯服务器使用唯一编码UID0,调用G1-IS所对应的信息服务,获得如24页第1行至36行所示的标签属性值为UID0的一个物品信息XML文档,得到存储在节点G1上的编码为UID0的原材料的物料信息;\n[0115] (4)物品信息跟踪与追溯服务器提取上个步骤获得的XML文档中语义标签中的属性值为sn,得知G1是标记为UID0的原材料的起始节点;再提取语义标签中的内容,则根据图例5所示物流抽象描述图,从语义标签中将提取到一个二元值对,内容为,将其加入待查询列表的头部。\n[0116] (5)将二元值对加入已访问列表。则当前待查询列表为{},已查询列表为{};\n[0117] (6)物品信息查询与跟踪服务器从待查询列表中弹出栈首元素,因该节点不存在于已查询列表中,因此将标记为当前节点;\n[0118] (7)物品信息跟踪与追溯服务器使用唯一编码UID0,调用G2-IS所对应的信息服务,获得如25页第10行至26页第6行所示的标签属性值为UID0的一个物品信息XML文档,得到存储在节点G2上的编码为UID0的原材料的物料信息;\n[0119] (8)物品信息跟踪与追溯服务器提取XML文档中语义标签中的属性值为dn,得知G2是标记为UID0的原材料的拆分节点;再提取语义标签中的内容,得到由三个二元值组成的一个列表为{,,},将其加入待查询列表的头部。\n[0120] (9)物品信息跟踪与追溯服务器将加入到已访问节点列表中,则当前待查询列表为{,,},已访问节点列表为{,};\n[0121] (10)从待查询列表中弹出栈首元素,该元素在已查询列表中不存在,因此将其标记为当前节点;\n[0122] (11)物品信息跟踪与追溯服务器使用唯一编码UID1,调用G3-IS所对应的信息服务,获得如27页第17行至28页第4行所示存储在节点G3上标签属性值为UID1的物品信息XML文档,如此重复步骤(8)(9)类似过程,得到当前待查询列表为{,,},已访问节点列表为{,,};\n[0123] (12)从待查询列表弹出栈首元素,如此不断重复步骤(6)-(9)相似的过程,直到从待查询列表中弹出的元素为空值为止。在此不再赘述。\n[0124] 按上述实施步骤,对于如图5所示物流过程中物品标识为UID0的原材料的全生命周期信息跟踪过程,依次访问的节点标识为:→→→→→→到达物流的一个终点。此时待查询列表中仍有元素,说明该物流过程不只有一个终点,重复步骤(6)-(9)访问到节点到达物流的另一个终点。继续对待查询列表中的元素重复执行步骤(6)-(9),依次访问的节点标识为→→→,发现已经存在于已访问列表中,说明其后续的物流过程信息已经跟踪过,按物品信息跟踪方法步骤S306所述,抛弃该节点不再往下追踪,上述从至的路径构成原材料UID0物流全生命周期过程中一条分支。重新从待查询列表中弹出栈首元素为,则获得→→这一原材料UID0物流全生命周期过程中的又一条分支。同理可依次访问物流过程的第三条分支,即:→→→。\n[0125] 如附图4所示物品信息追溯方法步骤的具体实施与上述说明类似,在此不再赘述。\n[0126] 上面描述是用于实现本发明及其实施例,本发明的范围不应由该描述来限定,本领域的技术人员应该理解,在不脱离本发明的范围的任何修改或局部替换,均属于本发明权利要求来限定的范围。