首页 / 专利库 / 专利权 / 申请 / 国际申请 / 说明书 / 序列表 / 表单序列化方法及装置

表单序列化方法及装置

阅读:219发布:2020-05-11

专利汇可以提供表单序列化方法及装置专利检索,专利查询,专利分析的服务。并且本 申请 提供了一种表单序列化方法 实施例 ,本实施例响应于对目标表单的序列化指令,获取具有层级结构的目标表单,并从目标表单中获取表单元素的名称,名称是按照预设命名规则命名的,且预设命名规则可表示目标表单的层级结构,因此,按照预设命名规则对表单元素的名称进行解析,以确定出目标表单的层级结构,进而将目标表单序列化为反映该预设层级结构的序列数据。可见,相较于 现有技术 而言,本实施例可以使用表单元素的名称表示表单的层级结构,并可依据从名称中解析出来的层级结构,将目标表单序列化为具有层级关系的序列数据,该序列数据可以使得后续处理更加快捷。另外,本申请还提供了表单序列化装置,以保证上述方法在实际中的应用及实现。,下面是表单序列化方法及装置专利的具体信息内容。

1.一种表单序列化方法,其特征在于,包括:
响应于对目标表单的序列化指令,获取具有预设层级结构的所述目标表单;
遍历所述目标表单的每个表单元素,获得每个所述表单元素的名称;其中,所述表单元素的名称是按照预设命名规则命名的,所述预设命名规则用于表示表单的预设层级结构;
按照所述预设命名规则,解析每个所述表单元素的名称,以确定出所述目标表单的预设层级结构;
将所述目标表单序列化为反映所述预设层级结构的序列数据。
2.根据权利要求1所述的表单序列化方法,其特征在于,所述预设命名规则包括:所述表单元素的名称包括多个结构对象,结构对象之间使用标志位隔开,结构对象的前后位置关系用于表示结构对象的高低层级关系;
相应地,所述按照所述预设命名规则,解析每个所述表单元素的名称,以确定出所述目标表单的预设层级结构,包括:
针对每个所述表单元素的名称,按照由前至后或者由后至前的顺序,在所述表单元素的名称中,查找标志位;
每当查找到所述标志位,便分别确定所述标志位之前的结构对象及之后的结构对象的层级;其中,所述标志位之前的结构对象的层级高于所述标志位之后的结构对象的层级,具有高低层级关系的所述多个结构对象用于表示所述目标表单的预设层级结构。
3.根据权利要求2所述的表单序列化方法,其特征在于,所述将所述目标表单序列化为反映所述预设层级结构的序列数据,包括:
按照由高到低的层级,依次序列化每一个所述表单元素的结构对象;
在所述目标表单中,获取每一个所述表单元素的元素值;
将每一个所述表单元素的元素值作为所述表单元素所对应的层级最低的结构对象的序列值。
4.根据权利要求3所述的表单序列化方法,其特征在于,预设命名规则还包括:不同数据类型的元素值,使用不同的标识符进行区分;
相应地,所述将每一个所述表单元素的元素值作为所述表单元素所对应的层级最低的结构对象的序列值,包括:
依据标识符类型与数据类型的预设对应关系,确定每一个所述表单元素的元素值的数据类型;
依据每一个所述表单元素的元素值的数据类型,将每一个所述表单元素的元素值作为所述表单元素所对应的层级最低的结构对象的序列值。
5.根据权利要求1所述的表单序列化方法,其特征在于,所述序列数据的格式包括:
JSON对象格式、字符串格式、数组格式或XML格式。
6.一种表单序列化装置,其特征在于,包括:
目标表单获取模,用于响应于对目标表单的序列化指令,获取具有预设层级结构的所述目标表单;
元素名称获取模块,用于遍历所述目标表单的每个表单元素,获得每个所述表单元素的名称;其中,所述表单元素的名称是按照预设命名规则命名的,所述预设命名规则用于表示表单的预设层级结构;
层级结构解析模块,用于按照所述预设命名规则,解析每个所述表单元素的名称,以确定出所述目标表单的预设层级结构;
目标表单序列模块,用于将所述目标表单序列化为反映所述预设层级结构的序列数据。
7.根据权利要求6所述的表单序列化装置,其特征在于,所述预设命名规则包括:所述表单元素的名称包括多个结构对象,结构对象之间使用标志位隔开,结构对象的前后位置关系用于表示结构对象的高低层级关系;
相应地,所述层级结构解析模块包括:
标志位查找子模块,用于针对每个所述表单元素的名称,按照由前至后或者由后至前的顺序,在所述表单元素的名称中,查找标志位;
结构对象层级确定子模块,用于每当查找到所述标志位,便分别确定所述标志位之前的结构对象及之后的结构对象的层级;其中,所述标志位之前的结构对象的层级高于所述标志位之后的结构对象的层级,具有高低层级关系的所述多个结构对象用于表示所述目标表单的预设层级结构。
8.根据权利要求7所述的表单序列化装置,其特征在于,所述目标表单序列模块包括:
结构对象生成子模块,用于按照由高到低的层级,依次序列化每一个所述表单元素的结构对象;
元素值获取子模块,用于在所述目标表单中,获取每一个所述表单元素的元素值;
序列值生成子模块,用于将每一个所述表单元素的元素值作为所述表单元素所对应的层级最低的结构对象的序列值。
9.根据权利要求8所述的表单序列化装置,其特征在于,预设命名规则还包括:不同数据类型的元素值,使用不同的标识符进行区分;
相应地,所述序列值生成子模块包括:
元素值类型确定单元,用于依据标识符类型与数据类型的预设对应关系,确定每一个所述表单元素的元素值的数据类型;
序列值生成单元,用于依据每一个所述表单元素的元素值的数据类型,将每一个所述表单元素的元素值作为所述表单元素所对应的层级最低的结构对象的序列值。
10.根据权利要求6所述的表单序列化装置,其特征在于,所述目标表单序列模块生成的序列数据的格式包括:JSON对象格式、字符串格式、数组格式或XML格式。

