发明内容
本申请提供了一种物流系统中生成国际地址唯一标识符的方法及装置以产生便于维护和识别的唯一的国际地址唯一标识符。
本申请提供了如下方案:
一种生成国际地址唯一标识符的方法,其特征在于,包括:
识别目标地址中的行政区划的国家、第一级地址和第二级地址,其中,所述第一级地址为所述第二级地址的上一级行政区划地址;
获得所述国家对应的由数字组成的国家标识;
查询所述第一级地址、第二级地址分别对应的第一级地址国际标识码、第二级地址国际标识码,所述第一级地址国际标识码、第二级地址国际标识码包括字母;
将所述第一级地址国际标识码、第二级地址国际标识码的字母转换成所述字母相对应的以数字组成的ASCII码,获得由数字组成的第一级地址国际标识码、第二级地址标识;
将所述数字组成的国家标识、第一级地址标识和第二级地址标识,进行串接,获得由数字组成的所述国际地址唯一标识符。
一种生成国际地址唯一标识符的装置,其特征在于,包括:
地址识别单元,用于识别目标地址中的行政区划的国家、第一级地址和第二级地址,其中,所述第一级地址为所述第二级地址的上一级行政区划地址;
国家标识获取单元,用于获得所述国家对应的由数字组成的国家标识;
地址标识获取单元,用于查询所述第一级地址、第二级地址分别对应的第一级地址国际标识码、第二级地址国际标识码,所述第一级地址国际标识码、第二级地址国际标识码包括字母;将所述第一级地址国际标识码、第二级地址国际标识码的字母转换成所述字母相对应的以数字组成的ASCII码,获得由数字组成的第一级地址国际标识码、第二级地址标识;
合并单元,用于将所述数字组成的国家标识、第一级地址标识和第二级地址标识,进行串接,获得由数字组成的所述目的地址的国际地址唯一标识符。
根据本申请提供的具体实施例,本申请公开了以下技术效果:
通过本申请,通过使用该地址对应的国际标识码,并将国际标识码转换成数字组成的ASCII码,从而获得由数字组成的目的地址的国际地址唯一标识符,以用于在物流系统中进行路由。由于使用数字组成的数值型的国际地址唯一标识符来标识国际地址,从而便于该国际地址存储以及在整个物流链路中流转和系统间交互。
由于所生成的国际地址唯一标识符包含国际标识码信息,该信息包含了地址本身的符合国际规范的属性信息,从而可以方便与外部符合国际标准的地址产品建立关联,以及地址数据与业务数据关联。
同时,由于所生成的国际地址唯一标识符基于国际标识码信息,于地址名称无关,因此便于国际地址多语言维护和国际地址数据的更新、维护。
在一些实施例中,生成国际地址唯一标识符包含了国际通用的国家标识码、国际标识码信息,因此,可以从该标识码中判读出国家、地址以及地址所属层级,以及符合国际标准的外部系统交互。
在一些实施例中,在国际地址唯一标识符的首部添加预定启始标识,通过添加便于识别国际地址与国内地址。
当然,实施本申请的任一产品并不一定需要同时达到以上的所有优点。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。
在以下实施中,示例性的例如对于省—市—区(县)—乡镇这一层级链中,不同的级别可以包括:第一级地址即行政区划层级链中的第一级,“省”是第一级地址;第二级地址即行政区划层级链中的第二级,“市”是第二级地址;第三级地址即行政区划层级链中的第三级,“区(县)”是第三级地址;第四级地址即行政区划层级链中的第四级,“乡镇”是第四级地址。
在以下实施例中的国际地址唯一标识符为用于标识地址唯一性的数值型数据,在全球地址数据(包括中国地址数据)中具有唯一性,用于整个物流链路中不同业务系统间地址交互的桥梁。国际地址唯一标识符所标识的国际地址可以是包括除中国地址外或者包括中国地址的全球地址数据、邮编数据、街道地址。
参见图1所示,该图示出来一种物流系统中生成国际地址唯一标识符的方法的流程图。该方法包括以下操作:
S101,识别目标地址中的行政区划的国家、第一级和第二级地址,其中,第一级地址为第二级地址的上一级行政区划地址;
S102,获得国家对应的由数字组成的国家标识。可以使用不同的实现方法获得国家对应的由数字组成的国家标识。例如,全球每一个国家有一个国家标识码,例如俄罗斯的国际标识码或iso码(iso code)为643,可以以643作为国家标识。又如,276为德国的国际标识码。在后续的实施例中将介绍S102其它的实施方式。
S103,查询第一级地址、第二级地址分别对应的第一级地址国际标识码、第二级地址国际标识码,第一级地址国际标识码、第二级地址国际标识码包括字母。对于国际地址,每一个地址有一个国际标识码,例如俄罗斯莫斯科的第一级地址Москва,其作为第一级地址的国标标识码为RU.MC。第二级地址Юго-Западный,其作为第二级地址的国标标识码为RU.MC.SW。
S104,将第一级地址国际标识码、第二级地址国际标识码的字母转换成字母相对应的以数字组成的ASCII(American Standard Code for InformationInterchange)码,获得由数字组成的第一级地址国际标识码、第二级地址标识。对于国际地址,第一级地址国际标识码、第二级地址国际标识码只包含A到Z字母,而A到Z均可以对应于2位数的ASCII码,从而可以将国际标识码转换成便于识别、存储的数值数据。例如,其作为第一级地址的国标标识码为RU.MC,其中RU为国家标识,字母MC转为的ASCII码为7767。类似地,第二级地址的国标标识码为RU.MC.SW,其中第二级地址包含MC.SW,对应的ASCII码为7767 8387。、
又如,国际地址都有对应的iso码,例如德国弗赖堡市,弗赖堡市的iso码为DE.BW.FR,其中DE代表国家,这里将BW.FR转译为ASCII码66877082,276为德国的国家码,由此,得到的德国弗赖堡市标识码为27666877082
S105,将数字组成的国家标识、第一级地址标识和第二级地址标识,进行串接,获得由数字组成的目的地址的国际地址唯一标识符。
在上述示例中,可以将国家标识643、第一级地址标识7767和第二级地址标识8387进行串接,从而获得64377678387作为国际地址唯一标识符。
在上述实施例中,通过使用该地址对应的国际标识码,并将国际标识码转换成数字组成的ASCII码,从而获得由数字组成的目的地址的国际地址唯一标识符,以用于在物流系统中进行路由。
在一种方法实施例中,还可以包括:在国际地址唯一标识符的首部添加预定启始标识,启始标识用于标识地址为国际地址。例如,添加数字“9”作为国际地址的标识,则获得的964377678387作为国际地址唯一标识符,以将国际地址和现存的国内地址区分。当然也可以去掉或使用其它值替换第一位的国际地址标识符“9”。
参见图2所示,该图示出来一种物流系统中生成国际地址唯一标识符的方法的流程图。相对于图1,该方法还包括以下操作:
S201,识别目标地址中是否具有行政区划的第三级,其中,第二级地址为第三级地址的上一级行政区划地址,每一个第三级地址在其对应的上一级第二级地址中具有唯一的索引号,索引号由数字组成;
S202,响应于具有第三级地址,查询第三级地址在第二级地址的索引号;
S203,以数字组成的索引号,作为第三级地址对应的由数字组成的第三级地址标识;
上述S105获得由数字组成的目的地址的国际地址唯一标识符,具体为包括:
S204,将数字组成的第三级地址标识与由数字组成的国家标识、第一级、第二级地址标识串接后的结果相串接,获得由数字组成的目的地址的国际地址唯一标识符。
在上述实施例中,对于第三级、第四级地址,iso code并非完全由A到Z的字母组成,因此使用它们在对应的上一级地址所有子地址中的索引号作为标识位,从而为包括第三级和第四级的每一个国际地址创建数值型的标识号,该标识号可以唯一标识全球国际地址。
对于第三级、第四级地址需要使用它们在上一级区划中的索引号来作为标识位,例如德国弗赖堡市图特林根县为三级地址,数据编编译过程中会创建区划层级树,通过第一级、第二级地址的子区划来获得其索引。德国弗赖堡市图特林根县为三级地的上一级区划德国弗赖堡市的标识为927666877082,获得它在上一级区划中的索引号为9,从而德国弗赖堡市图特林根县的唯一标识码为927666877082009。
本申请中生成的国际地址唯一标识模型中是使用了国家标识和地址的isocode,因此所生成的国际地址唯一标识符,包含了大量地址本身的信息。例如964377678387001000是通过本申请一种实施例获得的俄罗斯地址Академический创建的国际地址唯一标识符。国际地址使用者获得该标识码后可以由开头的“9”确定该地址是国际地址,由2到4位的“643”确定该地址是俄罗斯地址,由77678387001可确定该地址为3级地址,其中第三级地址在第二级地址中索引号为1,并通过ASCII码转译7767,可得知该地址的第一级地址的国标码为RU.MC,通过国标码对比,由此确定第一级地址为Москва,同时可以通过ASCII转译77678387可以获得该地址第二级地址国标码为RU.MC.SW,根据国标码匹配,该二级地址为Юго-Западный,由此可见,本申请为国际地址创建的国际地址唯一标识符包含了丰富的地址本身信息,国际地址使用者可以通过该国际地址唯一标识符判读出地址信息,同时,也为同样遵循国际标准的地址系统间地址数据的交互提供了便利条件。
由于使用数字组成的数值型的国际地址唯一标识符来标识国际地址,该标识不会随着地址数据的变更而变化,使得地址名称变更、合并等都能顺利进,从而便于该国际地址存储以及在整个物流链路中流转和系统间交互。
例如,使用上述实施例中,为Юго-Западный生成的国际地址唯一标识符为964377678387000000,如果Юго-Западный名称变更为Юго-Западный-new,则只需地址库将该地址名称做修改,该地址对应的国际地址唯一标识符仍然为964377678387000000。由于交易链路、物流链路各个业务系统存储的是该地址的标识964377678387000000而不是地址名称Юго-Западный,当地址名称发生变化时相应的业务系统存量数据不需做任何修改,即使相关联业务系统中的其中一部分升级了数据和服务而另外一些业务系统没有升级也不会发生系统故障。
类似地,通常多语言和该标识对应关系是在国际地址编译过程中编写程序匹配完成,完成地址编译后,对于英国无论使用United Kingdom,还是使用England,或者针对同样的地名俄罗斯的不同语种名称,无论使用俄语名称Россия,还是使用英语名称为Russia,由于所创建的国际地址唯一标识符于名称无关,因此,各相关联子系统中存储该唯一标识,使用该唯一标识在各业务系统间流转,避免了各个业务系统间以不同名称存储地址从而导致系统交互故障。
本申请中生成的数值标识地址即国际地址唯一标识,同一地址的不同语种名称使用相同的标识,还能将同一地址的不同语种名称关联起来,容易根据不同的语言环境显示相应的语种名称,同时,不同业务系统间使用该数值标识进行交互,不会因为不用语种产生异常。
类似地,在一种实施例中,还包括:
识别目标地址中是否具有行政区划的第四级,其中,第三级地址为第四级地址的上一级行政区划地址,每一个第四级地址在其对应的上一级第三级地址中具有唯一的索引号,索引号由数字组成;响应于具有第四级地址,查询第四级地址在第三级地址的索引号;以数字组成的索引号,作为第四级地址对应的由数字组成的第四级地址标识;
其中,获得由数字组成的目的地址的国际地址唯一标识符,包括:将数字组成的第四级地址标识和由数字组成的国家标识、第一级、第二级、第三级地址标识串接后的结果相串接,获得由数字组成的目的地址的国际地址唯一标识符。
在以下的实施例中,将分别介绍上述S102操作的不同实施方式。
在一种实施方式中,获得国家对应的由数字组成的国家标识;包括:查询国家对应的由字母组成的国际标识码;将国际标识码的字母转换成字母相对应的以数字组成的ASCII码,获得国家对应的由数字组成的国家标识。在上述实施例中,如将RU字母转换为对应的ASCII码。
在另一种实施方式中,获得国家对应的由数字组成的国家标识,包括:查询国家对应的由数字组成的国际标识码;以数字组成的国际标识码,作为国家对应的由数字组成的国家标识。例如,全球每一个国家会有一个国家标识码,例如俄罗斯的国际标识码为643,可以使用该数字作为国家标识。
在还一种实施方式中,获得国家对应的由数字组成的国家标识,包括:查询国家对应的由数字组成的国家电话区号;以数字组成的国家电话区号,作为国家对应的由数字组成的国家标识。在上述实施例中,第一级地址的电话区号也为数值型,因此可以作为第一级地址的国际标识码。
在一种实施例中,还可以为目的地址的国际地址唯一标识符设置预定的长度,包括:识别所获得的由数字组成的目的地址的国际地址唯一标识符的长度是否满足预定的长度;响应于目的地址的国际地址唯一标识符的长度不满足预定的长度,在目的地址的国际地址唯一标识符的一端添加预定的数字,使目的地址的国际地址唯一标识符具有预定的长度。从而可以使得生成的标识码规则、整齐,对于不足18位用0或其它预定的数字补齐到18位,例如生成的德国弗赖堡市图特林根县的唯一标识码为927666877082009000。
例如,可以设置国际地址唯一标识符为18位的长度国际地址唯一标识符的位数可以考虑地址链路层级数、数据类型、唯一标识的规则性,。例如,国际地址区划链最大为4级,第一级、第二级地址的标识是由地址的iso code转ASCII码,地址的iso码为2个字符,使得第一级、第二级地址分别占4位,考虑到第一级、第二级的子区划第三级第四级地址的数量不会超过1000,所以给第三级、第四级地址分别预留3位,从而共为14位,再加上第一位国际地址标识码和3位国家码,可以为18位,同时该数据类型Long所支持的最大值。为第三级第四级地址预留固定位数主要是考虑数据结构的规整,国际地址使用者可以更方面由此国际地址唯一标识符判读国际地址。也可以将第三级、第四级地址预留位设置为非3位或不给第三级、第四级预留位而根据实际的第三级、第四级地址数目动态分配,或者改变国际地址唯一标识码的数据类型。
通过为国际地址唯一标识码设置预留的长度,从而可以方便通过国际地址唯一标识码识别出地址的层级以及地址的从属关系。例如,按照上述18位预长度的实施例,第一位为国际地址标识码位“9”,第2到第4位是国家标识码位“276”,第5到第8位为第一级地址标识位“6687”,第9到第12位是第二级地址标识位“7082”,第13到第15位为第三级地址标识位“009”,第16到18位为第四级地址标识位“000”。同时,为国际地址唯一标识码设置预留的长度可以提供数据的规整性。
参见图3所示,图3是本申请实施例提供的第一装置的示意图。本发明还提供了一种物流系统中生成国际地址唯一标识符的装置。该装置包括:
地址识别单元301,用于识别目标地址中的行政区划的国家、第一级地址和第二级地址,其中,第一级地址为第二级地址的上一级行政区划地址;
国家标识获取单元302,用于获得国家对应的由数字组成的国家标识;
地址标识获取单元303,用于查询第一级地址、第二级地址分别对应的第一级地址国际标识码、第二级地址国际标识码,第一级地址国际标识码、第二级地址国际标识码包括字母;将第一级地址国际标识码、第二级地址国际标识码的字母转换成字母相对应的以数字组成的ASCII码,获得由数字组成的第一级地址国际标识码、第二级地址标识;
合并单元304,用于将数字组成的国家标识、第一级地址标识和第二级地址标识,进行串接,获得由数字组成的目的地址的国际地址唯一标识符。
在一种实施例中,国家标识获取单元302,用于查询国家对应的由字母组成的国际标识码;将国际标识码的字母转换成字母相对应的以数字组成的ASCII码,获得国家对应的由数字组成的国家标识。
在一种实施例中,国家标识获取单元302,用于查询国家对应的由数字组成的国际标识码;以数字组成的国际标识码,作为国家对应的由数字组成的国家标识。
在一种实施例中,国家标识获取单元302,用于查询国家对应的由数字组成的国家电话区号,;以数字组成的国家电话区号,作为国家对应的由数字组成的国家标识。
在一种实施例中,地址识别获取单元303,还用于识别目标地址中是否具有行政区划的第三级,其中,第二级地址为第三级地址的上一级行政区划地址,每一个第三级地址在其对应的上一级第二级地址中具有唯一的索引号,索引号由数字组成;响应于具有第三级地址,查询第三级地址在第二级地址的索引号;以数字组成的索引号,作为第三级地址对应的由数字组成的第三级地址标识;
合并单元304,用于将数字组成的第三级地址标识与由数字组成的国家标识、第一级、第二级地址标识串接后的结果相串接,获得由数字组成的目的地址的国际地址唯一标识符。
在一种实施例中,地址识别获取单元303,还用于识别目标地址中是否具有行政区划的第四级,其中,第三级地址为第四级地址的上一级行政区划地址,每一个第四级地址在其对应的上一级第三级地址中具有唯一的索引号,索引号由数字组成;响应于具有第四级地址,查询第四级地址在第三级地址的索引号;以数字组成的索引号,作为第四级地址对应的由数字组成的第四级地址标识;
合并单元304,用于将数字组成的第四级地址标识和由数字组成的国家标识、第一级、第二级、第三级地址标识串接后的结果相串接,获得由数字组成的目的地址的国际地址唯一标识符。
参加图4所示,图4是本申请实施例提供的第二装置的示意图。在该实施例中,目的地址的国际地址唯一标识符具有预定的长度,装置还包括:
长度识别单元401,用于识别所获得的由数字组成的目的地址的国际地址唯一标识符的长度是否满足预定的长度;
长度调整单元402,用于响应于目的地址的国际地址唯一标识符的长度不满足预定的长度,在目的地址的国际地址唯一标识符的一端添加预定的数字,使目的地址的国际地址唯一标识符具有预定的长度。
在一种实施例中,该装置还包括:
标识设置单元403,用于在国际地址唯一标识符的首部添加预定启始标识,启始标识用于标识地址为国际地址。
本申请提供的方案便于国际地址的存储、更新、维护。由于不同物流系统之间有可能出现合作,如果适用本发明的国际地址,则可以在各个系统之间进行无缝的交接。由于国际地址数据涉及到大量的区划数据、邮编数据、街道数据,数据的处理要花费比较多的时间,本申请中生成址的国际地址唯一标识符能很好支持数据并发处理。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的生成国际地址唯一标识符的方法和装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。