CN110196965B - XML文件转换Word文件的方法及装置 - Google Patents

XML文件转换Word文件的方法及装置 Download PDF

Info

Publication number
CN110196965B
CN110196965B CN201810159642.4A CN201810159642A CN110196965B CN 110196965 B CN110196965 B CN 110196965B CN 201810159642 A CN201810159642 A CN 201810159642A CN 110196965 B CN110196965 B CN 110196965B
Authority
CN
China
Prior art keywords
cross
node
file
reference target
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201810159642.4A
Other languages
English (en)
Other versions
CN110196965A (zh
Inventor
谭伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New Founder Holdings Development Co ltd
Beijing Founder Electronics Co Ltd
Original Assignee
Peking University Founder Group Co Ltd
Beijing Founder Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peking University Founder Group Co Ltd, Beijing Founder Electronics Co Ltd filed Critical Peking University Founder Group Co Ltd
Priority to CN201810159642.4A priority Critical patent/CN110196965B/zh
Publication of CN110196965A publication Critical patent/CN110196965A/zh
Application granted granted Critical
Publication of CN110196965B publication Critical patent/CN110196965B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • G06F16/1794Details of file format conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • G06F40/154Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种XML文件转换Word文件的方法及装置,通过加载初始XML文件生成二进制的排版文件,并加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在排版文件中进行标记;根据预定格式将完成标记的排版文件转换成半成品XML文件,并在半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联;在半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点;将半成品XML文件分割打包,输出成品Word文件,实现了自动化处理,不需要人工操作即可实现XML文件转换Word文件转换过程中自动编号以及交叉引用的转换,且具有较高的准确度。

Description

XML文件转换Word文件的方法及装置
技术领域
本发明涉及文档转换技术领域,尤其涉及一种XML文件转换Word文件的方法及装置。
背景技术
Microsoft Word是微软公司的一个文字处理应用程序,在办公自动化中,Microsoft Word得到了越来越多的应用。然而,在自动化办公应用非常广泛的今天,如何根据已有的大量XML(Extensible Markup Language,可扩展标记语言)信息高效、稳定地批量生成Word文档,已成为迫切的需求。
现有的技术中,将XML文件排版输出Word文件,通常由XML排版引擎实现。而若要求将XML文件中的自动编号转换为Word中的自动编号,XML中的交叉引用转换为Word中的交叉引用,由于存在多余数据干扰,现有技术的XML排版引擎并不能很好的完成上述任务,需要人工操作,也即由人工修改Word文件,Word文件出错可能性较大,并且效率低下。
发明内容
本发明提供一种XML文件转换Word文件的方法及装置,以自动完成XML文件转换Word文件,并有效的实现XML文件转换Word文件转换过程中的自动编号和交叉引用的自动转换,不需要人工操作。
本发明的一个方面是提供一种XML文件转换Word文件的方法,该方法包括:
加载初始XML文件生成二进制的排版文件,并加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在所述排版文件中进行标记;
根据预定格式将完成标记的排版文件转换成半成品XML文件,并在所述半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联;
在所述半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点;
将所述半成品XML文件分割打包,输出成品Word文件。
进一步的,所述加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在所述排版文件中进行标记,具体包括:
根据预定规则判断所述初始XML文件中各节点是否为自动编号节点、交叉引用源节点或交叉引用目标节点,其中所述预定规则包括自动编号及交叉引用的类型、名称和位置信息;
若判断为自动编号节点,则对所述排版文件中该节点增加第一扩展属性,所述第一扩展属性记录有对应的自动编号的类型和名称;
若判断为交叉引用源节点或交叉引用目标节点,则对所述排版文件中该节点增加第二扩展属性,所述第二扩展属性记录有对应的交叉引用的类型、名称和ID。
进一步的,所述根据预定格式将完成标记的排版文件转换成半成品XML文件,并在所述半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联,具体包括:
所述预定格式采用XML Schema定义,且在XML Schema定义中增加自动编号节点、交叉引用源节点和交叉引用目标节点的定义;
采用所述预定格式将所述完成标记的排版文件转换成半成品XML文件;
根据交叉引用源节点和交叉引用目标节点的第二扩展属性,将具有相同ID的交叉引用源节点和交叉引用目标节点相关联。
进一步的,所述根据交叉引用源节点和交叉引用目标节点的第二扩展属性,将具有相同ID的交叉引用源节点和交叉引用目标节点相关联,具体包括:
获取所述排版文件中所有交叉引用目标节点的第二扩展属性,创建交叉引用目标节点集合;
依次遍历各交叉引用源节点,根据ID从所述交叉引用目标节点集合中查找具有相同ID的交叉引用目标节点,并进行关联。
进一步的,所述在所述半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点后,还包括:
通过增加样式分隔符,将自动编号节点、交叉引用源节点和交叉引用目标节点与其所在段内其他内容分离。
本发明的另一个方面是提供一种XML文件转换Word文件的装置,该装置包括:
标记模块,用于加载初始XML文件生成二进制的排版文件,并加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在所述排版文件中进行标记;
转换模块,用于根据预定格式将完成标记的排版文件转换成半成品XML文件,并在所述半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联;
处理模块,用于在所述半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点;
输出模块,用于将所述半成品XML文件分割打包,输出成品Word文件。
进一步的,所述标记模块具体用于:
根据预定规则判断所述初始XML文件中各节点是否为自动编号节点、交叉引用源节点或交叉引用目标节点,其中所述预定规则包括自动编号及交叉引用的类型、名称和位置信息;
若判断为自动编号节点,则对所述排版文件中该节点增加第一扩展属性,所述第一扩展属性记录有对应的自动编号的类型和名称;
若判断为交叉引用源节点或交叉引用目标节点,则对所述排版文件中该节点增加第二扩展属性,所述第二扩展属性记录有对应的交叉引用的类型、名称和ID。
进一步的,所述转换模块具体用于:
所述预定格式采用XML Schema定义,且在XML Schema定义中增加自动编号节点、交叉引用源节点和交叉引用目标节点的定义;
采用所述预定格式将所述完成标记的排版文件转换成半成品XML文件;
根据交叉引用源节点和交叉引用目标节点的第二扩展属性,将具有相同ID的交叉引用源节点和交叉引用目标节点相关联。
进一步的,所述转换模块还包括:
交叉引用目标节点管理子模块,用于获取所述排版文件中所有交叉引用目标节点的第二扩展属性,创建交叉引用目标节点集合;
关联子模块,用于依次遍历各交叉引用源节点,根据ID从所述交叉引用目标节点集合中查找具有相同ID的交叉引用目标节点,并进行关联。
进一步的,所述处理模块还用于:
通过增加样式分隔符,将自动编号节点、交叉引用源节点和交叉引用目标节点与其所在段内其他内容分离。
本发明提供的XML文件转换Word文件的方法及装置,通过加载初始XML文件生成二进制的排版文件,并加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在排版文件中进行标记;根据预定格式将完成标记的排版文件转换成半成品XML文件,并在半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联;在半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点;将半成品XML文件分割打包,输出成品Word文件,实现了自动化处理,不需要人工操作即可实现XML文件转换Word文件转换过程中的自动编号以及交叉引用的转换,并且具有较高的准确度,减少了人工修改Word文件的工作量,降低了人工修改时出错的可能性;此外通过在加载初始XML文件过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,避免了多余数据的干扰,具有较高的处理速度,同时增加了输出的成品Word文件的结构性,也减少了成品Word文件中的冗余数据。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的XML文件转换Word文件的方法流程图;
图2为本发明另一实施例提供的XML文件转换Word文件的方法流程图;
图3为本发明另一实施例提供的XML文件转换Word文件的方法流程图;
图4为本发明实施例提供的XML文件转换Word文件的装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下,对本申请中的部分用语进行解释说明,以便本领域技术人员理解。
自动编号节点:在文档使用过程中可依序自动添加或变更编号的节点,且具有相同的格式,例如对于fig(图)类型的内容,在文档中希望例如“图-1”、“图-2”、“图-3”……的次序依次编号,且格式保持一致,并且如果在“图-2”和“图-3”之间再插入一幅图时,新插入的图题自动变更为“图-3”,而原“图-3”变更为“图-4”。对于table(表)、disp-formula(公式)、bibr(参考文献)等其他类型亦然。自动编号节点至少应该具有类型和ID两个属性。
交叉引用源节点:交叉引用指对文档中其他位置的内容的应用,例如可以是对编号、题注、书签等的引用。其中交叉引用目标节点定义为被交叉引用源节点指向的自动编号节点。其中交叉引用源节点至少应该具有类型(ref-type)和ID(rid)两个属性,ref-type表示了交叉引用源节点指向的交叉引用目标节点的类型,本申请中ref-type支持取值有fig、table、disp-formula和bibr;rid表示了交叉引用源节点指向的交叉引用目标节点的ID。
交叉引用目标节点:交叉引用目标节点至少应该具有ID属性(id),其id值在整个XML文件中是唯一的。XML文件中的交叉引用关系通过两节点的属性rid和id确定,具有交叉引用关系的交叉引用源节点和交叉引用目标节点rid属性值和id属性值相同。交叉引用源节点和交叉引用目标节点是多对一的关系,即多个交叉引用源节点指向一个交叉引用目标节点。对于交叉引用目标节点的类型可由节点的结构确定,例如对于图的交叉引用目标节点的结构为:
<fig>
<label>1<label>
</fig>
而对于表的交叉引用目标节点的结构为:
<table>
<label>1<label>
</table>
通过区分交叉引用目标节点的结构则可区分交叉引用目标节点的类型。
图1为本发明实施例提供的XML文件转换Word文件的方法流程图。本实施例提供了一种XML文件转换Word文件的方法,该方法的具体步骤如下:
S101、加载初始XML文件生成二进制的排版文件,并加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在所述排版文件中进行标记。
在本实施例中,将初始XML文件加载到内存中,生成二进制的排版文件,在加载过程中识别初始XML文件中的自动编号节点、交叉引用源节点和交叉引用目标节点,具体的,可以预先设定识别规则,根据识别规则识别初始XML文件中的自动编号节点、交叉引用源节点和交叉引用目标节点。在识别出自动编号节点、交叉引用源节点和交叉引用目标节点后,在排版文件中进行标记,本实施例中为节点增加一个扩展属性,在扩展属性中进行标记,其中标记的内容可以包括节点的类型、名称、位置信息等。当然本实施例中也可采用其他的识别和标记方式,此处不再赘述。
S102、根据预定格式将完成标记的排版文件转换成半成品XML文件,并在所述半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联。
在本实施例中,按照预定格式将完成标记的排版文件转换成半成品XML文件,也即将二进制的排版文件转换为XML文件,调整内容顺序,并进行渲染操作,同时完成对应的交叉引用源节点和交叉引用目标节点的关联。其中预定格式可采用XML Schema定义,且在XMLSchema定义中增加自动编号节点、交叉引用源节点和交叉引用目标节点的定义。此外,将对应的交叉引用源节点和交叉引用目标节点相关联具体可通过节点的ID或位置信息进行关联,以便将交叉引用源节点指向对应的交叉引用目标节点。
S103、在所述半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点。
在本实施例中,通过将半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点实现输出Word文件的结构性,也即Word文件中的图、表、公式和参考文献实现自动编号和自动交叉引用,即使插入新的节点,也会自动更新编号和自动交叉引用关系。
更具体的,本实施例中首先删除半成品XML文件中的自动编号、交叉引用源和交叉引用目标的纯文本表示,保存删除的文本,例如对于半成品XML文件中的纯文本表示“图1”,仅仅是文本而没有建立关系,如果后续直接添加域代码节点,而不删除纯文本表示的“图1”,此时Word文件中将会出现两个“图1”,其中一个为纯文本的“图1”,另一个为建立联系后的“图1”,导致内容的重复。在删除纯文本表示后,根据自动编号、交叉引用源和交叉引用目标的类型生成Word域代码,并添加域代码节点,具体的,其中交叉引用用到了Word中的REF域代码。例如,交叉引用源节点对应的域代码为“REF_Ref488674193”,交叉引用目标节点域代码为“REF_Ref488674193\h”,其中“_Ref488674193”为书签ID,也即Word中的交叉引用关系通过书签节点的ID决定。而对于自动编号采用SEQ域代码,例如“SEQ图\*ARABIC”。此外还可以对删除纯文本表示的文本识别自动出自动编号、交叉引用源和交叉引用目标前缀和后缀,添加前缀后缀节点,具体的,由于域代码会生成数字编号(1、2、3),而域代码中还有文本内容前缀、后缀,例如“图-1”前缀为图和-,后缀为空格,而在删除纯文本表示时会同时保存节点和前缀后缀的对应关系,因此通过添加前缀后缀节点,从而使得域代码的完整,保持与原文本内容一致。
S104、将所述半成品XML文件分割打包,输出成品Word文件。
在本实施例中,若将XML文件转换为Office2007以上版本的Word文件,可以先用xslt语言(Extensible Stylesheet Language Transformations,扩展样式表转换语言)将半成品xml文件转换为OOXML(Office Open XML),再分割打包OOXML,输出成品Word文件。更具体的,由于所有的数据都放在一个OOXML文件中,而Office2007以上版本的Word文件(docx)实际上是一个zip压缩包,因此本实施例中按照微软提供的Word压缩包的结构将OOXML文件分拆成多个XML,并按照docx目录结构存放,然后打包为docx文件,也即完成成品Word文件的输出。
本实施例提供的XML文件转换Word文件的方法,通过加载初始XML文件生成二进制的排版文件,并加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在排版文件中进行标记;根据预定格式将完成标记的排版文件转换成半成品XML文件,并在半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联;在半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点;将半成品XML文件分割打包,输出成品Word文件,实现了自动化处理,不需要人工操作即可实现XML文件转换Word文件转换过程中的自动编号以及交叉引用的转换,并且具有较高的准确度,减少了人工修改Word文件的工作量,降低了人工修改时出错的可能性;此外通过在加载初始XML文件过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,避免了多余数据的干扰,具有较高的处理速度,同时增加了输出的成品Word文件的结构性,也减少了成品Word文件中的冗余数据。
在上述实施例的基础上,如图2所示,S101所述的加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在所述排版文件中进行标记,具体可包括:
S1011、根据预定规则判断所述初始XML文件中各节点是否为自动编号节点、交叉引用源节点或交叉引用目标节点,其中所述预定规则包括自动编号及交叉引用的类型、名称和位置信息。
本实施例中通过预先设定识别规则,根据识别规则识别初始XML文件中的自动编号节点、交叉引用源节点和交叉引用目标节点。本实施例中可以增加第一XML配置文件和第二XML配置文件,其中第一XML配置文件记录自动编号类型、自动编号名称和自动编号节点的位置信息,例如XPath路径,第二XML配置文件记录交叉引用名称、交叉引用类型、交叉引用源节点和交叉引用目标节点的位置信息,例如XPath路径。第一XML配置文件和第二XML配置文件可以由规则管理器读取和管理,当然规则管理器可以仅为一个,也可对于自动编号和交叉引用分别设置一个。而识别过程则由内容处理器执行,内容处理器通过规则管理器读取XML配置文件,获得预定规则,根据预定规则识别出自动编号节点、交叉引用源节点和交叉引用目标节点,当然内容处理器也可仅为一个,或者对于自动编号和交叉引用分别设置一个。
S1012、若判断为自动编号节点,则对所述排版文件中该节点增加第一扩展属性,所述第一扩展属性记录有对应的自动编号的类型和名称。
本实施例中当识别出节点为自动编号节点,则在排版文件中对该节点增加一个扩展属性,也即第一扩展属性,在第一扩展属性中记录该自动编号节点对应的自动编号类型和名称。
S1013、若判断为交叉引用源节点或交叉引用目标节点,则对所述排版文件中该节点增加第二扩展属性,所述第二扩展属性记录有对应的交叉引用的类型、名称和ID。
本实施例中当识别出节点为交叉引用源节点或交叉引用目标节点,则在排版文件中对该节点增加一个扩展属性,也即第二扩展属性,在第二扩展属性中记录该节点的类型、名称和ID,其中ID用于关联相对应的交叉引用源节点和交叉引用目标节点。
更进一步的,如图3所示,上述实施例中S102所述的根据预定格式将完成标记的排版文件转换成半成品XML文件,并在所述半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联,具体可包括:
S1021、所述预定格式采用XML Schema定义,且在XML Schema定义中增加自动编号节点、交叉引用源节点和交叉引用目标节点的定义。
在本实施例中,通过XML Schema定义预定格式,由于现有的XML Schema并没有对自动编号和交叉引用的定义,因此本实施例在XML Schema定义中增加对自动编号节点、交叉引用源节点和交叉引用目标节点的定义,以在排版文件转换成半成品XML文件时规定自动编号节点、交叉引用源节点和交叉引用目标节点的格式。
S1022、采用所述预定格式将所述完成标记的排版文件转换成半成品XML文件。
在本实施例中,将XML Schema定义的预定格式作为模板,按照此模板生成半成品XML文件,调整内容顺序,并进行渲染操作。
S1023、根据交叉引用源节点和交叉引用目标节点的第二扩展属性,将具有相同ID的交叉引用源节点和交叉引用目标节点相关联。
在本实施例中,在半成品XML文件中通过ID将交叉引用源节点和交叉引用目标节点相关联,从而为后续添加域代码提供基础。需要说明的是,可以由一个交叉引用源节点指向一个交叉引用目标节点,也可以由多个交叉引用源节点指向一个交叉引用目标节点。
更进一步的,S1023所述的根据交叉引用源节点和交叉引用目标节点的第二扩展属性,将具有相同ID的交叉引用源节点和交叉引用目标节点相关联,具体可包括:
1)获取所述排版文件中所有交叉引用目标节点的第二扩展属性,创建交叉引用目标节点集合;
2)依次遍历各交叉引用源节点,根据ID从所述交叉引用目标节点集合中查找具有相同ID的交叉引用目标节点,并进行关联。
本实施例中,为了避免每次通过交叉引用源节点查找交叉引用目标节点时都要搜索整个排版文件,因此创建了一个交叉引用目标节点集合,用于管理排版文件中所有交叉引用目标节点,并记载了所有交叉引用目标节点的第二扩展属性,从而提高由排版文件到半成品XML文件的转换速度。当然本实施例中也可另设一个交叉引用目标节点管理器,对于排版文件中所有交叉引用目标节点进行管理。
进一步的,S103所述的在所述半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点后,还可包括:
通过增加样式分隔符,将自动编号节点、交叉引用源节点和交叉引用目标节点与其所在段内其他内容分离。
通常情况下,Word文件中一段中只能有一种段落样式,例如通常标号位于段落前,而本实施例增加样式分隔符后,将自动编号节点、交叉引用源节点和交叉引用目标节点与其所在段内其他内容分离,此时则可实现一段中有不同的段落样式,例如若未增加样式分割符,样式为“公式”,只能与该段的段落样式相同,而增加样式分割符后,则可实现如“公式(1)”在“公式”后自动编号的功能。
图4为本发明实施例提供的XML文件转换Word文件的装置的结构图。本实施例提供一种XML文件转换Word文件的装置,可以执行上述XML文件转换Word文件的方法实施例提供的处理流程,如图4所示,本实施例提供的XML文件转换Word文件的装置包括:标记模块201、转换模块202、处理模块203及输出模块204。
标记模块201,用于加载初始XML文件生成二进制的排版文件,并加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在所述排版文件中进行标记;
转换模块202,用于根据预定格式将完成标记的排版文件转换成半成品XML文件,并在所述半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联;
处理模块203,用于在所述半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点;
输出模块204,用于将所述半成品XML文件分割打包,输出成品Word文件。
进一步的,所述标记模块201具体用于:
根据预定规则判断所述初始XML文件中各节点是否为自动编号节点、交叉引用源节点或交叉引用目标节点,其中所述预定规则包括自动编号及交叉引用的类型、名称和位置信息;
若判断为自动编号节点,则对所述排版文件中该节点增加第一扩展属性,所述第一扩展属性记录有对应的自动编号的类型和名称;
若判断为交叉引用源节点或交叉引用目标节点,则对所述排版文件中该节点增加第二扩展属性,所述第二扩展属性记录有对应的交叉引用的类型、名称和ID。
进一步的,所述转换模块202具体用于:
所述预定格式采用XML Schema定义,且在XML Schema定义中增加自动编号节点、交叉引用源节点和交叉引用目标节点的定义;
采用所述预定格式将所述完成标记的排版文件转换成半成品XML文件;
根据交叉引用源节点和交叉引用目标节点的第二扩展属性,将具有相同ID的交叉引用源节点和交叉引用目标节点相关联。
进一步的,所述转换模块202还包括:
交叉引用目标节点管理子模块,用于获取所述排版文件中所有交叉引用目标节点的第二扩展属性,创建交叉引用目标节点集合;
关联子模块,用于依次遍历各交叉引用源节点,根据ID从所述交叉引用目标节点集合中查找具有相同ID的交叉引用目标节点,并进行关联。
进一步的,所述处理模块203还用于:
通过增加样式分隔符,将自动编号节点、交叉引用源节点和交叉引用目标节点与其所在段内其他内容分离。
本发明实施例提供的XML文件转换Word文件的装置可以具体用于执行上述图1-3所提供的方法实施例,具体功能此处不再赘述。
本实施例提供的XML文件转换Word文件的装置,通过加载初始XML文件生成二进制的排版文件,并加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在排版文件中进行标记;根据预定格式将完成标记的排版文件转换成半成品XML文件,并在半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联;在半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点;将半成品XML文件分割打包,输出成品Word文件,实现了自动化处理,不需要人工操作即可实现XML文件转换Word文件转换过程中的自动编号以及交叉引用的转换,并且具有较高的准确度,减少了人工修改Word文件的工作量,降低了人工修改时出错的可能性;此外通过在加载初始XML文件过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,避免了多余数据的干扰,具有较高的处理速度,同时增加了输出的成品Word文件的结构性,也减少了成品Word文件中的冗余数据。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (8)

