XML树的结构维护方法、XML树的结构维护系统和终端技术方案

技术编号:17265203 阅读:34 留言:0更新日期:2018-02-14 12:37
本发明专利技术提供了一种XML树的结构维护方法、XML树的结构维护系统和终端,其中,XML树的结构维护方法包括:用户对XML树中的XML元素的进行操作;判断操作指令是否具有执行权限;如判定操作指令具有执行权限,对XML元素的版面对象执行操作指令,并确定操作指令导致的XML树的结构变化;在对XML元素的版面对象执行操作指令后,根据XML元素对应的结构定义文件对版面对象的内容进行语法检查,将结构变化的数据和语法检查的结果提示给用户。通过本发明专利技术的技术方案,对可能破坏XML结构树的操作进行预警提示,并对已被破坏XML结构树进行错误定位,并提示用户进行修改,进而保持XML内容的结构完整性和有效性。

The structure maintenance method of XML tree, the structure maintenance system and terminal of the XML tree

The invention provides a XML tree structure, XML tree structure maintenance method and terminal maintenance system, the structure of XML tree maintenance method includes: the user of the XML elements in the XML tree of the operation; to judge the operation instruction is executable; such as judging the operation instruction has execute permission, operation instruction the XML element layout object, and determine the structure changes caused by XML tree operation instructions; operating instructions in the execution of the XML element layout after the object of grammar check according to the structure definition file XML elements corresponding to layout the contents of the object will be prompted to change data structure and grammar check results to the user. Through the technical scheme of the invention, we can give warning and hints to operations that may damage the XML structure tree, and locate the damaged XML structure tree, and prompt users to make modifications, so as to maintain the structural integrity and validity of XML content.

