发明内容
本发明正是基于上述技术问题至少之一,提出了一种新的XML文档的排版方案,在XML文档的排版过程中,更大程度上地降低人工处理的工作量,提高了DOI数据的处理效率。
有鉴于此,本发明提出了一种XML文档的排版方法,其特征在于,包括:获取待进行排版的目标XML文档的配置信息文件,其中,所述配置信息文件包含有多条用于表示所述目标XML文档中DOI节点的位置的路径信息;在所述目标XML文档中查找每条所述路径信息所表示的DOI节点,并获取每条所述路径信息所表示的DOI节点的固定内容项、类型以及在所述目标XML文档中的排序;根据每条所述路径信息所表示的DOI节点的固定内容项、类型以及在所述目标XML文档中的排序生成DOI数据,并基于所述DOI数据填充每条所述路径信息所表示的DOI节点,以更新所述目标XML文档;基于更新后的目标XML文档进行排版。
在该技术方案中,通过获取配置信息文件中的各条路径信息来查找其所表示的DOI节点,并根据各条路径信息所表示的DOI节点的固定内容项、类型以及在目标XML文档中的排序来生成用于填充DOI节点的DOI数据,以实现对目标XML文档的更新,而无需人工来逐条填写更新,更大程度上地降低人工处理的工作量,有效地提高了DOI数据的处理效率。
在上述技术方案中,优选地,所述在所述目标XML文档中查找每条所述路径信息所表示的DOI节点的步骤,具体包括:在所述目标XML文档中,采用逐级拆分方式查找每条所述路径信息所表示的DOI节点。
在该技术方案中,通过采用逐级拆分方式来查找每条路径信息所表示的DOI节点,使得当路径信息中间出现分支时,每个分支的下层都有对应的路径信息描述的节点,确保了DOI节点的查找结果的准确性。
在上述任一项技术方案中,优选地,还包括:当查找不到任一所述路径信息所表示的DOI节点时,根据任一所述路径信息,在所述目标XML文档中创建任一所述路径信息对应的DOI节点。
在该技术方案中,通过根据任一路径信息,在目标XML文档中创建任一路径信息对应的DOI节点,具体地,可在该路径信息指示的位置处创建DOI节点,并将创建好的DOI节点与该路径信息进行关联,确保了每条路径信息均可在目标XML文档中查找到对应的DOI节点。
在上述任一项技术方案中,优选地,还包括:在接收到设置所述配置信息文件的指令时,设置所述配置信息文件。
在该技术方案中,通过在接收到设置配置信息文件的指令时,设置配置信息文件,使得用户可以根据自身的需求来设定或修改配置信息文件,满足了用户的不同使用需求,同时设置配置信息文件为后续根据配置信息文件来更新目标XML文档提供必要的前提保障。
在上述任一项技术方案中,优选地,每条所述路径信息包括Xpath信息。
在上述任一项技术方案中,优选地,在所述目标XML文档中查找每条所述路径信息所表示的DOI节点的步骤之前,还包括:对所述目标XML文档中的每个DOI节点添加标识信息。
在该技术方案中,通过对目标XML文档中的每个DOI节点添加标识信息,该标识信息用于标识DOI节点的属性,以便后续根据路径信息来查找对应的DOI节点。
根据本发明的第二方面,提出了一种XML文档的排版装置,包括:第一获取单元,用于获取待进行排版的目标XML文档的配置信息文件,其中,所述配置信息文件包含有多条用于表示所述目标XML文档中DOI节点的位置的路径信息;查找单元,用于在所述目标XML文档中查找每条所述路径信息所表示的DOI节点;第二获取单元,用于获取每条所述路径信息所表示的DOI节点的固定内容项、类型以及在所述目标XML文档中的排序;处理单元,用于根据每条所述路径信息所表示的DOI节点的固定内容项、类型以及在所述目标XML文档中的排序生成DOI数据,并基于所述DOI数据填充每条所述路径信息所表示的DOI节点,以更新所述目标XML文档;排版单元,用于基于更新后的目标XML文档进行排版。
在该技术方案中,通过获取配置信息文件中的各条路径信息来查找其所表示的DOI节点,并根据各条路径信息所表示的DOI节点的固定内容项、类型以及在目标XML文档中的排序来生成用于填充DOI节点的DOI数据,以实现对目标XML文档的更新,而无需人工来逐条填写更新,更大程度上地降低人工处理的工作量,有效地提高了DOI数据的处理效率。
在上述技术方案中,优选地,所述查找单元具体用于:在所述目标XML文档中,采用逐级拆分方式查找每条所述路径信息所表示的DOI节点。
在该技术方案中,通过采用逐级拆分方式来查找每条路径信息所表示的DOI节点,使得当路径信息中间出现分支时,每个分支的下层都有对应的路径信息描述的节点,确保了DOI节点的查找结果的准确性。
在上述任一项技术方案中,优选地,还包括:创建单元,用于当查找不到任一所述路径信息所表示的DOI节点时,根据任一所述路径信息,在所述目标XML文档中创建任一所述路径信息对应的DOI节点。
在该技术方案中,通过根据任一路径信息,在目标XML文档中创建任一路径信息对应的DOI节点,具体地,可在该路径信息指示的位置处创建DOI节点,并将创建好的DOI节点与该路径信息进行关联,确保了每条路径信息均可在目标XML文档中查找到对应的DOI节点。
在上述任一项技术方案中,优选地,还包括:设置单元,用于在接收到设置所述配置信息文件的指令时,设置所述配置信息文件。
在该技术方案中,通过在接收到设置配置信息文件的指令时,设置配置信息文件,使得用户可以根据自身的需求来设定或修改配置信息文件,满足了用户的不同使用需求,同时设置配置信息文件为后续根据配置信息文件来更新目标XML文档提供必要的前提保障。
在上述任一项技术方案中,优选地,每条所述路径信息包括Xpath信息。
在上述任一项技术方案中,优选地,还包括:添加单元,用于对所述目标XML文档中的每个DOI节点添加标识信息。
在该技术方案中,通过对目标XML文档中的每个DOI节点添加标识信息,该标识信息用于标识DOI节点的属性,以便后续根据路径信息来查找对应的DOI节点。
通过以上技术方案,在XML文档的排版过程中,更大程度上地降低人工处理的工作量,提高了DOI数据的处理效率。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
图1示出了根据本发明的一个实施例的XML文档的排版方法的示意流程图。
如图1所示,根据本发明的一个实施例的XML文档的排版方法,包括:
步骤102,获取待进行排版的目标XML文档的配置信息文件,其中,所述配置信息文件包含有多条用于表示所述目标XML文档中DOI节点的位置的路径信息。
步骤104,在所述目标XML文档中查找每条所述路径信息所表示的DOI节点,并获取每条所述路径信息所表示的DOI节点的固定内容项、类型以及在所述目标XML文档中的排序。
步骤106,根据每条所述路径信息所表示的DOI节点的固定内容项、类型以及在所述目标XML文档中的排序生成DOI数据,并基于所述DOI数据填充每条所述路径信息所表示的DOI节点,以更新所述目标XML文档。
步骤108,基于更新后的目标XML文档进行排版。
在该技术方案中,通过获取配置信息文件中的各条路径信息来查找其所表示的DOI节点,并根据各条路径信息所表示的DOI节点的固定内容项、类型以及在目标XML文档中的排序来生成用于填充DOI节点的DOI数据,以实现对目标XML文档的更新,而无需人工来逐条填写更新,更大程度上地降低人工处理的工作量,有效地提高了DOI数据的处理效率。
在上述技术方案中,优选地,所述在所述目标XML文档中查找每条所述路径信息所表示的DOI节点的步骤,具体包括:在所述目标XML文档中,采用逐级拆分方式查找每条所述路径信息所表示的DOI节点。
在该技术方案中,通过采用逐级拆分方式来查找每条路径信息所表示的DOI节点,使得当路径信息中间出现分支时,每个分支的下层都有对应的路径信息描述的节点,确保了DOI节点的查找结果的准确性。
在上述任一项技术方案中,优选地,还包括:当查找不到任一所述路径信息所表示的DOI节点时,根据任一所述路径信息,在所述目标XML文档中创建任一所述路径信息对应的DOI节点。
在该技术方案中,通过根据任一路径信息,在目标XML文档中创建任一路径信息对应的DOI节点,具体地,可在该路径信息指示的位置处创建DOI节点,并将创建好的DOI节点与该路径信息进行关联,确保了每条路径信息均可在目标XML文档中查找到对应的DOI节点。
在上述任一项技术方案中,优选地,还包括:在接收到设置所述配置信息文件的指令时,设置所述配置信息文件。
在该技术方案中,通过在接收到设置配置信息文件的指令时,设置配置信息文件,使得用户可以根据自身的需求来设定或修改配置信息文件,满足了用户的不同使用需求,同时设置配置信息文件为后续根据配置信息文件来更新目标XML文档提供必要的前提保障。
在上述任一项技术方案中,优选地,每条所述路径信息包括Xpath信息。
在上述任一项技术方案中,优选地,在所述目标XML文档中查找每条所述路径信息所表示的DOI节点的步骤之前,还包括:对所述目标XML文档中的每个DOI节点添加标识信息。
在该技术方案中,通过对目标XML文档中的每个DOI节点添加标识信息,该标识信息用于标识DOI节点的属性,以便后续根据路径信息来查找对应的DOI节点。
图2示出了根据本发明的实施例的XML文档的排版装置的示意框图。
如图2所示,根据本发明的实施例的XML文档的排版装置200,包括:第一获取单元202、查找单元204、第二获取单元206和处理单元208。
其中,第一获取单元202用于获取待进行排版的目标XML文档的配置信息文件,其中,所述配置信息文件包含有多条用于表示所述目标XML文档中DOI节点的位置的路径信息;查找单元204用于在所述目标XML文档中查找每条所述路径信息所表示的DOI节点;第二获取单元206用于获取每条所述路径信息所表示的DOI节点的固定内容项、类型以及在所述目标XML文档中的排序;处理单元208用于根据每条所述路径信息所表示的DOI节点的固定内容项、类型以及在所述目标XML文档中的排序生成DOI数据,并基于所述DOI数据填充每条所述路径信息所表示的DOI节点,以更新所述目标XML文档;排版单元210用于基于更新后的目标XML文档进行排版。
在该技术方案中,通过获取配置信息文件中的各条路径信息来查找其所表示的DOI节点,并根据各条路径信息所表示的DOI节点的固定内容项、类型以及在目标XML文档中的排序来生成用于填充DOI节点的DOI数据,以实现对目标XML文档的更新,而无需人工来逐条填写更新,更大程度上地降低人工处理的工作量,有效地提高了DOI数据的处理效率。
在上述技术方案中,优选地,所述查找单元204具体用于:在所述目标XML文档中,采用逐级拆分方式查找每条所述路径信息所表示的DOI节点。
在该技术方案中,通过采用逐级拆分方式来查找每条路径信息所表示的DOI节点,使得当路径信息中间出现分支时,每个分支的下层都有对应的路径信息描述的节点,确保了DOI节点的查找结果的准确性。
在上述任一项技术方案中,优选地,还包括:创建单元212,用于当查找不到任一所述路径信息所表示的DOI节点时,根据任一所述路径信息,在所述目标XML文档中创建任一所述路径信息对应的DOI节点。
在该技术方案中,通过根据任一路径信息,在目标XML文档中创建任一路径信息对应的DOI节点,具体地,可在该路径信息指示的位置处创建DOI节点,并将创建好的DOI节点与该路径信息进行关联,确保了每条路径信息均可在目标XML文档中查找到对应的DOI节点。
在上述任一项技术方案中,优选地,还包括:设置单元214,用于在接收到设置所述配置信息文件的指令时,设置所述配置信息文件。
在该技术方案中,通过在接收到设置配置信息文件的指令时,设置配置信息文件,使得用户可以根据自身的需求来设定或修改配置信息文件,满足了用户的不同使用需求,同时设置配置信息文件为后续根据配置信息文件来更新目标XML文档提供必要的前提保障。
在上述任一项技术方案中,优选地,每条所述路径信息包括Xpath信息。
在上述任一项技术方案中,优选地,还包括:添加单元216,用于对所述目标XML文档中的每个DOI节点添加标识信息。
在该技术方案中,通过对目标XML文档中的每个DOI节点添加标识信息,该标识信息用于标识DOI节点的属性,以便后续根据路径信息来查找对应的DOI节点。
以下结合图3对本发明的实施例作进一步说明。
在本实施例中,基于XML的自动化排版主要包括:
1)、等效转换过程:将外部传入的不同标准的xml文件转换为统一标准的xml文件。
2)、数据合成过程:将统一标准的xml文件结合模板等合成排版结果文件。
3)、组刊组稿过程:将数据合成的各个单章排版结果文件组装成多章节书籍文件。
4)、连排过程:优化书籍不同章节之间的衔接,节约纸张。
5)、多格式输出过程,将合成结果或组刊组稿结果或者连排结果输出成常用格式的数据文件(如word、pdf、xml、epub等)。
其中,需要预先设置一配置信息文件,配置信息文件描述XML文档中DOI节点的Xpath。配置信息文件中的配置信息需要资源发布者提供,资源发布者需要确定哪些节点是DOI数据节点,并将这些节点的Xpath写入配置信息文件中。
在等效转换过程中,根据配置信息文件描述的Xpath,逐条查找匹配对应的DOI节点,对于查找不到对应节点的Xpath,按照Xpath描述的路径,新建对应的DOI节点并添加到对应的位置,以确保每条Xpath描述信息都能找到对应的节点。此外,在Xpath指定的节点上,需添加一自定义属性(即标识信息,如可采用fx:generatedoi=true),该属性标识该节点为DOI节点,方便在处理DOI节点时查找DOI节点。通过获取DOI节点的父节点,按照JATS(Journal Article Tag Suite,期刊文章标签套件)标准判断出节点下DOI的类型(常用类型有article-meta、fig、media、table-wrap等),将类型信息也通过属性的方式添加到DOI节点上,DOI数据的生成时需要DOI的类型信息。
在逐条查找匹配对应的DOI节点的过程中,优选地,可将Xpath逐级拆分查找,确保Xpath中间出现分支的时候,每个分支的下层都有对应的Xpath描述的节点,防止Xpath中间有分支的时候,部分分支下没有对应的节点。
在数据合成过程中,通过接收用户输入的DOI的固定内容项(包括DOI数据的前缀以及后缀中的部分固定内容项),将这些信息按照DOI数据构成规则、DOI节点在XML文档中的顺序以及DOI节点的类型,逐条组装成完整DOI数据并替换成对应的节点内容,将所有Xpath描述的DOI数据处理完成后,将新的DOI数据内容更新到排版的版面,完成DOI数据的处理。
如图3所示,具体地处理过程包括:
步骤302,读取配置信息文件中的Xpath信息。
步骤304,确保每条Xpath信息在XML文档中均能找到对应的节点,并给节点添加属性信息。
步骤306,获取DOI数据中的固定内容项。
步骤308,按照DOI节点在XML中的顺序以及节点的类型,逐条生成DOI数据,经生成的DOI数据填充到DOI节点内容中。
步骤310,所有DOI节点均填充有DOI数据后,将数据更新到排版版面。
步骤312,输出各种格式的排版结果文件。
其中,在步骤306中,需要DOI数据中的固定内容项需要资源发布者将来输入。固定内容项包括前缀、期刊刊号、期刊、各类型DOI对应类型缩写等,例如,在资源发布者为中华医学会时,其需要输入的固定内容项包括:(1)前缀(如10.3760);(2)期刊刊号(如cma.j.issn.2095-7041);(3)刊期(如2015.01);(4)各类型DOI对应类型缩写(如文章article-meta对应空,图片fig对应F,表格table-wrap对应T等)。
步骤308中,DOI数据的生成需要符合DOI数据构成标准,即满足(前缀/后缀)结构,且前缀满足以"."分为两部分,并且对于一个资源发布者或者单位,其DOI前缀是固定的;其次需要资源发布者提供其DOI数据后缀生成规则,以便生成符合资源发布者需求的DOI数据并替换对应的Xpath节点内容。
例如,DOI数据构成为:前缀/刊号.刊期.章号.(类型+编号)。对于单个章节的数据合成过程,章号统一采用001;对于组刊组稿流程,不同章节DOI的章号采用从001开始往上递增。对不同类型的DOI数据编号,采用从001开始往上递增的编号,且不同类型DOI之间的编号互不影响。在组刊组稿过程中,还需要从当前组刊组稿状态中获取章节排序,即当前章节处于结果书籍中的第几个章节之后可生成DOI数据,如组刊组稿刊号为cma.j.issn.2095-7041,刊期为2015.01书籍时,其中第3章第5个表格的DOI:10.3760/cma.j.issn.2095-7041.2015.01.003.T005,再将生成的DOI数据结果,替换到对应的DOI节点内容。
在上述实施例中,在基于XML的自动化排版过程中,能够对DOI数据进行统一处理,提高软件的友好性,大幅度减少DOI数据在自动化排版前后期人工处理的工作量。
以上结合附图详细说明了本发明的技术方案,本发明提出了一种新的XML文档的排版方案,在XML文档的排版过程中,更大程度上地降低人工处理的工作量,提高了DOI数据的处理效率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。