1.一种XML文件转换Word文件的方法,其特征在于,包括:
加载初始XML文件生成二进制的排版文件,并且在加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在所述排版文件中进行标记;
根据预定格式将完成标记的排版文件转换成半成品XML文件,并在所述半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联;
在所述半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点;
将所述半成品XML文件分割打包,输出成品Word文件;
所述加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在所述排版文件中进行标记,具体包括:
根据预定规则判断所述初始XML文件中各节点是否为自动编号节点、交叉引用源节点或交叉引用目标节点,其中所述预定规则包括自动编号及交叉引用的类型、名称和位置信息;
若判断为自动编号节点,则对所述排版文件中所述自动编号节点增加第一扩展属性,所述第一扩展属性记录有对应的自动编号的类型和名称;
若判断为交叉引用源节点或交叉引用目标节点,则对所述排版文件中所述交叉引用源节点或交叉引用目标节点增加第二扩展属性,所述第二扩展属性记录有对应的交叉引用的类型、名称和ID。
2.根据权利要求1所述的方法,其特征在于,所述根据预定格式将完成标记的排版文件转换成半成品XML文件,并在所述半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联,具体包括:
所述预定格式采用XML Schema定义,且在XML Schema定义中增加自动编号节点、交叉引用源节点和交叉引用目标节点的定义;
采用所述预定格式将所述完成标记的排版文件转换成半成品XML文件;
根据交叉引用源节点和交叉引用目标节点的第二扩展属性,将具有相同ID的交叉引用源节点和交叉引用目标节点相关联。
3.根据权利要求2所述的方法,其特征在于,所述根据交叉引用源节点和交叉引用目标节点的第二扩展属性,将具有相同ID的交叉引用源节点和交叉引用目标节点相关联,具体包括:
获取所述排版文件中所有交叉引用目标节点的第二扩展属性,创建交叉引用目标节点集合;
依次遍历各交叉引用源节点,根据ID从所述交叉引用目标节点集合中查找具有相同ID的交叉引用目标节点,并进行关联。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述在所述半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点后,还包括:
通过增加样式分隔符,将自动编号节点、交叉引用源节点和交叉引用目标节点与其所在段内其他内容分离。
5.一种XML文件转换Word文件的装置,其特征在于,包括:
标记模块,用于加载初始XML文件生成二进制的排版文件,并且在加载过程中识别自动编号节点、交叉引用源节点和交叉引用目标节点,在所述排版文件中进行标记;
转换模块,用于根据预定格式将完成标记的排版文件转换成半成品XML文件,并在所述半成品XML文件中将对应的交叉引用源节点和交叉引用目标节点相关联;
处理模块,用于在所述半成品XML文件中将自动编号节点、交叉引用源节点和交叉引用目标节点替换为对应的域代码节点和书签节点;
输出模块,用于将所述半成品XML文件分割打包,输出成品Word文件;
所述标记模块具体用于:
根据预定规则判断所述初始XML文件中各节点是否为自动编号节点、交叉引用源节点或交叉引用目标节点,其中所述预定规则包括自动编号及交叉引用的类型、名称和位置信息;
若判断为自动编号节点,则对所述排版文件中所述自动编号节点增加第一扩展属性,所述第一扩展属性记录有对应的自动编号的类型和名称;
若判断为交叉引用源节点或交叉引用目标节点,则对所述排版文件中所述交叉引用源节点或交叉引用目标节点增加第二扩展属性,所述第二扩展属性记录有对应的交叉引用的类型、名称和ID。
6.根据权利要求5所述的装置,其特征在于,所述转换模块具体用于:
所述预定格式采用XML Schema定义,且在XML Schema定义中增加自动编号节点、交叉引用源节点和交叉引用目标节点的定义;
采用所述预定格式将所述完成标记的排版文件转换成半成品XML文件;
根据交叉引用源节点和交叉引用目标节点的第二扩展属性,将具有相同ID的交叉引用源节点和交叉引用目标节点相关联。
7.根据权利要求6所述的装置,其特征在于,所述转换模块还包括:
交叉引用目标节点管理子模块,用于获取所述排版文件中所有交叉引用目标节点的第二扩展属性,创建交叉引用目标节点集合;
关联子模块,用于依次遍历各交叉引用源节点,根据ID从所述交叉引用目标节点集合中查找具有相同ID的交叉引用目标节点,并进行关联。
8.根据权利要求5-7中任一项所述的装置,其特征在于,所述处理模块还用于:
通过增加样式分隔符,将自动编号节点、交叉引用源节点和交叉引用目标节点与其所在段内其他内容分离。
CN201810159642.4A 2018-02-26 2018-02-26 XML文件转换Word文件的方法及装置 Expired - Fee Related CN110196965B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810159642.4A CN110196965B (zh) 2018-02-26 2018-02-26 XML文件转换Word文件的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810159642.4A CN110196965B (zh) 2018-02-26 2018-02-26 XML文件转换Word文件的方法及装置