【技术实现步骤摘要】
XML树的结构维护方法、XML树的结构维护系统和终端
本专利技术涉及交互排版与XML结构
,具体而言,涉及一种XML树的结构维护方法、一种XML树的结构维护系统和一种终端。
技术介绍
在相关技术中,基于XML内容为中心、多格式发布的复合出版正成为在印刷出版行业的发展趋势。与传统出版流程不同,复合出版流程强调内容为主:首先由编辑人员制作出XML内容文件;然后由自动化排版引擎将XML内容文件和带有版式的模板文件进行自动合成,形成含有XML结构的排版文件;之后由排版人员在交互排版软件中打开排版文件,进行版面内容进行局部的细节调整,符合预期的排版效果;最后发布出各种格式的出版物。在整个出版流程中,保持XML内容的结构完整性和正确性贯穿过程的始终。但是由于排版人员普遍技能偏低,缺乏相关的体系知识,在局部调整环节中,往往会过于关注版面的排版效果,而忽略了XML树结构,从而造成严重的破坏性后果。例如:将从属于某个章节的标题移动到该章节外;更改了某些不能修改的文本;删除某些不能删除的内容等。因此,如何设计一种XML树的结构维护方案以保证XML树的结构完整成为亟待解决的技术问题。
技术实现思路
本专利技术正是基于上述技术问题至少之一,提出了一种新的XML树的结构维护方案,一方面,通过操作前的预判和提示的功能,对可能发生的破坏XML结构的操作进行禁止或提醒,另一方面,通过操作后的结构检查功能,对已经破坏的XML结构进行错误定位,提示用户进行修复,从而达到维护XML内容的结构完整性和有效性的目的。有鉴于此,本专利技术提出了一种XML树的结构维护方法,包括:用户对XML树中的XML元素的进行操作;判断操作指令是否具有执行权限;如判定操作指令具有执行权限,对XML元素的版面对象执行操作指令,并确定操作指令导致的XML树的结构变化;在对XML元素的版面对象执行操作指令后,根据XML元素对应的结构定义文件对版面对象的内容进行语法检查,将结构变化的数据和语法检查的结果提示给用户。在该技术方案中,通过在对XML树中的XML元素执行操作指令前,判定执行操作指令的权限,并在对版面对象进行操作之后,执行语法检查,从而对可能破坏XML树的结构的进行了预警提示,对可能发生的破坏XML元素进行定位提示,实现了维护XML树的结构完整性和有效性的目的。其中,操作指令的权限是待编辑的XML元素和操作行为决定的,例如,针对某个代表章节名称的XML元素,如操作指令是修改XML元素的显示属性。在上述技术方案中,优选地,在根据用户对XML树中的XML元素的操作指令,判断操作指令是否具有执行权限前,还包括:预设XML元素的操作权限,或预设具有相同属性标签的XML元素的操作权限,用于确定操作指令对XML元素是否具有执行权限。在该技术方案中,将XML结构文件定义为DTD(DocumentTypeDefinition,文件类型定义)文件或XSD(ExtensibleStylesheetLanguage,可扩展样式表语言)文件,操作权限包括多个操作许可项,每个操作许可项包括:(1)操作类型,指定对应的XML元素内容操作;(2)许可标志,指定对应的XML元素内容操作是否被许可。另外,操作权限的范围包括:(1)为XML标签设定操作权限,作用范围是所有应用该标签的XML元素以及其后代元素;(2)为XML元素设定操作权限,作用范围是该XML元素以及其后代元素。在上述任一项技术方案中,优选地,根据用户对XML树中的XML元素的操作指令,判断操作指令是否具有执行权限,具体包括以下步骤:在获取用户对XML元素中的子级XML元素的操作指令后,判断子级XML元素是否预设有针对操作指令的操作权限;在判定子级XML元素未预设有针对操作指令的操作权限时,判断子级XML元素的父级XML元素是否预设有针对操作指令的操作权限;在判定父级XML元素预设有针对操作指令的操作权限时,确定操作指令对子级XML元素具有执行权限。在该技术方案中,通过父级XML元素确定子级XML元素的执行权限,简化了对执行权限的设定步骤和存储量,也即仅设定某个父级XML元素的执行权限,即间接地设定了其若干个子级XML元素的执行权限,从逻辑上实现了对XML树的结构维护。在上述任一项技术方案中,优选地,包括:在将结构变化的数据和语法检查的结果以XML元素操作表的形式提示给用户后,根据用户的编辑指令判断是否对版面对象对应的XML元素执行操作指令。在该技术方案中,通过将结构变化的数据和语法检查的结果以XML元素操作表的形式提示给用户,使用户直观地了解XML树的结构变化,以判断是否执行上述操作指令,具体包括:(1)根据版面对象的操作,获得会引发的XML元素操作表;(2)遍历XML元素操作表,计算出本次对象操作的许可结果;(3)许可结果包含处理方式、警告标志和警告内容等。(4)如果许可结果的警告标志有效,则弹出消息框,提示警告内容,并将用户选择的处理方式设置到许可结果中,进行下一步处理;(5)如果许可结果的处理方式为“继续”,则继续本次操作,否则,则取消本次操作。在上述任一项技术方案中,优选地,还包括:在根据用户的编辑指令判定对版面对象对应的XML元素执行操作指令后,将版面对象及对应的XML元素导出生成为内存对象树,内存对象树中包括XML元素在版面对象中的ID信息;根据结构定义文件对内存对象树进行语义检查;将内存对象树中不符合结构定义文件的语义规则的XML元素及其ID信息提示给用户。在该技术方案中,通过对执行操作指令后将版面对象及对应的XML元素导出生成内存对象树,将上述操作指令实际的操作结果提示给用户,并将语义不符合的XML元素及ID信息提示给用户,使用户直观地了解操作指令执行后的XML元素检测结果和位置,以便于用户进行XML树的维护和调整,具体包括:(1)将XML元素以及其关联的版面对象的内容导出成内存对象树,其中将XML元素在排版文件中的ID作为专用属性,记录到内存对象树中;(2)对内存对象树执行语法检查,检查是否符合结构定义文件中的结构定义;处理检查结果,从每个错误信息中获得对应的XML元素ID,找到错误的XML元素,突出显示,提醒用户进行定位修复。根据本专利技术的第二方面,还提出了一种XML树的结构维护系统,包括:判断单元,用于根据用户对XML树中的XML元素的操作指令,判断操作指令是否具有执行权限;执行单元,用于在判定操作指令具有执行权限时,对XML元素的版面对象执行操作指令,并确定操作指令导致的XML树的结构变化;检查单元,用于在对XML元素的版面对象执行操作指令后,根据XML元素对应的结构定义文件对版面对象的内容进行语法检查,将结构变化的数据和语法检查的结果提示给用户。在该技术方案中,通过在对XML树中的XML元素执行操作指令前,判定执行操作指令的权限,并在对版面对象进行操作之后,执行语法检查,从而对可能破坏XML树的结构的进行了预警提示,对可能发生的破坏XML元素进行定位提示,实现了维护XML树的结构完整性和有效性的目的。其中,操作指令的权限是待编辑的XML元素和操作行为决定的,例如,针对某个代表章节名称的XML元素,如操作指令是修改XML元素的显示属性。在上述技术方案中,优选地,包括:预设单元,用于预设XML元素的操作权本文档来自技高网...
XML树的结构维护方法、XML树的结构维护系统和终端

