CN100385439C - 数据处理装置及数据处理方法 - Google Patents

数据处理装置及数据处理方法 Download PDF

Info

Publication number
CN100385439C
CN100385439C CNB2004800210964A CN200480021096A CN100385439C CN 100385439 C CN100385439 C CN 100385439C CN B2004800210964 A CNB2004800210964 A CN B2004800210964A CN 200480021096 A CN200480021096 A CN 200480021096A CN 100385439 C CN100385439 C CN 100385439C
Authority
CN
China
Prior art keywords
data
label
mentioned
attribute
text
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
CNB2004800210964A
Other languages
English (en)
Other versions
CN1826595A (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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Publication of CN1826595A publication Critical patent/CN1826595A/zh
Application granted granted Critical
Publication of CN100385439C publication Critical patent/CN100385439C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Document Processing Apparatus (AREA)

Abstract

受理具有按照XML定义描述的层次结构的数据(300)并分析层次结构,根据分析结果变换成消除了层次结构的数据(400)。数据(300)包含多个由标签(302、303、305、307、310)构成的标签对,标签对指示由该标签对包围的部分的字符串(304、305、309)的缩进或者显示颜色的属性值。当在由标签对包围的部分中包含与包围该部分的标签对指示相同类型的属性的其他标签对的情况下,通过变换处理,变换该其他标签对的属性值以反映出包围该部分的标签对的属性值。其结果是,将数据(300)变换成消除了其层次结构的数据(400)。

Description

数据处理装置及数据处理方法
技术领域
本发明涉及用于具有按照文档描述语言的定义描述的层次结构的数据的数据处理装置、处理方法、处理程序、以及记录了处理程序的计算机可读取的记录介质,特别地,涉及用于简化具有该层次结构的数据的处理的数据处理装置、数据处理方法、数据处理程序以及记录了数据处理程序的计算机可读取的记录介质。
背景技术
作为用于记录具有层次结构的结构化文档的数据形式,已知有SGML(Standard Generalized Mark-up Language,标准通用标签语言)、XML(eXtensible Markup Language,可扩展标签语言)、HTML(HyperText Markup Language,超文本链接标签语言)等,其中,上述的数据被赋予了结构,用于根据文档描述语言的定义执行预定的处理。特别地,近年来XML被广泛使用于在互联网上交流的电子文档以及电子数据等。
处理XML数据的处理方法,已知有DOM(Document Object Model,文档对象模型)形式和SAX(Simple API for XML,XML的简化的API)形式。例如,在“编程技术信息杂志C MAGAZINE FEB.20002「特集1XML C/C++的实用方法」”(发行者:软库出版公司)的第14~15页中记载了该内容的详细情况。
DOM形式是一种全部读入对象电子数据、并在弄清了所读入的电子数据中的全部元素的层次结构之后对电子数据的各元素进行访问的处理方法。例如,对于具有图26所示的层次结构的电子数据,读入全部电子数据之后,分析全部元素的层次结构。图26仅表示电子数据的层次结构,省略了正文和内容。此外,根据具有图26的层次结构的电子数据生成类似于图27的树型结构之后,对各元素(TITLE、AUTHOR等)进行访问。由此,在弄清电子数据的层次结构之后才进行处理,因此,具有易于访问任意元素的特点。
另一方面,SAX形式是一种从开头依次读入数据同时仅对已读入的元素进行结构分析的处理方法。因此,能够无需等待全部数据的分析处理而进行顺序处理,其特点是无论在处理速度上还是内存容量上开销都较少。
但是,DOM形式所存在的问题是,即使仅需处理数据中的一部分数据的情况下,为了生成树型结构,也必须对数据的整体结构进行分析,处理上会产生浪费。再者,当数据量大时,存在的问题是,用于生成树型结构的处理时间变长,并且用于预先存储树型结构的存储器的使用量增大。
这使得在移动电话之类的移动设备等处理性能不高的设备中难以进行数据处理以及显示。
另一方面,SAX形式是以从电子数据的开头依次进行处理为前提的访问形式,当不是从开头起依次处理电子数据的内容、而是按照任意顺序处理任意元素的情况下,也必须从开头读入数据进行结构分析处理。另外,即使在想要处理电子数据的后半部分的元素的情况下,也必须从电子数据的开头起读入并进行结构分析,因此会产生处理时间的浪费。这也会使得在同样缺乏处理性能的设备中很难对数据进行处理并显示。
两者的通病在于,在结构化文档中,由于存在用来指定效果范围的标签,必须对多个层次的层次结构进行分析,需要花费分析处理时间。在显示装置中,层次结构分析处理增加了显示处理的负担,其结果是产生了显示延迟。
为了能够高速处理具有层次结构的电子数据,可以考虑使用下述方法:将电子数据变换成去除了标签信息而仅记录有应显示的内容的文本数据和记录有处理该文本数据时必需的标签信息(例如,标签名、属性名、属性值、在文本数据中该标签的出现位置等的信息)的标签数据,然后将它们组合起来进行处理,由此缩短处理时间。但是,上述标签数据中所记录的标签信息随着标签的类型的不同其属性的类型以及数量不同、大小会发生变化,因此,必须确保为上述标签数据留出可变长度的区域或者足够大的固定长度区域。因此,将电子数据变换成文本数据和标签数据后,去除了判断是标签部分还是文本部分的处理;然而,对于高速处理任意位置的元素的情形,仍必须从标签数据的开头起读入并进行结构分析,因此不能获得充分的效果。
发明内容
本发明的目的在于提供一种能够容易地处理具有层次结构的数据的数据处理装置、数据处理方法、数据处理程序、以及记录了数据处理程序的计算机可读取的记录介质。
为实现上述目的,遵循本发明的一个方面的数据处理装置具备:分析单元,受理具有按照文档描述语言的定义描述的层次结构的数据,并对层次结构进行分析;以及变换单元,根据由分析单元所得的分析结果,将数据变换成消除了层次结构的数据。
因此,即使是具有层次结构的数据也能够分析层次结构,并根据该分析结果消除层次结构,变换成不存在层次结构的数据。
在以显示等方式输出具有上述层次结构的数据的情况下,若预先变换成上述那样的不存在层次结构的数据之后再输出,那么在输出处理中就省略了层次结构的分析,数据的处理变得容易。其结果是,能够实现高速的数据输出处理,此外,也不需要为了输出而存储分析后的层次结构,因此能够减少数据输出时的存储容量的消耗量。
具有层次结构的数据包含多个标签对,各标签对指示出由该标签对所包围的部分数据的属性的信息。变换单元利用包围该部分数据的标签对的属性信息,对与在部分数据中包围该部分数据的标签对指示相同类型的属性的其他标签对的属性信息进行变换。
因此,当在由标签对所包围的部分数据中包含相同类型的属性的其他标签对、由此这些标签对形成层次结构的情况下,数据变换单元使用包围该部分数据的标签对的属性信息对该其他标签对的属性信息进行变换。由此,当标签对形成层次结构时,能够在某个标签对的属性信息中反映出上级标签对的属性信息,因此,能够消除标签对的层次结构,变换成不存在该层次结构的数据。
变换单元最好是在进行变换时省略掉变换后的数据中不需要的信息。这样能够减少变换后的数据所消耗的存储容量。
最好进一步具备布局计算单元,用来针对通过变换单元的变换所获得的消除了层次结构的数据计算用于输出的布局。
这样,针对层次结构被消除从而不复存在的数据计算其布局,由此能够省略用于布局计算的层次结构分析处理和用于存储该分析结果的记录区域。
最好进一步具备将具有按照文档描述语言的定义描述的层次结构的数据分割成多个块的分割单元。分析单元针按照分割单元分割出来的每一个块受理数据并进行分析。
这样,通过预先将分析对象数据分割成块单位,分析单元不需要从开头起分析全部对象数据,能够按照任意的块单位进行分析。其结果是,能够减轻分析处理的负担。另外,用于分析单元的存储区域只要具有块单位的大小即可,因此,能够减少所消耗的存储区域的容量。
上述的属性信息可以包含用来确定部分数据的输出形态的输出形态信息。该输出形态信息既可以包含部分数据的缩进信息,也可以包含用于输出部分数据的颜色信息。
上述的每一个块的数据的大小可以根据为输出数据而预先准备的输出装置的处理能力来决定。
为实现上述目的,遵循本发明的另一方面的数据处理方法具备:分析步骤,针对具有按照文档描述语言的定义描述的层次结构并且存放在预先准备好的记录区域中的数据,分析层次结构;以及变换步骤,根据分析步骤所得的分析结果,将存储在记录区域中的数据变换成消除了层次结构的数据。
具有层次结构的数据包含多个标签对,各标签对指示由该标签对包围的部分数据的属性的信息。在变换步骤,利用包围该部分数据的标签对的属性信息,对与在部分数据中包围该部分数据的标签对指示相同类型的属性的其他标签对的属性信息进行变换。
为实现上述目的,本发明的另外一个方面中提供了一种数据处理装置,其对包含文本数据及在文本数据中出现的多个标签并且利用标签构成层次结构的电子数据进行处理。
该数据处理装置具备:输入单元,输入记录有文本数据的文本信息、与多个标签的每一个对应地记录表示该标签的属性的属性数据的标签详细信息、以及记录有对于多个标签的每一个表示该标签在文本数据中的出现位置的出现位置数据的标签出现位置信息;文本读出单元,从由输入单元输入的文本信息中,读出与电子数据的处理对象的任意区域对应的文本数据;属性读出单元,根据由输入单元输入的标签出现位置信息,确定在与任意区域对应的文本数据中出现的标签,从由输入单元输入的标签详细信息中读出所确定的标签的属性数据;以及处理单元,根据由属性读出单元读出的属性数据,处理由文本读出单元读出的文本数据。
在上述的数据处理装置中,利用其文本信息、标签出现位置信息和标签详细信息这些个别准备的信息对电子数据进行数据处理,因此,能够省略判定处理对象的数据是标签部分还是文本部分的处理,能够高速地执行数据处理。
另外,不同于电子数据而另行准备标签出现位置信息,因此,不需要为了特定标签出现位置而个别地分析与电子数据的标签相关的树型结构(层次结构)。其结果是,能够省略树型结构的生成处理,并且省略用于构造树型结构的所需存储器容量。另外,在针对文本数据的任意位置出现的标签进行处理的情况下,通过检索标签出现位置数据,能够容易地确定在该任意位置出现的标签,由此,能够从标签详细信息中迅速地读出在该任意位置出现的标签的属性数据。其结果是,能够使层次结构的电子数据的处理简单化、高速化。
记录在标签出现位置信息的出现位置数据最好是固定长度的数据。这样,能够根据该固定长度检索标签出现位置信息中各出现位置数据,提高检索效率。
出现位置数据最好包含:表示文本数据中该标签的有效范围的有效范围数据和表示在标签详细信息中记录该标签的属性数据的位置的记录位置数据。属性读出单元根据有效范围数据确定与任意区域相应的标签,根据确定出来的标签的记录位置数据,从标签详细信息中读出该标签的属性数据。
这样,能够根据有效范围数据容易地确定任意区域的文本数据中出现的标签。此外,也能够根据该记录位置数据容易地确定并读出被确定的标签的属性数据在标签详细信息中的记录位置。
处理单元最好具有布局计算单元,用来针对由文本读出单元读出的文本数据,根据由属性读出单元读出的属性数据计算布局。
这样,能够在如上所述简单地确定用于布局计算的标签的属性数据并将其从标签详细信息中读出之后,根据读出的属性数据计算布局,因此,能够减少布局计算的负载。
布局计算单元最好计算由文本读出单元读出的文本数据输出时的布局。该输出形态之一是显示。
有效范围数据最好表示在文本数据中该标签的属性有效的部分的数据的开始位置和结束位置。这样,能够利用数据的开始位置和结束位置来表示有效范围数据。
有效范围数据最好表示文本数据中该标签的属性有效的部分的数据的开始位置和该部分数据的大小。这样,能够用数据的开始位置和该数据的大小(尺寸)来确定有效范围数据。
记录位置数据最好表示在标签详细信息中该标签的属性数据的记录开始位置和结束位置。这样,能够利用对应的属性数据的记录开始位置和结束位置来表示记录位置数据。
记录位置数据最好表示在标签详细信息中该标签的属性数据的记录开始位置和该属性数据的大小。这样,能够利用属性数据的记录开始位置和该数据的大小(尺寸)来确定记录位置数据。
最好进一步具备下述单元中的至少一个,即:文本信息生成单元,对电子数据进行检索,提取并记录文本数据,生成文本信息;标签详细信息生成单元,对电子数据进行检索,每当检索到标签时,对应该标签记录属性数据,生成标签详细信息;以及标签出现位置信息生成单元,对电子数据进行检索,每当检索到标签时,对应该标签记录出现位置数据并生成标签出现位置信息。
这样,在数据处理装置中,能够针对电子数据分别生成文本信息、标签详细信息以及标签出现位置信息。
文本信息生成单元最好对电子数据的任意区域进行检索,提取并记录文本数据,生成文本信息。标签详细信息生成单元在对电子数据的任意区域进行检索并在每次检索到标签时,对应该标签记录属性数据,生成标签详细信息。标签位置信息生成单元在对电子数据的任意区域进行检索并在每次检索到标签时,对应该标签记录出现位置数据,生成标签出现位置信息。
这样,能够针对电子数据的任意区域的部分数据而不是全部数据分别生成文本信息、标签详细信息以及标签出现位置信息。
数据处理装置最好进一步具备判断是否可由输入单元输入用于电子数据的文本信息、标签出现位置信息以及标签详细信息的单元。
这样,能够在数据处理之前判断是否可以利用输入单元输入这些数据。另外,也可以在该判断结果表示不可输入时生成这些数据。
为实现上述目的,遵循本发明的再一方面、用来处理包含文本数据和在文本数据中出现的多个标签并且采用多个标签构成层次结构的电子数据的数据处理方法具备:输入步骤,输入记录有文本数据的文本信息、与多个标签的每一个相对应地记录表示该标签的属性的属性数据的标签详细信息、以及记录有对于多个标签的每一个表示该标签在文本数据中的出现位置的出现位置数据的标签出现位置信息;文本读出步骤,从由输入步骤输入的文本信息中读出作为电子数据的处理对象的与任意区域对应的文本数据;属性读出步骤,根据由输入步骤输入的标签出现位置信息,由上述信息处理部确定与任意区域对应的文本数据中出现的标签,从由输入步骤输入的标签详细信息中读出所确定的标签的属性数据;以及处理步骤,根据属性读出步骤中读出的属性数据,处理由文本读出步骤读出的文本数据。
上述数据处理方法最好是在计算机中执行,通过与计算机关联的输入部执行输入步骤,通过与计算机关联的信息处理部执行文本读出步骤、属性读出步骤以及处理步骤。
附图说明
图1A和图1B是第1实施方式的结构化文档的变换步骤的概略的说明图。
图2是与用来构成包含数据处理装置的数据处理系统的其他装置一起表示本发明第1实施方式的数据处理装置的框图结构实例的图。
图3是用来说明本发明的第1实施方式的数据处理的流程图。
图4是表示图2的变换处理部的变换处理步骤的流程图。
图5是表示对图1A的XML数据进行层次结构分析并加以显示时的布局、以及显示图1B的XML数据时的布局的图。
图6是将图2的显示装置的结构实例与用来构成包含显示装置的数据处理系统的其他装置一起表示出来的图。
图7是本发明的第1实施方式的显示装置所执行的显示处理的流程图。
图8是与用来构成包含数据处理装置的数据处理系统的其他装置一起表示本发明第2实施方式的数据处理装置的框图结构实例的图。
图9是用来说明本发明的第2实施方式的数据处理的流程图。
图10是表示将图1A的XML数据分割成若干个块单位时的分割位置的图。
图11是表示对图10的数据进行差补处理的图。
图12是表示将图11的数据进行变换处理之后的状态的图。
图13是将图8的显示装置的结构实例与用来构成包含显示装置的数据处理系统的其他装置一起表示出来的图。
图14是本发明的第2实施方式的显示装置所执行的显示处理的流程图。
图15是表示本实施方式3的数据处理装置的框图。
图16是表示本实施方式3的数据处理装置的一个实例——由便携式设备构成的显示装置的图。
图17是表示本实施方式3的标签出现位置数据的数据结构的一个实例的图。
图18是表示本实施方式3的标签详细数据的数据结构的一个实例的图。
图19是表示本实施方式3的XHTML文档的一个实例的图。
图20A和图20B是表示根据图19的XHTML文档生成的文本数据的一个实例的图。
图21是表示根据图19的XHTML文档生成的标签出现位置数据的一个实例的图。
图22是表示根据图19的XHTML文档生成的标签详细数据的一个实例的图。
图23是表示本实施方式3的数据处理的流程图。
图24是表示本实施方式3的数据处理的流程图。
图25是用于执行各实施方式的数据处理方法的计算机的结构图。
图26是表示现有的具有层次结构的电子数据的一个实例的图。
图27是用于说明根据现有的具有层次结构的电子数据取得的树型结构的图。
具体实施方式
下面,参照附图说明本发明的各个实施方式。此外,虽然在这里数据是通过显示进行输出的,但也可以通过印刷进行输出,并不限于显示。
(术语说明)
首先,对于用HTML、XML、SGML等标记语言记述的文本文件中使用的标签相关的术语加以说明。标签在这里是用于指定字符串的输出形态(缩进、显示颜色等)的特殊字符或符号串,它是保留字。
在分析文本文件中记述的标签信息时,必须分为开始标签、与其成对的结束标签、夹在开始标签和结束标签之间的部分数据即子元素,并且从开始标签中分解出标签名、属性名以及属性值。成对的开始标签和结束标签称为标签对。
开始标签是指以「<」开始、以「>」结束的字符串部分。结束标签是指以「</」开始、以「>」结束的字符串部分。夹在开始标签和结束标签之间的部分中不存在子元素时,也可以将开始标签和结束标签合而为一,记作以「<」开始、以「/>」结束的字符串。这称为空标签。可以认为,空标签等同于开始标签和结束标签兼备的情形。
在非空标签的情况下,子元素包含构成文本文件的字符串或者其他的标签对。在子元素中,当含有一个或以上与夹着该子元素的标签对的开始标签指示相同类型的属性的标签对的情况下,夹着子元素的标签对(将其称为外部标签对)和包含在该子元素中的标签对(将其称为内部标签对)构成了多个标签对具有层次结构的嵌套关系,所以在内部标签对的开始标签的属性值中反映出上级的外部标签对的属性值。
标签名用开始标签或者空标签的「<」后面的字符串来表示。在标签名之后接着是包含「=」的字符串的情况下,「=」的左边称为属性名、右边的「”」包围的字符串称为属性值。例如,对于「<a b=“c”>d</a>」的XML数据,「<a b=“c”>」是开始标签,「d」是子元素,「</a>」是结束标签。开始标签中的「a」是标签名、「b」是属性名、「c」是属性值。在实施方式1、2中,为了简化说明,属性名(属性的类型)与标签名一一对应,因此,根据标签名来确定属性的类型。属性名是指与该开始标签的子元素相关的输出时的属性,例如缩进、显示颜色等固有特征;属性值表示对应属性的值,例如缩进的字符个数、显示颜色为红色等。
在子元素为空的空标签的情况下,就是「<a b=“c”/>」这样的形式。此外,在以下的说明中,当标签名为「a」时,将该标签名称为「a标签」,当属性名为「b」时,将该属性名称为「b属性」、将对应的属性值称为「b属性的值」。
(结构化文档的变换的概要步骤)
利用图1A和图1B说明本实施方式的结构化文档的变换步骤的概要。图1A表示变换前的具有层次结构的XML数据300,图1B表示将XML数据300加以变换之后的XML数据400。在XML数据400中,原来的层次结构被消除而不复存在。通过从XML数据300的上方开始依次逐行进行变换,得到XML数据400。
在图1A的XML数据300中,字符串301「ABCDE」没有成为标签的子元素,因此,设定了默认值「<pindent=“0”>」和「<font color=“black”>」。借助于该默认值,将字符串301指定为无缩进并且显示为黑色。
字符串301不需要进行变换,因此,与图1B的XML数据400中的字符串401「ABCDE」对应。由于没有进行字符串的变换,因此,以下不作特别说明。
与字符串404对应的字符串304「FGHIJ」成为标签302「<p indent=“1”>」和标签303「<font color=“red”>」的子元素,因此,缩进1个字符并显示为红色。在字符串304的上级层次中不存在标签名相同的标签,因此,对要变换的标签的属性值没有影响,标签302和303被分别变换成XML数据400中的标签402「<p2 indent=“1”/>」和标签403「<font2 color=“red”/>」。标签信息(属性值)在开始标签的描述之后直到出现标签名相同的结束标签的范围内有效,该范围称为有效范围。‘p2’标签以及‘font 2’标签是空标签,没有指定有效范围。
字符串306「KLMNO」是标签302「<p indent=“1”>」、标签303「<font color==“red”>」以及标签305「<p indent=“2”」的子元素,因此,缩进3个字符并显示为红色。标签305的上级层次中存在标签302,因此,在标签305的变换中反映了标签302的信息。即,标签305在XML数据400中被变换成标签405「<p2 indent=“3”/>」。
根据标签403「<font2 color=“red”/>」和标签405「<p2 indent=“3”/>」的信息,字符串406「KLMNO」缩进3个字符并且显示为红色。这与基于XML数据300的变换之前的显示相同。
字符串309「PQRST」是标签302「<p indent=“1”>」的子元素,因此,缩进1个字符,并且显示为默认的黑色。标签305「<p indent=“2”>」的标签的信息以标签307「</p>」的结束标签结束,因此,在标签307「</p>」中,反映出上级层次中标签名相同的302「<p indent=“1”>」的信息。即,标签307被变换成XML数据400中标签407「<p2indent=“1”/>」。
同样地,标签303「<font color=“red”>」的标签的信息以标签308「</font>」的结束标签结束。标签308「</font>」的上级层次不存在标签名相同的标签,因此,反映出默认的「<font color=“black”>」的信息。即,标签308被变换成XML数据400中的标签408「<font2 color=“black”/>」。
根据标签407「<p2 indent=“1”/>」和标签408「<font2 color=“black”/>」的信息,字符串409「PQRST」缩进1个字符,并且显示为黑色,与变换之前的显示相同。
字符串311「UVWXY」不具备标签信息,因此默认为有效、字符不缩进,且显示为黑色。标签302「<p indent=“1”>」的标签的信息以标签310「</p>」的结束标签结束。标签310「</p>」的上级层次不存在标签名相同的标签,因此,反映出为默认值「<p indent=“0”>」的信息。即,标签310被变换成XML数据400的标签410「<p2 indent=“0”/>」。
根据标签408「<font2 color=“black”/>」和标签410「<p2indent=“0”/>」的信息,字符串411「UVWXY」无字符缩进并且显示为黑色,与变换之前的显示相同。
如上所述,对要显示的信息(字符串等)以及显示形态(缩进、显示颜色等)不作改变地将具有图1A的层次结构的XML数据300变换成图1B的消除了层次结构的XML数据400。
(第1实施方式)
(包含数据处理装置的数据处理系统的说明)
图2是与用来构成包含数据处理装置的数据处理系统的其他装置一起表示本实施方式的数据处理装置的框图结构实例的图。图3是本实施方式的数据处理的流程图。
参照图2,数据处理系统由网络111、记录介质112、数据处理装置113以及显示装置110构成。
网络111与数据处理装置113、具有记录了数据的数据库的服务器或者其他个人计算机连接。数据101通过网络111提供给数据处理装置113。记录介质112中预先记录数据102,用来向数据处理装置113提供数据102。记录介质112有软盘(称作FD)、CD-ROM(只读光盘存储器)、硬盘等。数据处理装置113用于输入从网络111以及记录介质112提供的数据101、102进行处理,并将处理结果的数据输出到外部。显示装置110用于接受数据处理装置113输出的信息并进行显示。在后面叙述显示装置110的详细情况。另外,数据处理装置113输出的信息既可以通过网络111发送到外部装置,也可以记录到记录介质112中。
数据101、102是用于执行预定处理的根据文档描述语言的定义构成的数据,采用用于记录具有层次结构的结构化文档的数据结构——SGML及XML等进行记录。在以下的说明中,假定是依照XML描述的数据并且具有能够确定数据元素的数据结构的情况进行说明。此外,描述数据的方式不限定于XML。
(数据处理装置113的说明)
图2所示的数据处理装置113具备输入部103、数据存储部104、层次结构分析部105、变换处理部106、输出部107、控制部108以及指示输入部109。按照图3的流程图概要说明采用了上述各部分的数据处理步骤。
输入部103读入数据101或102(步骤S(以下,简写为S)1001)。数据存储部104存储由输入部103读入的数据101或102。层次结构分析部105分析数据存储部104中存储的数据101或102的标签的信息及层次结构。
层次结构分析部105取得数据101或102的XML数据的所有部分中开始标签、结束标签、子元素、以及开始标签中的标签名、属性名以及属性值的信息,根据取得的信息分析标签的层次结构,取得层次结构的信息(S1002)。此时,将从开头起以行为单位对XML数据进行分析所取得的标签的信息依次存放到预先准备的预定存储区域中。
变换处理部106根据由层次结构分析部105分析所取得的、存放在预定存储区域中的信息,对XML数据中具有层次结构的标签进行变换处理(S1004)。变换处理部106判定是否已经对所有的具有层次结构的标签进行了该变换处理,当判定发现对所有的标签都进行了该变换处理时,结束变换处理(S1003)。后面叙述变换处理部106的详细情况。
由变换处理部106进行变换处理后输出的变换后的XML数据再次存储到数据存储部104。输出部107输入从数据存储部104读出的变换后的数据并且将其输出到外部(S1005)。
控制部108根据接收到的指示等控制上述的输入部103、数据存储部104、层次结构分析部105、变换处理部106以及输出部107的一系列的处理流程。为了操作数据处理装置113,指示输入部109输入从外部供给的指示114、例如用户的指示114并将其输出到控制部108。
(具体的变换处理)
接着说明由变换处理部106基于XML数据的层次结构的信息进行的变换处理(S1004)的步骤。图4是表示变换处理部106的变换处理步骤的流程图。这里,假设输入到数据处理装置113的变换处理前的XML数据是图1A的XML数据300、作为数据处理装置113的输出的变换处理后的XML数据是图1B的XML数据400。另外,图5中表示了将图1A的XML数据300进行层次结构分析后显示的布局、以及在显示装置110上显示的图1B的XML数据400时的布局。
(标签的说明)
首先说明图1A中描述的标签。‘p’标签是关于段落显示的标签,‘indent’属性表示从文章当前的开始位置起缩进‘indent’属性的值的字符个数(留出字符个数份的空白)之后开始文章。例如,标签305「<p indent=“2”>」表示从文章的当前开始位置起缩进2个字符份之后开始文章。‘font’标签是与字符显示相关的标签,‘color’属性表示将文字的颜色从默认值(黑色)开始进行变更并显示。例如,标签303「<font color=“red”>」表示将文字的颜色变更为红色进行显示。另外,在没有特别指定的情况下的默认值假定为文章的开始位置设定了指示左侧的开头的「<p indent=“0”>」、字符颜色设定了指示黑色的「<font color=“black”>」。
(布局的说明)
将图1的XML数据300进行分析并显示,即成为图5的布局。图5中的「□」表示用‘p’标签的‘indent’属性指定的文章开始位置的字符缩进一个字符大小。另外,双重下划线表示根据‘font’标签的‘color’属性文字的颜色为红色。
在变换处理中,首先检索存放在上述预定存储区域中的标签的信息,取得作为变换对象的标签的信息(S1101)。在图1A中,最先取得标签302「<p indent=“1”>」。
接着,判定所取得的标签是开始标签、结束标签以及空标签中的哪一种(S1102)。这里,当判定为是结束标签以外的开始标签以及空标签时,不需要进行变换,因此就此结束变换处理。在图1A中,标签302是开始标签,因此,就此结束变换处理。
接着,通过检索预定存储区域,依次取得标签303「<font color=“red”>」、标签305「<p indent=“2”>」,然而,由于判定发现这些标签是开始标签,因此,就此结束变换处理。其次,由于判定从预定存储区域读入的标签307「<p>」为结束标签,因此,继续变换处理。
当取得的标签为结束标签时,在预定存储区域中进行检索以取得与结束标签对应的开始标签的信息(S1103)。在图1A中,检索到标签305是与标签307的结束标签对应的开始标签。
接着,检索在与结束标签对应的开始标签的更上级的上级层次中是否存在标签名相同的标签(S1104)。这里,上级层次是指在子元素中包含按照上述的嵌套关系进行变换处理的开始标签的标签的层次。
(图4的S1104为“是”的情况)
针对在上级层中存在标签名相同的标签的情况加以说明。当检索的结果是上级层次存在标签名相同的标签时,取得位于上级层次的标签的信息(S1105)。取得的标签的信息是上级层的开始标签的属性的信息。在图1A中,标签305以及标签307的层次的上级层次存在标签302以及标签310「</p>」。检索的结果是能够取得上级层次的开始标签的标签302,因此,取得该属性的信息。接着,对S1103取得的开始标签进行变换以便反映出取得的信息(S1107)。
这里的变换是指,当取得的信息和开始标签具有相同属性时,进行各个属性值的相加以及差分等的处理;当取得的信息和开始标签不具有相同属性时,进行属性的追加以及删除等的处理,也指在必要时对标签名以及开始标签、结束标签、空标签等的类型进行变换。
在图1A中,在标签305‘indent’属性中反映出标签302的‘indent’属性。‘p’标签的‘indent’属性表示从当前的位置起缩进‘indent’属性的值的字符个数之后开始文章(字符串),因此,这里进行相加。将标签302的‘indent’属性的值「1」和标签305的‘indent’属性的值「2」相加之后作为‘indent’属性的值「3」。进一步,将标签名从‘p’标签变换成‘p2’标签并且从开始标签变换到空标签。其结果是,标签305被变换成图1B中的标签405<p2 indent=“3”/>」。‘p2’标签与‘p’标签一样,表示仅缩进‘indent’属性的值的字符个数之后开始文章(字符串)。与‘p’标签的不同在于,‘p’标签是由开始标签和结束标签来指定有效范围,与此相对,‘p2’标签是用空标签描述,并且将此后直到利用‘p2’标签进行属性变更为止的范围作为有效范围。
在开始标签的变换处理后,从预定存储区域中检索与该开始标签对应的结束标签,对该结束标签也进行变换处理以反映出取得的信息(S1108)。由于在结束标签中不存在属性,因此,这里将取得的信息的属性追加到结束标签的属性中。另外,必要时对标签名以及开始标签、结束标签、空标签等的类型也进行变换。
图1A中,在标签307中追加‘indent’属性的值「1」。进一步,将标签名从‘p’标签变换成‘p2’标签,从结束标签变换成空标签。其结果是,图1A的结束标签307变换为图1B中的标签407「<p2 indent=“1”/>」。在开始标签以及结束标签的变换结束之后,变换处理结束。
(图4的S1104为“否”的情况)
接着,针对在上级层次中不存在标签名相同的标签的情况加以说明。
在上级层次中不存在标签名相同的标签的情况下,取得该标签名的标签的初始设定(默认值)的信息(S1106)。
在图1A中,在标签308「</font>」和与此对应的开始标签303「<font color=“red”/>」的上级层次中不存在‘font’标签,因此,取得‘font’标签的初始设定「<font color=“black”/>」。
对开始标签以及结束标签以反映出取得的信息进行变换的处理与在上级层次存在标签名相同的标签的情形相同,因此省略说明。
在图1A中,进行变换以反映出‘color’属性的值「black」,其结果是,标签303变换为图1B的标签403「<font2 color=“red”/>」,标签308变换为图1B的标签408「<font2 color=“black”/>」。“font2’标签与‘p2’标签一样不同于‘font’标签,将直到此后出现利用‘font2’标签进行的属性变更为止的范围作为有效范围。
(其余的变换处理的说明)
如果针对图1A的XML数据300的所有标签进行变换处理,则成为表示图1B的XML数据400的输出结果。在图1B中,不存在以具有形成为层次结构的子元素的开始标签及结束标签描述的标签,而全部是用不具备层次结构的空标签进行描述。
变换处理不限于着眼于结束标签进行变换的处理。也可以着眼于开始标签而非结束标签进行同样的变换。
另外,在变换处理中,也可以省略位于XML数据最后的结束标签不进行变换处理。例如,在图1A中,当标签310之后不存在数据的情况下,不将标签310变换成图1B的标签410「<p2 indent=“0”/>」,即能够省略变换。这是因为,在标签410之后没有数据,不需要标签410的信息。在这种情况下,在图1B中,字符串409「PQRST」成为数据的尽头。通过省略变换,能够减少变换后的XML数据400的数据容量。
(显示装置(图6)的说明)
其次说明显示装置。图6是将图2的显示装置的结构实例与用来构成包含显示装置的数据处理系统的其他装置一起表示出来的图。即,图6中的网络211、记录介质212、具有数据203的数据处理装置213以及显示装置214,分别对应于图2中的网络111、记录介质112、数据处理装置113以及显示装置110。另外,图6的数据201和202对应于图2的数据101和102。图7中表示了显示装置214所执行的显示处理的流程图。
显示装置214具备输入部204、数据存储部205、数据结构分析部206、布局计算部207、显示部208、控制部209、以及输入来自外部的指示215并且输出到控制部209的指示输入部210。
输入部204读入通过网络211发送来的数据201、预先记录在记录介质212中的数据202或者数据处理装置213的输出数据203(S1201)。数据201、202、203是在数据处理装置213进行处理的数据。数据存储部205存储由输入部204读入的数据201或数据202、203。
以下,根据图7的流程图针对数据显示处理的步骤加以说明。
(数据结构分析部206的说明)
首先,数据结构分析部206对存储在数据存储部205中的数据201或数据202或203的数据结构进行分析(S1202)。数据201或数据202、数据203是消除了图1B所示的层次结构的结构化文档的数据,因此,数据结构分析部206不需要进行分析层次结构的处理,只要分析标签信息和字符串即可。图1B中,分析(确定)字符串401「ABCDE」、404「FGHIJ」、406「KLMNO」、409「PQRST」以及411「UVWXY」是字符串、标签402「<p2 indent=“1”/>」、403、405、407、408以及410是标签。分析的结果输出到布局计算部207。
(布局计算部207的说明)
布局计算部207依次读入从数据结构分析部206输出的标签和字符串的分析结果(S1203)。根据读入的信息计算用于显示的缩进等布局(S1204)。在图1B的情况下,首先读入字符串401计算布局。接着,根据读入的标签402和标签403的信息计算字符串404的布局。接着,在读入并取得了标签405的信息后,不需要保持与标签405相同的‘p2’标签——标签402。在数据处理装置213中,预先分析了层次结构并且变换成指示显示形态变更的标签的信息,因此,在标签405中反映了标签402的信息。因此,根据标签403和标签405的信息计算字符串406的布局即可。此后,同样地,通过取得标签名相同的标签的信息,可以不保持先前读入的标签名相同的标签的信息。由于可以不保持标签名相同的标签的信息,因此能够减少存储器使用量。根据计算结果布局的数据被提供给显示部208,由显示部208进行显示。
(其他部分的说明)
显示部208从布局计算部207输入根据计算结果布局的数据并且显示到外部(S1205)。在处理了图1B的数据400的情况下,与图1A相同地,如图5所示地进行显示。控制部209是控制输入部204、数据存储部205、数据结构分析部206、布局计算部207以及显示部208的一系列的处理流程的装置。指示输入部210输入用来操作显示装置214的用户的指示215并且将其输出到控制部209(S1206)。当存在来自用户的、与显示布局的变更相关的指示215的情况下,再次进行依次读入标签等的分析结果的处理(S1203),利用所指示的变更内容重新计算布局并且进行显示。在没有用户的指示215的情况下,保持等待状态直至接受到用户的指示215。另外,当接收到来自用户的显示处理结束的指示215时,结束整个显示处理。
如上所述,在数据处理装置213中,将具有层次结构的结构化文档的数据300变换成预先消除了层次结构的结构化文档的数据400,由此,可以在显示装置214中显示数据400,能够省略层次结构的分析处理,因此能够高速地进行显示处理。另外,由于不需要预先存储层次结构,因此,能够减少存储器使用容量。
(第2实施方式)
下面,说明第2实施方式。
图8是与用来构成包含数据处理装置的数据处理系统的其他装置一起表示本发明第2实施方式的数据处理装置的框图结构实例的图。图9是用来说明本发明的第2实施方式的数据处理的流程图。
参照图8,数据处理系统具备网络512、记录介质513、数据处理装置514以及显示装置511。
网络512与数据处理装置514、具有记录了数据的数据库的服务器或者其他个人计算机连接。将数据501通过网络512提供给数据处理装置514。记录介质513中预先记录数据502,用来向数据处理装置514提供数据502。记录介质513包括FD、CD-ROM、硬盘等。数据处理装置514是用于输入从网络512以及记录介质513供给的数据501、502进行处理并输出到外部的装置。
显示装置511是用于接受数据处理装置514输出的信息并进行显示的装置。在后面叙述显示装置511的详细情况。另外,数据处理装置514输出的信息既可以通过网络512发送到未图示的外部装置,也可以记录到记录介质513。
数据501以及502也与第1实施方式的图2的数据101以及数据102相同,因此省略说明。
数据处理装置514具备输入部503、数据存储部504、块分割部505、层次结构分析部506、变换处理部507、输出部508、控制部509以及指示输入部510。
按照图9的流程图对数据处理装置514的数据处理步骤加以说明。输入部503执行数据501或数据502的读入(S1301)。数据存储部504存储由输入部503读入的数据501或502。块分割部505执行分割处理(S1302),将数据存储部504中存储的数据501或502分割成若干个块单位。
(块分割处理的说明)
这里,针对块分割处理加以说明。图10是表示将图1A的XML数据300分割成若干个块单位时的分割位置的图。在图10中,为了进行说明,采用标号701~711取代图1A的标号301~311。标号701~711所示的内容与标号301~311所示的内容一致。
在图10中,假定在字符串704「FGHIJ」和标签705「<p indent=“2”>」之间分割XML数据300,其结果是XML数据300分割成块712和块713这两个块。
作为基准,块的大小定为固定尺寸。分割成块的位置是根据在固定尺寸附近描述的标签进行分割的。并不是按固定尺寸的本身进行分割,而是在标签的描述的前后进行分割,由此避免标签的描述本身被分割。
如果标签的描述本身被分割,则即使读入了每一个块,由于标签描述被切断而无法分析。如果不存在以近似固定尺寸进行适当分割所需的标签,就扩大范围进行标签检索。假设从开头开始定义作为基准的固定尺寸。将所定义的尺寸设置为适合于显示装置511的处理的尺寸。
在块分割处理中,如果具有层次结构的标签的子元素被分割开,例如,标签702「<p indent=“1”>」和标签703「<font color=“red”>」的子元素被分割成无法计算布局的状态,就在分割后的位置前后,执行对分割后的标签的信息进行补偿的处理(以下称作插补处理)。图11是表示对图10的数据进行差补处理的图。
图11的标号801~804以及标号809~815所表示的内容与图10的标号701~704以及标号705~711所示的内容一致。图11的块816是表示对图10的块712的数据追加了标签805「</font>」作为对应于标签803「<font color=“red”>」的结束标签、并且追加了标签806「</p>」作为与标签802「<p indent“1”>」对应的结束标签后的数据。另外,块817是表示对图10的块713的数据追加了标签808「<font color=“red”>」作为与标签812「</font>」对应的开始标签、并且追加了标签807「<p indent“1”>」作为与标签814「</p>」对应的开始标签之后的数据。利用如上所述的追加对应的开始标签或者结束标签这样的插补处理,块816以及块817分别变成了能够进行布局计算的XML数据。
(层次结构分析部506的说明)
层次结构分析部506输入在块分割部505中进行分割处理后的XML数据,在每一块中对其中的标签的信息以及层次结构进行分析,将分析结果的信息输出到变换处理部507(S1304)。
层次结构分析部506执行与第1实施方式中的图2的层次结构分析部105同样的分析处理,因此,省略其说明。
(变换处理部507的说明)
变换处理部507根据从层次结构分析部506提供的分析结果信息,针对具有层次结构的标签进行变换处理(S1306)。变换处理与第1实施方式的变换处理相同,因此省略其说明。
图12是表示对图11的数据进行变换处理之后的状态的数据的图。
在图11的块816中,由于在标签805以及标签806之后不存在数据,因此,不进行变换处理,省略了变换。因此,与块816对应的图12的块913包含字符串901及904、以及标签902及903,字符串904「FGHIJ」成为块913的尽头。判定是否对所有的标签进行了变换处理,并且结束变换处理(S1305)。另外,与块817对应的图12的块914包含字符串907、910及912、以及标签905、906、908、909和911。
判定是否对所有的块都结束了以上的分析处理以及变换处理(S1303),当判定发现已经结束时,将变换后的数据再次存储到数据存储部504。输出部508读出存储在数据存储部504中的变换后的数据并将其输出到外部(S1307)。
控制部509对输入部503、数据存储部504、块分割部505、层次结构分析部506、变换处理部507以及输出部508的一系列处理流程进行控制。指示输入部510将用来操作数据处理装置514的用户指示515传递给控制部509。
数据处理也可以针对已经分割成块单位的XML数据执行。如果数据501以及502是已经分割成块单位的数据,就在块分割部505中,在块内进一步进行块分割处理或者省略块分割处理。此后的层次结构分析部506的分析处理以及变换处理部507的变换处理能够同样地进行。
(显示装置511的说明)
其次说明显示装置。图13是将图8的显示装置511的结构实例与用来构成包含显示装置的数据处理系统的其他装置一起表示出来的图。即,图13中的网络612、记录介质613、数据处理装置615分别对应于图8中的网络512、记录介质513、数据处理装置514以及显示装置511。图14是显示装置615的显示处理的流程图。
显示装置615具有输入部604、数据存储部605、块信息分析部606、数据结构分析部607、布局计算部608、显示部609、控制部610以及指示输入部611。
输入部604读入通过网络612接收到的数据601、或者预先记录在记录介质613中的数据602、或者作为数据处理614的输出的数据603(S1401)。数据601、602、603是在数据处理装置614进行处理的数据。数据存储部605存储由输入部604读入的数据601或数据602、603。
按照图14的流程图说明显示处理步骤。
首先,块信息分析部606分析数据存储部605中存储的数据601或者数据602或者数据603的块信息(S1402)。根据对块信息的分析,决定显示所需的对象块(S1403)。决定了显示所需的对象块后,无需从数据601或数据602或数据603的数据的开始(开头)起对数据所有部分进行分析,而只要对显示所需的块内的数据进行分析,因此,减轻了处理负担。
在必须从最前(开头)起显示XML数据的内容的显示装置中,显示所需的块的位置是第1块,在预先记录有指示上次显示的位置的位置信息的显示装置中,显示所需的块的位置是基于所记录的位置信息的位置。
显示所需的块的个数根据显示画面的尺寸或显示设定来决定。例如,当每块中包含30个字符时,若显示设定为50个字符,为了进行显示,至少需要2个块、最大需要3个块。在包含图像的布局中,根据像素数等来决定显示所需的块的个数。
根据上述用于显示的块的位置和块的个数的决定,从所决定的块的位置起所决定的块的个数的块成为显示所需的对象块。
数据结构分析部607、布局计算部608以及显示部609中的处理S1404到S1407与第1实施方式中的图7的处理S1202到S1205相同,因此省略说明。
控制部610控制输入部604、数据存储部605、块信息分析部606、数据结构分析部607、布局计算部608以及显示部609的一系列的处理的流程。
指示输入部611输入用来操作显示装置615的用户的指示616之后输出到控制部610(S1408)。当有来自用户的指示616的情况下、当要显示的块和上次显示的块相同的情况下,再次执行依次读入标签的处理,重新计算布局以进行显示。在不是相同的块的情况下,从确定作为显示对象块的处理开始执行(S1409)。当没有输入用户的指示616情况下,保持等待状态直至接收到用户的指示616。当用户输入了结束指示616后,结束全部显示处理。
这里,用户的指示616是指用户通过操作显示装置615输入的指示。例如,如果是移动电话,就是通过操作十字键(上、下、左、右操作按键)或确定键进行指示。
图6中的用户指示215也是相同内容。
根据成为上述用户指示的操作来决定显示块。例如,假设当打开(显示)XML数据的内容时,显示第1块的开头部分。
当用户操作指示输入部611的未图示的向下按键上下滚动布局时,在显示所需的信息在第1块内的状态下,重复进行布局计算处理(S1409的“是”的动作)。当第1块的最后的信息布局显示后操作了向下按键时,就需要第2块的信息(S1409的动作)。与第1块一起对需要的第2块进行显示处理。这相当于显示块的确定。
如上所述,在数据处理装置514中,将具有层次结构的结构化文档的数据分割成块单位,并且变换成预先消除了层次结构的结构化文档的数据,由此,在显示处理装置615中,不需要从数据的开头起对所有数据进行分析,因此,减轻了显示处理的负担。另外,由于省略了对块内的层次结构进行分析的处理,能够高速地进行显示处理。进一步,由于不需要预先存储层次结构,能够减少存储器的使用容量。
另外,在本实施方式中,用XML描述的数据为例说明了数据501、502、601、602以及603,然而,由以上的说明可知,并不限于用XML描述的数据。
(第1和第2实施方式共同的使用形态)
作为使用形态,假设数据处理装置113以及数据处理装置514为服务器,并且假设显示装置215以及显示装置615为安装在移动电话、PDA(个人数字助理)类的移动设备中的显示装置。
在服务器中,将具有层次结构的数据变换成消除了层次结构的数据,并且通过网络发送给移动设备。在移动设备中接收发送过来的数据。由于数据中不存在层次结构,因此,移动设备能够高速处理并显示接收到的数据。另外,并不限于移动设备的便携式信息处理装置,也可以是膝上型(笔记本型)或者台式的个人计算机。对于这样的个人计算机,由于消除了层次结构,也能够高速地处理数据,并利用显示器等显示接收到的数据。
另外,假设数据处理装置113以及514是个人计算机,假设显示装置214以及615是安装在移动电话之类的移动设备中的显示装置。在个人计算机中,将具有层次结构的数据变换成不存在层次结构的数据,并且将其记录在FD等记录介质中。通过将记录有变换后的数据的记录介质搬运、安装到移动设备,移动设备能够读入不存在层次结构的数据,能够高速地处理和显示读入的数据。同样地,显示装置不仅可以安装到移动设备,也可以安装到个人计算机。进一步,也可以不使用记录介质而通过网络发送接收数据。
借助于上述的实施方式1和2,即使是具有层次结构的数据300,通过预先消除层次结构从而变换成不存在层次结构的数据400,也能够在数据300的显示等输出中使用数据400替代数据300。由此,在显示等的输出中,不需要分析层次结构的处理,因此,数据的处理变得容易,能够高速地进行处理。另外,由于不需要另行预先存储层次结构,因此,能够减少使用容量。
进一步,将数据分割成块单位后,不需要从开头开始对数据全体进行分析,因此,减轻了处理负担。在块内,由于不需要层次结构的分析处理,能够进一步实现高速的输出处理。
(第3实施方式)
其次,说明第3实施方式。在本实施方式的数据处理装置中,采用对应的文本数据、标签出现位置数据以及标签详细数据这些分别准备的数据,对电子数据进行数据处理,因此,能够省略与判定处理对象的数据是标签部分还是文本部分相关的处理,高速地进行数据处理。以下说明其特征。
(数据处理装置的结构)
图15是将本实施方式的数据处理装置的结构与外围装置关联起来表示的图。
在数据处理装置1118的外围,设有接收来自用户的要求并发送记录在未图示的数据库中的电子数据的服务器1114、用户接收电子数据时使用的个人计算机1116、连接服务器1114和个人计算机1116的网络1115、以及从个人计算机1116读出电子数据并将电子数据提供给数据处理装置1118用的记录介质1117。数据处理装置1118在处理完从记录介质1117供给的电子数据之后,根据不同目的执行数据处理,例如执行用于显示的数据处理等。这里假设为显示电子数据的情况进行了说明,然而,也可以是其他的输出形态,例如打印电子数据。
也可以是将个人计算机1116替换成设置在便利店、车站内等的电子数据接收装置,从该电子数据接收装置读出电子数据并且记录到记录介质1117中。在这种情况下,能够在从电子数据接收装置读出电子数据并记录到记录介质1117时进行收费。
另外,也可以是由数据处理装置1118不通过个人计算机1116接收从服务器1114发送来的电子数据,并将接收到的电子数据记录到记录介质1117。
在记录介质1117中,利用个人计算机1116等装置,将电子数据1100、和从该电子数据1100生成得到的文本数据1101、标签出现位置数据1102及标签详细数据1103关联起来保存。这里,为了简化说明,假设在记录介质1117中只关联保存了1组电子数据1100和从该电子数据1100生成的数据,然而,也可以存放多组。
电子数据1100是用于根据文档描述语言的定义执行预定处理的结构化的电子数据,采用用于记录具有采用多个标签的层次结构的结构化文档的数据形式——SGML或XML等进行描述。
文本数据1101是仅表示结构化的电子数据1100中要显示的内容的数据。
标签出现位置数据1102是用来指示在处理对应的文本数据1101时所必需的标签信息之中表示各标签的标签名的信息、表示文本数据1101中的各标签的出现位置的信息、以及标签详细数据1103中的各标签的属性信息的存放位置的信息的下述信息的数据,仅由固定长度数据构成。标签详细数据1103是在处理对应的文本数据1101时所必需的标签信息之中用来指示各标签的属性等的信息的数据,由可变长度数据构成。
从服务器1114发送过来并存放到记录介质1117中的数据既可以仅是电子数据1100,也可以仅是根据电子数据1100生成的文本数据1101、标签出现位置数据1102以及标签详细数据1103这3个数据。
数据处理装置1118具备输入部1104、数据结构分析部1105、处理部1106、控制部1110、文本数据生成部1111、标签出现位置数据生成部1112以及标签详细数据生成部1113。
输入部1104从记录介质1117读入电子数据1100、文本数据1101、标签出现位置数据1102以及标签详细数据1103。
数据结构分析部1105根据电子数据1100或者根据文本数据1101、标签出现位置数据1102以及标签详细数据1103对电子数据1100的层次结构进行分析。
当不存在文本数据1101的情况下,文本数据生成部1111根据电子数据1100生成文本数据1101。如果从服务器1114发送过来的数据是文本数据1101、标签出现位置数据1102以及标签详细数据1103这3个数据,也可以省略文本数据生成部1111。
当不存在标签出现位置数据1102的情况下,标签出现位置数据生成部1112根据电子数据1100生成标签出现位置数据1102。如果从服务器1114发送过来的数据是文本数据1101、标签出现位置数据1102以及标签详细数据1103这3个数据,也可以省略标签出现位置数据生成部1112。
在不存在标签详细数据1103的情况下,标签详细数据生成部1113根据电子数据1100生成标签详细数据1103。
如果从服务器1114发送过来的数据是文本数据1101、标签出现位置数据1102以及标签详细数据1103这3个数据,也可以省略标签详细数据生成部1113。
控制部1110对输入部1104、数据结构分析部1105、文本数据生成部1111、标签出现位置数据生成部1112、标签详细数据生成部1113以及处理部1106的处理进行控制。
处理部1106根据数据结构分析部1105的层次结构分析结果执行预定的处理。具体地,处理部1106的结构随对象电子数据的内容以及处理的类型而异,当数据处理装置1118是用来显示例如在网络上交换的电子文档、或电子数据、或单行本、教科书、杂志、小说、以及论文等文章的电子数据的装置的情况下,具备显示部1108以及用户指示处理部1109,上述显示部1108根据用来计算文章的显示布局的布局计算部1107计算出来的显示布局显示电子数据,上述用户指示处理部1109用来处理上下滚动指示等来自用户的指示1121。
当电子数据是音频数据的情况下,处理装置1106变为高声读出音频数据的装置,另外,显示部1108中使用音频重放部1108,布局计算部1107变为用来判定读出的部分和未读出的部分或者判定强调读出的部分和非强调读出的部分并调整各高声读出的间隔的单元。在音频数据的情况下,也可以根据层次结构改变音频属性之后高声读出。进一步,在音频的情况下,需要有脚本解释部、音频输出部、为了管理重放源数据而在数据的各要素之间取得同步的同步部等。
(数据处理装置的实施例)
在图16中表示将数据处理装置1118作为便携式的显示处理装置进行实施时的实例。在图16中,显示部1108由液晶显示器等构成。记录介质1117可自由拆卸地装载在输入部1104,在装载了记录介质1117时,通过输入部1104读入预先存放在记录介质1117中的处理对象电子数据1100或文本数据1101、标签出现位置数据1102以及标签详细数据1103。
相关于用户指示处理部1109,具备十字键1119及笔1120。当用户发出了显示文档的上下滚动指示或者指示希望显示的书籍或文档的电子数据1100的选择等的情况下,操作十字键1119。当电子数据中包含链接功能时,用户为了跳到链接目的地而使用笔1120,并且,为了输入从数据处理装置1118的控制部1110向用户求取的确认事项的回答,也使用笔120。
此外,向数据处理装置1118供给电子数据1100或文本数据1101、标签出现位置1102及标签详细数据1103的全部或一部分数据时,并不限于通过记录介质1117进行。
例如,也可以是在数据处理装置1118本体的内部设置预定的记录区域并且在该区域记录上述数据的一部分或者全部。
另外也可以是,在网络1115上的服务器1114或者未图示的数据库中记录上述数据的一部分或全部,在下载的同时进行处理。
(标签出现位置数据的1102的说明)
图17表示标签出现位置数据1102的结构的一个实例。标签出现位置数据1102包含文件名信息1300和标签出现位置信息1301。
文件名信息1300包含数据1302和1303,上述数据1302和1303表示对应的文本数据1101的文件名和对应的标签详细数据1103的文件名。
由于文件名信息1300是指示标签出现位置数据1102与哪一个文本数据1101或者与哪一个标签详细数据1103相对应,因此,与对应的文本数据1101关联地记录标签出现位置数据1102的情况下,也可以省略文本数据文件名的数据1302的区域。另外,与对应的标签详细数据1103关联地记录标签出现位置数据1102的情况下,也可以省略标签详细数据文件名的数据1303的区域。
标签出现位置信息1301包含数据1304以及位置数据1305,该数据1304表示包含在对应的文本数据1101中的标签的总数,该位置数据1305与对应的文本数据1101中包含的所有的标签的每一个相对应。
每个标签位置数据1305包含表示对应的标签名的数据1306、表示对应的标签的文本数据1101中的出现开始位置和结束位置的数据1307和1308、以及表示对应的标签的标签详细数据1103中的存放开始位置和结束位置的数据1309和1310。此外,数据1307和1308表示开始标签和结束标签在文本数据1101中的描述位置。按照从标签的各数据(文本数据1101或标签详细数据1102)的开头起的字节个数等来记录数据1307~1310。
也可以记录标签的文本数据1101中的影响范围以替代标签的文本数据1101中的出现结束位置。影响范围表示标签的属性有效的部分的文本数据的大小(范围),它对应于从出现开始位置到出现结束位置之间的范围。即,表示(出现结束位置-出现开始位置)之差。由此,即使记录影响范围的信息以替代出现位置的信息,也能够根据(出现开始位置+影响范围)的值得到出现结束位置的数据1308。
同样地,也可以记录标签的标签详细数据1103中的数据大小以替代标签的标签详细数据1103中的存放结束位置的数据1310。所谓的数据大小指的是,从存放开始位置到存放结束位置之间的尺寸。即,表示(存放结束位置-存放开始位置)之差。由此,即使记录数据大小的信息以替代存放位置的信息,也能够根据(存放开始位置+数据大小)的值取得存放结束位置的数据1310。
构成标签出现位置1102的各数据是如图17所示的固定长度的数据。这里,在本实施方式中,所谓的固定长度数据指的是,即使电子数据1100所表示的信息发生变动,也不会超过预先准备的预定尺寸(例如,4个字节)。因此,例如,如图17所示,当分配4个字节作为表示标签在文本数据1101中的出现开始位置的数据1307的情况下,必须输入表示从文本数据1101的文件开头起的字节个数0~4294967295中的任意一个值。此外,可以根据处理的电子数据1100的类型、数据处理装置1118的处理能力来决定分配给构成标签出现位置数据1102的各数据的区域的尺寸。
(标签详细数据1103的说明)
在图18中表示标签详细数据1103的结构的一个实例。参照图18,标签详细数据1103与记录在对应的标签出现位置数据1102中的所有标签的每一个对应地包含标签详细数据1401。标签详细数据1401包含数据1402以及数据1403,其中,上述数据1402表示对应的标签所示的不同类型的属性的总数,上述数据1403与对应的标签所示的不同类型的所有的属性分别对应。数据1403包含表示对应的属性的类型名的数据AN以及对应的属性的值AV。标签详细数据1103的大小依赖于各标签的信息的大小,因此,基本上由可变长度数据构成标签详细数据1103,但也可以用足够大小的固定长度数据构成标签详细数据1103。
(关于数据的具体实例)
接着,使用XHTML(extensible HTML,可扩展HTML)文档针对文本数据1101、标签出现位置数据1102内的各数据以及标签详细数据1103内的各数据的格式加以说明,其中,上述XHTML是按照文档描述语言的定义描述并具有层次结构的电子数据1100的具体实例。图19中表示了处理对象的XHTML文档电子数据1100的一个实例。
图20A中表示根据图19的XHTML文档的电子数据1100生成的文本数据1101的一个实例。如图20A所示,基本上是仅将夹在各标签中的子元素中的、要显示的内容即字符串记录到文本数据1101中。通过这样进行记录,能够获得下述优点:在数据处理装置1118的处理能力低并且难以分析标签出现位置数据1102以及标签详细数据1103的情况下,仅处理并显示文本数据1101时,用户根据显示内容至少能够理解所描述的文档的内容。因此,即使是要显示的内容,有时候也不记录到文本数据1101中。
对此,以给字符串设定注音假名而使用的标签(以下称作注音假名标签)为例来表示。
在图19的注音假名标签1503的情况下,通常将由开始标签<rb>和结束标签</rb>夹着的子元素「吾輩」”、以及由开始标签<rt>和结束标签</rt>夹着的子元素「わがはい」记录在文本数据1101中,这样,基于文本数据1101的记录内容的显示内容表示了「吾輩わがはい」,意思变得不可理解。因此,将注音假名标签1503变换成<ruby2 rt=“わがはい”>吾輩</ruby2>。在本实施方式中,<ruby2>是注音假名用的标签,具有指定注音假名字符串的‘rt’属性,是表示将带有注音假名的字符串指定为子元素的标签。通过将注音假名标签1503变换成使用<ruby2>标签的元素,在文本数据1101中,记录作为子元素的「吾輩」,并且将‘rt’属性的值「わがはい」记录在标签详细数据1103中。
关于此时记录到标签详细数据1103的记录内容,将在后文叙述。
在注音假名标签1505的情况下,也是同样地将其变换成<ruby2rt=“けんとう”>見当</ruby2>,将子元素「見当」记录在文本数据1101中,将‘rt’属性的值「けんとう」记录在标签详细数据1103中。
即使是注音假名标签以外的通常要记录到文本数据1101中的子元素,将该子元素变换成对应的标签的属性值记录到标签详细数据1103中的方式会使文本数据1101的内容更易于理解,也可以进行相同的处理。
与上述的注音假名标签相反,即使是标签的属性值,也有时将其记录到文本数据1101而不是标签详细数据1103中。对此,以用来设定外字(注:日本常用汉字表以外的汉字)而使用的标签(以下称作外字标签)为例加以说明。
在本实施方式中,<gaiji>是外字用的标签,它是指具有下述不同的多个类型的属性的标签,即:指定字符字体名的‘set’属性、指定用该‘set’属性指定的字符字体内的位置的‘code’属性、指定横写显示用的替代图像的‘img’属性、指定竖写显示用的替代图像的‘vimg’属性、以及指定替代字符串的‘alt’属性。
图19的外字标签1506的情况下,由于通常不在文本数据1101中记录任何内容,记录在文本数据1101中的内容就会变成「......という人間中で一番悪な種族で......」,显示后意思变得不可理解。
因此,将外字标签1506变换为<gaiji2 set=“○○○外字”code=“0×1234”img=“doul.jpg”vimg=“dou2.jpg”>どう</gaiji2>。这里,在本实施方式中,<gaiji2>是外字用的标签,它是指具有指定字符字体名的‘set’属性、指定用该‘set’属性指定的字符字体内的位置的‘code’属性、指定横写显示用的替代图像的‘img’属性、以及指定竖写显示用的替代图像的‘vimg’属性等多个类型的属性并将替代字符串指定为子元素的标签。
依照此种方式,通过将图19的外字标签1506变换成使用<gaiji2>标签的元素,在文本数据1101中记录子元素「どう」,在标签详细数据1103中记录其他的属性值。关于记录在标签详细数据1103中的内容,将在后文叙述。由此,记录在文本数据1101中的内容成为「......という人間中で一番どう悪な種族で......」,是意思明了的文章。
即使是外字标签以外的通常在文本数据1101中不记录任何内容的标签,将其属性值变换成子元素并记录到文本数据1101中的方式使文本数据1101的内容更易于理解,也可以进行相同的处理。
图20B中表示根据图19的XHTML文档的电子数据1100生成的文本数据1101的其他实例。在图20B中,实际上在有换行标签1504的位置进行换行。由此,能够易于理解文本数据1101的内容。这种情况下,也可以将换行标签1504的信息记录到标签出现位置数据1102中,并在布局计算部1107中不使用文本数据1101中的换行信息,反之,也可以不将换行标签1504的信息记录到标签出现位置数据1102而在布局计算部1107中使用文本数据1101中的换行信息。
即使是换行标签以外的标签、即通常在文本数据1101中不指示换行的标签的情况下,为了使文本数据1101的内容易于理解,也可以进行换行处理。
在图21中表示了根据图19的XHTML文档的电子数据1100生成的标签出现位置数据1102的一个实例。图21的数据1700~1702对应于图17的数据1302~1304。数据1702表示图19的电子数据1100中包含的标签(标签对)的个数。原来构成图19的XHTML文档的电子数据1100的标签的个数为11个,而如前面所说明,将构成注音假名元素的<ruby>标签、<rb>标签以及<rt>标签这3个标签变换成1个标签进行处理,因此,变成了7个标签,图21的数据1702表示「7」。数据1703~1707对应于第1个标签即<html>标签1500的标签位置数据1305的数据1306~1310。数据1703表示标签名「html」,数据1704表示<html>标签1500在文本数据1101中的出现开始位置,数据1705表示<html>标签在文本数据1101中的出现结束位置。其次,数据1706表示在标签详细数据1103中的<html>标签1500的属性信息的存放开始位置,数据1707表示在标签详细数据1130中的<html>标签1500的属性信息的存放结束位置。以下,同样地,数据1708~1712表示用于第2个标签即<body>标签1501的标签出现位置数据1305的信息,数据1713~1717表示用于第3个标签即<img>标签1502的标签出现位置数据1305的信息,数据1718~1722表示用于第4个标签<ruby>标签1503的标签出现位置数据1305的信息,数据1723~1727表示用于第5个标签即<br>标签1504的标签出现位置数据1305的信息,数据1728~1732表示用于第6个标签即<ruby>标签1505的标签出现位置1305的信息,数据1733~1737表示用于第7个标签即<gaiji>标签1506的标签出现位置数据1305的信息。
图22中表示了根据图19的XHTML文档的电子数据1100生成的标签详细数据1103的一个实例。与数据1402对应的数据1800表示第1个标签即<html>标签1500的属性个数「0」。将记录该信息的区域的开始位置、结束位置信息记为标签出现位置数据1102的数据1706和数据1707。另外,由于<html>标签1500的属性个数为‘0’,在标签详细数据1103中不记录属性个数信息的数据1800,取而代之,也可以记录标签出现位置数据1102的数据1706和数据1707以表示“无存放区域”。
由此,能够减少标签详细数据1103的数据容量。
以下,同样地,在标签详细数据1103中分别记录第2个标签即<body>标签1501的标签详细数据1401用的数据1801~1805、第3个标签即<img/>标签1502的标签详细数据1401用的数据1806~1810、第4个标签即<ruby>标签1503的标签详细数据1401用的数据1811~1813。
另外,记录第5个标签即<br/>标签1504的标签详细数据1401用的数据1814。由于<br/>标签1504也与<html>标签1500相同,属性个数为‘0’,因此,在标签详细数据1103中不记录属性个数,取而代之,也可以记录与出现位置数据1102对应的数据1726和数据1727以表示“无存放区域”。此外,分别记录第6个标签即<ruby>标签1505的标签详细数据1401用的数据1815~1817、第7个标签即<gaiji>标签1506的标签详细数据1401用的数据1818~1826。
(数据处理装置1118的处理步骤)
参照图23和图24,对图15的数据处理装置1118作为显示装置工作时的处理步骤加以说明。图23和图24的步骤在控制部1110的控制之下执行。
首先,在步骤S901中,通过用户指示处理部1109输入表示用户要求显示的电子数据1100的用户指示1121,并指定该电子数据1100。
在步骤S902中,输入部1104对记录介质1117进行检索,对于步骤S901指定的电子数据1100,判定在记录介质1117中仅存放指定的电子数据1100还是存放与指定的电子数据1100对应的文本数据1101、标签出现位置数据1102以及标签详细数据1103这3个数据。检索结果如果是判定为仅存放了期望的电子数据1100,控制部1110使处理进至步骤S903,而若存在对应的文本数据1101、标签出现位置数据1102以及标签详细数据1103,则使处理进至步骤S904。
在步骤S903中,从记录介质1117中读出指定的电子数据1100,针对读出的电子数据1100,生成文本数据1101、标签出现位置数据1102以及标签详细数据1103。此后,使处理进至步骤S904。步骤S903的详细情况将在后文描述。
在步骤S904中,从记录介质1117中检索出与被指定的电子数据1100对应的标签出现位置数据1102之后通过输入部1104读出。
在步骤S906中,从与被指定的电子数据1100对应的记录介质1117的文本数据1101中仅确定出作为处理对象的任意的部分数据并通过输入部1104读出。具体地,在步骤S901中,根据输入的用户指示1121确定并读入处理对象的文本数据部分。例如,若用户指定的电子数据1100是首次进行显示处理,则从该数据的开头起进行读入。或者,若是以前进行过显示处理的电子数据1100,则将表示上次显示处理中的最终显示位置的信息预先记录到数据处理装置1118的规定存储区域,从所记录的最终显示位置信息表示的位置起读入数据。或者,若在数据处理装置1118中预先备有跳页功能之类的功能,则在根据用户指示1121发出显示期望的电子数据1100的任意位置的指示后,能够采用跳页功能从与指定的电子数据1100的指定位置相应的位置起读入数据。
在步骤S907中,根据由S906确定并从文本数据1101中读入的处理对象的部分数据,通过输入部1104从记录介质1117的标签详细数据1103中读入对应的部分数据。在步骤S907中,利用标签出现位置数据1102是固定长度数据的这一点,能够高效地从标签详细数据1103中读出要处理的标签的属性信息。具体地,若将表示标签的属性的信息归纳起来并用可变长度数据进行记录而不是分解成标签出现位置数据1102和标签详细数据1103,则必须从标签属性信息的开头起对所有的标签属性信息判定是否为所要求的数据。具体地,若将表示标签的属性的信息归纳起来并用可变长度数据进行记录而不是分解成标签出现位置数据1102和标签详细数据1103,则必须从标签属性信息的开头起对所有的标签属性信息判定是否为所要求的数据。另一方面,在本实施方式中,由于将标签的属性的信息分解成标签出现位置数据1102和标签详细数据1103进行记录,并且标签出现位置数据1102是固定长度数据,因此,参照标签出现位置数据1102,能够容易地确定所要求的数据位于标签详细数据1103的第几个字节,根据确定结果直接访问标签详细数据1103就能够读出所要求的数据。
在步骤S909中,利用布局计算部1107计算用于显示的布局。按照下述步骤计算布局。
首先,根据按照用户指示1121确定的文本数据1101的显示开始位置、以及在标签出现位置数据1102中的各标签的文本数据出现开始位置/结束位置的数据,确定与文本数据1101的要显示的部分数据相关的1个以上的标签。其次,对于所确定的各标签,从标签出现位置数据1102读出相应的标签详细数据存放开始位置/结束位置的数据,根据读出的数据,通过检索标签详细数据1103以读出与该标签对应的标签详细数据1401。
接着,从相应的标签的文本数据出现开始位置起直到结束位置为止,根据按照上述步骤所读出的标签详细数据1401,从显示开始位置起依次将文本数据1101布置到未图示的预定存储区域。在步骤S910中,根据步骤S909的布局计算结果即预定存储区域的内容,由显示部1108显示文本数据1101。
在步骤S911中,等待用户通过用户指示处理部1109输入指示1121。处理在步骤S911等待,直到用户输入指示1121。用户输入了显示处理结束的指示1121后,图23的显示处理结束。当用户发出向下一页或前一页滚动的上下滚动指示1121后,处理返回到步骤S906,此后,对文本数据1101的被指定的滚动目标的任意区域的部分数据进行相同的处理。
参照图24的流程图对图23的步骤S903的文本数据1101、标签出现位置数据1102以及标签详细数据1103的生成处理的步骤加以说明。图中,[文本]表示文本数据1101,[标签出现]表示标签出现位置数据1102,[标签详细]表示标签详细数据1103。图中的[标签信息]是指根据电子数据1100生成文本数据1101、标签出现位置数据1102以及标签详细数据1103而暂时预先存储在数据处理装置1118内的未图示的存储区域中的信息。[标签信息]是表示1个以上的标签的每一个的标签名和记录位置的信息,其中,上述记录位置是指表示该标签的文本数据出现结束位置的数据1308在标签出现位置数据1102中的记录位置。
首先,在步骤S921中,通过输入部1104从记录介质1117中读出被指定的所要求的电子数据1100,使处理进至步骤S922。
在步骤S922以后的处理中,若由数据结构分析部1105对读出的电子数据1100进行分析,则此后,文本数据生成部1111、标签出现位置数据生成部1112以及标签详细数据生成部1113分别生成文本数据1101、标签出现位置数据1102以及标签详细数据1103,与记录介质1117的被指定的所要求的电子数据1100关联地存放所生成的这些数据。以下对其步骤加以说明。
首先,在步骤S922中,为了生成上述的各数据,将必需的[标签信息]区域初始化,此后,使处理进至步骤S923。
在步骤S923中,将表示文本数据文件名、标签详细数据文件名以及标签个数的数据1302~1304记录到标签出现位置数据1102中,此后,使处理进至步骤S924。作为标签个数的数据1304,此时记录初始值‘0’。
在步骤S924以后的处理中,从开头起以元素为单位对步骤S921中读入的电子数据1100依次进行处理。
在步骤S924中,从电子数据1100的开头起进行检索以判定有无字符串或者标签等的元素。若没有元素,则一直处理到电子数据1100的最后的元素,在步骤S934中,将用于表示已经没有元素的数据存放到记录介质1117后,结束图24的数据生成处理,返回原来图23的处理。此外,也可以跳过步骤S834的处理而结束数据生成处理。另一方面,若存在元素,使处理进至步骤S925。
在步骤S925中,判定元素的类型。当判定结果为元素是开始标签或者空标签时,使处理进至步骤S926;若元素是结束标签,则使处理进至步骤S930;若元素是字符串,则使处理进至步骤S933。
在步骤S926中,将该元素标签的标签位置数据1305记录到标签出现位置数据1102中。
具体地,由于该元素是标签,因此,将数据1304表示的标签个数加1。
接着,对于该标签进行分析以判断是开始标签还是空标签,根据分析结果取得标签名,记录所取得的标签名作为该标签用的标签位置数据1305的数据1306。然后,记录数据1307,其中,该数据1307将当前时刻的文本数据1101的写入最终位置作为文本数据出现开始位置。若元素是空标签,则记录数据1308,其中,该数据1308将与数据1307相同的值作为文本数据出现结束位置。进一步,记录数据1309,使处理进至步骤S927,其中,该数据1309将当前时刻的标签详细数据1103的写入最终位置作为标签详细数据存放开始位置。
在步骤S927中,在应暂时预先存储的[标签信息]中,追加由步骤S926取得的标签名和在标签出现位置数据1102中的相应的标签的[文本数据出现结束位置]的数据1308的存放位置信息,使处理进至步骤S928。
在步骤S928中,分析标签是开始标签还是结束标签,根据分析结果,取得该标签的属性个数、属性名以及属性值,将取得的上述内容作为该标签的标签详细数据1401的数据1402以及数据1403记录到标签详细数据1103中,使处理进至步骤S929。
在步骤S929中,在标签出现位置数据1102中记录当前时刻的标签详细数据1103的写入最终位置作为标签详细数据存放结束位置的数据1310。对于该元素的处理到此结束,处理返回到步骤S924,对下一元素进行处理。
在步骤S930中,对结束标签进行分析,根据分析结果,从暂时存储的[标签信息]中取得该标签的标签名和[文本数据出现结束位置]的存放位置这样的信息,使处理进至步骤S931。
在步骤S931中,在与步骤S930取得的信息表示的标签出现位置数据1102的存放位置相对应的标签位置数据1305中记录数据1308并使处理进至步骤S932,其中,上述数据1308将当前时刻的文本数据1101的写入最终位置作为文本数据出现结束位置。
在步骤S932中,从暂时存储的[标签信息]中删除相应的标签的信息。对该元素的处理至此结束,处理返回到步骤S924,对下一元素进行处理。
在步骤S933中,将元素的字符串记录到文本数据1101中。
对该元素的处理至此结束,处理返回到步骤S924,对下一元素进行处理。
若对于电子数据1100中的所有的元素进行上述处理,就完成了该电子数据1100的文本数据1101、标签出现位置数据1102以及标签详细数据1103的生成,因此,在步骤S934中,将生成的这些数据与该电子数据1100关联起来存放到记录介质1117中,结束这一系列的处理,返回到原来的图23的处理。
此外,在该实施方式中,以电子数据1100是XHTML文档时的情形为例进行了说明,但并不限于XHTML文档。例如,对于用XML(可扩展标记语言)等记录的具有层次结构的电子数据1100,也能够进行相同的处理。
借助于本第3实施方式,采用根据存储器容量构成的固定长度的标签出现位置数据1102进行处理,能够高效地仅读入文本数据1101以及标签详细数据1103各自的一部分的数据,因此,能够高速地、且用小容量的存储器实现数据处理。在可预备的存储器容量小的情况下,本实施方式尤其能发挥较大的效果。具体地,当标签信息数据是可变长度而并没有分解成标签出现位置数据1102和标签详细数据1103的情况下,标签信息数据量恐怕会超过存储器容量。在本第3实施方式3,仅由固定长度数据构成标签出现位置数据1102,由此,能够根据记录介质1117的可记录容量等来估计能记录标签信息的最大容量,由此,能够预先生成不会超过该可记录容量的标签出现位置数据1102的结构。
另外,借助于本实施方式,采用对应的文本数据1101、标签出现位置数据1102、标签详细数据1103这样的个别准备的数据,对具有层次结构的电子数据1100进行数据处理,能够省略有关于判定处理对象的数据是标签部分还是文本部分的处理,此外能够减少所需要的存储器,能够实现处理的高速化和减少消耗的存储器容量。
(数据的变形例)
在上述实施方式中,在标签出现位置数据1102中记录标签名本身作为标签名的数据1306,但也可以取而代之记录能够唯一地识别标签名的识别序号。
在这种情况下,另外需要记录标签名和识别序号的对应关系的标签识别信息数据。
同样地,在标签详细数据1103中,记录属性名本身作为属性名的数据AN,但也可以取而代之记录能够唯一地识别属性名的识别序号。在这种情况下,另外需要记录属性名和识别序号的对应关系的属性识别信息数据。
另外,在本实施方式中,针对所要求的电子数据1100的全体生成文本数据1101、标签出现位置数据1102以及标签详细数据1103,但生成的对象并不限定于电子数据1100的全体。
即,也可以针对电子数据1100的用户所要求的任意的部分数据生成文本数据1101、标签出现位置数据1102以及标签详细数据1103。
[第4实施方式]
通过由计算机执行描述该数据处理步骤的程序,来执行上述各实施方式所示的数据处理功能。这样的计算机的结构实例如图25所示。
参照25,计算机包括:与显示装置110及511、显示部1108对应的由CRT(阴极射线管)、液晶等构成的监视器143;对应于指示输入部190、510、210、611以及用户指示处理部1109的键盘150、鼠标160、书写板170;对应于控制部108、209、509、610及1110的用于集中控制该计算机主机的CPU(中央处理装置的简称)122;可对应于数据存储部104、205、504、605以及记录介质1117的包含ROM或RAM(随即存储器的简称)而构成的存储器124;可对应于记录介质1117的固定盘126;拆装自由地装载FD132并且对装载的FD132进行访问的FD驱动装置130;拆装自由地装载CD-ROM142并且访问装载的CD-ROM142的CD-ROM驱动装置140;因特网等的通信网络182;以及用于将该计算机进行通信连接的通信接口180。通过总线通信连接上述的各部分。FD132或CD-ROM142可对应于记录介质1117。
固定盘126或FD132或CD-ROM142对应于记录介质112、212、513、613。通信网络182对应于网络111、211、512、612以及1115。
计算机中也可以设置可拆装地安装了卡式磁带的用来访问卡式磁带的磁带装置。
将用来使上述计算机执行上述的数据处理方法的程序存放在计算机可读取的记录介质中。在本实施方式中,该记录介质是由图25所示的计算机进行处理所必须的存储器、例如存储器124之类的存储器,也可以是存储器媒体,作为外部存储装置,也可以通过设置未图示的磁带装置以及CD-ROM驱动装置140等的程序读入装置并且在其中装载作为存储媒体的磁带或CD-ROM142而可读取的程序媒体。无论哪种情况,所保存的程序既可以是由CPU122访问执行,也可以是在任何一种情况下一旦读出程序,所读出的程序装载到图25的计算机的预定程序存储区域,例如存储器124的RAM的预定区域,由CPU122读出并执行。假定该用于加载的计算机程序预先保存在该计算机中。
这里,上述的程序媒体是与计算机主机可分离的记录介质,也可以是固定地载有程序的媒体。例如,可以是磁带或盒式带等的带式系列;FD132或固定盘126等的磁盘或CD-ROM142/MO(MagneticOptical Disc:磁光盘)/MD(Mini Disc:小型盘)/DVD(DigitalVersatile Disc:数字多功能光盘)等的光盘的盘片系列;IC卡(包含存储器卡)/光卡等的卡系列;或者掩模只读存储器(Mask ROM)、EPROM(Erasable and Programmable ROM;可擦可编程只读存储器)、EEPROM(Electrically EPROM;电可擦除只读存储器)、快闪只读存储器(Flash ROM)等的半导体存储器等。
另外,也可以是流动性持有程序的媒体。即,图25的计算机采用通过包含因特网在内的通信网络182以及通信接口180能够进行连接的结构,因此,也可以是从通信网络182下载程序的记录介质。在下载程序的情况下,可以将下载用程序预先存放在该计算机主机内或者将下载用程序从其他记录介质安装到该计算机主机内。
此外,存放在记录介质中的内容并不限定于程序,也可以是数据。
应该认为,这里公开的各实施方式在各个方面都只是示例,并不具有限制性。本发明的权利要求不是上述说明,而是由权利要求书示出,并包含权利要求书的均等意义以及权利要求范围内的所有变化。

Claims (17)

1.一种数据处理装置,其特征在于,
具备:
分析单元(105),受理具有按照文档描述语言的定义描述的层次结构的数据(300),并对上述层次结构进行分析;以及
变换单元(106),根据由上述分析单元(105)所得的分析结果,将上述数据变换成消除了上述层次结构的数据(400),
具有上述层次结构的数据(300)包含多个标签对,上述标签对指示由该标签对包围的部分数据的属性的信息,
上述变换单元(106),利用包围该部分数据的上述标签对的属性信息,对与在上述部分数据中包围该部分数据的上述标签对指示相同类型的属性的其他标签对的属性信息进行变换。
2.如权利要求1所述的数据处理装置,其特征在于,
上述变换单元(106)进行变换省略掉变换后的数据中不需要的信息。
3.如权利要求1所述的数据处理装置,其特征在于,
进一步还具备布局计算单元(207),用来针对通过上述变换单元(106)的变换所得的消除了上述层次结构的数据(400)计算用于输出的布局。
4.如权利要求1所述的数据处理装置,其特征在于,
进一步还具备将具有上述层次结构的数据(300)分割成多个块的分割单元(505),
上述分析单元(105)按照由上述分割单元分割的每一个块受理数据并进行分析。
5.一种数据处理方法,其特征在于,
具备:
分析步骤(S1002),针对具有按照文档描述语言的定义描述的层次结构并且存放在预先准备好的记录区域中的数据(300),分析上述层次结构;以及
变换步骤(S1004),根据上述分析步骤(S1002)所得的分析结果,将存储在上述记录区域中的上述数据(300)变换成消除了上述层次结构的数据(400),
具有上述层次结构的数据(300)包含多个标签对,上述标签对指示由该标签对包围的部分数据的属性的信息,
在上述变换步骤(S1004),利用包围该部分数据的上述标签对的属性信息,对与在上述部分数据中包围该部分数据的上述标签对指示相同类型的属性的其他标签对的属性信息进行变换。
6.一种数据处理装置(1118),其特征在于,
是处理电子数据(1100)的数据处理装置(1118),其中,上述电子数据(1100)包含文本数据和在上述文本数据中出现的多个标签,并且采用上述多个标签构成层次结构,具备:
输入单元(1104),输入记录有上述文本数据的文本信息(1101)、与上述多个标签的每一个对应地记录表示该标签的属性的属性数据的标签详细信息(1103)、以及记录有对于上述多个标签的每一个表示该标签在上述文本数据中的出现位置的出现位置数据的标签出现位置信息(1102);
文本读出单元,从由上述输入单元(1104)输入的上述文本信息(1101)中,读出与上述电子数据(1100)的处理对象的任意区域对应的上述文本数据;
属性读出单元,根据由上述输入单元(1104)输入的上述标签出现位置信息(1102),确定在与上述任意区域对应的上述文本数据中出现的上述标签,从由上述输入单元(1104)输入的上述标签详细信息(1103)中读出上述所确定的上述标签的上述属性数据;以及
处理单元(1106),根据由上述属性读出单元读出的上述属性数据,处理由上述文本读出单元读出的上述文本数据。
7.如权利要求6所述的数据处理装置(1118),其特征在于,
上述出现位置数据是固定长度的数据。
8.如权利要求6所述的数据处理装置(1118),其特征在于,
上述出现位置数据包含:表示上述文本数据中的该标签的有效范围的有效范围数据和表示在上述标签详细信息(1103)中记录该标签的上述属性数据的位置的记录位置数据;
上述属性读出单元根据上述有效范围数据确定与上述任意区域相应的标签,根据所确定的上述标签的上述记录位置数据,从上述标签详细信息(1103)中读出该标签的上述属性数据。
9.如权利要求8所述的数据处理装置(1118),其特征在于,
上述有效范围数据表示上述文本数据中该标签的属性有效的部分的数据的开始位置和结束位置。
10.如权利要求8所述的数据处理装置(1118),其特征在于,
上述有效范围数据表示上述文本数据中该标签的属性有效的部分的数据的开始位置和该部分数据的大小。
11.如权利要求8所述的数据处理装置(1118),其特征在于,
上述记录位置数据表示在上述标签详细信息(1103)中该标签的上述属性数据的记录开始位置和结束位置。
12.如权利要求8所述的数据处理装置(1118),其特征在于,
上述记录位置数据表示在上述标签详细信息(1103)中该标签的上述属性数据的记录开始位置和该属性数据的大小。
13.如权利要求6所述的数据处理装置(1118),其特征在于,
上述处理单元(1106)具有布局计算单元(1107),上述布局计算单元(1107)针对由上述文本读出单元读出的上述文本数据,根据上述属性读出单元读出的上述属性数据计算布局。
14.如权利要求6所述的数据处理装置(1118),其特征在于,
具备下述单元中的至少一个,即:
文本信息生成单元(1111),对上述电子数据(1100)进行检索,提取上述文本数据并进行记录,生成上述文本信息(1101);
标签详细信息生成单元(1113),对上述电子数据(1100)进行检索并在每次检索到上述标签时,与该标签对应地记录上述属性数据,生成上述标签详细信息(1103);以及
标签出现位置信息生成单元(1112),对上述电子数据(1100)进行检索并在每次检索到上述标签时,与该标签对应地记录上述出现位置数据并生成上述标签出现位置信息(1102)。
15.如权利要求14所述的数据处理装置(1118),其特征在于,
上述文本信息生成单元(1111)对上述电子数据(1100)的上述任意区域进行检索,提取上述文本数据并进行记录,生成上述文本信息(1101);
上述标签详细信息生成单元(1113)对上述电子数据(1100)的上述任意区域进行检索并在每次检索到上述标签时,与该标签对应地记录上述属性数据并生成上述标签详细信息(1103),
上述标签位置信息生成单元(1112)对上述电子数据(1100)的上述任意区域进行检索并在每次检索到上述标签时,与该标签对应地记录上述出现位置数据并生成上述标签出现位置信息(1102)。
16.如权利要求6所述的数据处理装置(1118),其特征在于,
进一步具备判断是否可由上述输入单元(1104)输入用于上述电子数据(1100)的上述文本信息(1101)、上述标签出现位置信息(1102)以及上述标签详细信息(1103)的单元。
17.一种数据处理方法,其特征在于,是处理电子数据(1100)的数据处理方法,其中,上述电子数据包含文本数据和在上述文本数据中出现的多个标签,并且采用上述多个标签构成层次结构,具备:
输入步骤,输入记录有上述文本数据的文本信息(1101)、与上述多个标签的每一个对应地记录有表示该标签的属性的属性数据的标签详细信息(1103)、以及记录有对于上述多个标签的每一个表示该标签在上述文本数据中的出现位置的出现位置数据的标签出现位置信息(1102);
文本读出步骤(S906),从由上述输入步骤输入的上述文本信息(1101)中,读出与上述电子数据(1100)的处理对象的任意区域对应的上述文本数据;
属性读出步骤(S907),根据由上述输入步骤输入的上述标签出现位置信息(1102),确定在与上述任意区域对应的上述文本数据中出现的上述标签,从由上述输入步骤输入的上述标签详细信息(1103)中读出上述所确定的上述标签的上述属性数据;以及
处理步骤(S909、S910),根据在上述属性读出步骤(S906)中读出的上述属性数据,处理由上述文本读出步骤(S906)读出的上述文本数据。
CNB2004800210964A 2003-05-22 2004-05-14 数据处理装置及数据处理方法 Expired - Fee Related CN100385439C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2003145310A JP4184155B2 (ja) 2003-05-22 2003-05-22 データ処理装置、データ処理方法、データ処理プログラム、およびデータ処理プログラムを記録したコンピュータ読取可能な記録媒体
JP145310/2003 2003-05-22
JP152096/2003 2003-05-29

Publications (2)

Publication Number Publication Date
CN1826595A CN1826595A (zh) 2006-08-30
CN100385439C true CN100385439C (zh) 2008-04-30

Family

ID=33532526

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004800210964A Expired - Fee Related CN100385439C (zh) 2003-05-22 2004-05-14 数据处理装置及数据处理方法

Country Status (2)

Country Link
JP (1) JP4184155B2 (zh)
CN (1) CN100385439C (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4314238B2 (ja) 2005-11-18 2009-08-12 キヤノン株式会社 情報処理装置、方法、及びコンピュータプログラム
JP4899476B2 (ja) * 2005-12-28 2012-03-21 富士通株式会社 分割プログラム、連結プログラム、情報処理方法
CN104252440B (zh) * 2013-10-08 2017-05-17 深圳市华傲数据技术有限公司 一种单元格字体处理方法和装置
DE112015005924T5 (de) * 2015-02-27 2017-10-19 Mitsubishi Electric Corporation Datenbearbeitungsvorrichtung, Datenbearbeitungsverfahren und Datenbearbeitungsprogramm

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000339312A (ja) * 1999-05-31 2000-12-08 Toshiba Corp 文書編集システム及びタグ情報管理テーブル作成方法
JP2001195391A (ja) * 2000-01-14 2001-07-19 Nec Information Service Ltd フォーマット変換・ページ分割中継サーバ
JP2002117020A (ja) * 2000-10-11 2002-04-19 Nec Corp データ格納装置及び方法
JP2002297569A (ja) * 2001-03-30 2002-10-11 Fujitsu Ltd 構造化文書変換装置及びクエリー変換装置
JP2003502735A (ja) * 1999-06-15 2003-01-21 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 文字ベースのドキュメント及びファイルにおける属性データの不可視符号化

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000339312A (ja) * 1999-05-31 2000-12-08 Toshiba Corp 文書編集システム及びタグ情報管理テーブル作成方法
JP2003502735A (ja) * 1999-06-15 2003-01-21 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 文字ベースのドキュメント及びファイルにおける属性データの不可視符号化
JP2001195391A (ja) * 2000-01-14 2001-07-19 Nec Information Service Ltd フォーマット変換・ページ分割中継サーバ
JP2002117020A (ja) * 2000-10-11 2002-04-19 Nec Corp データ格納装置及び方法
JP2002297569A (ja) * 2001-03-30 2002-10-11 Fujitsu Ltd 構造化文書変換装置及びクエリー変換装置

Also Published As

Publication number Publication date
JP4184155B2 (ja) 2008-11-19
CN1826595A (zh) 2006-08-30
JP2004348480A (ja) 2004-12-09

Similar Documents

Publication Publication Date Title
CN111753500B (zh) 版式化后的电子表单与ofd合并展现及目录生成的方法
US7617450B2 (en) Method, system, and computer-readable medium for creating, inserting, and reusing document parts in an electronic document
US10671251B2 (en) Interactive eReader interface generation based on synchronization of textual and audial descriptors
US20190213216A1 (en) Method and device for generating article
CN103329122B (zh) 使用多个表示的文档存储
CN101916245B (zh) 一种电子阅读器上电子书批注实现方法和装置
KR100324456B1 (ko) 구조화문서검색표시방법및장치
US5119465A (en) System for selectively converting plurality of source data structures through corresponding source intermediate structures, and target intermediate structures into selected target structure
CN110738037B (zh) 用于自动生成电子表格的方法、装置、设备及存储介质
CN100447779C (zh) 文档信息处理设备及文档信息处理方法
CN101167075B (zh) 专有表现抽取装置、方法以及程序
EP0810534A2 (en) Document display system and electronic dictionary
JPWO2005096173A1 (ja) 電子化サービスマニュアル生成方法、付加データ生成方法
KR20100074155A (ko) 폼으로서 테이블의 자동 발생 및 배포
EP1830275A1 (en) Information distribution system
US20130290837A1 (en) Method and Apparatus for Correcting Document Formatting Based on Source Document
EP1126379A1 (en) Conversion of directly assigned document format attributes
AU2015331030A1 (en) System generator module for electronic document and electronic file
CN113360619A (zh) 一种表单生成方法、装置、设备及介质
US9619445B1 (en) Conversion of content to formats suitable for digital distributions thereof
US20180341638A1 (en) Providing suggested diagrammatic representations of user entered textual information
CN100385439C (zh) 数据处理装置及数据处理方法
CN113297856A (zh) 文档翻译方法、装置及电子设备
US20060248443A1 (en) System and method for exporting spreadsheet data
CN112818687B (zh) 一种用于构建标题识别模型的方法、装置、电子设备以及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080430

Termination date: 20160514

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