Publications (2)

Publication Number Publication Date
CN110196965A CN110196965A (zh) 2019-09-03
CN110196965B true CN110196965B (zh) 2021-04-09

Family

ID=67750770

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810159642.4A Expired - Fee Related CN110196965B (zh) 2018-02-26 2018-02-26 XML文件转换Word文件的方法及装置

Country Status (1)

Country Link
CN (1) CN110196965B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113505572B (zh) * 2021-05-25 2024-02-13 北京北大方正电子有限公司 排版文件转换为xml数据的方法、装置、设备及介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2385686A (en) * 2002-02-25 2003-08-27 Oracle Corp Mark-up language conversion
CN102103573B (zh) * 2009-12-17 2012-10-03 北大方正集团有限公司 一种快速生成开放格式文档的方法及系统
CN102541829B (zh) * 2012-01-17 2014-01-01 中国工商银行股份有限公司 一种多用户并发的电子文档生成装置及方法
CN102662921B (zh) * 2012-03-29 2016-02-03 华为技术有限公司 一种文档处理方法、装置和编辑器
WO2016190446A1 (en) * 2015-05-26 2016-12-01 Hiroyuki Tanaka Electronic file structure, non-transitory computer-readable storage medium, electronic file generation apparatus, electronic file generation method, and electronic file
CN104598635B (zh) * 2015-02-06 2018-01-19 无锡江南计算技术研究所 一种基于xml描述的复杂文档自动生成方法
CN106934036A (zh) * 2017-03-15 2017-07-07 衡阳师范学院 一种网络学习资源聚合查询的方法和系统