【技术保护点】
一种XML树的结构维护方法,其特征在于,包括:根据用户对所述XML树中的XML元素的操作指令,判断所述操作指令是否具有执行权限;在判定所述操作指令具有所述执行权限时,对所述XML元素的版面对象执行所述操作指令,并确定所述操作指令导致的所述XML树的结构变化;在对所述XML元素的版面对象执行所述操作指令后,根据所述XML元素对应的结构定义文件对所述版面对象的内容进行语法检查,将所述结构变化的数据和所述语法检查的结果提示给用户。

【技术特征摘要】
1.一种XML树的结构维护方法,其特征在于,包括:根据用户对所述XML树中的XML元素的操作指令,判断所述操作指令是否具有执行权限;在判定所述操作指令具有所述执行权限时,对所述XML元素的版面对象执行所述操作指令,并确定所述操作指令导致的所述XML树的结构变化;在对所述XML元素的版面对象执行所述操作指令后,根据所述XML元素对应的结构定义文件对所述版面对象的内容进行语法检查,将所述结构变化的数据和所述语法检查的结果提示给用户。2.根据权利要求1所述的XML树的结构维护方法,其特征在于,在根据用户对所述XML树中的XML元素的操作指令,判断所述操作指令是否具有执行权限前,还包括:预设所述XML元素的操作权限,或预设具有相同属性标签的XML元素的操作权限,用于确定所述操作指令对所述XML元素是否具有执行权限。3.根据权利要求2所述的XML树的结构维护方法,其特征在于,根据用户对所述XML树中的XML元素的操作指令,判断所述操作指令是否具有执行权限,具体包括以下步骤:在获取用户对所述XML元素中的子级XML元素的操作指令后,判断所述子级XML元素是否预设有针对所述操作指令的操作权限;在判定所述子级XML元素未预设有针对所述操作指令的操作权限时,判断所述子级XML元素的父级XML元素是否预设有针对所述操作指令的操作权限;在判定所述父级XML元素预设有针对所述操作指令的操作权限时,确定所述操作指令对所述子级XML元素具有执行权限。4.根据权利要求1至3中任一项所述的XML树的结构维护方法,其特征在于,还包括:在将所述结构变化的数据和所述语法检查的结果以XML元素操作表的形式提示给用户后,根据用户的编辑指令判断是否对所述版面对象对应的XML元素执行所述操作指令。5.根据权利要求4所述的XML树的结构维护方法,其特征在于,还包括:在根据用户的编辑指令判定对所述版面对象对应的XML元素执行所述操作指令后,将所述版面对象及对应的XML元素导出生成为内存对象树,所述内存对象树中包括所述XML元素在所述版面对象中的ID信息;根据所述结构定义文件对所述内存对象树进行语义检查;将所述内存对象树中不符合所述结构定义文件的语义规则的XML元素及其ID信息提示给用户。6.一种XML树的结构维护系统,其特征在于,包括:判断单元...

【专利技术属性】
技术研发人员:杨燕菲冯源
申请(专利权)人:北大方正集团有限公司北京北大方正电子有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1