说明书全文

表单序列化方法及装置

技术领域

[0001] 本申请涉及表单处理技术领域,更具体地,是表单序列化方法及装置。

背景技术

[0002] 表单,包含在前端显示的网页页面中,主要完成数据采集功能。具体地,表单通常包含多个输入框,用户在输入框内填入数据并提交后,输入框内的数据便会被传递至后续处理模,以供后续处理模块进行处理。
[0003] 例如,账号注册页面中包含账号名输入框及密码输入框,用户分别输入账号名及密码后,可以点击提交按钮,将账号名及密码发送至后台系统进行存储。
[0004] 可以知道的是,表单在被发送至后续处理模块前,需要经过序列化的过程。现有的表单序列化方法,生成的序列化数据彼此之间是独立的,不能直接用于后续处理,造成后续处理过程比较繁琐,不够快捷。发明内容
[0005] 有鉴于此,本申请提供了一种表单序列化方法,用以解决现有的表单序列化方法生成的序列化数据使得后续处理过程比较繁琐的技术问题。另外,本申请还提供了一种表单序列化装置,用以保证所述方法在实际中的应用及实现。
[0006] 为实现所述目的,本申请提供的技术方案如下:
[0007] 本申请的第一方面提供了一种表单序列化方法,包括:
[0008] 响应于对目标表单的序列化指令,获取具有预设层级结构的所述目标表单;
[0009] 遍历所述目标表单的每个表单元素,获得每个所述表单元素的名称;其中,所述表单元素的名称是按照预设命名规则命名的,所述预设命名规则用于表示表单的预设层级结构;
[0010] 按照所述预设命名规则,解析每个所述表单元素的名称,以确定出所述目标表单的预设层级结构;
[0011] 依据所述预设层级结构,将所述目标表单序列化为反映所述预设层级结构的序列数据。
[0012] 本申请的第二方面提供了一种表单序列化装置,包括:
[0013] 目标表单获取模块,用于响应于对目标表单的序列化指令,获取具有预设层级结构的所述目标表单;
[0014] 元素名称获取模块,用于遍历所述目标表单的每个表单元素,获得每个所述表单元素的名称;其中,所述表单元素的名称是按照预设命名规则命名的,所述预设命名规则用于表示表单的预设层级结构;
[0015] 层级结构解析模块,用于按照所述预设命名规则,解析每个所述表单元素的名称,以确定出所述目标表单的预设层级结构;
[0016] 目标表单序列模块,用于将所述目标表单序列化为反映所述预设层级结构的序列数据。
[0017] 由以上可知,本申请具有如下有益效果:
[0018] 本申请提供了一种表单序列化方法实施例,本实施例响应于对目标表单的序列化指令,获取具有层级结构的目标表单,并从目标表单中获取到每个表单元素的名称,名称是按照预设命名规则命名的,且该预设命名规则可表示目标表单的预设层级结构,因此,按照预设命名规则对表单元素的名称进行解析,以确定出目标表单的层级结构,进而将目标表单序列化为反映该预设层级结构的序列数据。可见,相较于现有技术而言,本实施例可以使用表单元素的名称表示表单的层级结构,并可依据从名称中解析出来的层级结构,将目标表单序列化为具有层级关系的序列数据,该序列数据可以使得后续处理更加快捷。
[0019] 当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。附图说明
[0020] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0021] 图1为本申请提供的表单序列化方法实施例1的流程图
[0022] 图2为本申请提供的表单序列化方法实施例2的流程图;
[0023] 图3为本申请提供的表单序列化装置实施例1的结构示意图;
[0024] 图4为本申请提供的表单序列化装置实施例2的结构示意图。