Also Published As

Publication number Publication date
CN110196965A (zh) 2019-09-03

Similar Documents

Publication Publication Date Title
US10061862B2 (en) Compact tree node representation of an XML document
US20050262440A1 (en) Localization of XML via transformations
CN101763255B (zh) 一种专用界面工具的格式转换方法及装置
CN106844307B (zh) 一种基于标记实现Excel转Word的系统及方法
US20050251738A1 (en) Document revision support program and computer readable medium on which the support program is recorded and document revision support device
US7756819B2 (en) Integrated authoring system for electronic technical manual and paper technical manual using logistics support analysis data and authoring method therefor
CN104035754A (zh) 一种基于xml的自定义代码生成方法及生成器
CN103123631B (zh) 文案的生成、网页文案的展示方法、装置及网站服务器
US6047296A (en) Comprehensive method of resolving nested forward references in electronic data streams within defined resolution scopes
US6389385B1 (en) System and method for translating source code
CN105468571A (zh) 一种用于自动生成报告的方法及装置
CN112667563A (zh) 一种文档管理及操作方法和系统
CN110554893A (zh) 软件系统多语言适配方法、装置、设备及可读存储介质
US20110107198A1 (en) Information processing apparatus, storage medium, and information processing method
CN110196965B (zh) XML文件转换Word文件的方法及装置
CN109947711B (zh) 一种对ios项目开发过程中的多语言文件自动化管理方法
CN104378362A (zh) 用于进行报文接口转换的方法及装置
CN111241788B (zh) 基于线性模型的文档转换方法、装置、设备及存储介质
CN103164468A (zh) 专利分类管理方法及系统
CN113703777A (zh) 基于数据库表的代码生成方法、装置、存储介质和设备
CN110309501B (zh) 交叉引用方法与装置
JP2020024507A (ja) 文書ファイル移行装置
CN113408250B (zh) 一种项目文件的处理方法和装置
CN112989602B (zh) 一种映射生成cid模型的方法及系统
CN111279350B (zh) 用于在服务管理应用接口中提供全球化特征的系统和方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20230616

Address after: 3007, Hengqin international financial center building, No. 58, Huajin street, Hengqin new area, Zhuhai, Guangdong 519031

Patentee after: New founder holdings development Co.,Ltd.

Patentee after: BEIJING FOUNDER ELECTRONICS Co.,Ltd.

Address before: 100871, Beijing, Haidian District, Cheng Fu Road, No. 298, Zhongguancun Fangzheng building, 9 floor

Patentee before: PEKING UNIVERSITY FOUNDER GROUP Co.,Ltd.

Patentee before: BEIJING FOUNDER ELECTRONICS Co.,Ltd.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210409

CF01 Termination of patent right due to non-payment of annual fee