具体实施方式

[0025] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0026] 参见图1,其示出了本申请提供的表单序列化方法实施例1的流程。如图1所示,本实施例可以具体包括:步骤S101~步骤S104。
[0027] 步骤S101:响应于对目标表单的序列化指令,获取具有预设层级结构的目标表单。
[0028] 其中,网页中可以包含表单,表单包含若干个表单元素,表单元素用于收集网页所需要的数据。例如,购物网站提供的提交订单页面,可以让用户新增收货地址。用户点击新增收货地址的按钮后,提交订单页面便显示省份输入框、市输入框、以及区县输入框等,此些输入框便是新增地址表单中的表单元素。用户在表单元素中输入相应数据后,可以点击提交订单按钮。当然,此示例仅仅是本实施例的一个具体应用场景,本申请并不局限于此,还可以是网络订票、注册账号、定制商品等等,现有的使用表单收集数据的任何应用场景均可在本申请的保护范围内。
[0029] 表单在提交时,便生成序列化指令。序列化指令用于将表单元素收集到的数据序列化。具体地,表单序列化即用于指明表单中哪个表单元素收集到怎样的数据,以供后续对数据进行处理。
[0030] 在实施中,若接收到对某个表单进行序列化的指令,序列化模块便按照本实施例提供的方法序列化该某个表单。当然,为了便于描述,可以将该某个表单称为目标表单。首先,需要获取目标表单,更具体地,需要获取到目标表单的每个表单元素中的数据。例如,新增收货地址时,获取到的数据分别为:省份输入框内的数据为“辽宁省”、市输入框内的数据为“沈阳市”、区县输入框内的数据为“沈北新区”。
[0031] 需要说明的是,目标表单是具有预设层级结构的表单。预设层级结构可以是表单元素之间的层级结构。例如,新增收货地址时,省份输入框、市输入框及区县输入框的层级是依次降低的。另外,预设层级结构也可以是表单元素与表单整体之间的层级结构。例如,注册账号时,姓名输入框、年龄输入框及密码输入框可以认为是账号整体结构的下一层级结构。当然,层级结构也可以是上述两种结构的结合。仍以新增收货地址为例,除了省份输入框、市输入框及区县输入框之间具有层级结构之外,还可以认为全部都是收货地址这个整体结构的下层级结构。
[0032] 步骤S102:遍历目标表单的每个表单元素,获得每个表单元素的名称;其中,表单元素的名称是按照预设命名规则命名的,预设命名规则用于表示表单的预设层级结构。
[0033] 可以知道的是,表单元素具有若干属性,其中包括名称属性,名称属性用于唯一表示表单中的表单元素。目标表单具有预设的层级结构,该层级结构体现在表单元素的名称上。因此,可以遍历目标表单中的各个表单元素,以查找各个表单元素的名称属性,并进一步获取名称属性的值,进而获取到表单元素的名称。
[0034] 需要说明的是,表单元素的名称是按照预设命名规则命名的,表单元素的名称可表示该表单元素在层级结构中所处的层级。
[0035] 步骤S103:按照预设命名规则,解析每个表单元素的名称,以确定出目标表单的预设层级结构。
[0036] 如上,预设命名规则通过定义表单元素的名称,来表示目标表单的预设层级结构,因此,按照元素命名规则,也对表单元素的名称进行解析,从而确定出目标表单的预设层级结构。
[0037] 可以理解的是,预设层级结构需要包括多个层级节点、且该些层级节点之间具有依次递变的层级关系。例如,以上述新增收货地址的应用场景为例,新增的收货地址表单的预设层级结构可以是,最高的层级节点为“地址”,下级的层级节点依次为“省”、“市”及“区”。
[0038] 步骤S104:将目标表单序列化为反映预设层级结构的序列数据。
[0039] 如上,序列化目标表单时既需要指明表单元素,也需要指明表单元素的值。因此,本步骤的具体实现方式可以是,依据预设层级结构,依次生成各个层级节点,并在目标表单中,获取各个表单元素的元素值,并将各个元素值作为各自最低级层级节点的序列值。该包含有层级节点及序列值的结构可以称为序列数据,即目标表单序列化后生成的即是序列数据。
[0040] 需要说明的是,序列数据的格式是预设的,生成何种格式的序列数据是根据后续处理设置的,即后续处理时需要使用何种格式的数据,则生成何种格式的序列数据。例如,序列数据的格式可以是JSON(JavaScript Object Notation)对象格式、字符串格式、数组格式或者XML(Extensible Markup Language)格式。当然,此些格式仅仅是说明示例,本申请并不局限于此,任意一种能体现层级结构的数据格式均可属于本申请的保护范围。
[0041] 其中,可以将表单序列化的数据传递给表单前端的处理模块,以供该处理模块进行后续处理;或者,还可以是将表单序列化的数据传递给后端的处理模块,以供后端的该处理模块进行后续处理。后续处理的具体内容可以是存储、修改等等。需要说明的是,不论是何种形式及内容,后续处理指的是需要使用层级结构的处理。例如,存储时,需要将同层级的数据一并存储。
[0042] 现有的表单序列化方法,生成的序列数据彼此之间是独立的,相互之间并未体现出层级关系,不能直接用于后续处理,造成后续处理过程比较繁琐,不够快捷。
[0043] 具体地,现有的一种表单序列化方法,生成的序列化数据是字符串。例如,表单中包含三个表单元素,名称分别为“province”、“city”及“area”,表单元素的值分别为“辽宁省”“沈阳市”及“沈北新区”,生成的序列化数据为“province=辽宁省&city=沈阳市&area=沈北新区”。在后续处理时,会分别提取各个表单元素的值,例如提取到city=沈阳市,该值并未直接体现与其他表单元素值之间的层级关系,后续处理需要进一步确定各个表单元素之间的层级关系,因此不够方便快捷。
[0044] 由以上技术方案可知,本申请提供了一种表单序列化方法实施例,本实施例响应于对目标表单的序列化指令,获取具有层级结构的该目标表单,进而从目标表单中获取到每个表单元素的名称,名称是按照预设命名规则命名的,且该预设命名规则可表示目标表单的预设层级结构,因此,按照预设命名规则对表单元素的名称进行解析,以确定出目标表单的层级结构,进而将目标表单序列化为反映该预设层级结构的序列数据。可见,相较于现有技术而言,本实施例可以使用表单元素的名称表示表单的层级结构,并可依据从名称中解析出来的层级结构,将目标表单序列化为具有层级关系的序列数据,该序列数据可以使得后续处理更加快捷。
[0045] 在实际应用中,预设命名规则可以具体为,表单元素的名称包括多个结构对象,结构对象之间使用标志位隔开,结构对象的前后位置关系用于表示结构对象的高低层级关系。例如,新增收货地址的表单中,包括三个表单元素,名称分别为:“address.province”、“address.province.city”及“address.province.city.area”。
[0046] 针对上述形式的预设命名规则,本申请提供了表单序列化方法实施例2。如图2所示,本实施例可以具体包括:步骤S201~步骤S207。
[0047] 步骤S201:响应于对目标表单的序列化指令,获取具有预设层级结构的目标表单。
[0048] 步骤S202:遍历目标表单的每个表单元素,获得每个表单元素的名称;其中,表单元素的名称是按照预设命名规则命名的,预设命名规则用于表示表单的预设层级结构。
[0049] 需要说明的是,以上步骤S201及步骤S202可以参见上述表单序列化方法实施例1中的说明,此处并不赘述,以下仅对步骤S203~步骤S207进行说明。
[0050] 步骤S203:针对每个表单元素的名称,按照由前至后或者由后至前的顺序,在表单元素的名称中,查找标志位。
[0051] 其中,遍历目标表单,查找到表单元素的名称后,按照以上预设命名规则,分别对表单元素的名称进行反解析。
[0052] 具体地,在表单元素的名称中,由前至后或由后至前查找标志位。可选地,标志位可以是圆点、逗号、分号或加号等等各种符号,本申请并不限定标志位的具体形式。
[0053] 步骤S204:每当查找到标志位,便分别确定标志位之前的结构对象及之后的结构对象的层级;其中,标志位之前的结构对象的层级高于标志位之后的结构对象的层级,具有高低层级关系的多个结构对象用于表示目标表单的预设层级结构。
[0054] 由以上可知,预设命名规则使用标志位的前后位置关系表示层级结构的高低层级关系。例如,在表单元素名称“address.province.city”中,第一个标志位圆点之前及之后的结构对象分别为“address”及“province”,结构对象“address”的层级高于结构对象“province”。同理,依据第二个标志位圆点可知,结构对象“province”的层级高于结构对象“city”。
[0055] 因此,在步骤S201查找到标志位后,便根据预设命名规则设置标志位两侧结构对象的层级。其中,标志位之前结构对象的层级高于标志位之后结构对象的层级。例如,第一个标志位圆点之前的结构对象“address”的层级为0,第一个标志位圆点之后的结构对象“province”的层级为1,第二个标志位圆点之前的结构对象“city”的层级为2。需要说明的是,在使用数字表示层级的方式中,层级数值越低则表示层级越高。当然,还可以使用其他方式表示层级,并赋予层级数值不同的定义。
[0056] 步骤S205:按照由高到低的层级,依次序列化每一个表单元素的结构对象。
[0057] 其中,从表单元素的名称中解析出来的结构对象即上文所述的层级节点,依次生成各个结构对象,便可以获得层级结构。需要说明的是,针对每一个表单元素,均需要将该表单元素的结构对象进行序列化。实际应用中,某些表单元素的名称相同,则解析出来的结构对象也相同。针对此种情况,在序列化某个表单元素时,若检查到已经存在该表单元素的结构对象时,便不再生成新的结构对象,而是使用该已经存在的结构对象。
[0058] 例如,表单元素1为“address.province.city=沈阳市”,表单元素2为“address.province.city=大连市”,则两个表单元素的名称解析出的结构对象是相同的,均包括“address”、“province”及“city”。这种情况中,仅生成一个包含“address”、“province”及“city”的层级结构。
[0059] 当然,若某表单元素包括多个结构对象,其中一部分结构对象已经存在,另一部分结构对象并不存在,则该已经存在的结构对象之下继续生成该另一部分结构对象。
[0060] 例如,表单元素3为:“form.base.id=100”;表单元素4为:“form.advance.other=123456”。其中,对表单元素3进行序列化时,生成的层级结构为:
[0061]
[0062] 序列化表单元素4时,对表单元素4的名称解析后,按照由高到低的层级顺序,首先需要生成层级结构form,但该层级结构已经存在,因此,可以在已经存在的层级结构中继续进行序列化。具体地,在层级结构form下依次生成层级结构advance及层级结构other,最终结果为:
[0063]
[0064] 另外,序列数据可以是某种预设格式,如上述列举的JSON对象格式、字符串格式、数组格式或XML格式。虽然格式不同,序列数据的展示形式不同。但是,均能体现目标表单的层级结构。
[0065] 例如,将表单元素“address.province.city=沈阳市”生成JSON对象格式的序列数据,具体为:
[0066]
[0067] 又如,若将上述表单元素生成字符串格式的序列数据,具体为:’{"address":{"province":{"city":沈阳市}}}’。
[0068] 再者,若将上述表单元素生成XML格式的序列数据,具体为:
[0069]
[0070] 可见,上述各种形式的序列数据均可以表现依据表单元素解析出来的层级结构。
[0071] 步骤S206:在目标表单中,获取每一个表单元素的元素值。
[0072] 如上,用户可以在表单页面提供的输入框中输入数据,输入框如文本框、单选框、复选框、下拉列表等等,针对不同的输入框,用户可以写入或者选择数据。输入框即表单元素,用户输入的数据即表单元素的元素值。
[0073] 对目标表单进行序列化时,需要获取目标表单中每一个表单元素的元素值。
[0074] 步骤S207:将每一个表单元素的元素值作为表单元素所对应的层级最低的结构对象的序列值。
[0075] 其中,上述步骤S205生成的层级结构中,最低一级结构对象需要具有序列值,该序列值即表单元素的元素值。将每个表单元素的元素值写入表单元素对应的最低级结构对象后,便获得目标表单的最终序列化结果,即反映预设层级结构的序列数据。
[0076] 由以上技术方案可知,本实施例提供的表单序列化方法中,预设命名规则使用标志位区分各个层级结构,且使用前后位置关系表示层级高低关系,依据该预设命名规则,可以对表单元素的名称进行解析,从而将目标表单序列化为具有层级结构的数据。
[0077] 在实际应用中,表单元素的元素值可以是不同的数据类型,元素值的数据类型不同,则生成最低级结构对象的序列值的方式则不同。
[0078] 因此,预设命名规则还可以规定,不同数据类型的元素值,使用不同的标识符进行区分。例如,元素值常用的数据类型包括字符串及数组,可以使用“<>”及“[]”分别表示该两种数据类型。
[0079] 针对此种具体形式,以上表单序列化方法实施例2中步骤S207(将每一个表单元素的元素值作为表单元素所对应的层级最低的结构对象的序列值)可以具体包括以下步骤A1及步骤A2。
[0080] 步骤A1:依据标识符类型与数据类型的预设对应关系,确定每一个表单元素的元素值的数据类型。
[0081] 其中,从目标表单中获取到的元素值具有标识符,根据标识符的类型,来确定元素值的数据类型。
[0082] 例如,某个表单元素的名称及元素值为form.advance.other<>=123456,由于检测到标识符“<>”,因此,便可确定该表单元素的元素值为字符串。又如,某个表单元素的名称及元素值为form.advance.list[]=1000,由于检测到标识符“[]”,因此,便可确定该表单元素的元素值为数组中的一个元素值。
[0083] 步骤A2:依据每一个所述表单元素的元素值的数据类型,将每一个所述表单元素的元素值作为所述表单元素所对应的层级最低的结构对象的序列值。
[0084] 其中,不同的数据类型,生成的序列值形式也不同。例如,数据类型为字符串,则生成的序列值形式为字符串形式。数据类型为数组,则生成的序列值形式为数组。
[0085] 例如,表单元素form.advance.other<>=123456对应的序列数据为:
[0086]
[0087] 又如,表单元素form.advance.list[]=1000对应的序列数据为:
[0088]
[0089] 若再加上表单元素form.advance.list[]=100000后,对应的序列数据为:
[0090]
[0091] 需要说明的是,以上标识符“<>”及“[]”仅仅是示例说明,当然还可以使用其他形式的标识符对数据类型进行区分,本申请并不做具体限定。
[0092] 另外,标识符并不限定于位于最低层级结构之后,也可以是对最低层级结构进行标记。例如,表单元素form.advance.list[]=100000中,标识符“[]”位于层级结构“list”之后,当然也可以是:form.advance.[list]=100000。
[0093] 以下对本申请提供的表单序列化装置进行介绍,需要说明的是,下文有关表单序列化装置的说明可以参见上文提供的表单序列化方法,以下并不赘述。
[0094] 与上述表单序列化方法实施例1相对应,本申请提供了一种表单序列化装置实施例1。如图3所示,本实施例可以具体包括:目标表单获取模块301、元素名称获取模块302、层级结构解析模块303及目标表单序列模块304;其中:
[0095] 目标表单获取模块301,用于响应于对目标表单的序列化指令,获取具有预设层级结构的目标表单;
[0096] 元素名称获取模块302,用于遍历目标表单的每个表单元素,获得每个表单元素的名称;其中,表单元素的名称是按照预设命名规则命名的,预设命名规则用于表示表单的预设层级结构;
[0097] 层级结构解析模块303,用于按照预设命名规则,解析每个表单元素的名称,以确定出目标表单的预设层级结构;
[0098] 目标表单序列模块304,用于将目标表单序列化为反映预设层级结构的序列数据。
[0099] 由以上技术方案可知,本申请提供了一种表单序列化装置实施例,目标表单获取模块301响应于对目标表单的序列化指令,获取具有层级结构的该目标表单,进而元素名称获取模块302从目标表单中获取到每个表单元素的名称,名称是按照预设命名规则命名的,且该预设命名规则可表示目标表单的预设层级结构,因此,层级结构解析模块303按照预设命名规则对表单元素的名称进行解析,从而确定出目标表单的层级结构,进而目标表单序列模块304将目标表单序列化为反映该预设层级结构的序列数据。可见,相较于现有技术而言,本实施例可以使用表单元素的名称表示表单的层级结构,并可依据从名称中解析出来的层级结构,将目标表单序列化为具有层级关系的序列数据,该序列数据可以使得后续处理更加快捷。
[0100] 与上述表单序列化方法实施例2相对应,本申请提供了一种表单序列化装置实施例2。在本装置实施例2中,预设命名规则包括:表单元素的名称包括多个结构对象,结构对象之间使用标志位隔开,结构对象的前后位置关系用于表示结构对象的高低层级关系。
[0101] 具体地,如图4所示,本实施例可以包括:目标表单获取模块401、元素名称获取模块402、标志位查找子模块403、结构对象层级确定子模块404、结构对象生成子模块405、元素值获取子模块406、以及序列值生成子模块407。其中:
[0102] 目标表单获取模块401,用于响应于对目标表单的序列化指令,获取具有预设层级结构的目标表单;
[0103] 元素名称获取模块402,用于遍历目标表单的每个表单元素,获得每个表单元素的名称;其中,表单元素的名称是按照预设命名规则命名的,预设命名规则用于表示表单的预设层级结构;
[0104] 标志位查找子模块403,用于针对每个表单元素的名称,按照由前至后或者由后至前的顺序,在表单元素的名称中,查找标志位;
[0105] 结构对象层级确定子模块404,用于每当查找到标志位,便分别确定标志位之前的结构对象及之后的结构对象的层级;其中,标志位之前的结构对象的层级高于标志位之后的结构对象的层级,具有高低层级关系的多个结构对象用于表示目标表单的预设层级结构。
[0106] 结构对象生成子模块405,用于按照由高到低的层级,依次序列化生成每个结构对象;
[0107] 元素值获取子模块406,用于在目标表单中,获取每一个表单元素的元素值;
[0108] 序列值生成子模块407,用于将每一个表单元素的元素值作为表单元素所对应的层级最低的结构对象的序列值。
[0109] 在实际应用中,预设命名规则还可以包括:不同数据类型的元素值,使用不同的标识符进行区分;相应地,上述序列值生成子模块407可以具体包括:元素值类型确定单元及序列值生成单元;其中:
[0110] 元素值类型确定单元,用于依据标识符类型与数据类型的预设对应关系,确定每一个表单元素的元素值的数据类型;
[0111] 序列值生成单元,用于依据每一个所述表单元素的元素值的数据类型,将每一个所述表单元素的元素值作为所述表单元素所对应的层级最低的结构对象的序列值。
[0112] 在实际应用中,目标表单序列模块304生成的序列数据的格式包括:JSON对象格式、字符串格式、数组格式或XML格式。
[0113] 需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0114] 还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0115] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