WO2004104857A1 - データ処理装置、データ処理方法、データ処理プログラム、およびデータ処理プログラムを記録したコンピュータ読取可能な記録媒体 - Google Patents

データ処理装置、データ処理方法、データ処理プログラム、およびデータ処理プログラムを記録したコンピュータ読取可能な記録媒体 Download PDF

Info

Publication number
WO2004104857A1
WO2004104857A1 PCT/JP2004/006924 JP2004006924W WO2004104857A1 WO 2004104857 A1 WO2004104857 A1 WO 2004104857A1 JP 2004006924 W JP2004006924 W JP 2004006924W WO 2004104857 A1 WO2004104857 A1 WO 2004104857A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
tag
text
attribute
information
Prior art date
Application number
PCT/JP2004/006924
Other languages
English (en)
French (fr)
Inventor
Tomoo Mitsutomi
Motohiro Kadowaki
Yoshihiro Kitamura
Keisuke Iwasaki
Yuji Sawada
Original Assignee
Sharp Kabushiki Kaisha
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
Priority claimed from JP2003145310A external-priority patent/JP4184155B2/ja
Priority claimed from JP2003152096A external-priority patent/JP4173770B2/ja
Application filed by Sharp Kabushiki Kaisha filed Critical Sharp Kabushiki Kaisha
Priority to EP04733166A priority Critical patent/EP1628227A4/en
Publication of WO2004104857A1 publication Critical patent/WO2004104857A1/ja

Links

Classifications

    • 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
    • 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/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • 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/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]

Definitions

  • the present invention relates to a processing device, a processing method, a processing program, and a computer-readable recording medium storing a processing program for data having a hierarchical structure described in accordance with the definition of a document description language.
  • the present invention relates to a data processing device, a data processing method, a data processing program, and a computer-readable recording medium on which a data processing program is recorded for facilitating the handling of data having the above.
  • SGML Standard Generalized Mark-up Language
  • is a data format that is structured data for performing predetermined processing according to the definition of the document description language, and is used to record a structured document having a hierarchical structure.
  • XML extensible Markup Language
  • HTML HyperText Markup Language
  • XML has been actively used in recent years for electronic documents and electronic data exchanged on the Internet.
  • the DOM format is a processing method that reads all the target electronic data, grasps the hierarchical structure of all elements in the read electronic data, and then accesses each element of the electronic data. For example, if there is electronic data having a hierarchical structure as shown in FIG. 26, the entire electronic data is read, and the hierarchical structure of all elements is analyzed. Figure 26 shows the electronic data Only the hierarchical structure of data is shown, and the text and contents are omitted. Then, after creating a tree structure as shown in Fig. 27 from the electronic data having the hierarchical structure shown in Fig. 26, each element (TITLE, AU THOR, etc.) is accessed. Therefore, since the electronic data is processed after the hierarchical structure is grasped, any element can be easily accessed.
  • the SAX format is a processing method in which data is read in order from the beginning and the structure of only the read elements is analyzed. Therefore, sequential processing can be performed without waiting for the analysis of the entire data, and there is little overhead in terms of processing speed and memory capacity.
  • the DOM format requires analysis of the entire data structure in order to generate a tree structure, even when only a part of the data is to be processed, resulting in waste of processing. There is. Furthermore, when the size of the data increases, the processing time for generating the tree structure increases, and the memory used for storing the tree structure increases.
  • the problem common to both is that in structured documents, there are tags that need to specify the scope of effect, so it is necessary to analyze several layers of hierarchical structure, and the analysis process takes time. .
  • the process of analyzing the hierarchical structure imposes a load on the display process, and as a result, a delay occurs before display.
  • the electronic data is converted to text data that records only the contents to be displayed, excluding tag information, and its text.
  • Tag information for example, information such as tag name, attribute name, attribute value, and the appearance position of the tag in the text data
  • a method of shortening the processing time by combining and processing is conceivable.
  • the tag information recorded in the tag data varies in the type and number of attributes depending on the type of the tag, and varies in size. Therefore, a variable length area or a fixed length area having a sufficiently large size is required for the tag data. Need to secure. Therefore, by converting the electronic data into text data and tag data, there is no need to determine whether the data is a tag part or a text part. Since tag data must be read from the beginning and subjected to structural analysis, sufficient effects cannot be obtained. Disclosure of the invention
  • An object of the present invention is to provide a data processing device, a data processing method, a data processing program, and a computer-readable recording medium on which a data processing program is recorded so as to process data having a hierarchical structure so as to be easily handled. It is to be.
  • a data processing device includes an analyzing unit that receives data having a hierarchical structure described according to a definition of a document description language, and analyzes the hierarchical structure; Conversion means for converting data into data in which the hierarchical structure has been eliminated based on the analysis result by the means.
  • the hierarchical structure can be analyzed, the hierarchical structure can be resolved based on the analysis result, and the data can be converted into data having no hierarchical structure.
  • the data having the above-mentioned hierarchical structure is output for display or the like, if the data is converted into data having no hierarchical structure as described above and then output, the analysis of the hierarchical structure is omitted in the output processing.
  • Data handling becomes easier.
  • the data can be output at high speed, and the analyzed hierarchical structure does not need to be stored for output, so that the amount of storage capacity required for data output can be reduced.
  • the data having a hierarchical structure includes a plurality of tag pairs, and each tag pair indicates attribute information of partial data surrounded by the tag pair.
  • the conversion means includes the attribute information of the other tag pair and the tag surrounding the partial data. Conversion is performed using the attribute information of the pair.
  • the data conversion means determines the attribute of the other tag pair.
  • the information is converted using attribute information of a tag pair surrounding the partial data.
  • the attribute information of the tag pair in the upper layer can be reflected in the attribute information of a certain tag pair. Can be converted to data that does not exist.
  • the conversion means performs conversion so as to omit unnecessary information in the converted data. Therefore, the storage capacity required for the converted data can be reduced.
  • a rate calculating means for calculating a rate for output with respect to the data in which the hierarchical structure obtained by the conversion means has been eliminated.
  • the apparatus further comprises a dividing means for dividing data having a hierarchical structure described according to the definition of the document description language into a plurality of blocks.
  • the analysis means receives and analyzes data for each block obtained by the division by the division means.
  • the analyzing means does not need to analyze all of the target data from the beginning, and can analyze the data in arbitrary block units. As a result, the load of the analysis processing can be reduced. Further, since the storage area for the analysis means only needs to have a size in block units, the capacity of the storage area consumed can be reduced.
  • the attribute information described above may include output mode information for specifying the output mode of the partial data. Les ,.
  • This output mode information may include indent information of the partial data, or may include color information for outputting the partial data.
  • the size of the data for each block described above may be determined based on the processing capability of an output device prepared in advance for outputting data.
  • a data processing method includes a method for processing a data stored in a previously prepared recording area having a hierarchical structure described in accordance with the definition of a document description language.
  • a data processing program is a program for causing a computer to execute the above-described data processing method, and the above-described recording area is associated with the computer. Provided.
  • a computer-readable recording medium has the above-mentioned data processing program recorded thereon.
  • electronic data that includes text data and a plurality of tags that appear in the text data and that has a hierarchical structure using the tags are processed.
  • a data processing device is provided.
  • the data processing device includes: text information in which text data is recorded; tag detailed information in which attribute data indicating an attribute of the tag is recorded corresponding to each of the plurality of tags; Input means for inputting tag appearance position information that records appearance position data indicating the appearance position in the text data of the electronic device, and text information input by the input means to an arbitrary area to be processed by electronic data.
  • a tag that appears in the text data corresponding to the arbitrary area is specified based on the tag appearance position information input by the text reading unit that reads the corresponding text data, and the tag details input by the input unit.
  • Attribute reading means for reading attribute data of the specified tag from the information; and text reading means for reading the text by text reading means. Strike data, and processing means for processing based on the read-out attribute data by the attribute reading unit.
  • the electronic data is converted into text information and tag appearance positions.
  • Data processing is performed using separately prepared information such as information and detailed tag information, so that processing for determining whether the data to be processed is a tag part or a text part can be omitted, and data processing can be performed at high speed it can.
  • tag appearance position information is prepared separately from the electronic data, it is not necessary to individually analyze the tree structure (hierarchical structure) of the tags of the electronic data in order to specify the tag appearance position.
  • the tree structure creation processing can be omitted, and the memory capacity for constructing the tree structure can also be omitted.
  • the tag that appears at the arbitrary position can be easily identified by searching the tag appearance position data. Data can be quickly read out from the 'detailed tag information'. As a result, processing of electronic data with a hierarchical structure can be simplified and speeded up.
  • the appearance position data recorded in the tag appearance position information is fixed-length data. Therefore, each occurrence position data in the tag appearance position information can be searched based on the fixed length, and the search can be performed efficiently.
  • the appearance position data includes effective range data indicating the effective range of the tag in the text data, and recording location data indicating the location where the attribute data of the tag is recorded in the detailed tag information.
  • the attribute reading means specifies the tag corresponding to the arbitrary area based on the effective range data, and reads the attribute data of the tag from the detailed tag information based on the recording location data of the specified tag.
  • tags appearing in the text data of an arbitrary area can be easily specified based on the effective range data. Also, the recording position in the detailed tag information of the attribute data of the identified tag can be easily identified and read out based on the recording location data.
  • the processing means has a layout calculating means for calculating a layout of the text data read by the text reading means based on the attribute data read by the attribute reading means.
  • the layout calculating means calculates a layout at the time of outputting the text data read by the text reading means.
  • One form of this output includes a display.
  • the effective range data indicates a start position and an end position of data of a portion of the text data where the attribute of the tag is valid. Therefore, the effective range data can be indicated by the start and end locations of the data.
  • the effective range data indicates a start position of data of a portion of the text data where the attribute of the tag is valid, and a size of the partial data. Therefore, the effective range data can be specified by the start position of the data and the size (size) of the data.
  • the recording location data indicates a recording start location and an end location of attribute data of the tag in the detailed tag information. Therefore, the recording location data can be indicated by the recording start location and the end location of the corresponding attribute data.
  • the recording location data indicates a recording start location of the attribute data of the tag in the detailed tag information and a size of the attribute data. Therefore, the recording location data can be specified by the recording start location of the attribute data and the size of the data.
  • text information generating means for searching the electronic data to extract and record the text data to create text information, and each time a tag is searched by searching the electronic data, attribute data corresponding to the tag is retrieved.
  • Tag information generating means for recording tag information and generating tag detailed information, and a tag for recording appearance position data corresponding to the tag and generating tag appearance position information every time a tag is searched by searching electronic data. At least one of means for generating appearance position information is further provided.
  • the data processing device can create text information, tag detailed information, and tag appearance position information for electronic data.
  • the text information creating means searches an arbitrary area of the electronic data, extracts and records the text data, and creates text information.
  • the tag detailed information creating means records attribute data corresponding to the tag and creates tag detailed information.
  • the tag position information creating means is configured to generate appearance position data corresponding to the tag. Is recorded and tag appearance position information is created.
  • the data processing device further includes a unit that determines whether text information, tag appearance position information, and tag detailed information for electronic data can be input by the input unit. -Therefore, it is possible to determine whether or not these data can be input by the input means before data processing. The data may be created when the result of the determination indicates that input is not possible.
  • a method for processing hierarchically structured electronic data including text data and a plurality of tags appearing in the text data, and using the tags.
  • the data processing method includes: text information in which text data is recorded; tag detailed information in which attribute data indicating an attribute of the tag is recorded corresponding to each of a plurality of tags; and text information of the tag for each of the plurality of tags.
  • the above data processing method is executed in a computer
  • the input step is executed through an input unit associated with the computer
  • the text reading step and the attribute reading step are executed through an information processing unit associated with the computer.
  • the processing steps are executed.
  • the program is a program for causing a computer to execute the above-described data processing method.
  • a recording medium is a computer-readable recording medium recording the above-described data processing program.
  • FIGS. 1A and 1B are diagrams for explaining the outline of the procedure for converting a structured document according to the first embodiment. .
  • FIG. 2 is a diagram showing an example of a block configuration of the data processing device according to the first embodiment of the present invention, together with other devices constituting a data processing system including the data processing device.
  • FIG. 3 is a flowchart of data processing according to the first embodiment of the present invention.
  • FIG. 4 is a flowchart showing a conversion processing procedure of the conversion processing unit in FIG.
  • FIG. 5 is a diagram showing a layout when the XML data of FIG. 1A is displayed by analyzing the hierarchical structure, and a layout when the XML data of FIG. 1B is displayed.
  • FIG. 6 is a diagram showing a configuration example of the display device in FIG. 2 together with other devices constituting a data processing system including the display device.
  • FIG. 7 is a flowchart of a display process performed by the display device according to the first embodiment of the present invention.
  • FIG. 8 is a diagram showing an example of a block configuration of a data processing device according to a second embodiment of the present invention, together with other devices constituting a data processing system including the data processing device.
  • FIG. 9 is a flowchart of data processing according to the second embodiment of the present invention.
  • FIG. 10 is a diagram showing the division points when the XML data of FIG. 1A is divided into several block units.
  • FIG. 11 is a diagram showing that the interpolation processing has been performed on the data of FIG.
  • FIG. 12 is a diagram showing a state after the conversion processing of the data of FIG.
  • FIG. 13 shows an example of the configuration of the display device in FIG. 8 in a data processing system including the display device.
  • FIG. 6 is a diagram showing the system together with other devices.
  • FIG. 14 is a flowchart of the display processing of the display device according to the second embodiment of the present invention. '
  • FIG. 15 is a block diagram of a data processing device according to the third embodiment.
  • FIG. 16 is a diagram illustrating a display device including a portable device, which is an example of the data processing device according to the third embodiment.
  • FIG. 17 is a diagram showing an example of a data structure of tag appearance position data according to the third embodiment.
  • FIG. 18 is a diagram showing an example of a data structure of the tag detail data according to the third embodiment.
  • FIG. 19 is a diagram showing an example of the XHTML document according to the third embodiment.
  • FIGS. 2OA and 20B are diagrams showing an example of text data created from the XHTML document of FIG.
  • FIG. 21 is a diagram showing an example of tag appearance position data created from the XH TML document of FIG.
  • FIG. 22 is a diagram showing an example of the tag detail data created from the XH TML document of FIG.
  • FIG. 23 is a flowchart of data processing according to the third embodiment.
  • FIG. 24 is a flowchart of data processing according to the third embodiment.
  • FIG. 25 is a configuration diagram of a computer for executing the data processing method according to each embodiment. '
  • FIG. 26 is a diagram illustrating an example of conventional electronic data having a hierarchical structure.
  • FIG. 27 is a diagram for explaining a tree structure obtained from conventional electronic data having a hierarchical structure.
  • the tag is a special character or symbol sequence for specifying the output mode of the character string (indent, display color, etc.), and is a reserved word.
  • start tag When analyzing the information of the tag described in the text file, it is divided into a start tag, an end tag that is paired with the start tag, and a child element which is partial data sandwiched between the start tag and the end tag.
  • the start tag must be parsed into a tag name, attribute name and attribute value.
  • the paired start tag and end tag are called a tag pair.
  • the start tag is the part of the character string that starts with “ku” and ends with “>”.
  • the end tag is the part of the character string that starts with “ku /” and ends with “j. If there is no child element between the start tag and end tag, the start tag and end tag are set to 1 One,
  • An empty tag can be thought of as having a start tag and end tag side by side.
  • the child element contains the string or other tag pair that makes up the text file. If the child element includes one or more tag pairs indicating the same type of attribute as the start tag of the tag pair that sandwiches the child element, a tag pair that sandwiches the child element (this is called an external tag pair) And the tag pair contained in the child element (this is referred to as an internal tag pair), a plurality of tag pairs form a nested relationship having a hierarchical structure. The attribute value of the outer tag pair of the layer will be reflected.
  • attribute names attribute types
  • tag names have a one-to-one correspondence for simplicity of explanation.
  • the attribute type is specified by the tag name.
  • the attribute name refers to an attribute at the time of output related to the child element of the start tag, for example, a unique characteristic such as indentation, display color, and the like. Shows red color.
  • the tag name is "a tag”.
  • attribute name is "b attribute”.
  • the value is called "value of b attribute”.
  • FIG. 1A shows XML data 300 having a hierarchical structure before conversion
  • FIG. 1B shows XML data 400 after conversion of the XML data 300.
  • the original hierarchical structure is resolved and does not exist.
  • the XML data 400 is obtained by performing the conversion for each row in order from the top of the XML data 300.
  • the tag information (attribute value) is valid in the range, and this range is called the valid range.
  • the 2 'tag is an empty tag and no valid range is specified.
  • Character string 31 1 "UVWXY” has no tag information, so default is valid. No indentation and black display.
  • the XML data 300 having the hierarchical structure shown in FIG. 1A is obtained by changing the hierarchical structure shown in FIG. 1B without changing the information to be displayed (such as a character string) and the display mode (indentation, display color, and the like). Converted to nonexistent XML data 400.
  • FIG. 2 is a diagram showing an example of a block configuration of the data processing device according to the present embodiment, together with other devices constituting a data processing system including the data processing device.
  • FIG. 3 is a flowchart of the data processing according to the present embodiment.
  • the data processing system includes a network 11, a recording medium 112, a data processing device 113, and a display device 110.
  • the network 111 is connected to a server having a data processing device 113 and a database storing data, or to another personal computer.
  • the data 101 is supplied to the data processing device 113 via the network 111.
  • the recording medium 112 has data 102 recorded thereon in advance and is used to supply data 102 to the data processing device 113.
  • the data processing device 113 includes a network 111 and a recording medium. This is a device for inputting and processing the data 101 and 102 supplied from 112, and outputting the processed data to the outside.
  • the display device 110 receives the information output from the data processing device 113. It is a device for displaying. Details will be described later.
  • the information output from the data processing device 113 may be transmitted to an external device via the network 111 or may be recorded on the recording medium 112.
  • the data 101 and 102 are data structured according to the definition of a document description language for executing a predetermined process, and include data such as SGML or XML which is a data structure for recording a structured document having a hierarchical structure. Recorded.
  • data is described in accordance with: XML and has a data structure that can specify the data element. Note that the data description method is not limited to XM.
  • the data processing device 113 shown in FIG. 2 includes an input unit 103, a data storage unit 104, a hierarchical structure analysis unit 105, a conversion processing unit 106, an output unit 107, a control unit 108, and an instruction input unit 109.
  • the data processing procedure using these units will be described schematically with reference to the flowchart in FIG. One
  • the input unit 103 reads the data 101 or 102 (step S (hereinafter simply abbreviated as S) 1001).
  • the data storage unit 104 stores the data 101 or 102 read by the input unit 103.
  • the hierarchical structure corner section 105 analyzes the tag information and the hierarchical structure of the data 101 or 102 stored in the data storage section 104.
  • the hierarchical structure analysis unit 105 acquires the start tag, the end tag, the child element, and the information on the tag name, the attribute name, and the attribute value in the start tag for all of the XML data of the data 101 or 102, and acquires the acquired information.
  • the hierarchical structure of the tag is analyzed based on the information, and the information of the hierarchical structure is obtained (S1002).
  • the tag information obtained by analyzing the XML data line by line from the beginning is sequentially stored in a predetermined storage area prepared in advance.
  • the conversion processing unit 106 performs a conversion process on a tag having a hierarchical structure in the XML data based on the information stored in the predetermined storage area obtained by the analysis by the hierarchical structure analysis unit 105 (S1004).
  • the conversion processing unit 106 determines whether or not this conversion processing has been performed for all tags having a hierarchical structure. When it is determined that the conversion has been performed, the conversion process ends (S1003). Details of the conversion processing unit 106 will be described later.
  • the converted XML data converted and output by the conversion processing unit 106 is stored in the data storage unit 104 again.
  • the output unit 107 receives the converted data read from the data storage unit 104 and outputs it to the outside (S1005).
  • the control unit 108 controls the above-described series of processing flows of the input unit 103, the data storage unit 104, the hierarchical structure analysis unit 105, the conversion processing unit 106, and the output unit 107 based on an instruction given thereto or the like.
  • the instruction input unit 109 inputs an instruction 114 externally provided to operate the data processing device 113, for example, a user instruction 114, and outputs it to the control unit 108.
  • FIG. 4 is a flowchart showing a conversion processing procedure of the conversion processing unit 106.
  • the XML data before conversion processing input to the data processing unit 113 is the XML data 300 in FIG. 1A
  • the XML data after conversion processing output from the data processing unit 113 is the XML data 40 in FIG. 1B.
  • FIG. 5 shows a layout when the XML data 300 in FIG. 1A is displayed by analyzing the hierarchical structure, and a layout when the XML data 400 in FIG. 1B is displayed on the display device 110. Show.
  • the 'p' tag is related to the display of paragraphs, and the 'indent' attribute reduces the number of characters from the start of the current sentence by the value of the 'indent' attribute (with a space for the number of characters) Means to start.
  • the tag 305 “ku pindent“ 2 ”>” means to start the sentence two characters below the current sentence start position.
  • the 'font' tag is a tag related to the display of characters, and the 'color' attribute means that the color of the characters is changed from the default color (black) and displayed.
  • the default is the start of the sentence unless otherwise specified.
  • FIG. 5 When the XML data 300 shown in FIG. 1A is analyzed and displayed, the layout shown in FIG. 5 is obtained.
  • the “mouth” in Fig. 5 indicates one character lowering of the start position of the sentence specified by the 'indent' attribute of the 'p' tag.
  • a double underline indicates that the font color is red due to the 'co1or' attribute of the 'font' tag.
  • the tag information stored in the above-mentioned predetermined storage area is searched to obtain the information of the tag to be converted (S1101).
  • the information of the start tag corresponding to the end tag is retrieved by searching the predetermined storage area (S1103).
  • tag 305 is searched for a start tag corresponding to the end tag of tag 307.
  • the upper layer means a layer of tags that include a start tag for performing the conversion process in the child element in accordance with the nesting relationship described above.
  • the acquired tag information is the attribute information of the start tag of the upper layer.
  • a tag 302 and a tag 310 “ku Zp” exist in the upper layer of the layer of the tags 305 and 307.
  • the tag 302 of the start tag of the upper hierarchy can be obtained, and thus information of the attribute is obtained.
  • the start tag acquired in S1103 is converted so that the acquired information is reflected (S1107).
  • the attribute refers to processing such as addition or deletion, and refers to the conversion of tag names, start tags, end tags, empty tags, and other types as necessary.
  • the attribute of the attribute 302 of the tag 302 is reflected in the attribute of the attribute 305 of the tag 305.
  • the 'ind e nt' attribute of the 'p, tag means to lower the current position by the number of characters of the' in d e n t 'attribute before starting the text (character string).
  • the value “1” of the “ind e n t” attribute of the tag 302 and the value “2” of the “in d e n t” attribute of the tag 305 are added to obtain the value “3” of the “in d e n t” attribute.
  • the tag name is converted from the ' ⁇ ' tag to the ' ⁇ 2' tag, and the start tag is converted to an empty tag.
  • the tag 305 is converted to the tag 405 “ku p 2 ind e n t-“ 3 ”/> in FIG. 1B.
  • the 'p 2' tag like the 'p' tag, means that the text (character string) starts after lowering the value of the 'ind e n t' attribute by the number of characters.
  • the difference from the 'p' tag is that the ' ⁇ ' tag specifies the effective range by the start tag and end tag, while the ' ⁇ 2' tag is described with an empty tag, The point is that the effective range is up to the change.
  • an end tag corresponding to the start tag is searched from a predetermined storage area, and conversion is performed so that the acquired information is reflected on the end tag (S1108). . Since there is no attribute in the end tag, the attribute of the acquired information is added here to the attribute of the end tag. In addition, it converts types such as tag names, start tags, end tags, and empty tags as necessary.
  • the value “1” of the 'indent' attribute is added to the tag 307.
  • the tag name is converted from the 'p' tag to the ' ⁇ 2' tag, and the end tag is converted to an empty tag.
  • Get “ ⁇ f0ntco 1 or “ b1ack ”>” which is the initial setting of the 'f0nt' tag.
  • the process of converting the start tag and the end tag so as to reflect the acquired information is the same as the case where a tag having the same tag name exists in the upper hierarchy, and thus the description is omitted.
  • the 'font2' tag differs from the 'font2' tag in that, like the 'p2' tag, the effective range is the range until the attribute is changed by the 'font2' tag.
  • the conversion process is not limited to the process of converting by focusing on the end tag. Similar conversion may be performed by focusing on the start tag instead of the end tag.
  • the end tag at the end of the XML data may be omitted without performing the conversion process.
  • the character string 409 “PQRST” is the end of the data.
  • FIG. 6 is a diagram showing a configuration example of the display device in FIG. 2 together with other devices constituting a data processing system including the display device. That is, the network 2 11, the recording medium 2 12, the data processing device 2 13 having data 203, and the display device 2 14 in FIG. 6 correspond to the network 1 1 1, the recording medium 1 1 2. Corresponds to the data processing unit 113 and the display unit 110. Data 201 and 202 in FIG. 6 correspond to data 101 and 102 in FIG.
  • FIG. 7 shows a flowchart of the display processing by the display device 214.
  • the display device 214 includes an input unit 204, a data storage unit 205, a data structure analysis unit 206, a rate calculation unit 207, a display unit 208, a control unit 209, and an external device. And an instruction input unit 210 for inputting the instruction 2 15 and outputting it to the control unit 2 09.
  • the input unit 204 receives data 201 transmitted via the network 211, data 202 recorded in advance on the recording medium 212, or data output from the data processing device 212. Reading of 203 is performed (S12201). Data 201, 202 and 203 are data processed by the data processing device 21.
  • the data storage unit 205 stores data 201, data 202, or data 203 read by the input unit 204.
  • the data structure analysis unit 206 receives the data 2 stored in the data storage unit 205.
  • the data structure of 01 or data 202 or data 203 is analyzed (S122). Since data 201 or data 202 or data 203 is data of a structured document that does not exist because the hierarchical structure as shown in FIG. 1B has been resolved, the data structure analysis unit 206 Does not require processing to analyze the hierarchical structure, but only analyzes tag information and character strings.
  • the strings 401 ABCDEJ, 404 FGHIJ, 406 KLMN ⁇ , 409 PQRST, and 411 UVWXY are strings.
  • the layout calculation unit 2007 reads the tag and the character string analysis result output from the data structure analysis unit 206 in order (S123).
  • the layout such as indentation for display is calculated based on the read information (S12204).
  • the character string 401 is first read to calculate the layout.
  • the layout of the character string 404 is calculated based on the information of the tag 402 and the tag 403 to be read.
  • the information of the tag 405 is read and acquired, it is not necessary to retain the information of the tag 402, which is the same 'p2' tag as the tag 405.
  • the hierarchical structure is analyzed in advance and converted into the information of the tag instructing the change of the display mode, so that the information of the tag 402 is reflected in the tag 405. Therefore, the layout of the character string 406 may be calculated based on the information of the tags 403 and 405. Thereafter, similarly, by acquiring the information of the tag having the same tag name, it is not necessary to retain the information of the tag having the same tag name that is read first. Since it is not necessary to retain the information of the tag with the same tag name, the memory usage can be reduced. The data laid out in accordance with the calculation result is given to the display unit 208 and displayed on the display unit 208.
  • the display unit 208 receives the data laid out based on the calculation result from the layout calculation unit 207 and displays the data externally (S125). When the data 400 in FIG. 1B is processed, it is displayed as shown in FIG. 5 similarly to FIG. 1A.
  • the control unit 209 includes an input unit 204, a data storage unit 205, a data structure analysis unit 206, and a rate calculation unit. This is a device for controlling the flow of a series of processing of the display unit 207 and the display unit 208.
  • the instruction input unit 210 inputs a user's instruction 2 15 for operating the display device 214 and outputs it to the control unit 209 (S 1206).
  • the analysis results such as tags are read again in order (S 1203), and the layout is calculated using the specified change content. Display again. If there is no instruction 215 from the user, the system waits until the instruction 215 from the user is received. If the user gives an instruction 2 15 to end the display processing, all the display processing ends.
  • the data processing device 21 converts the structured document data 300 having a hierarchical structure into the structured document data 400 having a hierarchical structure that has been eliminated in advance. By doing so, the data 400 can be displayed on the display device 214, and the processing for analyzing the hierarchical structure can be omitted, so that the display processing can be performed at high speed. Also, since there is no need to store the hierarchical structure, the memory usage can be reduced.
  • FIG. 8 is a diagram showing an example of a block configuration of a data processing device according to a second embodiment of the present invention, together with other devices constituting a data processing system including the data processing device.
  • FIG. 9 is a flowchart of data processing according to the second embodiment of the present invention.
  • the data processing system includes a network 5 12, a recording medium 5 13, a data processing device 5 14, and a display device 5 11. .
  • the network 5 12 is connected to a server having a data processing device 5 14 and a database storing data, or another personal computer.
  • the data 501 is supplied to the data processor 514 via the network 512.
  • the recording medium 5 13 is used to supply the data 502 to the data processor 5 14 in which the data 502 is recorded in advance. Examples of the recording medium 5 13 include an FD, a CD-ROM, and a hard disk.
  • the data processor 514 inputs and processes the data 501 and 502 supplied from the network 51 and the recording medium 513. And a device for external output.
  • the display device 511 is a device for receiving and outputting information output from the data processing device 514. Details of the display device 511 will be described later.
  • the information output from the data processing device 5 14 may be transmitted to an external device (not shown) via the network 5 12 or may be recorded on the recording medium 5 13.
  • the data 501 and 502 are the same as the data 101 and 102 of FIG. 2 in the first embodiment, and therefore, the description is omitted.
  • the data processing device 514 includes an input section 503, a data storage section 504, a block division section 505, a hierarchical structure analysis section 506, a conversion processing section 507, an output section 508, and a control section.
  • a unit 509 and an instruction input unit 5110 are provided.
  • the data processing procedure of the data processing device 514 will be described with reference to the flowchart of FIG.
  • the input section 503 reads data 501 or data 502 (S1301).
  • the data storage section 504 stores the data 501 or the data 502 read by the input section 503.
  • the block division unit 505 performs a block division process of dividing the data 501 or the data 502 stored in the data storage unit 504 into several block units (S1302).
  • FIG. 10 is a diagram showing the division points when the XML data 300 of FIG. 1A is divided into several blocks.
  • reference numerals 701 to 711 are used instead of reference numerals 301 to 311 in FIG. 1A for description.
  • the contents denoted by reference numerals 70 1 to 71 1 correspond to those denoted by reference numerals 301 to 311.
  • the XML data 300 is divided between the character string 704 “FGHIJ” and the tag — 705 “ku pindent-“ 2 ”>”. As a result, the XML data 300 Assume that it is divided into two blocks, block 7 1 2 and block 7 1 3.
  • the size of the block is based on a fixed size.
  • the part to be divided into blocks is divided based on tags described near the fixed size. Rather than dividing by the fixed size itself, by dividing before and after the description of the tag, Avoid splitting the description itself. If the tag description itself is divided, even if the blocks are read individually, the tag description is fragmented and cannot be analyzed. If there is no tag for proper division near the fixed size, expand the range further and search for such a tag. It is assumed that the standard fixed size is defined from the beginning. The size defined is a size appropriate for the display device 511 to process.
  • FIG. 11 is a diagram showing that interpolation processing has been performed on the data of FIG.
  • the hierarchical structure analysis unit 506 inputs the XML data divided by the block division unit 505, analyzes the tag information and the hierarchical structure in each block for each block, and converts the analysis result information. Output to the unit 507 (S1304).
  • Hierarchical structure analysis The unit 506 performs an analysis process in the same manner as the hierarchical structure analysis unit 105 of FIG. 2 in the first embodiment, and a description thereof will be omitted.
  • the conversion processing unit 507 performs a conversion process on the tag having the hierarchical structure based on the information of the analysis result provided from the hierarchical structure analysis unit 506 (S1306).
  • the conversion process is the same as the conversion process of the first embodiment, and thus the description is omitted.
  • FIG. 12 is a diagram illustrating data in a state after the data of FIG. 11 is subjected to the conversion processing.
  • block 913 of FIG. 12 corresponding to block 816, includes strings 901 and 904, and tags 902 and 903, with string 904 "FGH I J" terminating block 913. It is determined whether the conversion process has been performed for all tags, and the conversion process ends (S1305).
  • Block 914 of FIG. 12, corresponding to block 817 also includes strings 907, 910 and 912, and tags 905, 906, 908, 909 and 911.
  • the control unit 509 controls the flow of a series of processes of the input unit 503, the data storage unit 504, the block division unit 505, the hierarchical structure analysis unit 506, the conversion processing unit 507, and the output unit 508.
  • the instruction input unit 510 transmits an instruction 515 of a user who operates the data processing device 514 to the control unit 509.
  • Data processing may be performed on XML data that has already been divided into block units. If the data 501 and 502 are already divided into blocks, the block dividing unit 505 applies a block dividing process in the block or omits the block dividing process.
  • the subsequent analysis processing of the hierarchical structure analysis unit 506 and the conversion processing of the conversion processing unit 507 can be performed in the same manner. (Description of display device 5 1 1)
  • FIG. 13 is a diagram showing an example of a block configuration of the display device 5 11 in FIG. 8 together with other devices constituting a data processing system including the display device. That is, the network 6 1 2, the recording medium 6 13, the data processing device 6 14, and the display device 6 15 in FIG. 13 correspond to the network 5 1 2, the recording medium 5 13 It corresponds to the data processing device 5 14 and the display device 5 11.
  • FIG. 14 is a flowchart of the display processing of the display device 6 15.
  • the display device 615 includes an input section 604, a data storage section 605, a block information analysis section 606, a data structure analysis section 607, a layout calculation section 608, a display section 609, and a control section. It has a control unit 6 10 and an instruction input unit 6 11.
  • the input unit 604 is used to receive data 601 received via the network 612, data 602 previously recorded on the recording medium 613, or data 620 which is an output of the data processing device 614. Reading of 03 is performed (S1401). Data 601, 602 and 603 are data processed in the data processing device 614.
  • the data storage section 605 stores the data 601 or the data 602 or the data 603 read by the input section 604. '
  • the block information analysis section 606 analyzes the block information of the data 601 or the data 602 or the data 603 stored in the data storage section 605 (S1402). By analyzing the block information, a target block required for display is determined (S1403). By determining the target block required for display, it is not necessary to analyze all the data from the beginning (head) of data 601 or data 602 or data 603, and the block required for display is not necessary. Since only the data inside is analyzed, the processing load is reduced.
  • the position of the block required for display is the first block in a display device that always displays the contents of XML data from the beginning (head), and a display device that records position information indicating the position of the previous display. In, the position of the block is based on the recorded position information.
  • the number of blocks required for display is determined based on the display screen size and display settings. For example, if a block contains 30 characters and the display setting is 50 characters, then at least 2 blocks and a maximum of 3 blocks are required for display. In a layout that includes an image, the number of blocks required for display is determined based on the number of pixels and the like.
  • blocks corresponding to the block number determined from the determined block position become the target blocks required for display.
  • the processes S144 to S1407 in the data structure analysis unit 607, the layout calculation unit 608, and the display unit 609 correspond to the processing S1 in FIG. 7 in the first embodiment. From 202 to S122, the description is omitted because it is the same as S125.
  • the control section 610 includes an input section 604, a data storage section 605, a block information analysis section 606, a data structure analysis section 607, a layout calculation section 608, and a display section 609. Controls the flow of a series of processes.
  • the instruction input unit 611 inputs the instruction 616 of the user who operates the display device 615 and outputs it to the control unit 610 (S1408). If the block to be displayed is the same block as the previous block when there is an instruction from the user 6 16, the tag is read in order again, the layout is calculated again, and the display is performed. If they are not the same block, the process starts from the process of determining the block to be displayed (S1409). When there is no input of the user's instruction 616, the wait state is maintained until the user's instruction 616 is received. When the user inputs an end instruction 6 16, the entire display processing ends.
  • the user's instruction 6 16 refers to an instruction input by the user operating the display device 6 15 itself.
  • the instruction is provided by operating a cross button (up, down, left, right operation buttons) or an enter button. 'The same applies to the user instruction 2 15 in FIG.
  • the display block is determined according to the operation that is the user instruction. For example, assume that when the content of the XML data is opened (displayed), the beginning of the first block is displayed. When the user presses the lower button (not shown) of the instruction input section 6 1 1 . When the layout is scrolled by manipulating the layout, the layout calculation process is repeated when the information necessary for display is within the first block (YES operation in S1499). The last information of the first block is laid out and displayed, and when the lower button is operated, the information of the second block is required (NO operation in S1409). The required 2nd block is displayed together with the 1st block. This corresponds to the determination of the display block.
  • the data of the structured document having the hierarchical structure is divided into blocks, and the data is converted into the data of the non-existing structured document in which the hierarchical structure is eliminated in advance.
  • the display process can be performed at high speed.
  • the memory usage can be reduced.
  • data 501, 502, 601, 602, and 603 are described using data described in XML as an example. Obviously, the data is not limited to the data described in XML.
  • the data processing device 1 13 and the data processing device 5 14 are assumed to be a server, and the display device 2 15 and the display device 6 15 are similar to a mobile phone or a PDA (personal digital assistant).
  • a display device mounted on a simple mopile device The server converts the data having a hierarchical structure into non-existent data with the hierarchical structure eliminated, and distributes it to the mobile device via the network.
  • the mobile device receives the distributed data. Since there is no hierarchical structure in the data, mobile devices can process and display the received data at high speed.
  • a laptop (notebook) or stationary personal computer may be used instead of the portable information processing device of the mopile device.
  • the data processing devices 113 and 514 are assumed to be personal computers
  • the display devices 214 and 615 are assumed to be display devices mounted on mobile devices such as mobile phones.
  • data having a hierarchical structure is converted into data having no hierarchical structure and recorded on a recording medium such as an FD. Carrying the recording medium on which the converted data is recorded and attaching it to the mobile device, the mobile device can read data that does not have a hierarchical structure, and can process and display the read data at high speed. be able to.
  • the place where the display device is mounted is not limited to the mobile device, but may be a personal computer.
  • data may be transmitted and received via a network without using a recording medium.
  • Embodiments 1 and 2 described above even for data 300 having a hierarchical structure, the hierarchical structure is eliminated in advance and converted to data 400 having no hierarchical structure.
  • Data 400 can be used instead of data 300 in output such as display of data 300. This eliminates the need for processing for analyzing the hierarchical structure in output such as display, so that data can be handled easily and can be processed at high speed. Also, since there is no need to separately store the hierarchical structure, the memory usage can be reduced.
  • electronic data is processed using individually prepared data such as corresponding text data, tag appearance position data, and tag detail data.
  • the data processing can be performed at high speed because the process for determining whether a tag is a tag or a text can be omitted. This feature is described below.
  • FIG. 15 is a diagram showing the configuration of the data processing device according to the present embodiment in association with peripheral devices.
  • a server 111 receives a request from the user and transmits electronic data recorded in a database (not shown).
  • a recording medium 1117 is provided.
  • the data processing device 1118 processes the electronic data supplied from the recording medium 1117 and performs data processing according to the purpose, for example, data processing for display.
  • description will be made assuming that the electronic data is displayed, but other output forms, for example, the electronic data may be printed.
  • the personal computer 1116 may be replaced with an electronic data receiving device installed in a convenience store, a station structure, or the like, and electronic data may be read from the electronic data receiving device and recorded on the recording medium 1117. In this case, it is possible to charge when the electronic data is read from the electronic data receiving device and recorded on the recording medium 1117.
  • the electronic data transmitted from the server 1114 may be configured to be received and received by the data processing device 1118 and recorded on the recording medium 1117 without passing through the personal computer 1116.
  • the recording medium 1117 stores electronic data 1100, text data 1101, tag appearance position data 1102, and tag detailed data 1103 obtained from the electronic data 1100 by a device such as a personal computer 1116 in correspondence with each other. You. Here, for the sake of simplicity, it is assumed that the recording medium 1117 stores only one set of the electronic data 1100 and the data created from the electronic data 1100 in association with each other. May be.
  • the electronic data 1100 is structured electronic data for executing a predetermined process according to the definition of the document description language, and is a data format for recording a structured document having a hierarchical structure using a plurality of tags. It is described using a certain SGML or XML.
  • the text data 1101 is data indicating only contents to be displayed from the structured electronic data 1100.
  • the tag appearance position data 1102 indicates the tag name of each tag in the tag information necessary for processing the corresponding text data 1101.
  • the tag detail data 1103 is data that indicates information such as the attribute of each tag among the tag information necessary for processing the corresponding text data 1101, and is composed of variable length data.
  • the data transmitted from the server 1114 and stored in the recording medium 1117 may be only the electronic data 1100, or may be text data 1101, tag appearance position data 1102, and tag detailed data 1103 created from the electronic data 1100. Only data may be used.
  • the data processing device 1118 includes an input unit 1104, a data structure analysis unit 1105, a processing unit 1106, a control unit 1110, a text data creation unit 1111, a tag appearance position data creation unit 1112, and a tag detail data creation unit 1113.
  • the input unit 1104 reads electronic data 1100, text data 1101, tag appearance position data 1102, and tag detail data 1103 from the recording medium 1117.
  • the data structure analysis unit 1105 analyzes the hierarchical structure of the electronic data 1100 based on the electronic data 1100 or based on the text data 1101, the tag appearance position data 1102, and the tag detailed data 1103.
  • the text data creation unit 1111 creates the text data 1101 from the electronic data 1100 when the text data 1101 does not exist.
  • the data transmitted from the server 1114 is the text data 1101, the tag appearance position data 1102, and the tag detail data 1103, the text data creation unit 111 may be omitted.
  • the tag appearance position data creation unit 1112 creates the tag appearance position data 1102 from the electronic data 1100 when the tag appearance position data 1102 does not exist.
  • the tag appearance position data creation unit 1112 may be omitted.
  • the tag detail data creation unit 1113 creates tag detail data 1103 from the electronic data 1100 when the tag detail data 1103 does not exist.
  • Server 1114 If the data transmitted from is three, text data 1101, tag appearance position data 1102, and tag detail data 1103, the tag detail data creation unit 1113 may be omitted.
  • the control unit 1110 controls processing of the input unit 1104, the data structure analysis unit 1105, the text data creation unit 1111, the tag appearance position data creation unit 1112, the tag detail data creation unit 1113, and the processing unit 1106.
  • the processing unit 1106 performs a predetermined process based on the analysis result of the hierarchical structure by the data structure analysis unit 1105. Specifically, the processing unit 1106 has a different configuration depending on the content of the target electronic data and the type of processing.
  • the data processing device 1118 is, for example, an electronic document or electronic data exchanged on the Internet, or a book or textbook.
  • the electronic data is calculated based on the display layout calculated by the layout calculation unit 1107 which calculates the display layout of the text. It has a display unit 1108 for displaying and a user instruction processing unit 1109 for processing an instruction 1121 from the user such as a scroll instruction.
  • the processing unit 1106 is changed to a voice data reading device, and the display unit 1108 uses a voice reproduction unit, and the layout calculation unit 1107 determines a portion to be read and a portion not to be read. It is changed to a tune that determines the part to be read with emphasis and the part that is not, and adjusts the interval between each reading.
  • voice data the voice attribute may be changed according to the hierarchical structure and read out.
  • a scenario interpreting unit, audio output unit, and synchronization unit that synchronizes each element of the data are required to manage the data as the playback source.
  • FIG. 16 shows an example in which the data processing device 1118 is realized as a portable display processing device.
  • a display unit 1108 is configured by a liquid crystal display or the like.
  • the recording medium 1117 is removably attached to the input unit 1104.
  • the electronic data 1100 or the text data 1101 to be processed and the tag appearance position data 1102 and the tag appearing in the recording medium 1117 are stored in advance.
  • the detailed data 1103 is read via the input unit 1104.
  • User instruction processing unit 1109 In addition, a cross key 1119 and a pen 1120 are provided.
  • the cross key 1119 is operated, for example, when the user instructs to scroll the displayed document or selects the electronic data 11 '00 of the book or document to be displayed.
  • the pen 1120 is used by the user to jump to a link destination when the electronic data includes a link function, and is used by the control unit 1110 of the data processing device 1118 to reply to the confirmation item requested by the user. Also used to enter.
  • All or some of the electronic data 1100 or the text data 1101, the tag appearance position data 1102, and the tag detailed data 1103 to the data processing device 1118, or a part of them, are supplied via the recording medium 1117. Not done.
  • a predetermined recording area may be provided inside the main body of the data processing device 1118, and a part or all of the data as described above may be recorded therein.
  • part or all of the above data may be recorded in the server 1114 on the network 1115 or in a database (not shown) and processed while downloading.
  • FIG. 17 shows an example of the structure of the tag appearance position data 1102.
  • the tag appearance position data 1102 includes file name information 1300 and tag appearance position information 1301.
  • the file name information 1300 includes data 1302 and 1303 indicating the file name of the tag data 1103 corresponding to the file name of the corresponding text data 1101.
  • the tag appearance position data 1102 is converted to the corresponding text data 1101. Concatenate with: When recording as, the area of the text data file name data 1302 may be omitted. When the tag appearance position data 1102 is recorded in connection with the corresponding tag detail data 1103, the area of the tag detail data file name data 1303 may be omitted.
  • the tag appearance position information 1301 includes data 1304 indicating the total number of tags included in the corresponding text data 1101 and all the tags included in the corresponding text data 1101.
  • Tag position data 1305 is included for each of the tags.
  • Each of the tag position data 1305 includes data 1306 indicating the corresponding tag name, data 1307 and 1308 indicating the appearance start position and end position in the text data 1101 of the corresponding tag, and the tag detailed data 1103 of the corresponding tag.
  • the data 1307 and 1308 indicate the description position of the start tag and the end tag in the text data 1101.
  • Data 1307 to 131 ⁇ is recorded as the number of bits from the beginning of each tag data (text data 1101 or tag detail data 1102).
  • the range of influence in the tag text data 1101 may be recorded.
  • the influence range indicates the size (range) of the text data where the tag attribute is valid, and corresponds to the range from the appearance start position to the appearance end position. In other words, it means the difference by (appearance end position-appearance start position).
  • data 1308 of the appearance end position can be obtained from the value of (appearance start position + effect range).
  • the data size of the tag detailed data 1103 may be recorded.
  • the data size means the size from the storage start position to the storage end position. That is, it means the difference of (storage end position-storage start position).
  • the data 1310 of the storage end position can be obtained from the value of (storage start position + data size).
  • Each piece of data constituting the tag appearance position data 1102 is fixed-length data as shown in FIG.
  • fixed-length data refers to data that does not exceed a predetermined size (for example, 4 bytes) prepared in advance even if the information indicated by electronic data 1100 fluctuates. Therefore, for example, as shown in FIG. 17, when 4 bytes are allocated as the data 1307 indicating the appearance start position in the text data 1101 of the tag, the text data 1101, which indicates the number of bytes from the beginning of the file, starts from 0. You must enter one of the values 4294967295.
  • the size of the area allocated to each piece of data constituting the tag appearance position data 1102 is: It can be determined according to the type of electronic data 1100 to be handled and the processing capacity of the data processor 111. '
  • FIG. 18 shows an example of the structure of the tag detail data 1103.
  • tag detail data 1103 includes tag detail data 1401 corresponding to each of all tags recorded in corresponding tag appearance position data 1102.
  • the tag detail data 1401 includes data 1402 indicating the total number of different types of attributes indicated by the corresponding tag, and data 1403 corresponding to all the different types of attributes indicated by the corresponding tag.
  • Data 1403 includes data AN indicating the type name of the corresponding attribute and value AV of the corresponding attribute.
  • the tag detailed data 1103 is basically composed of variable length data because its size depends on the size of information of each tag, but may be composed of fixed length data having a sufficient size.
  • FIG. 19 shows an example of electronic data 1100 which is an XHTML document to be processed.
  • FIG. 2 OA shows an example of text data 1101 created from the electronic data 1100 of the XHTML document in FIG.
  • the content to be displayed that is, a character string
  • the text data 1101 among the child elements sandwiched between the tags.
  • the processing capacity of the data processing device 118 is low and it is difficult to analyze the tag appearance position data 1122 and the tag detail data 1103, only the text data 1101 is processed.
  • the user can obtain at least the advantage of being able to understand only the content of the described document from the displayed content. Therefore, there are cases where the contents to be displayed are not recorded in the text data 1101.
  • ruby tag 1503 This is shown as an example of the tag used to set ruby in a character string (hereinafter referred to as ruby tag).
  • ruby tag 1503 usually, the child element "I” sandwiched between the start tag rb> and the end tag b> is sandwiched between the start tag rt> and the end tag rt>
  • the child element "my yes” is the force S recorded in the text data 1 101, and as it is, the display content according to the recorded content of the text data 1 101 indicates "myself my yes", and the meaning is lost. I will.
  • ruby 2> is a tag for ruby, has a 'rt' attribute that specifies a ruby character string, and means a tag that specifies a ruby character string as a child element.
  • the text element 1101 records “I” as a child element, and the value of the ' r t' attribute Is recorded in the tag detailed data 1103. The contents recorded in the tag detail data 1103 in this case will be described later.
  • ruby 2 rt "kento"> conversion to ⁇ / ruby 2>, records the child element "registration” in text data 1 101, and sets the value of the "rt” attribute to "ken”. Is recorded in the detailed tag data 1103.
  • the attribute value of the tag may be recorded in the text data 1101 instead of the tag detailed data 1103 in some cases. This will be described using an example of a tag used for setting an external character (hereinafter, an external character tag).
  • ⁇ gaiji> is a tag for external characters, a 'set' attribute for specifying a character font name, and a 'code' attribute for specifying a position in the character font specified by the 'set' attribute , Has a plurality of different attributes: 'img' attribute to specify an alternative image for horizontal writing, 'vi mg' attribute to specify an alternative image for horizontal writing, and 'alt' attribute to specify an alternative character string.
  • the external character tag 1506 in FIG. 19 normally, nothing is recorded in the text data 1101, so that it is recorded in the text data 1101 as it is.
  • the content is " ⁇ ⁇ ', the worst race among humans,' ⁇ ⁇ ', and the meaning is not understood when displayed.
  • gaiji 2> is a tag for external characters, a 'set' attribute for specifying the character font name, and a position in the character font specified by the 'set' attribute.
  • a 'code' attribute to specify an alternate image for horizontal display, and a 'vi mg' attribute to specify an alternative image for horizontal display. Indicates a tag that specifies an alternative character string as a child element.
  • the text data 1101 records “how” as a child element, and other attribute values Is recorded in the tag detailed data 1103.
  • the contents recorded in the tag detail data 1103 will be described later.
  • the content recorded in the text data 1101 is “ ⁇ The worst race among human beings ⁇ *”, and is a sentence that can be understood.
  • FIG. 20B shows another example of text data 1101 created from the electronic data 110 ° of the XHTML document in FIG.
  • the line is actually broken at the position where the line break tag 1504 is added.
  • the contents of the text data 1101 can be easily understood.
  • the information of the line feed tag 1 504 is recorded in the tag appearance position data 1102, and the line feed information in the text data 1101 may not be used in the layout calculation unit 1107.
  • the information of 1504 may not be recorded in the tag appearance position data 1102, and the line feed information in the text data 1101 may be used in the layout calculation unit 1107. Even if it is a tag other than the line feed tag and usually does not indicate a line feed in the text data 1101, the contents of the text data 1101 can be easily understood.
  • a line break may be performed.
  • FIG. 21 shows an example of the tag appearance position data 1102 created from the electronic data 1100 of the XHTML document in FIG.
  • Data 1700-1702 in FIG. 21 corresponds to data 1302-1304 in FIG.
  • Data 1 702 indicates the number of tags (tag pairs) included in the electronic data 1100 of FIG.
  • the number of tags that make up the electronic data 1100 of the XHTML document shown in Fig. 19 is 11 but as described above, the ruby> tags and rb> tags that make up ruby elements Since three of the ⁇ rt> tags and ⁇ rt> tags are converted to one tag and processed, the number of tags becomes seven, and data 1702 in FIG. 21 indicates “7”.
  • the data 1703 to 1707 correspond to the data 1306 to 310 of the tag position data 1305 of the first tag, that is, h tml> tag 1500.
  • Data 1703 indicates the tag name “html”
  • data 1704 indicates the start position of the text data 1101 of htm1> tag1500
  • data1705 indicates the html >
  • the data 1 706 indicates the start position of the attribute information of the tag 1500 in the tag detail data 1103
  • the data 1 707 indicates the htm 1> tag 1500 in the tag detail data 1103. Indicates the storage end position of the attribute information.
  • data 1 708 to 1 7 12 indicate information for tag appearance position data 1 305 of the second tag, that is, body> tag 1501, and data 1 171 to 1717
  • the third tag, img> tag 1502 indicates information for tag appearance position data 1305 of tag 1502
  • data 1718 to 1722 are the fourth tag, ruby> tag 1503
  • the data for the tag appearance position data 1305 of the tag 1305, and the data 1723 to 1727 indicate the information for the tag appearance position data 1305 of the fifth tag 1728 to 1732 indicates information for tag appearance position data 1305 of the sixth tag, which is ruby> tag 1505, and data 1733 to:
  • L737 is the seventh tag ⁇ gaiji> Indicates information for tag appearance position data 1305 of tag 1506.
  • Data 1800 corresponding to data 1402 indicates the genus “0” of the first tag, that is, htm 1> tag 1500.
  • the start position and end position information of the area where this information is recorded is the tag appearance position data.
  • the tag details data 1103 includes data 1801 to 1805 for the second tag, body> tag detail data 1401 of tag 1501, and the third tag, i mg /> Record the data 1806 ⁇ : 1810 for the tag detailed data 1401 of the tag 1502, and the data 181 1 ⁇ 1813 for the tag detailed data 1401 of the fourth tag, ruby> tag1 503, respectively. . Also, the data 1814 for the tag detail data 1401 of the fifth tag, b rZ> tag 1 504, is recorded.
  • the number of attributes is '0' like the ⁇ brZ tag 1504 or h tml> tag 1 500, the number of attributes is not recorded in the tag detailed data 1103, and the tag appearance position data 1 102 Corresponding data 1726 and data 1727 may be recorded so as to indicate “no storage area”. Then, the data 181 5 to 1817 for the tag detail data 1401 of the sixth tag, which is a ⁇ ruby> tag 1505, and the tag detail data of the seventh tag, which is a gaiji> tag 1 506 Record data 1818 to 1826 for 1401 respectively.
  • FIGS. 23 and 24 a processing procedure when the data processing device 118 of FIG. 15 operates as a display device will be described.
  • the procedures of FIG. 23 and FIG. 24 are executed under the control of the control unit 110.
  • step S901 a user instruction 1121 indicating the electronic data 1100 desired to be displayed by the user is input via the user instruction processing unit 1109, and the electronic data 1100 is designated.
  • the input unit 1104 searches the recording medium 1 1 1 7 for the electronic data 1 100 specified in step S 901 and the electronic data 1.100 specified in the recording medium 1 1 1 7 It is determined whether or not only the specified electronic data 1100 is stored, or whether three pieces of text data 1101 corresponding to the designated electronic data 1100, tag appearance position data 1102, and tag detailed data 1103 are stored. If it is determined from the search result that only the desired electronic data 1100 is stored, the control unit 110 proceeds with the process to step S903. However, the corresponding text data 1101, tag appearance position data 1102, and tag details are processed. If data 1 103 exists, the process proceeds to step S904.
  • step S903 the designated electronic data 1100 is read from the recording medium 111, and the read electronic data 1100 is read with text data 1101, tag appearance position data 1102, and tag detailed data 1103. Create Thereafter, the process proceeds to step S904. Details of step S903 will be described later.
  • step S904 tag appearance position data 1102 corresponding to the specified electronic data 1100 is retrieved from the recording medium 111 and read out via the input unit 1104.
  • step S 906 from the text data 1101 of the recording medium 1117 corresponding to the designated electronic data 1100, only the optional partial data to be processed is specified and read out via the input unit 1104. Specifically, in step S901, a text data portion to be processed is specified and read based on the input user instruction 1121. For example, if the electronic data 1100 specified by the user is to be displayed for the first time, the data is read from the beginning. Alternatively, if the electronic data 1100 has been displayed before, the information indicating the final display position in the previous display processing is recorded in a predetermined storage area of the data processing device 118, and is recorded. The data is read from the position indicated by the final display position information.
  • step S907 based on the partial data to be processed read from the text data 1101, specified in S906, the corresponding partial data is input from the tag detailed data 1 ⁇ 103 of the recording medium 1 1 1 7 into the input unit 1 Read through 104.
  • the attribute information of the tag to be processed can be efficiently read from the tag detail data 1103 by utilizing the fact that the tag appearance position data 1102 is fixed length data. Specifically, if the information indicating the attribute of the tag is not separated into the tag appearance position data 1102 and the tag detailed data 1103 but is recorded collectively as variable-length data, the tag attribute From the beginning of the information, it is necessary to determine whether the data is the desired data on a brute force basis. This desired data indicates tag information to be processed, and the ruby tag information is unnecessary even in the case of the record data processing device 11.18 having the ruby display function.
  • tag attribute information is recorded separately in tag appearance position data 1102 and tag detail data 1103, and tag appearance position data 1102 is fixed-length data. It is possible to easily specify the byte in the tag detail data 1103 where the desired data is located by referring to the tag appearance position data 1102, and directly access the tag detail data 1103 based on the identification result. Desired data can be read.
  • step S909 the layout calculation unit 1107 calculates the layout for display.
  • the layout calculation is performed in the following procedure.
  • the text data 1 Identify one or more tags related to the partial data to be displayed.
  • the data of the corresponding tag detail data storage start position Z end position is read from the tag appearance position data 1 102, and the tag detail data 1 103 is searched based on the read data.
  • the tag detailed data 1401 corresponding to the tag is read.
  • step S910 a predetermined record that is the layout calculation result of step S909 is obtained.
  • the text data 1101 is displayed on the display unit 1108 based on the contents of the storage area.
  • step S911 the process waits for an input of an instruction 1121 from the user via the user instruction processing unit 1109. The process waits at step S911 until an instruction 1 121 is input from the user.
  • the display processing in FIG. 23 ends. If the user issues a scroll instruction 1121 to the next page or the previous page, the process returns to step S 906, and thereafter, the same applies to the partial data of the arbitrary area at the specified scroll destination of the text data 1 101 Processing is performed.
  • [Text] indicates text data 1101
  • [Tag appearance] indicates tag appearance position data 1102
  • [Tag details] indicates tag detail data 1103.
  • the “tag information” in the figure refers to the illustration in the data processor 1 118 for creating the text data 1 101, the tag appearance position data 1 102 and the tag detailed data 1 103 from the electronic data 1 100. Refers to information that is temporarily stored in a storage area that is not stored.
  • [Tag information] is information indicating the tag name of each of one or more tags and the recording position in the tag appearance position data 1102 of the data 1308 indicating the text data appearance end position of the tag.
  • step S921 the designated desired electronic data 1100 is read from the recording medium 1117 via the input unit 1104, and the process proceeds to step S922.
  • step S922 the read electronic data 1100 is analyzed by the data structure analysis unit 1105, and then the text data creation unit 1 1 1 1, the tag appearance position data creation unit 1 1 12 and the ⁇
  • the tag detail data creation unit 1 1 1 3 creates the text data 1 101, the tag appearance position data 1 102, and the tag detail data 1 103, and stores the created data in the designated location on the recording medium 1 117. It is stored in association with the desired electronic data 1100.
  • the [tag information] Information] area the process proceeds to step S923.
  • step S922 the text data file name, tag detailed data file name and data indicating the number of tags are recorded in the tag appearance position data 1102, and the tags are recorded. Thereafter, the process proceeds to step S922. In this case, “0” is recorded as the initial value as the tag number data 1304.
  • step S922 the electronic data 1100 read in step S921 is sequentially processed in element units from the top.
  • step S9224 the presence or absence of an element such as a character string or a tag is determined by searching from the beginning of the electronic data 110. If there is no element, it means that the last element of the electronic data 1100 has been processed, and in step S 934, data indicating that there is no element is stored in the recording medium 1 1 17, and FIG. Finish the data creation process of the original figure
  • step S 934 the data creation process may be ended by passing the process of step S 934. On the other hand, if there is an element, the process proceeds to step S925. .
  • step S925 the type of element is determined. As a result of the determination, if the element is a start tag or an empty tag, the process proceeds to step S926, and if the element is an end tag, the process proceeds to step S93 ⁇ , and the element is a character string. If so, proceed to step S 9
  • step S 926 tag position data 1305 is recorded in tag appearance position data 1102 for the tag which is the element.
  • the tag is analyzed as to whether it is a start tag or an empty tag, a tag name is obtained based on the analysis result, and the obtained tag name is used as tag position data for the tag. Record as data 1306. Then, the data 1307 is recorded with the current writing end position of the text data 1101 as the text data appearance start position. If the element is an empty tag, record the data 1308 with the same value as the data 1307 as the text data appearance end position. Further, data 1309 is recorded, with the current writing end position of the tag detail data 1103 as the tag detail data storage start position, and the process proceeds to step S927.
  • step S927 the tag name acquired in step S926 and the "text data appearance end" of the corresponding tag in the tag appearance position data 1102 are stored in the [tag information] to be temporarily stored.
  • the information of the storage position of the data 13 08 of the position is added and recorded, and the process proceeds to step S 928.
  • step S922 it is analyzed whether the tag is a start tag or an empty tag, and based on the analysis result, the number of attributes, the attribute name, and the attribute value of the tag are acquired, and the acquired information is referred to as tag details.
  • the data 1104 is recorded as the data 1402 and the data 1403 of the tag detailed data 1401 of the tag, and the process proceeds to step S922.
  • step S922 the current writing end position of the tag detail data 1103 is recorded in the tag appearance position data 1102 as data 1310 of the tag detail data storage end position. This completes the processing for this element, and returns the processing to step S9224 to perform the processing for the next element.
  • step S930 the tag that is the end tag is analyzed, and based on the analysis result, the tag name of the tag and the storage position of the “text data appearance end position” are stored from the temporarily stored [tag information]. , And the process proceeds to step S931.
  • step S931 tag position data 1305 corresponding to the storage position of tag appearance position data 1102 indicated by the information obtained in step S930 is added to the current text data 110.
  • Data 1308 is recorded with the end position of writing 1 as the text data appearance end position, and the process proceeds to step S932.
  • step S933 the information of the corresponding tag is deleted from the temporarily stored [tag information]. Thus, the processing for this element is completed, and the processing returns to step S9224 to perform the processing for the next element.
  • step S933 the character string of the element is recorded in the text data 1101. This completes the processing for this element, and returns the processing to step S9224 to perform the processing for the next element.
  • step S 934 the created data is associated with the electronic data 110 in the recording medium 111 in step S 9334. Then, the process ends, and the process returns to the original process of FIG.
  • electronic data 110 is an XHTML document
  • the present invention is not limited to an XHTML document.
  • the same processing can be performed even for electronic data 110 having a hierarchical structure recorded in XML (extensible markup language) or the like.
  • processing is performed using fixed-length tag appearance position data 1102 configured according to the memory capacity, so that text data 111 and tag detail data 1 Since only part of each of the 103 data can be read efficiently, data processing can be performed at high speed with a small memory capacity.
  • a particularly large effect is exhibited when the available memory capacity is small.
  • the tag information data is of a variable length without being separated into the tag appearance position data 1102 and the tag detail data 1103, the amount of tag information data will increase the memory capacity. There is a fear that.
  • the tag appearance position data 1102 is composed of only fixed-length data, so that the maximum capacity for recording tag information can be estimated from the recordable capacity of the recording medium 1117. Accordingly, the structure of the tag appearance position data 1 1 and 2 that does not exceed the recordable capacity can be created in advance.
  • electronic data 1100 having a hierarchical structure is individually divided into corresponding text data 1101, tag appearance position data 1102 and tag detailed data 1103. Since data processing is performed using the prepared data, the processing for determining whether the data to be processed is a tag part or a text part can be omitted, and the memory required for it can be reduced, and processing can be accelerated. And a reduction in memory consumption.
  • the tag name itself is recorded as the tag name data 1306 in the tag appearance position data 1102. Instead, the tag name is uniquely identified. Alternatively, an identification number that can be identified may be recorded. In this case, tag identification information data that records the correspondence between tag names and identification numbers is required separately.
  • the attribute name itself was recorded as the attribute name data AN. Instead, an identification number that can uniquely identify the attribute name is recorded. It may be. In this case, attribute identification information data that records the correspondence between attribute names and identification numbers is required separately.
  • text data 1101, tag appearance position data 1102 and tag detailed data 1103 are created for the entire desired electronic data 1100. Not limited to 1 hundred whole. That is, the text data 1101, the tag appearance position data 1102, and the tag detail data 1103 may be created for arbitrary partial data desired by the user of the electronic data 1100.
  • FIG. 25 shows a configuration example of such a computer.
  • the computer has a monitor 143 made of a CRT (cathode ray tube), a liquid crystal or the like corresponding to the display devices 110 and 511 and the display unit 1108, and instruction input units 190, 510, 210 and 61 , And a keyboard 150 corresponding to the user instruction processing unit 1109, a mouse 160 and a pentacle 170, and a central unit for controlling the computer itself corresponding to the control units 108, 209, 509, 610, and 110.
  • CTR cathode ray tube
  • CPU abbreviation of central processing unit
  • memory 124 including ROM or RAM (abbreviation of random access memory) capable of supporting data storage units 104, 205, 504, and 605 and recording medium 1 117;
  • the fixed disk 126 and FD 1 32 that can support the recording medium 1 1 17 are detachably mounted, and the FD drive 130 that accesses the mounted FD 132 and the CD ROM 142 are detachably mounted.
  • These components are communicatively connected via a bus.
  • FD 132 or CD—R ⁇ Ml 42 can correspond to recording medium 1 117.
  • Fixed disk 126 or FD 1 3 2 or CD-ROM 142 corresponds to the recording media 112, 212, 513 and 613.
  • Communication network 182 corresponds to networks 111, 211, 512, 612 and 1115.
  • the computer may be provided with a magnetic tape device to which a cassette type magnetic tape is removably mounted to access the magnetic tape.
  • a program for causing such a computer to execute the above-described data processing method is stored in a computer-readable recording medium.
  • the recording medium a memory required for processing by the computer shown in FIG. 25, for example, the memory 124 itself may be a program medium.
  • a magnetic tape device (not shown) and a program reading device such as a CD-ROM drive device 140 are provided, which can be read by attaching a magnetic tape or CD-ROM 142 as a storage medium.
  • Program media In any case, the stored program may be configured to be accessed and executed by the CPU 1.22, or in any case, the program may be read and read, and the read program may be read and executed. 25 may be loaded into a predetermined program storage area of the computer of FIG. 25, for example, a predetermined area of the RAM of the memory 124, and read and executed by the CPU 122. It is assumed that the loading program is stored in the computer in advance.
  • the above-described program medium is a recording medium that is configured to be separable from the computer main body, and may be a medium that fixedly holds a program.
  • tapes such as magnetic tape and cassette tape, magnetic disks such as FD132 and fixed disk 126, and CD-ROM 142 / M / (Magnetic Optical Disc) / MD (Mini Disc) / DVD (Digital Versatile Disc) ), Etc., optical discs, IC cards (including memory cards) / cards, etc., or masks R ⁇ M, EPROM (Erasable and Programmable ROM) ⁇ EEPR OM (Electrically EPR OM) , Flash R ⁇ M, and other semiconductor memory.
  • the medium may carry the program fluidly.
  • the computer Since the computer is configured to be connectable to the communication network 182 including the Internet via the communication interface 180, even if the computer is a recording medium from which the program can be downloaded from the communication network 182, Good.
  • the download program may be stored in the computer main body in advance, or may be installed in the computer main body in advance from another recording medium.
  • the content stored in the recording medium is not limited to a program, but may be data.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (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) など力 S知られてレヽる。 特に XMLは、 インターネットで交換する電子文書や電子データなどで近年盛んに使 用されている。
XMLデータを扱う処理方法として、 DOM (Document Object Model) 形式と SAX (Simple API for XML) 形式が知られている。 例えば、 "プログラミン グ技術情報誌 C MAGAZ I NE FEB. 2000 2 「特集 1 XML CZC + +による実用的な利用法」" (発行元: ソフトパンクパブリツシング株式 会社) の 14一 15ページにその詳細が記述されている。
DOM形式とは、 対象とする電子データをすベて読込み、 読込んだ電子データ 内の全要素の階層構造を把握してから、 電子データの各要素にアクセスする処理 方法である。 例えば、 図 26のような階層構造を持つ電子データがある場合、 一 且、 電子データ全体を読込み、 全要素の階層構造を解析する。 図 26は電子デー タの階層構造のみを示し、 本文と内容は省略している。 そして、 図 2 6の階層構 造を持つ電子データから、 図 2 7のような木構造を作成した後、 各要素 (T I T L E、 AU T H O Rなど) にアクセスする。 よって、 電子データの階層構造を把 握した後に処理することになるため、 任意の要素にアクセスしやすいという特徴 がある。
一方、 S A X形式は、 データを先頭から順に読込みながら、 読込んだ要素のみ 構造解析する処理方法である。 そのため、 データ全体の解析処理を待たずに、 順 次処理していくことができ、 処理速度的にもメモリ容量的にもオーバへッドが少 ないという特徴がある。
しかしながら、 D OM形式は、 データ内の一部のデータだけを処理したい場合 であっても、木構造を生成するために、データ全体の構造を解析する必要があり、 処理に無駄が生じるという問題がある。さらに、データのサイズが大きくなると、 木構造を生成するための処理時間が長くなり、 およぴ木構造を記憶しておくため のメモリの使用容量が多くなるという問題がある。
これは、携帯電話のようなモパイル機器など、処理性能が乏しい機器において、 データを処理および表示するのを困難にする。
一方、 S A X形式の場合、 電子データの先頭から順に処理することを前提にし たアクセス形式であるため、 電子データの內容を先頭から順に処理せず任意の要 素を任意の順番に処理する場合でも、 必ず先頭からデータを読込み、 構造解析の 処理が必要となる。また、電子データの後半の要素を処理したいときであっても、 電子データの先頭から読込み、 構造解析を必要とするために処理時間に無駄が生 じる。 これもまた、 同様に処理性能が乏しい機器においてデータを処理し表示す るのを困難にする。 '
両者に共通する問題は、 構造化文書では、 効果範囲の指定を必要とするタグが 存在するため、 幾層もの階層構造を解析する必要があり、 解析処理に時間がかか るということである。 表示装置においては、 階層構造を解析する処理が、 表示処 理の負荷となり、 結果として、 表示するまでに遅延が生じるということとなる。 階層構造を持つ電子データを高速に処理できるようにするため、電子データを、 タグ情報を除き、 表示すべき内容のみを記録したテキストデータと、 そのテキス トデータを処理する際に必要となるタグ情報 (例えば、 タグ名、 属性名、 属性値 や、 テキストデータにおけるそのタグの出現位置などの情報) を記録したタグデ ータとに変換して、 それらを組合わせて処理することによって、 処理時間を短縮 する方法が考えられる。
しかしながら、 上記タグデータに記録されるタグ情報はタグの種類によって、 属性の種類や数が異なり大きさが変動するため、 上記タグデータのために可変長 領域または十分に大きなサイズの固定長領域を確保する必要がある。 従って、 電 子データをテキストデータとタグデータとに変換することにより、 タグ部分であ るかテキスト部分であるかを判定する処理はなくなるが、 任意箇所の要素を高速 に処理する場合に関しては、 タグデータの先頭から読込み、 構造解析をしないと いけないため、 十分な効果を得ることができない。 発明の開示
この発明の目的は、 階層構造を有するデータを容易に取り扱うことができるよ うに処理するデータ処理装置、 データ処理方法、 データ処理プログラムおよびデ ータ処理プログラムを記録したコンピュータ読取可能な記録媒体を提供すること である。
上述の目的を達成するために、 この発明のある局面に従うデータ処理装置は、 文書記述言語の定義に従って記述された階層構造を有するデータを受理して、 階 層構造を解析する解析手段と、 解析手段による解析結果に基づいて、 データを階 層構造が解消されたデ一タに変換する変換手段とを備える。
したがって、 階層構造を有するデータであっても階層構造を解析して、 その解 析結果に基づいて階層構造を解消して、 階層構造が存在しないデータに変換する -ことができる。
上述の階層構造を有するデータが表示など出力される場合には、 予め上述のよ うに階層構造が存在しないデータに変換された後に出力されるようすれば、 出力 処理において階層構造の解析を省略してデータの取扱いが容易となる。その結果、 高速にデータを出力処理でき、 また解析された階層構造を出力のために記憶して おく必要もないから、 データ出力に際しての記憶容量の消費量を少なくできる。 好ましくは、 階層構造を有するデータはタグの対を複数含み、 各タグ対は該タ グ対で囲まれた部分データの属性の情報を指示する。 変換手段は、 部分データ中 に該部分データを囲むタグ対と同一種類の属性を指示する他のタグ対が含まれる 場合には、 該他のタグ対の属性情報を、 該部分データを囲むタグ対の属性情報を 用いて変換する。
したがって、 タグ対で囲まれる部分データに同一種類の属性の他のタグ対が含. まれることにより、 これらタグ対が階層化される場合には、 データ変換手段は該 他のタグ対の属性情報を、 該部分データを囲むタグ対の属性情報を用いて変換す る。 これにより、 タグ対が階層化されているときは、 あるタグ対の属性情報に上 位層のタグ対の属性情報を反映させることができるから、 タグ対の階層化を解消 して該階層化の構造が存在しないデータに変換できる。
好ましくは変換手段は、 変換後のデータにおいて不要となる情報を省略するよ うに変換する。 したがって、 変換後のデータに関する消費記憶容量を少なくでき る。
好ましくは、 変換手段による変換により得られた階層構造が解消されているデ ータに対して、 出力のためのレイァゥトを計算するレイァゥト計算手段をさらに 備 ·る。
したがって、 階層構造が解消されて存在しないデータに対してレイアウトを計 算するから、 レイァゥト計算のための階層構造の解析処理とその解析結果を記憶 しておくための記録領域とを省略できる。 ' 好ましくは、 文書記述言語の定義に従って記述された階層構造を有するデータ を、 複数のブロックに分割する分割手段をさらに備える。 解析手段は、 分割手段 による分割により得られたブロック毎にデータを受理して解析する。
したがって、 解析対象のデータをプロック単位に予め分割することにより、 解 析手段は対象のデータの全てを先頭から解析する必要はなく、 任意のブロック単 位で解析できる。 その結果、 解析処理の負荷を軽減できる。 また、 解析手段のた めの記憶領域はブロック単位の大きさを有すればよいから消費される記憶領域の 容量を少なくできる。
上述の属性情報は、 部分データの出力態様を特定する出力態様情報を含んでよ レ、。 この出力態様情報は部分データのインデントの情報を含んでもよいし、 部分 データを出力するための色の情報を含んでもよい。
上述のブロック毎のデータの大きさは、 データを出力するために予め準備され た出力装置の処理能力に基づき決定されてよい。
上述の目的を達成するために、 この発明の他の局面に従うデータ処理方法は、 ' 文書記述言語の定義に従って記述された階層構造を有する予め準備された記録領 域に格納されたデータについて、 階層構造を解析する解析ステップと、 解析ステ ップによる解析結果に基づいて、 記録領域に格納されているデータを階層構造が 解消されたデ一タに変換する変換ステツプとを備える。
上述の目的を達成するために、 この発明のさらに他の局面に従うデータ処理プ ログラムは、 上述のデータ処理方法をコンピュータに実行させるためのプロダラ ムであって、 上述の記録領域はこのコンピュータに関連して設けられる。
上述の目的を達成するために、 この発明のさらに他の局面に従うコンピュータ 読取可能な記録媒体には、 上述のデータ処理プログラムが記録されている。 上述の目的を達成するために、 この発明のさらに他の局面では、 テキストデー タとテキストデ一タにおいて出現する複数のタグを含み、 かつタグを用いて階層 構造化された電子データを処理するデータ処理装置が提供される。
このデータ処理装置は、 テキストデータが記録されるテキスト情報と、 複数タ グのそれぞれに対応して該タグの属性を示す属性データが記録されるタグ詳細情 報と、 複数タグのそれぞれについて該タグのテキストデータにおける出現位置を ' 示す出現位置データが記録されるタグ出現位置情報とを入力する入力手段と、 入 力手段により入力されたテキスト情報から、 電子データの処理対象となる任意領 域に対応するテキストデータを読出すテキスト読出手段と、 入力手段により入力 されたタグ出現位置情報に基づいて、 任意領域に対応するテキストデータにおい て出現するタグを特定し、 入力手段により入力されたタグ詳細情報から、 特定さ れたタグの属性データを読出す属性読出手段と、 テキスト読出手段により読出さ れたテキストデータを、 属性読出手段により読出された属性データに基づいて処 理する処理手段とを備える。
上述のデータ処理装置では、 電子データを、 そのテキスト情報とタグ出現位置 情報とタグ詳細情報という個別に準備された情報を用いてデータ処理するので、 処理対象のデータがタグ部分であるかテキスト部分であるかの判定に関する処理 を省略できて、 データ処理を高速に実行できる。
また、 電子データとは別個にタグ出現位置情報が準備されているので、 タグ出 現位置を特定するために電子データのタグに関する木構造 (階層化構造) を個別 に解析しなくて済む。 その結果、 木構造作成の処理を省略でき、 木構造を構築す るためのメモリ容量も省略できる。 またテキストデータの任意箇所に出現するタ グに関して処理する場合には、 タグ出現位置データを検索することで該任意箇所 に出現するタグを容易に特定できるから、 該任意箇所に出現するタグの属性デー タを'タグ詳細情報から速やかに読出すことができる。 その結果、 階層構造化され た電子データの処理を簡単化おょぴ高速化できる。
好ましくは、 タグ出現位置情報に記録される出現位置データは固定長のデータ である。 したがって、 タグ出現位置情報における各出現位置データの検索を該固 定長に基づいて行なうことができて、 検索を効率良く行なえる。 '
好ましくは、 出現位置データは、 テキストデータにおける該タグの有効範囲を 示す有効範囲データと、 タグ詳細情報における該タグの属性データが記録された 場所を示す記録場所データを含む。 属性読出手段は、 任意領域に該当するタグを 有効範囲データに基づいて特定し、 特定されたタグの記録場所データに基づいて タグ詳細情報から該タグの属性データを読出す。
したがって、 有効範囲データに基づいて任意領域のテキストデータにおいて出 現するタグを容易に特定できる。 また、 特定できたタグの属性データのタグ詳細 情報における記録位置も、 その記録場所データに基づいて容易に特定して読出し できる。
好ましくは、 処理手段は、 テキスト読出手段により読出されたテキストデータ について、 属性読出手段により読出された属性データに基づいて、 レイアウトを 計算するレイァゥト計算手段を有する。
したがって、 レイアウト計算のためのタグの属性データを、 上述のように簡単 に特定してタグ詳細情報から読出した後に、 読出した属性データに基づきレイァ ゥト計算できるから、 レイアウト計算にかかる負荷を少なくできる。 好ましくは、 レイァゥト計算手段はテキスト読出手段により読出されたテキス トデータの出力時のレイアウトを計算する。 この出力の態様の 1つには表示が含 まれる。
好ましくは、 有効範囲データは、 テキストデータにおける該タグの属性が有効 となる部分のデータの開始場所と終了場所を示す。 したがって、 有効範囲データ をデータの開始場所と終了場所により示すことができる。
好ましくは、 有効範囲データは、 テキストデータにおける該タグの属性が有効 となる部分のデータの開始場所と、該部分データの大きさとを示す。したがって、 有効範囲データをデータの開始場所と該データの大きさ (サイズ) とで特定でき る。
好ましくは、 記録場所データは、 タグ詳細情報における該タグの属†生データの 記録開始場所と終了場所とを示す。 したがって、 記録場所データを対応の属性デ ータの記録開始場所と終了場所とにより示すことができる。
好ましくは、 記録場所データは、 タグ詳細情報における該タグの属性データの 記録開始場所と該属性データの大きさを示す。 したがって、 記録場所データを属 性データの記録開始場所と該データの大きさ (サイズ) とで特定できる。
好ましくは、 電子データを検索してテキストデータを抽出して記録しテキスト 情報を作成するテキスト情報作成手段と、 電子データを検索してタグが検索され る毎に、 該タグに対応して属性データを記録しタグ詳細情報を作成するタグ詳細 情報作成手段と、 電子データを検索してタグが検索される毎に、 該タグに対応し て出現位置データを記録しタグ出現位置情報を作成するタグ出現位置情報作成手 段との少なくとも 1つをさらに備える。
したがってデータ処理装置では、 電子データについて、 テキスト情報、 タグ詳 細情報おょぴタグ出現位置情報のそれぞれを作成することができる。
好ましくは、 テキスト情報作成手段は、 電子データの任意領域を検索してテキ ストデータを抽出して記録しテキスト情報を作成する。タグ詳細情報作成手段は、 電子データの任意領域を検索してタグが検索される毎に、 該タグに対応して属性 データを記録しタグ詳細情報を作成する。 タグ位置情報作成手段は、 電子データ の任意領域を検索してタグが検索される毎に、 該タグに対応して出現位置データ を記録しタグ出現位置情報を作成する。
したがって、 電子データの全体ではなく任意領域の部分的なデータについて、 テキスト情報、 タグ詳細情報およびタグ出現位置情報のそれぞれを作成すること ができる。 '
好ましくは、 データ処理装置は、 電子データのためのテキスト情報、 タグ出現 位置情報およびタグ詳細情報を、 入力手段により入力可能か否か判断する手段を さらに備える。 - したがって、 入力手段によるこれらデータの入力が可能か否かをデータ処理に 先立ち判定できる。 また、 これらデータの作成は、 該判断の結果が、 入力不可を 示すときに行なわれるようにしてよい。
上述の目的を達成するために、 この発明のさらに他の局面に従う、 テキストデ ータとテキストデータにおいて出現する複数のタグを含み、 かつタグを用いて階 層構造化された電子データを処理するデータ処理方法は、 テキストデータが記録 されるテキスト情報と、 複数タグのそれぞれに対応して該タグの属性を示す属性 データが記録されるタグ詳細情報と、 複数タグのそれぞれについて該タグのテキ ストデータにおける出現位置を示す出現位置データが記録されるタグ出現位置情 報とを入力する入力ステップと、 入力ステップにより入力されたテキスト情報か ら、 電子データの処理対象となる任意領域に対応するテキストデータを読出すテ キスト読出ステップと、 入力ステップにより入力されたタグ出現位置情報に基づ いて、 任意領域に対応するテキストデータにおいて出現するタグを前記情報処理 部により特定し、 入力ステップにより入力されたタグ詳細情報から、 特定された タグの前記属性データを読出す属性読出ステップと、 テキスト読出ステップによ り読出されたテキストデータを、 属性読出ステップにおいて読出された属性デー タに基づいて処理する処理ステップとを備える。
好ましくは、 上述のデータ処理方法はコンピュータにおいて実行されて、 コン ピュータに関連の入力部を介して入力ステップが実行されて、 コンピュータに関 連の情報処理部を介してテキスト読出ステップ、 属性読出ステップおよび処理ス テツプが実行される。
上述の目的を達成するために、 この発明のさらに他の局面に従うデータ処理プ ログラムは、 上述のデータ処理方法をコンピュータに実行させるためのプログラ ムである。
上述の目的を達成するために、 この発明のさらに他の局面に従う記録媒体は、 上述のデータ処理プログラムを記録したコンピュータ読取可能な記録媒体である。 図面の簡単な説明
図 1 Aと図 1 Bは、 第 1の実施の形態による構造化文書の変換手順の概略を説 明する図である。 .
図 2は、本 明の第 1の実施の形態に係るデータ処理装置のプロック構成例を、 データ処理装置を含むデータ処理システムを構成する他の装置とともに示す図で ある。
図 3は、本発明の第 1の実施の形態に係るデータ処理のフローチャートである。 図 4は、 図 2の変換処理部の変換処理手順を示すフローチヤ一トである。
図 5は、 図 1 Aの XM Lデータを階層構造を解析して表示させた場合のレイァ ゥト、 およぴ図 1 Bの XMLデータを表示させた場合のレイアウトを示す図であ る。
図 6は、 図 2における表示装置の構成例を、 表示装置を含むデータ処理システ ムを構成する他の装置とともに示す図である。
図 7は、 本発明の第 1の実施の形態に係る表示装置による表示処理のフローチ ヤートである。
図 8は、本発明の第 2の実施の形態に係るデータ処理装置のプロック構成例を、 データ処理装置を含むデータ処理システムを構成する他の装置とともに示す図で ある。
図 9は、本発明の第 2の実施の形態に係るデータ処理のフローチャートである。 図 1 0は、 図 1 Aの XMLデータをいくつかのブロック単位に分割する場合の 分割する箇所を示す図である。
図 1 1は、 図 1 0のデータに関して補間処理を行ったことを示す図である。 図 1 2は、 図 1 1のデータを変換処理した後の状態を示す図である。
図 1 3は、' 図 8における表示装置の構成例を、 表示装置を含むデータ処理シス テムを構成する他の装置とともに示す図である。
図 1 4は、 本発明の第 2の実施の形態に係る表示装置の表示処理のフローチヤ ートである。 '
図 1 5は、 本実施の形態 3に係るデータ処理装置のブロック図である。
図 1 6は、 本実施の形態 3に係るデータ処理装置の一例である、 携帯型機器で 構成された表示装置を示す図である。
図 1 7は、 本実施の形態 3に係るタグ出現位置データのデータ構造の一例を示 す図である。
図 1 8は、 本実施の形態 3に係るタグ詳細データのデータ構造の一例を示す図 である。
図 1 9は、 本実施の形態 3に係る X HTML文書の一例を示す図である。 図 2 O Aと図 2 0 Bは、 図 1 9の XH TM L文書から作成したテキストデータ の一例を示す図である。
図 2 1は、 図 1 9の XH TML文書から作成したタグ出現位置データの一例を 示す図である。
図 2 2は、 図 1 9の XH TML文書から作成したタグ詳細データの一例を示す 図である。
図 2 3は、 本実施の形態 3に係るデータ処理のフローチヤ一トである。
図 2 4は、 本実施の形態 3に係るデータ処理のフローチャートである。
図 2 5は、 各実施の形態に係るデータ処理方法を実行するためのコンピュータ の構成図である。 '
図 2 6は、 従来の階層構造を有する電子データの一例を示す図である。
図 2 7は、 従来の階層構造を有する電子データから取得した木構造を説明する ための図である。 発明を実施するための最良の形態
以下、 この発明の各実施の形態について図面を参照して説明する。 なお、 ここ ではデータは表示により出力されるとしているが、 表示に限定されず印刷による 出力であってもよい。 (用語の説明)
まず、 H TML、 XML , S GM Lなどのマークアップ言語で記載されたテキ ストファイル中で用いられるタグに関連した用語について説明する。 タグは、 こ こでは文字列の出力態様 (インデント、 表示色など) を指定するための特別の文 字または記号の列であり、 予約語である。
テキストファイル中に記載されたタグの情報を解析する場合には、 開始タグ、 これと対となる終了タグ、 開始タグと終了タグとに挟まれた部分データである子 供要素とに分け、 また、 開始タグの中を、 タグ名、 属性名および属性値に解析す る必要がある。 対となる開始タグと終了タグをタグ対という。
開始タグとは、 「く」 で始まり、 「>」 で終わる文字列の部分をいう。 終了タグ とは、 「く/」 で始まり、 「 j で終わる文字列の部分をいう。 開始タグと終了タ グとに挟まれた部分に子供要素がない場合は、開始タグと終了タグを 1つにして、
「く」 で始まり、 「/ >」 で終わる文字列として記述することもできる。 これを、 空タグという。 空タグは、 開始タグと終了タグとが並んでいるのと同等に考える ことができる。
空タグでない場合には、 子供要素はテキストファイルを構成する文字列または 他のタグ対を含む。 子供要素において、 該子供要素を挟むタグ対の開始タグと同 一種類の属性を指示する 1つ以上のタグ対が含まれる場合には、 子供要素を挟む タグ対 (これを外部タグ対という) と該子供要素中に含まれるタグ対 (これを内 部タグ対という) は、 複数のタグ対が階層構造を有する入れ子関係を構成するの で、 内部タグ対の開始タグの属性値には上位層の外部タグ対の属性値が反映され ることになる。
タグ名は、 開始タグまたは空タグの 「く」 の次に続く文字列で示される。 タグ 名の後ろに 「=」 を含んだ文字列が続く場合、 「=」 の左辺が属性名、 右辺の 「"J で囲まれた文字列が属性値という。 例えば、 「く a b = " c " 〉 d < / a >」 と いう XM Lデータがあった場合、 「く a b = " c " >」 が開始タグ、 「d」 が子 供要素、 および「く/ a〉」 が終了タグである。 開始タグの中の 「.a」 がタグ名、
「b」 が属性名、 および 「c」 が属性値である。 実施の形態 1と 2では説明を簡 単にするために属性名 (属性の種類) とタグ名とは 1対 1に対応しているから、 属性の種類をタグ名により特定する。 属性名は該開始タグの子供要素に関する出 力時の属性、 たとえばインデント、 表示色などの固有の特徴を指し、 属性値は対 応する属性の値、たとえばィンデントの文字下げの数、表示色が赤色などを示す。 子供要素が空の場合の空タグの場合には、 「<a b= "c" />」 という形式に なる。 なお、 以下の説明では、 タグ名が 「a」 である場合にはそのタグ名を 「a タグ」、 属性名が 「b」 である場合にはその属性名を 「b属性」、 対応する属性値 を 「b属性の値」 という。
(構造化文書の変換の概略手順)
図 1 Aと図 1 Bを用いて、 本実施の形態による構造化文書の変換手順の概略を 説明する。 図 1Aは、 変換前の階層構造を有する XMLデータ 300を示し、 図 1 Bは XMLデータ 300を変換した後の XMLデータ 400を示す。 XMLデ ータ 400では元の階層構造が解消されて存在していない。 XMLデータ 300 の上から順に行ごとに変換を行うことで XMLデータ 400を取得する。
図 1 Aの XMLデータ 300では、 文字列 301 「ABCDE」 はタグの子供 要素となっていないことから、 デフォルトの値 「く p i n d e n t= "0" >」 と 「く f o n t c o 1 o r = "b 1 a c k" >J が設定されている。 このデフ オルト値により文字列 301に関して、字下げなし、かつ黒色表示が指定される。 文字列 301は変換の必要はないので図 1 Bの XMLデータ 400における文字 列 401 「ABCDE」 に対応する。 以下、 文字列の変換はないので特に説明し ない。
文字列 404に対応の文字列 304 「FGH I J」 はタグ 302 「く p i n d e n t = "1" >」 とタグ 303 「く f o n t c o l o r = "r e d" >」 の子供要素となっていることから、 1文字の字下げ、 かつ赤色表示となる。 文字 列 304よりも上位階層に同じタグ名となるタグが存在しないので変換するタグ の属性の値への影響はなく、タグ 302と 303は XMLデータ 400における、 タグ 402 「く p 2 i n d e n t = " 1 " Z〉」 とタグ 403 「く f o n t 2 c o 1 o r = " r e d " />J へとそれぞれ変換される。 開始タグが記述された 以降では、同じタグ名の終了タグが記述されるまでの範囲においてタグの情報 (属 性値) が有効であり、 この範囲を有効範囲という。 ' p 2 ' タグおよび ' f o n t 2' タグは、 空タグであり有効範囲の指定がない。
文字列 306 「: LMNO」 はタグ 302 「く p i n d e n t- "1" >」、 タグ 303 「く f o n t c o 1 o r = "r e d" 〉」、 およびタグ 305 「く p
1 n d e n t = "2" >」 の子供要素となっていることから、 3文字の字下げ、 かつ赤色表示となる。 タグ 305の上位階層にタグ 302が存在することから、 タグ 305の変換において、 タグ 302の情報を反映する。 すなわち、 タグ 30 5は XMLデータ 400ではタグ 405 「く p 2 i n d e n t = " 3 " />」 へと変換される。
タグ 403 「く f o n t 2 c o 1 o r = " r e d " />J とタグ 405 「く p 2 I i n e n t = " 3 " />」 の情報に基づいて文字列 406 「KLMN〇」 は 3文字の字下げ、 かつ赤色表示となる。 これは XMLデータ 300に基づく変 換前の表示と同じとなる。
文字列 309 「P Q R S T」 はタグ 302 「く p i n d e n t = "1" >J の子供要素となっていることから、 1文字の字下げ、 デフォルト値である黒色表 示となる。 タグ 305 「く p i n d e n t = "2" >」 のタグの情報は、 タグ 307 「く/ p >」 の終了タグで終了していることから、 タグ 307 Γ</ρ >j に上位階層で同じタグ名であるタグ 302 「く p i n d e n t- " 1 " >」 の 情報を反映する。 すなわち、 タグ 307は XMLデータ 400におけるタグ 40 7 「< p 2 i n d e n t = "1" />へと変換される。
同様にして、 タグ 303 「< f 0 n t c o 1 o r = "r e d" >」 のタグの 情報は、 タグ 308 「く/ f o n t >」 の終了タグで終了している。 タグ 308 「く Z f o n t >j の上位階層に同じタグ名であるタグは存在しないので、 デフ オルトの値である 「く f 0 n t c o 1 o r = "b 1 a c k" 〉」 の情報を反映 する。 すなわち、 タグ 308は XMLデータ 400におけるタグ 408 「く f o n t 2 c o l o r = "b l a c k" />」 へと変換される。
タグ 407 「く p 2 i n d e n t = " 1 " />」 とタグ 408 「く f o n t
2 c o l o r= " b l a c k" >」 の情報により文字列 409 「PQRST」 は 1文字の字下げ、 かつ黒色表示となり、 変換前の表示と同じとなる。
文字列 31 1 「UVWXY」 はタグの情報がないことから、 デフオノレトが有効 となって字下げなし、 かつ黒色表示となる。 タグ 302 「く p i n d e n t = "1" >」 のタグの情報は、 タグ 310 「く/ p >」 の終了タグで終了している。 タグ 310 「く/ p >」 の上位階層に同じタグ名であるタグは存在しないので、 デフォルト値である 「く p i n d e n t = "0" >」 の情報を反映する。 すな わち、 タグ 310は XMLデータ 400のタグ 410 「く p 2 i n d e n t = "0" />」 へと変換される。
タグ 408 「く f o n t 2 c o l o r = " b l a c k,, />」 とタグ 410 「く p 2 i n d e n t = "0" >」 の情報により文字列 41 1 「UVWXY」 は字下げなし、 かつ黒色表示となり、 変換前の表示と同じになる。
以上により、 表示する情報 (文字列など) および表示態様 (インデント、 表示 色など) に変更はないまま、 図 1 Aの階層構造を有する XMLデータ 300は、 図 1 Bの階層構造が解消されて存在しない XMLデータ 400へと変換される。
(第 1の実施形態)
(データ処理装置を含むデータ処理システムの説明)
図 2は、 本実施の形態に係るデータ処理装置のプロック構成例を、 データ処理装 置を含むデータ処理システムを構成する他の装置とともに示す図である。図 3は、 本実施の形態に係るデータ処理のフローチャートである。
図 2を参照してデータ処理システムは、ネットワーク 1 1 1、記録媒体 1 12、 データ処理装置 1 13、 および表示装置 1 10から構成される。
ネットワーク 1 1 1は、 データ処理装置 1 1 3とデータを記録したデータべ一 スを持つサーバ、 もしくは他のパーソナルコンピュータと接続される。 データ 1 01はネットワーク 1 1 1を介してデータ処理装置 1 13へと供給される。 記録 媒体 1 12はデータ 102が予め記録されて、 データ処理装置 1 13へデータ 1 02を供給するために用いられる。 記録媒体 1 12としては、 フレキシブルディ スク (FDとレヽっ 、 CD— ROM (compact disc read only memory;, ノヽ.ードテ イスクなどがある。 データ処理装置 1 13は、 ネットワーク 1 1 1および記録媒 体 1 1 2から供給されたデータ 101および 102を入力して処理し、 処理結果 のデータを外部に出力するための装置である。 表示装置 1 10はデータ処理装置 1 13の出力する情報を受けて表示をするための装置である。 表示装置 1 10に ついての詳細は後述する。 また、 データ処理装置 1 1 3の出力する情報は、 ネッ トワーク 1 1 1を介して外部装置に送信されてもよいし、 記録媒体 1 12に記録 されてもよレ、。
データ 101および 102は、 所定の処理を実行させるための文書記述言語の 定義に従って構造化されたデータであって、 階層構造を有する構造化文書を記録 するためのデータ構造である SGMLや XMLなどを用いて記録されている。 以 下の説明では、 データは: XMLに従い記述され、 データ要素を特定できるデータ 構造を有するものと想定して説明する。 なお、 データを記述する方式は XM に 限定されない。
(データ処理装置 1 1 3の説明)
図 2に示すデータ処理装置 1 13は、 入力部 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データのすべ てについて、 開始タグ、 終了タグ、 子供要素、 ならびに開始タグの中のタグ名、 属性名および属性値の情報を取得し、 取得した情報に基づきタグの階層構造を解 析して、 階層構造の情報を取得する (S 1002)。 このとき、 XMLデータを先 頭から行単位で解析して取得したタグの情報は予め準備された所定記憶領域に順 次格納される。
変換処理部 106は階層構造解析部 105によって解析されて取得された所定 記憶領域に格納された情報に基づいて、 XMLデータにおいて階層構造を有して いるタグについて変換処理を行う (S 1004)。変換処理部 106はこの変換処 理を階層構造を有しているすべてのタグについて行ったかどうかを判定し、 全て について行なったことを判定したとき変換処理を終了する (S 1003)。変換処 理部 106についての詳細は後述する。
変換処理部 106により変換処理されて出力された変換後の XMLデータは、 データ記憶部 104に再び記憶される。 出力部 107は、 データ記憶部 104力 ら読出された変換後のデータを入力して外部に出力する (S 1005)。
制御部 108は、入力部 103、データ記憶部 104、階層構造解析部 105、 変換処理部 106、 および出力部 107の上述した一連の処理の流れを与えられ る指示などに基づいて制御する。 指示入力部 109は、 データ処理装置 113を 操作するために外部から与えられる指示 114、 たとえばユーザの指示 114を 入力して制御部 108へと出力する。 '
(具体的な変換処理)
次に、 変換処理部 106による XMLデータの階層構造の情報に基づいた変換 処理 (S 1004) の手順について説明する。 図 4は変換処理部 106の変換処 理手順を示すフローチャートである。 ここでは、 データ処理装置 113に入力す る変換処理前の XMLデータは図 1 Aの XMLデータ 300であり、 データ処理 装置 113の出力となる変換処理後の XMLデータは図 1 Bの XMLデータ 40 0であると想定する。 また、 図 5には、 図 1 Aの XMLデータ 300を階層構造 を解析して表示させた場合のレイァゥト、 およぴ図 1 Bの XMLデータ 400を 表示装置 110で表示させた場合のレイアウトを示す。
(タグの説明)
まず、 図 1 Aに記述されたタグについて説明する。 'p' タグは段落の表示に関 連するタグであり、 ' i n d e n t' 属性は現在の文章の開始位置から ' i n d e n t' 属性の値だけ文字数を下げて (文字数分の空白をおいて) 文章を開始する ことを意味する。 例えば、 タグ 305 「く p i n d e n t "2" >」 は、 現 在の文章の開始位置から二文字分下げてから文章を開始することを意味する。' f o n t ' タグは文字の表示に関連するタグであり、 'c o l o r '属性は文字の色 をデフオノレト (黒) から変更して表示することを意味する。 例えば、 タグ 303 「く f o n t c o 1 o r = "r e d" >」 は、 文字の色を赤に変更して表示す ることを意味する。 また、 特に指定がない場合のデフォルトとして、 文章の開始 位置は左側の先頭を指示する 「く p i n d e n t = "0" >」 が設定され、 ま た、 文字の色は黒を指示する 「く f 0 n t c o 1 o r = "b 1 a c k" >」 力 S 設定されているものと想定する。
(レイァゥトの説明)
図 1 Aの XMLデータ 300を解析して表示させると図 5のレイァゥトとなる。 図 5の 「口」 は ' p ' タグの ' i n d e n t ' 属性で指定される文章の開始位置 の文字下げの一文字分を示す。 また、 二重下線は ' f o n t ' タグの ' c o 1 o r ' 属性により文字の色が赤になっていることを示す。
変換処理では、 まず前述の所定記憶領域に格納されたタグの情報を検索して、 変換対象となるタグの情報を取得する(S 1 101 )。図 1 Aでは、タグ 302「く p i n d e n t = " 1 " >」 を最初に取得する。
次に、 取得したタグについて、'開始タグ、 終了タグ、 およぴ空タグのいずれか であるかを判定する (S 1 102)。 ここで、 終了タグ以外の開始タグおよび空タ グと判定した場合は、 変換の必要はないのでそのまま変換処理を終了する。 図 1 Aでは、 タグ 302は開始タグであるのでそのまま変換処理を終了する。
続けて、 所定記憶領域を検索することでタグ 303 「く f o n t c o l o r = "r e d" 〉」、 タグ 305 「く p i n d e n t = " 2 " >」 と順に取得する けれども、 これらは開始タグと判定されるので、 そのまま変換処理を終了する。 次に所定記憶領域から読込んで取得するタグ 307 「く/ p〉」 は終了タグと判 定されるので変換処理を続けることになる。
取得したタグが終了タグの場合、 終了タグに対応する開始タグの情報を所定記 憶領域を検索して取得する (S 1 103)。 図 1 Aでは、 タグ 307の終了タグに 対応する開始タグはタグ 305が検索される。
次に終了タグと対応する開始タグの階層より上位階層にタグ名が同じであるタ グが存在するかどうかを検索する (S 1 104)。 ここで、 上位階層とは、 上述の 入れ子関係に従い、 変換処理を行う開始タグを子供要素に含むタグの階層を意味 する。
(図 4の S 1104 "YES" の場合)
上位階層にタグ名が同じであるタグが存在する場合について説明する。 検索の 結果、 上位階層にタグ名が同じであるタグが存在する場合、 上位階層にあるタグ の情報を取得する (S 1 105)。 取得されるタグの情報は、 上位階層の開始タグ の属性の情報である。 図 1 Aでは、 タグ 305およぴタグ 307の階層の上位階 層にはタグ 302およびタグ 310 「く Zp〉」 が存在する。 検索の結果、 上位 階層の開始タグのタグ 302を取得できるので、 その属性の情報を取得する。 次 に、 取得した情報が反映されるように S 1 103で取得している開始タグを変換 する (S 1 107)。
ここでの変換は、 取得した情報と開始タグとに同じ属性がある場合はそれぞれ の属性値の加算や差分などの処理を行い、 取得した情報と開始タグとに同じ属性 がない場合は属性の追加や削除などの処理を行うことを指し、 必要に応じてタグ 名や開始タグ、 終了タグ、 空タグなどの種類も変換することを指す。
図 1 Aでは、 タグ 302の ' i n d e n t' 属性をタグ 305の ' i n d e n t, 属性に反映させる。 ' p, タグの ' i n d e n t' 属性は現在の位置から ' i n d e n t' 属性の値の文字数分だけ下げてから文章 (文字列) を開始すること を意味するので、 ここでは加算を行う。 タグ 302の ' i n d e n t' 属性の値 「1」 とタグ 305の ' i n d e n t ' 属性の値 「 2」 を加算して ' i n d e n t ' 属性の値 「3」 とする。 さらに、 タグ名を 'ρ' タグから 'ρ 2' タグへと 変換し、 開始タグから空タグへと変換する。 結果として、 タグ 305は図 1 Bに おけるタグ 405 「く p 2 i n d e n t - "3" />」へと変換される。 ' p 2 ' タグは、 'p' タグと同様、 ' i n d e n t' 属性の値の文字数分だけ下げてから 文章 (文字列) を開始するこ を意味する。 'p' タグとの違いは、 'ρ' タグが 開始タグと終了タグによって有効範囲を指定するのに対し、 'ρ 2' タグは空タグ で記述され、 以降 'ρ 2' タグによる属性の変更があるまでを有効範囲とする点 である。
. 開始タグの変換処理後、 当該開始タグに対応の終了タグを所定記憶領域から検 索して、この終了タグに対しても取得した情報が反映されるように変換を行う( S 1 108)。 終了タグには属性がないので、 ここでは、 取得した情報の属性を終了 タグの属性に追加する。 また、 必要に応じてタグ名や開始タグ、 終了タグ、 空タ グなどの種類も変換する。 図 1 Aでは、 タグ 307に ' i n d e n t' 属性の値 「 1」 を追加する。 さら に、 タグ名を 'p' タグから 'ρ 2' タグへと変換し、 終了タグから空タグへと 変換する。結果として、図 1 Αの終了タグ 307は図 1 Bにおけるタグ 407 「く P 2 i n d e n t = "1" Z>」 へと変換される。 開始タグおよび終了タグの 変換を終えて変換処理は終了する。
(図 4の S 1 104 "NO" の場合)
次に、上位階層にタグ名が同じであるタグが存在しない場合について説明する。 上位階層にタグ名が同じであるタグが存在しな!/、場合、 そのタグ名のタグの初期 設定 (デフォルト) の情報を取得する (S 1 106)。
図 1Aでは、 タグ 308 「く Zf o n t >」 と、 これに対応する開始タグ 30 3 「く f o n t c o 1 o r = "r e d" >」 との階層よりも上位階層に ' f o n t 'タグは存在しないので、 ' f 0 n t 'タグの初期設定である「< f 0 n t c o 1 o r = "b 1 a c k" >」 を取得する。
取得した情報を反映するように開始タグおよび終了タグを変換する処理は、 上 位階層にタグ名が同じであるタグが存在した場合と同様であるので説明は省略す る。
図 1 Aでは、 'c o 1 0 r '属性の値「b 1 a c k」を反映させるように変換し、' 結果としてタグ 303は図 1 Bのタグ 403 「く f o n t 2 c o 1 o r = " r e d" />」へと変換され、 タグ 308は図 1 Bのタグ 408 「く f o n t 2 c o 1 o r = "b 1 a c k" Z>」 へと変換される。 ' f o n t 2 ' タグは ' p 2 ' タグと同様、以降、 ' f o n t 2' タグによる属性の変更があるまでを有効範囲と する点で ' f o n t' タグと異なる。
(変換処理の残りの説明)
変換処理を図 1 Aの XMLデータ 300のすベてのタグについて行うと図 1 B の XMLデータ 400が示す出力結果となる。 図 1 Bでは、 階層構造となる子供 要素を持つ開始タグおよび終了タグで記述されたタグは存在せず、 すべて階層構 造を取らない空タグで記述されている。
変換処理は、 終了タグに着目して変換する処理に限ったものではない。 終了タ グの代わりに開始タグに着目して同様の変換を行ってもよい。 また、 変換処理において、 XM Lデータの最後にある終了タグは変換処理を行 わず省略してもよい。 例えば、 図 1 Aにおいて、 タグ 3 1 0以降にデータが存在 しない場合、 タグ 3 1 0を図 1 Bのタグ 4 1 0 「く p 2 i n d e n t = " 0 " / >」 へと変換せず、 すなわち変換を省略することができる。 タグ 4 1 0以降に はデータがないので、 タグ 4 1 0の情報を必要としないためである。 この場合、 図 1 Bにおいては、 文字列 4 0 9 「P Q R S T」 がデータの末端となる。 変換を 省略することにより、 変換後の XM Lデータ 4 0 0のデータ容量を削減すること ができる。
(表示装置 (図 6 ) の説明)
次に、表示装置について説明する。図 6は、図 2における表示装置の構成例を、 表示装置を含むデータ処理システムを構成する他の装置とともに示す図である。 すなわち、 図 6におけるネットワーク 2 1 1、 記録媒体 2 1 2、 データ 2 0 3を 有するデータ処理装置 2 1 3、 および表示装置 2 1 4は、 それぞれ図 2における ネットワーク 1 1 1、 記録媒体 1 1 2、 データ処理装置 1 1 3、 および表示装置 1 1 0に対応する。 また図 6のデータ 2 0 1と 2 0 2は図 2のデータ 1 0 1と 1 0 2に対応する。 図 7には、 表示装置 2 1 4による表示処理のフローチャートを 示す。
表示装置 2 1 4は、 入力部 2 0 4、 データ記憶部 2 0 5、 データ構造解析部 2 0 6、 レイァゥト計算部 2 0 7、 表示部 2 0 8、 制御部 2 0 9、 および外部から の指示 2 1 5を入力して制御部 2 0 9に出力する指示入力部 2 1 0を備える。 入力部 2 0 4は、 ネットワーク 2 1 1を介して送信されたデータ 2 0 1、 記録 媒体 2 1 2に予め記録されたデータ 2 0 2、 もしくはデータ処理装置 2 1 3の出 力であるデータ 2 0 3の読込みを行う (S 1 2 0 1 )。 データ 2 0 1、 2 0 2およ ぴ 2 0 3は、 データ処理装置 2 1 3において処理されたデータである。 データ記 憶部 2 0 5は、 入力部 2 0 4によって読込まれたデータ 2 0 1またはデータ 2 0 2またはデータ 2 0 3を記憶する。
以下、 図 7のフローチャートに従いデータ表示処理の手順について説明する。 (データ構造解析部 2 0 6の説明)
まず、 データ構造解析部 2 0 6は、 データ記憶部 2 0 5に記憶されたデータ 2 0 1またはデータ 2 0 2またはデータ 2 0 3のデータ構造を解析する (S 1 2 0 2 )。データ 2 0 1またはデータ 2 0 2またはデータ 2 0 3は図 1 Bに示すような 階層構造が解消されて存在しなレ、構造化文書のデータであるから、 データ構造解 析部 2 0 6は階層構造を解析する処理を必要とせず、 タグ情報と文字列とを解析 するだけでよレヽ。図 1 Bでは、文字列 4 0 1 「A B C D E J、 4 0 4「F G H I J」、 4 0 6 「K LMN〇」、 4 0 9 「P Q R S T」、 および 4 1 1 「U VWX Y」 が文 字列であること、 また、 タグ 4 0 2 「く p 2 i n d e n t = " 1 " / >」、 4 0 3、 4 0 5、 4 0 7、 4 0 8および 4 1 0がタグであることを解析 (特定)する。 解析の結果はレイァゥト計算部 2 0 7に出力される。
(レイアウト計算部 2 0 7の説明)
レイァゥト計算部 2 0 7は、 データ構造解析部 2 0 6から出力されるタグと文 字列の解析結果を順に読込む(S 1 2 0 3 )。読込んだ情報に基づいて表示するた めのインデントなどのレイアウトを計算する (S 1 2 0 4 )。 図 I Bの場合には、 はじめに文字列 4 0 1を読込みレイアウトを計算する。 次に読込むタグ 4 0 2と タグ 4 0 3の情報を元に文字列 4 0 4のレイアウトを計算する。 次にタグ 4 0 5 の情報を読込み取得したときに、 タグ 4 0 5と同じ ' p 2 ' タグであるタグ 4 0 2の情報を保持する必要はない。 データ処理装置 2 1 3において、 予め階層構造 を解析し、 表示態様の変更を指示するタグの情報に変換しているので、 タグ 4 0 5にはタグ 4 0 2の情報が反映されている。 したがって、 タグ 4 0 3とタグ 4 0 5の情報を元に文字列 4 0 6のレイアウトを計算すればよい。以降、同様にして、 同じタグ名であるタグの情報の取得によって、 先に読込んでレ、る同じタグ名のタ グの情報は保持しなくてよレ、。同じタグ名のタグの情報を保持しなくてよいので、 メモリ使用量を削減できる。 計算結果に従いレイァゥトされたデータは表示部 2 0 8に与えられて、 表示部 2 0 8により表示.される。
(その他の部分の説明) '
表示部 2 0 8は、 計算結果に基づきレイアウトされたデータをレイァゥト計算 部 2 0 7から入力して外部に表示する (S 1 2 0 5 )。図 1 Bのデータ 4 0 0を処 理した場合には、 図 1 Aと同様、 図 5のように表示される。 制御部 2 0 9は、 入 力部 2 0 4、 データ記憶部 2 0 5、 データ構造解析部 2 0 6、 レイァゥト計算部 2 0 7、 および表示部 2 0 8の一連の処理の流れを制御する装置である。 指示入 力部 2 1 0は、 表示装置 2 1 4を操作するユーザの指示 2 1 5を入力して制御部 2 0 9へ出力する (S 1 2 0 6 )。ユーザからの表示レイアウトの変更に関する指 示 2 1 5があった場合、 再びタグなどの解析結果を順に読込む処理を行い (S 1 2 0 3 )、指示された変更内容を用いてレイアウトを計算し直して表示を行う。ュ 一ザの指示 2 1 5がない場合は、 ユーザの指示 2 1 5を受けるまで待ち状態を保 持する。 また、 ユーザから表示処理終了の指示 2 1 5があった場合は、 表示処理 のすベてを終了する。
以上説明したように、 データ処理装置 2 1 3において、 階層構造を有する構造 化文書のデータ 3 0 0を、 あらかじめ階層構造が解消されて存在しない構造化文 書のデータ 4 0 0へと変換処理しておくことで、 表示装置 2 1 4においてデータ 4 0 0を表示することが可能となって、 階層構造を解析する処理を省略できるの で、 高速に表示処理することができる。 また、 階層構造を記憶しておく必要がな いため、 メモリの使用容量を削減することができる。
(第 2の実施形態)
次に第 2の実施形態について説明する。.
図 8は、本発明の第 2の実施の形態に係るデータ処理装置のプロック構成例を、 データ処理装置を含むデータ処理システムを構成する他の装置とともに示す図で ある。 図 9は、 本発明の第 2の実施の形態に係るデータ処理のフローチャートで ある。
図 8を参照してデータ処理システムは、ネットワーク 5 1 2、記録媒体 5 1 3、 データ処理装置 5 1 4、 および表示装置 5 1 1を備える。 .
ネットワーク 5 1 2は、 データ処理装置 5 1 4とデータを記録したデータべ一 スを持つサーバ、 もしくは他のパーソナルコンピュータと接続される。 データ 5 0 1はネットワーク 5 1 2を介してデータ処理装置 5 1 4へと供給される。 記録 媒体 5 1 3はデータ 5 0 2が予め記録されて、 データ処理装置 5 1 4へデータ 5 0 2を供給するために用いられる。 記録媒体 5 1 3としては、 F D、 C D - R O M、 ハードディスクなどがある。 データ処理装置 5 1 4は、 ネットワーク 5 1 2 および記録媒体 5 1 3から供給されたデータ 5 0 1および 5 0 2を入力して処理 し、 外部に出力するための装置である。 表示装置 5 1 1はデータ処理装置 5 1 4 の出力する情報を受けて表示をするための装置である。 表示装置 5 1 1について の詳細は後述する。 また、 データ処理装置 5 1 4の出力する情報は、 ネットヮー ク 5 1 2を介して図示のない外部装置に送信されてもよいし、 記録媒体 5 1 3に 記録されてもよレ、。
データ 5 0 1および 5 0 2も第 1の実施形態における図 2のデータ 1 0 1お.よ びデータ 1 0 2と同様であるため、 説明は省略する。
データ処理装置 5 1 4は、 入力部 5 0 3、 データ記憶部 5 0 4、 ブロック分割 部 5 0 5、 階層構造解析部 5 0 6, 変換処理部 5 0 7、 出力部 5 0 8、 制御部 5 0 9、 および指示入力部 5 1 0を備える。
データ処理装置 5 1 4のデータ処理手順について図 9のフローチャートに従い 説明する。 入力部 5 0 3はデータ 5 0 1またはデータ 5 0 2の読込みを行う (S 1 3 0 1 )。データ記憶部 5 0 4は、入力部 5 0 3によって読込まれたデータ 5 0 1またはデータ 5 0 2を記憶する。 ブロック分割部 5 0 5は、 データ記憶部 5 0 4に記憶されたデータ 5 0 1またはデータ 5 0 2をいくつかのブロック単位に分 割するブロック分割処理を行う (S 1 3 0 2 )。
(ブロック分割処理の説明)
ここで、 ブロック分割処理について説明する。 図 1 0は、 図 1 Aの XM Lデー タ 3 0 0をいくつかのプロック単位に分割する場合の分割する箇所を示す図であ る。 図 1 0では説明のために図 1 Aの符号 3 0 1〜3 1 1に代替して符号 7 0 1 〜7 1 1を用いている。 符号 7 0 1〜7 1 1により示す内容は符号 3 0 1〜3 1 1が示すものに一致する。
図 1 0では文字列 7 0 4 「F G H I J」 とタグ—7 0 5 「く p i n d e n t - " 2 " >」 の間で XM Lデータ 3 0 0の分割を行い、 その結果、 XMLデータ 3 0 0はブロック 7 1 2とブロック 7 1 3の 2つのブロックに分割されると想定す る。
ブロックの大きさは固定サイズとすることが基準となる。 ブロックに分割する 箇所は固定サイズに該当する付近に記述されたタグに基づき分割する。 固定サイ. ズそのもので分割するのではなく、 タグの記述の前後で分割させることでタグの 記述そのものが分割されることを回避する。 タグの記述そのものを分割してしま うと、 ブロックを個々に読込んでもタグ記述が分断されていて解析できない。 固 定サイズ近辺で適切な分割をするためのタグが存在しない場合は、 さらに範囲を 広げてそのようなタグを検索する。 基準となる固定サイズははじめから定義され ているものとする。 定義されるサイズは表示装置 51 1が処理するのに適切なサ ィズとする。
ブロック分割処理においては、 もし階層構造を有しているタグの子供要素が分 割された場合には、 たとえばタグ 702 「く p i n d e n t = " 1 " >」 とタ グ 703 「く f o n t c o 1 o r = "r e d" >」 の子供要素が分割されてレ ィアウト計算不可能な状態の場合には、 分割した箇所の前後において、 分割され たタグの情報を補う処理 (以下、 補間処理という) を行う。 図 1 1は、 図 10の データに関して補間処理を行ったことを示す図である。
図 1 1の符号 801〜804および符号 809〜81 5の示す内容は図 10の 符号 701〜704および符号 705〜71 1の示すものに一致する。 図 1 1の ブロック 816は、 図 10のプロック 712のデータに、 タグ 803 「く: f o n t c o 1 o r = "r e d" >」 に対応する終了タグとしてタグ 805 「く/ f o n t〉」 が追加され、 タグ 802 「く p i n d e n t = "1" >」 に対応す る終了タグどしてタグ 806 「く/ p>」 が追加されたデータを示す。 また、 ブ ロック 817は、 図 10のブロック 713のデータに、 タグ 812 「く/ f o n t >」 に対応する開始タグとしてタグ 808 「く f o n t c 0 1 o r = "r e d" >J が追加され、 タグ 814 「く Zp>」 に対応する開始タグとしてタグ 8 07 「く p i n d e n t = "1" >」 が追加されたデータを示す。 以上のよう な対応する開始タグまたは終了タグを追加するような補間処理 より、 プロック 816およびプロック 817それぞれが、 レイァゥト計算可能な XMLデータと なる。
(階層構造解析部 506の説明)
階層構造解析部 506は、 プロック分割部 505において分割処理された XM Lデータを入力して、 各プロック毎にその中のタグの情報およぴ階層構造を解析 して解析結果の情報を変換処理部 507に出力する (S 1304)。階層構造解析 部 506は、 第 1の実施形態における図 2の階層構造解析部 105と同様に解析 処理するので、 その説明は省略する。
(変換処理部 507の説明)
変換処理部 507は、 階層構造解析部 506から与えられる解析結果の情報に 基づいて、階層構造を有しているタグには変換処理を行う (S 1306)。変換処 理については、 第 1の実施形態の変換処理と同様であるため説明は省略する。 図 12は、 図 1 1のデータを変換処理した後の状態のデータを示す図である。 図 11のプロック 816においては、 タグ 805およびタグ 806以降にデータ が存在しないので、 変換処理は行わず、 変換を省略をしている。 したがって、 ブ ロック 816に対応の図 12のブロック 91 3は、 文字列 901および 904、 ならびにタグ 902および 903を含み、 文字列 904 「FGH I J」 がプロッ ク 913の末端となっている。 変換処理をすベてのタグについて行ったかどうか を判定し変換処理を終了する (S 1305)。またブロック 81 7に対応の図 12 のブロック 914は、文字列 907、 910および 91 2、ならびにタグ 905、 906、 908、 909および 91 1を含む。
以上の解析処理および変換処理をすベてのプロックについて終了したかどうか を判定し (S 1 303)、 終了したと判定した場合、 変換後のデータは、データ記 憶部 504に再び記憶される。 出力部 508は、 データ記憶部 504に記憶され た変換後のデータを読出して外部に出力する (S 1 307)。
制御部 509は、入力部 503、データ記憶部 504、プロック分割部 505、 階層構造解析部 506、 変換処理部 507、 および出力部 508の一連の処理の 流れを制御する。 指示入力部 510は、 データ処理装置 514を操作するユーザ の指示 515を制御部 509へと伝える。
データ処理は、 すでにブロック単位に分割された XMLデータに対して行って もよい。 データ 501および 502は、 すでにプロック単位に分割されたデータ である場合、 ブロック分割部 505においては、 ブロック内でさらにブロック分 割処理を適用する、 もしくは、 ブロック分割処理を省略する。 以降の階層構造解 析部 506の解析処理おょぴ変換処理部 507の変換処理は同様にして行うこと ができる。 (表示装置 5 1 1の説明)
次に、 表示装置について説明する。 図 1 3は、 図 8における表示装置 5 1 1の ブロック構成例を、 表示装置を含むデータ処理システムを構成する他の装置とと もに示す図である。 すなわち、 図 1 3におけるネットワーク 6 1 2、 記録媒体 6 1 3、 デ、ータ処理装置 6 1 4、 および表示装置 6 1 5は、 それぞれ図 8における ネットワーク 5 1 2、 記録媒体 5 1 3、 データ処理装置 5 1 4、 および表示装置 5 1 1に対応する。 図 1 4は、 表示装置 6 1 5の表示処理のフローチャートであ る。
表示装置 6 1 5は、 入力部 6 0 4、 データ記憶部 6 0 5、 ブロック情報解析部 6 0 6、 データ構造解析部 6 0 7、 レイァゥト計算部 6 0 8、 表示部 6 0 9、 制 御部 6 1 0、 および指示入力部 6 1 1を有する。
入力部 6 0 4は、 ネットワーク 6 1 2を介して受信するデータ 6 0 1、 または 記録媒体 6 1 3に予め記録されたデータ 6 0 2、 またはデータ処理装置 6 1 4の 出力であるデータ 6 0 3の読込みを行う (S 1 4 0 1 )。 データ 6 0 1、 6 0 2お よび 6 0 3は、 データ処理装置 6 1 4において処理されたデータである。 データ 記憶部 6 0 5は、 入力部 6 0 4によって読込まれたデータ 6 0 1またはデータ 6 0 2またはデータ 6 0 3を記憶する。 '
図 1 4のフローチャートに従い表示処理手順について説明する。
まず、 プロック情報解析部 6 0 6は、 データ記憶部 6 0 5に記憶されたデータ 6 0 1またはデータ 6 0 2またはデータ 6 0 3のブロック情報を解析する (S 1 4 0 2 )。ブロック情報の解析によって、表示に必要となる対象ブロックを決定す る (S 1 4 0 3 )。表示に必要となる対象プロックを決定することでデータ 6 0 1 またはデータ 6 0 2またはデータ 6 0 3のデータのはじめ (先頭) からデータす ベてを解析する必要がなく、 表示に必要なプロック内のデータのみを解析するの で処理負荷が軽減される。
表示に必要なブロックの位置は、 XM Lデータのコンテンツを必ず最初(先頭) から表示する表示装置では 1ブロック目となり、 前回表示した位置を指示する位 置情報を記録しておくような表示装置では記録された位置情報に基づいたプロッ クの位置となる。 また、 表示に必要となるプロック数は表示画面のサイズや表示設定に基づいて 決定される。 例えば、 1ブロックあたり 3 0文字を含む場合に、 表示設定が 5 0 文字であるとしたら表示のためには少なくとも 2ブロック、 最大で 3ブロック必 要になる。 画像を含むようなレイァゥトではピクセル数などに基づいて表示に必 要となるブロック数を決定する。
上記の表示のためのプロック位置とプロック数の決定によって、 決定したプロ ックの位置から決定したプロック数分のプロックが表示に必要となる対象プロッ クになる。
データ構造解析部 6 0 7、 レイアウト計算部 6 0 8、 および表示部 6 0 9にお ける処理 S 1 4 0 4から S 1 4 0 7は、 第 1の実施形態における図 7の処理 S 1 2 0 2から S 1 2 0 5と同様であるため説明は省略する。
制御部 6 1 0は、 入力部 6 0 4、 データ記憶部 6 0 5、 ブロック情報解析部 6 0 6、 データ構造解析部 6 0 7、 レイァゥト計算部 6 0 8、 および表示部 6 0 9 の一連の処理の流れを制御する。
指示入力部 6 1 1は、 表示装置 6 1 5を操作するユーザの指示 6 1 6を入力し て制御部 6 1 0へ出力する (S 1 4 0 8 )。ユーザからの指示 6 1 6があった場合 に、 表示するプロックが前回と同一ブロックである場合は、 再びタグを順に読込 む処理を行い、 レイアウトを計算し直して表示を行う。 同一ブロックでない場合 は、表示の対象となるプロックを決定する処理から行う (S 1 4 0 9 )。 ユーザの 指示 6 1 6の入力がない場合は、 ユーザの指示 6 1 6を受けるまで待ち状態を保 持する。 また、 ユーザから終了の指示 6 1 6を入力した場合は、 表示処理のすべ てを終了する。
ここで、 ユーザの指示 6 1 6とは、 ユーザが表示装置 6 1 5そのものを操作す ることにより入力される指示をいう。 例えば、 携帯電話を想定した場合に、 十字 ボタン(上、下、左、右への操作ボタン)や決定ボタンの操作による指示となる。 '図 6におけるユーザ指示 2 1 5についても同様の内容となる。
表示ブロックは、 上記ユーザ指示となる操作に応じて決定することになる。 例 えば、 XM Lデータのコンテンツを開いたとき (表示したとき) に 1ブロック目 の最初を表示しているとする。 ユーザが指示入力部 6 1 1の図示されない下ボタ ンを操作してレイァゥトをスクロールしていく場合に、 表示に必要な情報が 1ブ 口ック目内にある状態ではレイァゥト計算処理が繰返される (S 1 4 0 9の Y E Sの動作)。 1プロック目の最後の情報をレイァゥトして表示し、下ボタンを操作 したときに 2ブロック目の情報が必要となる (S 1 4 0 9の N Oの動作)。必要と なった 2プロック目を 1ブロック目と共に表示処理する。 これが表示プロックの 決定に相当する。
以上説明したように、 データ処理装置 5 1 4において、 階層構造を有する構造 化文書のデータを、 ブロック単位に分割し、 あらかじめ階層構造が解消されて存 在しない構造化文書のデータへと変換しておくことで、表示装置 6 1 5において、 データの先頭からデータすベてを解析する必要がないので表示処理の負荷が軽減 される。 また、 ブロック内での階層構造を解析する処理は省略されるので、 高速 に表示処理できる。 さらに、 階層構造を記憶しておく必要がないため、 メモリの 使用容量を少なくできる。
なお、 本実施の形態では、 データ 5 0 1、 5 0 2、 6 0 1、 6 0 2、 および 6 0 3として XM Lで記述されたデータを例に挙げて説明したが、 以上の説明から 明らかなように、 XM Lで記述されたデータに限定されるものではない。
(第 1と第 2の実施形態に共通の利用の態様)
利用の態様として、 データ処理装置 1 1 3およびデータ処理装置 5 1 4はサ一' バを想定し、表示装置 2 1 5および表示装置 6 1 5は携帯電話や P D A (personal digital assistant) のようなモパイル機器に搭載される表示装置を想定する。 サーバでは階層構造を有するデータを階層構造が解消されて存在しないデータ へと変換し、 ネットワークを介してモパイル機器へと配信する。 モパイル機器に おいては、 配信されたデータを受信する。 データには階層構造が存在していない ことからモバイル機器は受信したデータを高速に処理および表示することができ る。 なお、 モパイル機器の携帯型情報処理装置に限らずラップトップ型 (ノート ブック型) または据置き型のパーソナルコンピュータでもよい。 このようなパー ソナルコンピュータにおいても階層構造が解消されて存在しないことから高速に データ処理することができ、 ディスプレイなどを利用して受信したデータを表示 する。 また、データ処理装置 1 1 3および 5 1 4はパーソナルコンピュータを想定し、 表示装置 2 1 4および 6 1 5は携帯電話のようなモパイル機器に搭載の表示装置 を想定する。 パーソナルコンピュータでは、 階層構造を有するデ タを階層構造 の存在しないデータへと変換し、 F Dなどの記録媒体に記録する。 変換後のデー タを記録した記録媒体を持運び、 モパイル機器へと装着することでモパイル機器 は階層構造の存在しないデータを読込むことができ、 読込んだデータを高速に処 理および表示することができる。 また同様に、 表示装置が搭載される先はモパイ ル機器に限らずパーソナルコンピュータでもよい。さらに、記録媒体を利用せず、 ネットワークを介してデータを送受信してもよレ、。
上述の実施の形態 1と 2によれば、階層構造を有するデータ 3 0 0であっても、 あらかじめ階層構造を解消して、 階層構造が存在しないデータ 4 0 0へと変換す ることによって、 データ 3 0 0の表示などの出力においてデータ 3 0 0に代替し てデータ 4 0 0を利用できる。 これにより表示などの出力において、 階層構造を 解析する処理を必要としないのでデータの取扱いが容易となり、 高速に処理する ことができる。 また、 階層構造を別途、 記憶しておく必要もないため、 メモリの 使用容量を削減することができる。
さらに、 データをプロック単位に分割した場合、 データを最初から全体につい て解析する必要がないので処理負荷が軽減される。 プロック内では階層構造を解 析する処理を必要としないので、 さらに高速に出力処理することができる。
(第 3の実施の形態)
次に、 第 3の実施の形態について説明する。 本実施の形態に係るデータ処理装 置では、 電子データを、 対応のテキストデータとタグ出現位置データとタグ詳細 データという個別に準備されたデ一タを用いてデータ処理するので、 処理対象の データがタグ部分であるかテキスト部分であるかの判定に関する処理を省略でき る分、 高速にデータ処理できる。 この特徴を以下に説明する。
(データ処理装置の構成)
図 1 5は、 本実施の形態に係るデータ処理装置の構成を周辺装置と関連付けて 示す図である。データ処理装置 1 1 1 8の周辺には、ユーザからの要求を受信し、 図示のないデータベースに記録された電子データを送信するサーバ 1 1 1 4、 ュ 一ザが電子データを受信するためのパーソナルコンピュータ 1116、 サーバ 1 114とパーソナルコンピュータ 1116を接続するネットワーク 1115、 お よびパーソナルコンピュータ 1116から電子データを読出してデータ処理装置 1118に電子データを供給するための記録媒体 1117が設けられる。 データ 処理装置 1118は記録媒体 1117から供給された電子データを処理して目的 に応じたデータ処理、 例えば表示のためのデータ処理などをする。 ここでは電子 データは表示されると想定して説明するが、 他の出力形態、 たとえば電子データ は印刷されてもよい。
パーソナルコンピュータ 1116をコンビニエンスストァ、 駅構內などに設置 された電子データ受信装置に代替し、 この電子データ受信装置から電子データを 読出して、 記録媒体 1 117に記録する方式としてもよい。 この場合、 電子デー タ受信装置から電子データを読出して記録媒体 1117に記録する際に課金する ことが可能である。
また、 サーバ 1114から送信される電子データを、 パーソナルコンピュータ 1116を介することなく、 データ処理装置 1118が受信して受信した電子デ ータを記録媒体 1117に記録するように構成してもよレ、。
記録媒体 1117にはパーソナルコンピュータ 1116などの装置により電子 データ 1100、 ならびに該電子データ 1100から作成して得られたテキスト データ 1101、 タグ出現位置データ 1102、 およびタグ詳細データ 1103 が対応 ftけして格納される。 ここでは、 説明を簡単にするために記録媒体 111 7には電子データ 1100とそれから作成されたデータが対応付けられて 1組だ け格納されると想定しているが、 複数 ¾aが格納されていてよい。
電子データ 1100は文書記述言語の定義に従って所定の処理を実行させるた めの構造化された電子データであって、 複数のタグを用いた階層構造を有する構 造化文書を記録するためのデータ形式である S G M Lや X M Lなどを用いて記述 される。
テキストデータ 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、 テキストデータ 1 101、タグ出現位置データ 1102およびタグ詳細データ 1103を読込む。 データ構造解析部 1105は電子データ 1100に基づき、 またはテキストデ ータ 1101、 タグ出現位置データ 1 102およびタグ詳細データ 1103に基 づき、 電子データ 1100の階層構造を解析する。
テキストデータ作成部 1111は、 テキストデータ 1101が存在しない場合 に電子データ 1100からテキストデータ 1101を作成する。 サーバ 1114 から送信されるデータが、 テキストデータ 1 101、 タグ出現位置データ 110 2およびタグ詳細データ 1103の 3つである場合、 テキストデータ作成部 1 1 11は省略されてもよい。
タグ出現位置データ作成部 1112は、 タグ出現位置データ 1102が存在し ない場合に電子データ 1100からタグ出現位置データ 1102を作成する。 サ —バ 1114から送信されるデータが、 テキストデータ 1101、 タグ出現位置 データ 1 102およびタグ詳細データ 1103の 3つである場合、 タグ出現位置 データ作成部 1112は省略されてもよレ、。 ■
タグ詳細データ作成部 1113は、'タグ詳細データ 1103が存在しない場合 に電子データ 1100からタグ詳細データ 1 103を作成する。 サーバ 1114 から送信されるデータが、 テキストデータ 1101、 タグ出現位置データ 110 2およびタグ詳細データ 1103の 3つである場合、 タグ詳細データ作成部 11 13は省略されてもよい。
制御部 1110は、 入力部 1104、 データ構造解析部 1 105、 テキストデ ータ作成部 1111、 タグ出現位置データ作成部 1112、 タグ詳細データ作成 部 1113、 および処理部 1106の処理を制御する。
処理部 1 106は、 データ構造解析部 1105による階層構造の解析結果に基 づき所定の処理を行う。 具体的には、 処理部 1106は、 対象とする電子データ の内容、および処理の種類によって構成が異なるが、データ処理装置 1118が、 例えば、 インターネットで交換する電子文書または電子データ、 または単行本、 教科書、 雑誌、 小説および論文などの文章の電子データを表示するための装置で ある場合には、 文章の表示レイァゥトを訐算するレイアウト計算部 1107によ り算出された表示レイァゥトに基づいて電子データを表示する表示部 1108お よびスクロール指示などのユーザからの指示 1121を処理するユーザ指示処理 部 1109を有する。
電子データが音声データである場合は、 処理部 1106は音声データの読上げ 装置に変更され、 また、 表示部 1108には音声再生部が使用され、 レイアウト 計算部 1107は読む部分と読まない部分を判定したり、 強調して読む部分とそ うでない部分を判定したり、 また各読上げの間隔を調整するュ-ットに変更され る。 音声データの場合、 階層構造に応じて音声属性を変えて読上げるようにして もよい。 さらに音声の場合はシナリオ解釈部、 音声出力部、 再生源となるデータ を管理するために、 データの各要素の間で同期を取る同期部などが必要になる。
(データ処理装置の実現例)
図 16にデータ処理装置 1118を携帯型の表示処理装置として実現した場合 の例を示す。 図 16において、 表示部 1108は液晶ディスプレイなどから構成 される。 記録媒体 1117は、 入力部 1 104に着脱自在に装着されて、 装着さ れたときは、 記録媒体 1117に予め格納された処理対象の電子データ 1100 またはテキストデータ 1101、 タグ出現位置データ 1102およびタグ詳細デ ータ 1103が入力部 1104を介して読取られる。 ユーザ指示処理部 1109 に関連して十字キー 1119およびペン 1120を備える。十字キー 1119は、 ユーザが表示文書のスクロール指示や表示させたい書籍や文書の電子データ 11 '00の選択を指示する場合などに操作される。 ペン 1120は、 電子データにリ ンク機能が含まれるとき、 リンク先にジャンプするためにユーザにより用いられ て、 データ処理装置 1118の制御部 1110からユーザに対して求められた確 認事項の返答を入力するためにも使用される。
なお、 データ処理装置 1118に対する電子データ 1100またはテキストデ ータ 1101、 タグ出現位置データ 1102およびタグ詳細データ 1103のす ベて、または一部の供給は、記録媒体 1 117を介してするものに限定されない。 たとえば、 データ処理装置 1118本体の内部に所定の記録領域を設けて、 そこ に上述したようなデータの一部、 もしくはすべてを記録するようにしてもよい。 また、 ネットワーク 1115上のサーバ 1 114、 あるいは図示のないデータべ ースに上述のデータの一部、 またはすベてを記録し、 ダウンロードしながら処理 するようにしてもよレ、。
(タグ出現位置データ 1102の説明)
図 17にタグ出現位置データ 1102の構造の一例を示す。 タグ出現位置デー タ 1102は、 フアイル名情報 1300とタグ出現位置情報 1301とを含む。 ファイル名情報 1300は、 対応するテキストデータ 1101のファイル名と対 応するタグ詳細データ 1103のファイル名を示すデータ 1302と 1303を 含む。
フアイノレ名情報 1300は、 タグ出現位置データ 1102が、 どのテキストデ ータ 1101、 または、 どのタグ詳細データ 1103に対応するものかを指示す るから、 タグ出現位置データ 1102を、 対応のテキストデータ 1101と連結 : して記録する場合には、 テキストデータファイル名のデータ 1302の領域は省 略してもよレ、。 また、 タグ出現位置データ 1102を、 対応のタグ詳細データ 1 103と連結して記録する場合には、 タグ詳細データファイル名のデータ 130 3の領域は省略してもよい。
タグ出現位置情報 1301は、 対応のテキストデータ 1101に含まれるタグ の総数を示すデータ 1304および対応のテキストデータ 1101に含まれる全 てのタグのそれぞれに対応してタグ位置データ 1305を含む。 タグ位置データ 1305のそれぞれは、 対応のタグ名を示すデータ 1306、 対応のタグのテキ ストデータ 1101における出現開始位置と終了位置を示すデータ 1307と 1 308、 および対応のタグのタグ詳細データ 1103における格納開始位置と終 了位置を示すデータ 1309と 1310を含む。 なお、 データ 1307と 130 8は開始タグと終了タグのテキストデータ 1101における記述位置を示す。 デ ータ 1307〜 131◦はタグの各データ (テキストデータ 1101またはタグ 詳細データ 1102) の先頭からのパイト数などで記録される。
タグのテキストデータ 1101における出現終了位置の代わりに、 タグのテキ ストデータ 1101における影響範囲を記録してもよい。 影響範囲とは、 タグの 属性が有効となる部分のテキストデータの大きさ (範囲) を示し、 出現開始位置 から出現終了位置までの範囲に対応する。つまり、(出現終了位置一出現開始位置) による差分を意味する。 これによつて、 出現位置の情報の代わりに影響範囲の情 報を記録しても、 (出現開始位置 +影響範囲) の値から出現終了位置のデータ 13 08を得ることができる。
同様に、 タ.グのタグ詳細データ 1103における格納終了位置のデータ 131 0の代わりに、 タグのタグ詳細データ 1103におけるデータサイズを記録して もよい。 データサイズとは、.格納開始位置から格納終了位置までのサイズを意味 する。つまり、(格納終了位置-格納開始位置)の差分を意味する。これによつて、 格納位置の情報の代わりにデータサイズの情報を記録しても、(格納開始位置 +デ ータサイズ) の値から格納終了位置のデータ 1310を得ることができる。
タグ出現位置データ 1102を構成する各データは図 17に示すように固定長 のデータである。 ここで、 本実施の形態では、 固定長データとは電子データ 11 00が示す情報が変動しても予め準備する所定のサイズ (例えば 4バイ ト) を超 えないようなデータを指す。 従って、 例えば、 図 17に示すように、 タグのテキ ストデータ 1101における出現開始位置を示すデータ 1307として 4バイト が割当てられた場合、 テキストデータ 1 101のファイルの先頭からのパイト数 を示す 0から 4294967295のいずれかの値を入力する必要がある。なお、 タグ出現位置データ 1102を構成する各データに割当られる領域のサイズは、 取扱う電子データ 1 100の種類や、 データ処理装置 1 1 1 8の処理能力に応じ て決定することができる。 '
(タグ詳細データ 1 103の説明)
図 18にタグ詳細データ 1 103の構造の一例を示す。 図 1 8を参照して、 タ グ詳細データ 1 103は、 対応のタグ出現位置データ 1 102に記録されている 全てのタグのそれぞれに対応してタグ詳細データ 1401を含む。 タグ詳細デー タ 1401は対応のタグが示す異なる種類の属性の総数を示すデータ 1402お よび対応のタグが示す異なる種類の全ての属性それぞれに対応してデータ 140 3を含む。 データ 1403は、 対応の属性の種類名を示すデータ ANおよび対応 の属性の値 AVを含む。 タグ詳細データ 1103は、 その大きさが各タグの情報 の大きさに依存するため、 基本的に可変長データで構成されるが、 十分な大きさ の固定長データで構成されてもよい。
(データの具体例について)
次に、 テキストデータ 1 101、 タグ出現位置データ 1 102内の各データお よびタグ詳細データ 1 103内の各データの書式について、 文書記述言語の定義 に従って記述され、 階層構造を有する電子データ 1100の具体例である XHT ML (extensible HTML) 文書を用いて説明する。 図 19には、 処理対象の X HTML文書である電子データ 1 100の一例が示される。
図 2 OAには、 図 19の XHTML文書の電子データ 1 100から作成したテ キストデータ 1 101の一例が示される。 図 2 OAに示すように、 基本的には各 タグによって挟まれた子供要素のうち、 表示すべき内容、 すなわち文字列のみが テキストデータ 1 101に記録される。 このように記録することにより、 データ 処理装置 1 1 18の処理能力が低く、 タグ出現位置データ 1 1 02およびタグ詳 細データ 1 103の解析が困難な場合に、 テキストデータ 1 101のみを処理し て表示した場合には、 ユーザは表示内容から少なくとも、 記述されている文書の 内容だけは理解することができる、といった利点を得ることができる。そのため、 表示すべき内容であっても、 テキストデータ 1 101に記録しない場合がある。 これを、 文字列にルビを設定するために使用するタグ (以下、 ルビタグという) を例として示す。 図 1 9のルビタグ 1503の場合、 通常であれば、 開始タグく r b >と終了タ b〉で挟まれた子供要素 「吾輩」 と、 開始タグく r t >と終了タグく/ r t >で挟まれた子供要素 「わがはい」' はテキストデータ 1 101に記録される 力 S、 そのままでは、 テキストデータ 1 101の記録内容に従う表示内容は 「吾輩 わがはい」 を示すこととなってしまい、 意味がわからなくなってしまう。
そこで、 ルビタグ 1503をく r u b y 2 r t = "わがはい" >吾輩く Zr u b y 2 >と変換する。 本実施の形態では、 く r u b y 2 >は、 ルビ用のタグで あり、 ルビ文字列を指定する 'r t' 属性を持ち、 被ルビ文字列を子供要素に指 定するタグを意味する。 ルビタグ 1 503をく r ub y 2 >タグを使用した要素 に変換することにより、 テキストデータ 1 101には、 子供要素である 「吾輩」 を記録し、 . ' r t ' 属性の値 「わがはい」 をタグ詳細データ 1 103に記録する。 この場合のタグ詳細データ 1 103への記録内容に関しては後述する。
ルビタグ 1505の場合も、 同様にく r u b y 2 r t = "けんとう" >見当 </r u b y 2 >に変換し、 子供要素 「見当」 をテキストデータ 1 101に記録 し、 ' r t ' 属性の値 「けんとう」 をタグ詳細データ 1 103に記録する。
ルビタグ以外にも、通常、テキストデータ 1 101に記録すべき子供要素でも、 その子供要素を対応のタグの属性値に変換し、 タグ詳細データ 1 103に記録し た方がテキストデータ 1 101の内容が理解しやすくなる場合は同様の処理を行 つてもよレヽ。
上述のルビタグとは逆に、 タグの属性値であっても、 タグ詳細データ 1 103 ではなくテキストデータ 1 101に記録する場合もある。 これを、 外字を設定す るために使用するタグ (以下、 外字タグという) を例として説明する。
本実施の形態では、 く g a i j i >は、 外字用のタグであり、 文字フォント名 を指定する ' s e t' 属性、 その ' s e t' 属性で指定した文字フォント内での 位置を指定する 'c o d e ' 属性、 横書き表示用の代替画像を指定する ' i mg' 属性、 横書き表示用の代替画像を指定する 'v i mg' 属性、 および代替文字列 を指定する 'a l t' 属性という異なる複数種類の属性を持つタグを意味する。 図 1 9の外字タグ 1506の場合、 通常であれば、 テキストデータ 1 101に は何も記録されないので、 そのままでは、 テキストデータ 1 101に記録される 内容が 「 · · ' という人間中で一番悪な種族で ' · ·」 となってしまい、 表示し た場合に意味がわからなくなってしまう。 そこで、 外字タグ 1 506をく g a i j i 2 s e t = "〇〇〇外字" c o d e - "0 x 1234" i m g = " d o u 1. j p g" v i mg = "d o u 2. j p g >どつく Zg a i j i 2 > と変換する。 ここで、 本実施の形態では、 く g a i j i 2>は、 外字用のタグで あり、 文字フォント名を指定する ' s e t ' 属性と、 その ' s e t' 属性で指定 した文字フォント内での位置を指定する 'c o d e' 属性と、 横書き表示用の代 替画像を指定する ' i mg' 属性と、 横書き表示用の代替画像を指定する 'v i mg' 属性という複数種類の属性を有して、 代替文字列を子供要素に指定するタ グを意味する。
このようにして図 19の外字タグ 1506をく g a i j i 2 >タグを使用した 要素に変換することにより、 テキストデータ 1 101には、 子供要素である 「ど う」 が記録されて、 他の属性値はタグ詳細データ 1 103に記録される。 タグ詳 細データ 1 103に記録される内容に関しては後述する。 これによつて、 テキス トデータ 1 101に記録される内容は 「 · · · という人間中で一番どう悪な種族 で · · *」 となり、 意味がわかる文章になる。
外字タグ以外にも、 通常、 テキストデータ 1 101には何も記録されないもの でも、 その属性値を子供要素に変換し、 テキストデータ 1 101に記録した方が テキストデータ 1 101の内容を理解しやすくなる場合は同様の処理を行っても よい。
図 20 Bには、 図 1 9の XHTML文書の電子データ 110◦から作成したテ キストデータ 1 101の他の例が示される。 図 20 Bでは、 改行タグ 1504が あつ.た位置で実際に改行している。 このようにすることによって、 テキストデー タ 1 101の内容を理解しやすくできる。 この場合、 改行タグ 1 504の情報を タグ出現位置データ 1 102に記録して、 テキストデータ 1 101における改行 情報はレイアウト計算部 1 107において使用しないよう.にしてもよいし、逆に、 改行タグ 1504の情報はタグ出現位置データ 1 102に記録せずに、 テキスト データ 1 101における改行情報をレイァゥト計算部 1 107において使用する ようにしてもよレ、。 改行タグ以外のタグであって、 通常、 テキストデータ 1 101において改行を 指示しないタグであっても、 テキストデータ 1 101の内容を理解しやすくなる
" 場合は改行の処理を行ってもよい。
図 21には、 図 19の XHTML文書の電子データ 1 100から作成したタグ 出現位置データ 1 102の一例が示される。 図 21のデータ 1 700〜1 702 は図 1 7のデータ 1302〜 1 304に対応する。 データ 1 702は、 図 19の 電子データ 1 100に含まれるタグ (タグ対) の数を示す。 本来ならば、 図 1 9 の XHTML文書の電子データ 1 100を構成するタグの数は 1 1個であるが、 先に説明したように、 ルビ要素を構成するく r u b y >タグ、 く r b >タグおよ ぴ< r t〉タグの 3つを 1つのタグに変換して処理しているため 7個となり、 図 21のデータ 1 702は 「7」 を示す。 データ 1703〜 1707は、 1つ目の タグであるく h tml >タグ 1 500のタグ位置データ 1305のデータ 1 30 6〜310に対応する。 データ 1703はタグ名である 「h tm l」 を示し、 デ ータ 1 704は、 く h tm 1 >タグ 1 500のテキストデータ 1 101における 出現開始位置を示し、 データ 1 705は、 く h tml >タグ 1 500のテキスト データ 1 101における出現終了位置を示す。 次に、 データ 1 706は、 タグ詳 細データ 1 103におけるく h tml >タグ 1500の属性情報の格納開始位置 • を示し、 データ 1 707は、 タグ詳細データ 1 103におけるぐ h t m 1 >タグ 1 500の属性情報の格納終了位置を示す。 以下同様に、 データ 1 708〜1 7 1 2は、 2つ目のタグであるく b o d y>タグ 1501のタグ出現位置データ 1 305のための情報を'示し、 データ 1 71 3〜― 1717は、 3つ目のタグである く i mg >タグ 1502のタグ出現位置データ 1305のための情報を示し、 デ ータ 1718〜1 722は、 4つ目のタグであるく r u b y>タグ 1 503のタ グ出現位置データ 1305のための情報を示し、 データ 1 723〜 1 727は、 5つ目のタグであるく b r >タグ 1 504のタグ出現位置データ 1 305のため の情報を示し、 データ 1728〜 1 732は、 6つ目のタグであるく r u b y > タグ 1 505のタグ出現位置データ 1 305のための情報を示し、 データ 173 3〜: L 737は、 7つ目のタグである < g a i j i >タグ 1506のタグ出現位 置データ 1 305のための情報を示す。 図 22には、 図 19の XHTML文書の電子データ 1 100から作成したタグ 詳細データ 1 103の一例が示される。 データ 1402に対応のデータ 1800 は、 1つ目のタグであるく h t m 1 >タグ 1500の属十生数「0」 を示す。 なお、 この情報が記録されている領域の開始位置、 終了位置情報はタグ出現位置データ
1 102のデータ 1706とデータ 1 707として記録される。 また、 く h tm 1 >タグ 1500の属性数は '0' であるから、 タグ詳細データ 1 103に属性 数情報のデータ 1800を記録せずに、 代りにタグ出現位置データ 1 102のデ ータ 1706とデータ 1707を、「格納領域なし」を示すように記録してもよい。 これによつで、 タグ詳細データ 1 103のデータ容量を削減することができる。 以下同様に、 タグ詳細データ 1 1 03に、 2つ目のタグであるく b o d y >タ グ 1501のタグ詳細データ 1401のためのデータ 1801〜 1 805を、 3 つ目のタグであるく i mg/>タグ 1502のタグ詳細データ 1401のための データ 1 806〜: 1810を、 4つ目のタグであるく r u b y>タグ 1 503の タグ詳細データ 1401のためのデータ 181 1〜 1813をそれぞれ記録する。 また 5つ目のタグであるく b rZ>タグ 1 504のタグ詳細データ 1401のた めのデータ 1814を記録する。. < b rZ タグ 1504もく h tml >タグ 1 500と同様に属性数は ' 0 ' であるから、 タグ詳細データ 1 103に属性数を 記録せずに、 代りにタグ出現位置データ 1 102の対応のデータ 1726とデー タ 1727とを、 「格納領域なし」 を示すように記録してもよい。 そして、 6つ目 のタグであるく r ub y>タグ 1505のタグ詳細データ 1401のためのデー タ 181 5〜 1817を、 7つ目のタグであるく g a i j i >タグ 1 506のタ グ詳細データ 1401のためのデータ 1818〜 1826をそれぞれ記録する。
(データ処理装置 1 1 18の処理手順について)
図 23と図 24を参照して、 図 1 5のデータ処理装置 1 1 18が表示装置とし て動作した場合の処理手順を説明する。 図 23と図 24の手順は制御部 1 1 10 の制御の下に実行される。
まず、 ステップ S 901では、 ユーザが表示を所望する電子データ 1 100を 示すユーザ指示 1 121がユーザ指示処理部 1 109を介して入力されて、 該電 子データ 1 100が指定される。 ステップ S 902では、 入力部 1 104は記録媒体 1 1 1 7を検索して、 ステ ップ S 901で指定された電子データ 1 100について、 記録媒体 1 1 1 7にお いて指定の電子データ 1.100のみが格納されているのか、 それとも、 指定の電 子データ 1 100に対応のテキストデータ 1 101とタグ出現位置データ 1 10 2とタグ詳細データ 1 103の 3つが格納されているのかを判定する。検索結果、 所望電子データ 1 100のみが格納されていると判定すれば、 制御部 1 1 10は 処理をステップ S 903に進めるが、 対応のテキストデータ 1 101、 タグ出現 位置データ 1 102およびタグ詳細データ 1 103が存在していれば、 処理をス テツプ S 904に進める。
ステップ S 903では、 指定された電子データ 1 100を記録媒体 1 1 1 7力 ら読出して、 読出した電子データ 1 100についてテキストデータ 1 101、 タ グ出現位置データ 1 1 02およびタグ詳細データ 1 103を作成する。 その後、 処理をステップ S 904に進める。 ステップ S 903の詳細は後述する。
ステップ S 904では、 指定された電子データ 1 100に対応のタグ出現位置 データ 1 102が記録媒体 1 1 1 7から検索されて入力部 1 104を介して読出 される。
ステップ S 906では、 指定された電子データ 1100に対応の記録媒体 1 1 17のテキストデータ 1 101から処理対象とされる任意の部分データのみを特 定して入力部 1 104を介して読出す。 具体的にはステップ S 901にて、 入力 したユーザ指示 1 121に基づいて処理対象のテキストデータ部分を特定し読込 む。 例えば、 ユーザが指定した電子データ 1 100がはじめて表示処理されるの であれば、 そのデータの最初から読込む。 または、 以前に表示処理したことのあ る電子データ 1 100であれば、 前回の表示処理における最終表示位置を示す情 報をデータ処理装置 1 1 18の所定記憶領域に記録しておき、 記録された最終表 示位置情報が示す位置からデータを読込む。 または、 データ処理装置 1 1 18に ページジャンプ機能のようなものが予め準備されていれば、 ユーザ指示 1 121 により所望電子データ 1 100の任意の箇所を表示するように指示した場合には、 ページジャンプ機能を用いて指定された電子データ 1 100の指示された箇所に 該当する位置からデータを読込むことができる。 ステップ S 907では、 S 906で特定されてテキストデータ 1 101から読 込まれた処理対象の部分データに基づき、 記録媒体 1 1 1 7のタグ詳細データ 1 · 103から対応の部分データを入力部 1 104を介して読込む。
ステップ S 907では、 タグ出現位置データ 1 102が固定長データであるこ とを利用して、 処理すべきタグの属性情報をタグ詳細データ 1 103から効率よ く読出すことができる。 具体的には、 もし、 タグの属性を示す情報がタグ出現位 置データ 1 102とタグ詳細データ 1 103とに分離されずに、 まとめて可変長 データで記録されている場合には、 タグ属性情報の最初から総当りで所望のデー タであるかを判定していく必要がある。 この所望データは処理すベきタグ情報を 指しており、 ルビ表示機能を有さなレヽデータ処理装置 1 1.18であれぱ、 ルビタ グ情報は不用となる。 一方、 本実施の形態ではタグの属性の情報はタグ出現位置 データ 1 102とタグ詳細データ 1 103とに分離して記録されており、 かつタ グ出現位置データ 1 102は固定長データであるので、 所望のデータがタグ詳細 データ 1 103の何バイト目に存在するかをタグ出現位置データ 1 102を参照 して容易に特定できて、 特定結果に基づきタグ詳細データ 1 103を直接ァクセ スして所望データを読出すことが可能である。
ステップ S 909ではレイァゥト計算部 1 107により表示のためのレイァゥ トを計算する。 レイアウトの計算は次の手順で行なう。
まず、 ユーザ指示 1 121により決定されたテキストデータ 1 101の表示開 始位置情報と、 タグ出現位置データ 1 102における各タグのテキストデータ出 現開始位置/終了位置のデータとに基づき、 テキストデータ 1 101の表示すベ き部分データに関係する 1つ以上のタグを特定する。 次に、 特定した各タグにつ いて、 タグ出現位置データ 1 102から該当するタグ詳細データ格納開始位置 Z 終了位置のデータを読出し、 読出したデータに基づいてタグ詳細データ 1 103 を検索して、 該タグに対応のタグ詳細データ 1401を読出す。
そして、 該当するタグのテキストデータ出現開始位置から終了位置までに関し て上記手順で読出したタグ詳細データ 1401に基づいて、 テキストデータ 1 1 01を表示開始位置から順次、図示されない所定記憶領域にレイァゥトしていく。 ステップ S 910では、 ステップ S 909のレイアウト計算結果である所定記 憶領域の内容に基づき、 テキストデータ 1 101は表示部 1 108により表示さ れる。
ステップ S 91 1では、 ユーザ指示処理部 1 109を介したユーザからの指示 1 121の入力を待つ。 ユーザからの指示 1 1 21の入力があるまで、 処理はス テツプ S 91 1で待機する。 ユーザから表示処理終了の指示 1 121が入力され た場合には、 図 23の表示処理は終了する。 ユーザから、 次ページ、 あるいは前 ページへのスクロール指示 1 121があった場合には、 処理はステップ S 906 に戻り、 以降、 テキストデータ 1 101の指定されたスクロール先の任意領域の 部分データについて同様な処理が行なわれる。
図 23のステップ S 903のテキストデータ 1 101、 タグ出現位置データ 1
102およびタグ詳細データ 1 103の作成処理の手順について図 24のフロー チャートに従い説明する。 図中、 [テキスト] はテキストデータ 1 101を、 [タ グ出現] はタグ出現位置データ 1 102を、 [タグ詳細] はタグ詳細データ 1 10 3をそれぞれ示す。 また図中の [タグ情報] とは、 電子データ 1 100からテキ ストデータ 1 101、 タグ出現位置データ 1 102およびタグ詳細データ 1 10 3を作成するために、 データ処理装置 1 1 18内の図示されない記憶領域に一時 的に記憶しておく情報を指す。 [タグ情報]は 1つ以上のタグのそれぞれについて タグ名と、 該タグのテキストデータ出現終了位置を示すデータ 1308のタグ出 現位置データ 1 102における記録位置とを示す情報である。
まず、 ステップ S 921では、 入力部 1 104を介して記録媒体 1 1 1 7から 指定された所望の電子データ 1 100を読出し、 処理をステップ S 922に進め る。
ステップ S 922以降の処理においては、 読出した電子データ 1 100をデー タ構造解析部 1 105にて解析すると、その後、テキストデータ作成部 1 1 1 1、 タグ出現位置データ作成部 1 1 12およぴタグ詳細データ作成部 1 1 1 3はテキ ストデータ 1 101、 タグ出現位置データ 1 102およびタグ詳細データ 1 10 3をそれぞれ作成し、 作成したこれらデータを記録媒体 1 1 17の指定された所 望の電子データ 1 100と対応付けて格納する。 その手順を以下に説明する。 まず、 ステップ S 922では、 上述の各データを作成するのに必要な [タグ情 報] の領域を初期化し、 その後、 処理をステップ S 9 2 3に進める。
ステップ S 9 2 3では、 タグ出現位置データ 1 1 0 2に、 テキストデータファ ィル名、 タグ詳細データファイル名おょぴタグ数を示すデータ 1 3 0 2〜 1 3 0 4を記録し、 その後、 処理をステップ S 9 2 4に進める。 タグ数のデータ 1 3 0 4としては、 この場合には初期値としての ' 0 ' を記録する。
ステップ S 9 2 4以降の処理では、 ステップ S 9 2 1において読込んだ電子デ ータ 1 1 0 0を先頭から要素単位で順に処理していく。
ステップ S 9 2 4では、 電子データ 1 1 0 0の先頭から検索して文字列または タグなどの要素の有無を判定する。 要素がなければ、 電子データ 1 1 0 0の最後 の要素まで処理したことになり、 ステップ S 9 3 4では要素がなかった旨のデー タが記録媒体 1 1 1 7に格納されて図 2 4のデータ作成処理を終了して、 元の図
2 3の処理に戻る。 なお、 ステップ S 9 3 4の処理をパスしてデータ作成処理を 終了するようにしてもよい。 一方、 要素があれば、 処理をステップ S 9 2 5に進 める。 .
ステップ S 9 2 5では、 要素の種類を判定する。 判定結果、 要素が開始タグま たは空タグであれば、 処理をステップ S 9 2 6に進めて、 要素が終了タグであれ ば処理をステップ S 9 3◦に進めて、 要素が文字列であれば処理をステップ S 9
3 3に進める。
ステップ S 9 2 6では、 タグ出現位置データ 1 1 0 2に該要素であるタグにつ いてタグ位置データ 1 3 0 5を記録する。
. 具体的には、 該要素はタグなのでデータ 1 3 0 4が示すタグ数を 1つ増やす。 次に、 該タグについて開始タグであるか空タグであるかを解析し、 解析結果に基 づきタグ名を取得して、 取得したタグ名を該タグのためのタグ位置データ 1 3 0 5のデータ 1 3 0 6として記録する。 そして、 現時点でのテキストデータ 1 1 0 1の書込み最終位置を、 テキストデータ出現開始位置としたデータ 1 3 0 7を記 録する。 もし、 要素が空タグであれば、 データ 1 3 0 7と同じ値をテキストデー タ出現終了位置としたデータ 1 3 0 8を記録する。 さらに、 現時点でのタグ詳細 データ 1 1 0 3の書込み最終位置を、 タグ詳細データ格納開始位置としたデータ 1 3 0 9を記録し、 処理をステップ S 9 2 7に進める。 ステップ S 9 2 7では、 一時的に記憶しておくべき [タグ情報] に、 ステップ S 9 2 6で取得したタグ名と、 タグ出現位置データ 1 1 0 2における該当タグの 「テキストデータ出現終了位置」 のデータ 1 3 0 8の格納位置の情報を追加して 記録して、 処理をステップ S 9 2 8に進める。
ステップ S 9 2 8では、 タグが開始タグであるか空タグであるかを解析し、 解 析結果に基づき該タグの属性数、 属性名および属性値を取得し、 取得したこれら' をタグ詳細データ 1 1 0 3に該タグのタグ詳細データ 1 4 0 1のデータ 1 4 0 2 およびデータ 1 4 0 3 して記録し、 処理をステップ S 9 2 9に進める。
ステップ S 9 2 9では、 タグ出現位置データ 1 1 0 2に、 現時点でのタグ詳細 データ 1 1 0 3の書込み最終位置を、 タグ詳細データ格納終了位置のデータ 1 3 1 0として記録する。 これで、 この要素に対する処理は終わり、 処理をステップ S 9 2 4に戻し、 次の要素に対する処理を行う。
ステップ S 9 3 0では、 終了タグであるタグを解析し解析結果に基づき、 一時 的に記憶している [タグ情報] からそのタグのタグ名と 「テキストデータ出現終 了位置」 の格納位置との情報を得て、 処理をステップ S 9 3 1に進める。
ステップ S 9 3 1では、 ステップ S 9 3 0で得た情報が示すタグ出現位置デー タ 1 1 0 2の格納位置に対応のタグ位置データ 1 3 0 5に、 現時点でのテキスト データ 1 1 0 1の書込み最終位置を、 テキストデータ出現終了位置としたデータ 1 3 0 8を記録し、 処理をステップ S 9 3 2に進める。
ステップ S 9 3 2では、 一時的に記憶している [タグ情報] 力 ら、 該当タグの 情報を削除する。 これで、 この要素に対する処理は終わり、 処理をステップ S 9 2 4に戻して、 次の要素に対する処理を行う。
ステップ S 9 3 3では、 要素の文字列をテキストデータ 1 1 0 1に記録する。 これで、 この要素に対する処理は終わり、 処理をステップ S 9 2 4に戻して、 次 の要素に対する処理を行う。
ここまでの処理を電子データ 1 1 0 0中の全ての要素について行うと、 該電子 データ 1 1 :0 0のテキストデータ 1 1 0 1、 タグ出現位置データ 1 1 0 2および タグ詳細データ 1 1 0 3の作成が完了するので、 ステップ S 9 3 4において、 作 成されたこれらデータを該電子データ 1 1 0 0と対応付けて記録媒体 1 1 1 7に 格納して、 一連の処理を終了し、 元の図 2 3の処理に戻る。
なお、 この実施の形態では、 電子データ 1 1 0 0が X H TML文書である場合 を例に挙げて説明を行ったが、 X H TM L文書に限定されない。 例えば、 XM L (extensible markup language) などにより記録された階層構造を有する電子デ ータ 1 1 0 0であっても、 同様の処理を行うことができる。
本実施の形態 3によれば、 メモリ容量に応じて構成された固定長のタグ出現位 置データ 1 1 0 2を用いて処理することによって、 テキストデータ 1 1 0 1およ びタグ詳細データ 1 1 0 3それぞれの一部のみのデータを効率よく読込むことが できるため、 高速かつ少ない容量のメモリでデータ処理ができる。 本実施の形態 では、 準備可能なメモリ容量が少ないときに、 特に大きな効果を発揮する。 具体 的には、 'タグ情報データがタグ出現位置データ 1 1 0 2とタグ詳細データ 1 1 0 3とに分離されずに可変長であった場合、 タグ情報データ量がメモリ容量をォー バーする惧れがある。 本実施の形態 3では、 タグ出現位置データ 1 1 0 2を固定 長データのみから構成することによって、 記録媒体 1 1 1 7の記録可能容量など 力 らタグ情報を記録可能な最大容量を見積もることができて、 それにより、 この 記録可能容量をオーバーしないタグ出現位置データ 1 1 Ό 2の構造を予め作成し ておくことができる。
また、 本実施の形態によれば、 階層構造を持つ電子データ 1 1 0 0を、 対応の テキストデータ 1 1 0 1とタグ出現位置データ 1 1 0 2とタグ詳細データ 1 1 0 3という個別に準備されたデータを用いてデータ処理するので、 処理対象のデー タがタグ部分であるかテキスト部分であるかの判定に関する処理を省略できて、 またそれに要するメモリも削減できて、 処理の高速化と消費メモリ容量の削減と が可能になる。
(データの変形例)
上述の実施の形態では、 タグ出現位置データ 1 1 0 2において、 タグ名のデー タ 1 3 0 6として、 タグ名そのものを記録するようにしていたが、 これに代わつ て、タグ名を一意に識別することができる識別番号を記録するようにしてもよレ、。 この場合、 タグ名と識別番号の対応関係を記録したタグ識別情報データが別途必 要となる。 同様に、 タグ詳細データ 1 103において、 属性名のデータ ANとして、 属性 名そのものを記録するようにしていたが、 これに代わって、 属性名を一意に識別 することができる識別番号を記録するようにしてもよい。 この場合、 属性名と識 別番号の対応関係を記録した属性識別情報データが別途必要になる。
また、 本実施の形態では、 所望された電子データ 1 100の全体についてテキ ストデータ 1 101、 タグ出現位置データ 1 102およびタグ詳細データ 1 10 3を作成していたが、 作成の対象は電子データ 1 100の全体に限定されない。 つまり電子データ 1 100のユーザが所望する任意の部分データについてテキス トデータ 1 101、 タグ出現位置データ 1 102およびタグ詳細データ 1 103 を作成するようにしてもよい。
(第 4の実施の形態)
上述の各実施の形態で示したデータ処理のための機能は、 該データ処理手順を 記述したプログラムをコンピュータにより実行することで実現される。 このよう なコンピュータの構成例が図 25に示される。
図 25を参照してコンピュータは、 表示装置 1 10および 51 1ならびに表示 部 1 108に対応の CRT (陰極線管)、液晶などからなるモニタ 143、指示入 力部 190、 510、 21 0および 61 1、 ならびにユーザ指示処理部 1 109 に対応のキーボード 1 50、 マウス 160およびペンタブレツト 170、 制御部 108、 209、 509、 6 10および 1 1 10に対応の該コンピュータ自体を 集中的に制御するための CPU (中央処理装置の略) 122、 データ記憶部 10 4、 205、 504および 605ならびに記録媒体 1 1 17に対応しうる ROM または RAM (ランダムアクセスメモリの略)を含んで構成されるメモリ 124、 記録媒体 1 1 1 7に対応しうる固定ディスク 126、 FD 1 32が着脱自在に装 着されて、 装着された FD 132をアクセスする FD駆動装置 130、 CD— R OM142が着脱自在に装着されて、 装着された CD— ROM142をアクセス する CD— ROM駆動装置 140、 インターネットなどの通信ネットワーク 18 2と、 該コンピュータとを通信接続するための通信インターフェイス 180を含 む。 これらの各部はバスを介して通信接続される。 FD 132または CD— R〇 Ml 42は記録媒体 1 1 17に対応しうる。 固定ディスク 126または FD 1 3 2または CD— ROM142は記録媒体 1 1 2、 21 2、 513および 613に 対応する。 通信ネットワーク 182はネットワーク 1 1 1、 21 1、 51 2、 6 12および 1 1 15に対応する。
コンピュータには、 カセット形式の磁気テープが着脱自在に装着されて磁気テ ' ープをアクセスする磁気テープ装置が設けられても良い。
このようなコンピュータに上述のデー 処理方法を実行させるためのプログラ ムは、 コンピュータで読取可能な記録媒体に格納される。 本実施の形態では、 こ の記録媒体として、 図 25に示されているコンピュータで処理が行なわれるため に必要なメモリ、 たとえばメモリ 1 24のようなそのものがプログラムメディア であってもよいし、 また外部記憶装置として図示のない磁気テープ装置おょぴ C D— ROM駆動装置 140などのプログラム読取装置が設けられ、 そこに記憶媒 体である磁気テープまたは CD— ROM 142が装着されることで読取可能なプ ログラムメディアであってもよい。 いずれの場合においても、 格納されているプ ログラムは CPU 1.22がアクセスして実行させる構成であってもよいし、 ある いはいずれの場合'もプログラムが一且読出されて、 読出されたプログラムは、 図 25のコンピュータの所定のプログラム記憶エリア、 たとえばメモリ 124の R AMの所定エリアにロードされて、 CPU1 22により読出されて実行される方 式であってもよい。 このロード用のプログラムは、 予め当該コンピュータに格納 されているものとする。
ここで、 上述したプログラムメディアはコンピュータ本体と分離可能に構成さ れる記録媒体であり、 固定的にプログラムを担持する媒体であってもよい。 たと えば、 磁気テープやカセットテープなどのテープ系、 FD 1 32や固定ディスク 1 26などの磁気ディスクや CD— ROM 142/M〇 (Magnetic Optical Disc) /M.D (Mini Disc) /DVD (Digital Versatile Disc) などの光ディ スクのディスク系、 I Cカード (メモリカードを含む) /光力一ドなどのカード 系、 あるいはマスク R〇M、 E PROM (Erasable and Programmable ROM)ゝ EEPR OM (Electrically EPR OM)、フラッシュ R〇Mなどによる半導体メ モリなどである。
また、 流動的にプログラムを担持する媒体であってもよい。 つまり、 図 25の コンピュータはインターネットを含む通信ネットワーク 1 8 2と通信インターフ ェイス 1 8 0を介して接続可能な構成が採用されているから、 通信ネットワーク 1 8 2からプログラムがダウンロードされるような記録媒体であってもよい。 プ ログラムがダウンロードされる場合には、 ダウンロード用プログラムは予め当該 コンピュータ本体に格納しておくカヽ あるいは別の記録媒体から予め当該コンビ ユータ本体にインストールされるものであってもよい。
なお記録媒体に格納されている内容としてはプログラムに限定されず、 データ であってもよい。
今回開示された各実施の形態はすべての点で例示であって制限的なものではな いと考えられるべきである。 本発明の範囲は上記した説明ではなくて特許請求の 範囲によって示され、 特許請求の範囲と均等の意味おょぴ範囲内でのすべての変 更が含まれることが意図される。

Claims

請求の範囲
1. 文書記述言語の定義に従って記述された階層構造を有するデータ (300) を受理して、 前記階層構造を解析する解析手段 (105) と、
前記解析手段 (105) による解析結果に基づいて、 前記データを前記階層構 造が解消されたデータ (400) に変換する変換手段 (106) とを備える、 デ ータ処理装置。
2. 前記階層構造を有するデータ (300) はタグの対を複数含み、 前記タグ 対は該タグ対で囲まれた部分データの属性の情報を指示し、
前記変換手段 (1.06) は、
前記部分データ中に該部分データを囲む前記タグ対と同一種類の属性を指示す る他のタグ対が含まれる場合には、 該他のタグ対の属性情報を、 該部分データを 囲む前記タグ対の属性情報を用いて変換することを特徴とする、 請求項 1に記載 'のデータ処理装置。 .
3. 前記変換手段 (106) は、 変換後のデータにおいて不要となる情報を省 略するように変換することを特徴とする、 請求項 1に記載のデータ処理装置。
4. 前記変換手段 (106) による変換により得られた前記階層構造が解消さ れたデータ (400) に対して、 出力のためのレイアウトを計算するレイアウト 計算手段 (207) をさらに備える、 請求項 1に記載のデータ処理装置。
.
5. 前記階層構造を有するデータ (300) を、 複数のブロックに分割する分 割手段 (505) をさらに備えて、
前記解析手段 (105) は、 前記分割手段により分割されたブロック毎にデー タを受理して解析することを特徴とする、 請求請 1に記載のデータ処理装置。
6. 文書記述言語の定義に従って記述された階層構造を有する予め準備された 記録領域に格納されたデータ (300) について、 前記階層構造を解析する解析 ステップ (S 1002) と、
前記解析ステップ (S 1 Q 02) による解析結果に基づいて、 前記記録領域に 格納されている前記データ (300) を前記階層構造が解消されたデータ (40 0) に変換する変換ステップ (S 1004) とを備える、 データ処理方法。
7. データ処理方法をコンピュータに実行させるためのデータ処理プログラム であって、 前記データ処理方法は、
文書記述言語の定義に従って記述された階層構造を有する予め準備された記録 領域に格納されたデータ (300) について、 前記階層構造を解析する解析ステ ップ (S 1002) と、
前記解析ステップ (S 1002) による解析結果に基づいて、 前記記録領域に 格納されている前記データを前記階層構造が解消されたデータ (400) に変換 する変換ステップ (S 1004) とを備えることを特徴とする、 データ処理プロ グラム。
8. データ処理方法をコンピュータに実行させるためのデータ処理プログラム を記録したコンピュータ読取可能な記録媒体であって、
前記データ処理方法は、
文書記述言語の定義に従って記述された階層構造を有する予め準備された記録 領域に格納されたデータ (300) について、 前記階層構造を解析する解析ステ ップ (S 1002) と、
前記解析ステップ (S 1002) による解析結果に基づいて、 前記記録領域に 格納されている前記データ (300) を前記階層構造が解消されたデータ (40 0) に変換する変換ステップ (S 1004) とを備えることを特徴とする、 デー タ処理プログラムを記録したコンピュータ読取可能な記録媒体。
9. テキストデータと前記テキストデータにおいて出現する複数のタグを含み、 かつ前記複数タグを用いて階層構造化された電子データ (1 100) を処理する データ処理装置 (1 1 18) であって、
前記テキストデータが記録されるテキスト情報 (1 101) と、 前記複数タグ のそれぞれに対応して該タグの属性を示す属性データが記録されるタグ詳細情報 (1103) と、 前記複数タグのそれぞれについて該タグの前記テキストデータ における出現位置を示す出現位置データが記録されるタグ出現位置情報 (1 10 2) とを入力する入力手段 (1 104) と、
前記入力手段 (1 104) により入力された前記テキスト情報 (1 101) か ら、 前記電子データ (1 100) の処理対象となる任意領域に対応する前記テキ ストデータを読出すテキスト読出手段と、
前記入力手段(1 104) により入力された前記タグ出現位置情報 (1 102) に基づいて、 前記任意領域に対応する前記テキストデータにおいて出現する前記 タグを特定し、前記入力手段(1 104) により入力された前記タグ詳細情報(1 103) から、 前記特定された前記タグの前記属性データを読出す属性読出手段 と、
前記テキスト読出手段により読出された前記テキストデータを、 前記属性読出 手段により読出された前記属性データに基づいて処理する処理手段 (1 106) とを備える、 データ処理装置 (1 1 18)。
10. 前記出現位置データは固定長のデータであることを特徴とする、 請求項 9に記載のデータ処理装置 (1 1 18)。
1 1. 前記出現位置データは、 前記テキストデータにおける該タグの有効範囲 を示す有効範囲データと、 前記タグ詳細情報 (1 103) における該タグの前記 属性データが記録された場所を示す記録場所データを含み、
前記属性読出手段は、 前記任意領域に該当するタグを前記有効範囲データに基 づいて特定し、 特定された前記タグの前記記録場所データに基づいて前記タグ詳 細情報 (1 103) 力 ら該タグの前記属性データを読出すことを特徴とする、 請 求項 9に記載のデータ処理装置 (1 1 18)。
1 2. 前記有効範囲データは、 前記テキストデータにおける該タグの属性が有 効となる部分のデータの開始場所と終了場所を示すことを特徴とする、 請求項 1 1に記載のデータ処理装置 (1 1 18)。
1 3. 前記有効範囲データは、 前記テキストデータにおける該タグの属性が有 効となる部分のデ^ "タの開始場所と、 該部分データの大きさとを示すことを特徴 とする、 請求項 11に記載のデータ処理装置 (11 18)。
14. ' 前記記録場所データは、 前記タグ詳細情報 (1 103) における該タグ の前記属性データの記録開始場所と終了場所とを示すことを特徴とする、 請求項 1 1に記載のデータ処理装置 (1 1 18)。
1 5. 前記記録場所データは、 前記タグ詳細情報 (1 103) における該タグ の前記属性データの記録開始場所と該属性データの大きさを示すことを特徴とす る、 請求項 11に記載のデータ処理装置 (1118)。
16. 前記処理手段 (1106) は、 前記テキスト読出手段により読出された 前記テキストデータについて、 前記属性読出手段により読出された前記属性デー タに基づいて、 レイァゥトを計算するレイァゥト計算手段(1 107)を有する、 請求項 9に記載のデータ処理装置 (1 118)。
1 7. 前記電子データ (1100) を検索して前記テキストデータを抽出して 記録し前記テキスト情報 (1101) を作成するテキスト情報作成手段 (111 1) と、
前記電子データ (1100) を検索して前記タグが検索される毎に、 該タグに 対応して前記属性データを記録し前記タグ詳細情報 (1103) を作成するタグ 詳細情報作成手段 (1113) と、
前記電子データ .(1100) を検索して前記タグが検索される毎に、 該タグに 対応して前記出現位置データを記録し前記タグ出現位置情報 (1 102) を作成 するタグ出現位置情報作成手段(1112)との少なくとも 1つをさらに備える、 請求項 9に記載のデータ処理装置 (1 118)。
18. 前記テキスト情報作成手段 (1111) は、 前記電子デ一タ (1100) の前記任意領域を検索して前記テキストデータを抽出して記録し前記テキスト情 報 (1101) を作成し、
前記タグ詳細情報作成手段 (1 1 13) は、 前記電子データ (1100) の前 記任意領域を検索して前記タグが検索される毎に、 該タグに対応して前記属性デ ータを記録し前記タグ詳細情報 (1 103) を作成し、 . タグ位置情報作成手段 (1112) は、 前記電子データ (1100) の前記任 意領域を検索して前記タグが検索される毎に、 該タグに対応して前記出現位置デ ータを記録し前記タグ出現位置情報 (1102) を作成することを特徴とする、 請求項 17に記載のデータ処理装置 (1118)。
19. 前記電子データ (1100) のための前記テキスト情報 (1 101)、 前 記タグ出現位置情報 (1102) および前記タグ詳細情報 (1103) を、 前記 入力手段 (1 104) により入力可能か否か判断する手段をさらに備える、 請求 項 9に記載のデータ処理装置 (1 1 18)。
20. テキストデータと前記テキストデータにおいて出現する複数のタグを含 み、 かつ前記タグを用いて階層構造化された電子データ (1 100) を処理する データ処理方法であって、
前記テキストデータが記録されるテキスト情報 (1 101) と、 前記複数タグ のそれぞれに対応して該タグの属性を示す属性データが記録されるタグ詳細情報 (1103) と、 前記複数タグのそれぞれについて該タグの前記テキストデータ における出現位置を示す出現位置データが記録されるタグ出現位置情镍 (1 10 2) とを入力する入力ステップと、
前記入力ステップにより入力された前記テキスト情報 (1 101) 力 ら、 前記 電子データ (1 100) の処理対象となる任意領域に対応する前記テキストデー タを読出すテキスト読出ステップ (S 906) と、
前記入力ステップにより入力された前記タグ出現位置情報 (1 102) に基づ いて、 前記任意領域に対応する前記テキストデータにおいて出現する前記タグを 特定し、前記入カステツプにより入力された前記タグ詳細情報( 1 103 )から、 前記特定された前記タグの前記属性データを読出す属性読出ステップ(S 907) と、
前記テキスト読出ステップ (S 906) により読出された前記テキストデータ を、 前記属性読出ステップ (S 906) において読出された前記属性データに基 づいて処理する処理ステップ (S 909、 S 910) とを備える、 データ 理方 法。
21. テキストデータと前記テキストデータにおいて出現する複数のタグを含 み、 かつ前記タグを用いて階層構造化された電子データ (1 100) を処理する データ処理方法をコンピュータに実行させるためのデータ処理プログラムであつ て、
前記データ処理方法は、
前記テキストデータが記録されるテキスト情報 (1 101) と、 前記複数タグ のそれぞれに対応..して該タグの属性を示す属性データが記録されるタグ詳細情報
(1 103) と、 前記複数タグのそれぞれについて該タグの前記テキストデータ における出現位置を示す出現位置データが記録されるタグ出現位置情報 (1 10 2) とを入力する入力ステップと、
前記入力ステップにより入力された前記テキスト情報 (1 101) 力 ら、 前記 電子データ (1100) の処理対象となる任意領域に対応する前記テキストデー タを読出すテキス ト読出ステップ (S 906) と、
前記入力ステップにより入力された前記タグ出現位置情報 (1 102) に基づ いて、 前記任意領域に対応する前記テキストデータにおいて出現する前記タグを 特定し、前記入力ステップにより入力された前記タグ詳細情報(1 103)から、 前記特定された前記タグの前記属性データを読出す属性読出ステップ(S 907) と、
前記テキスト読出ステップ (S 906) により読出された前記テキストデータ を、 前記属性読出ステップ (S 906) において読出された前記属性データに基 づいて処理する処理ステップ (S 909、 S 910) とを備えることを特徴とす る、 データ処理方法をコンピュータに実行させるためのデータ処理プログラム。
22. テキストデータと前記テキストデータにおいて出現する複数のタグを含 み、 かつ前記タグを用いて階層構造化された電子データ (1 100) を処理する データ処理方法をコンピュータに実行させるためのデータ処理プログラムを記録 したコンピュータ読取可能な記録媒体であって、
前記データ処理方法は、
' 前記テキストデータが記録されるテキスト情報 (1 101) と、 前記複数タグ のそれぞれに対応して該タグの属性を示す属性データが記録されるタグ詳細情報 (1 103) と、 前記複数タグのそれぞれについて該タグの前記テキストデータ における出現位置を示す出現位置データが記録されるタグ出現位置情報 (1 1 0 2) とを入力する入力ステップと、
前記入力ステップにより入力された前記テキスト情報 (1 101) から、 前記 ' 電子データ (1 100) の処理対象となる任意領域に対応する前記テキストデー タを読出すテキスト読出ステップ (S 906) と、
前記入力ステップにより入力された前記タグ出現位置情報 (1 102) に基づ レ、て、 前記任意領域に対応する前記テキストデータにおいて出現する前記タグを 特定し、前記入力ステップにより入力された前記タグ詳細情報(1 103)力 ら、 前記特定された前記タグの前記属性データを読出す属性読出ステップ(S 907) と、
前記テキス.ト読出ステップ (S 906) により読出された前記テキストデータ を、 前記属性読出ステップ (S 906)'において読出された前記属性データに基 づいて処理する処理ステップ (S 909、 S 9 10) とを備えることを特徴とす る、 データ処理プログラムを記録したコンピュータ読取可能な記録媒体。
PCT/JP2004/006924 2003-05-22 2004-05-14 データ処理装置、データ処理方法、データ処理プログラム、およびデータ処理プログラムを記録したコンピュータ読取可能な記録媒体 WO2004104857A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP04733166A EP1628227A4 (en) 2003-05-22 2004-05-14 DATA PROCESSING DEVICE, METHOD, AND PROGRAM, COMPUTER-READABLE RECORDING MEDIUM CONTAINING THIS DATA PROCESSING PROGRAM

Applications Claiming Priority (4)

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

Publications (1)

Publication Number Publication Date
WO2004104857A1 true WO2004104857A1 (ja) 2004-12-02

Family

ID=33478977

Family Applications (1)

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

Country Status (2)

Country Link
EP (1) EP1628227A4 (ja)
WO (1) WO2004104857A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111985188A (zh) * 2020-07-22 2020-11-24 用友网络科技股份有限公司 一种数据转换方法、装置、终端和存储介质

Families Citing this family (3)

* 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 富士通株式会社 分割プログラム、連結プログラム、情報処理方法
CN106227717A (zh) * 2016-07-15 2016-12-14 广东小天才科技有限公司 一种文档处理方法及装置、终端设备

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 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 文字ベースのドキュメント及びファイルにおける属性データの不可視符号化

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5737599A (en) * 1995-09-25 1998-04-07 Rowe; Edward R. Method and apparatus for downloading multi-page electronic documents with hint information
GB2366037B (en) * 2000-02-24 2004-01-21 Ibm Customising an HTML document
WO2001082133A2 (en) * 2000-04-11 2001-11-01 Informatica Corporation Xml flattener

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 構造化文書変換装置及びクエリー変換装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1628227A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111985188A (zh) * 2020-07-22 2020-11-24 用友网络科技股份有限公司 一种数据转换方法、装置、终端和存储介质

Also Published As

Publication number Publication date
EP1628227A4 (en) 2010-07-07
EP1628227A1 (en) 2006-02-22

Similar Documents

Publication Publication Date Title
US10671251B2 (en) Interactive eReader interface generation based on synchronization of textual and audial descriptors
US9104647B2 (en) System and method for reading multifunctional electronic books on portable readers
JP2012133659A (ja) ファイルフォーマット、サーバ、電子コミックのビューワ装置および電子コミック生成装置
CN103279350B (zh) 用于资源选择的语言列表
US8856180B2 (en) System and method for formatting multifunctional electronic books for electronic readers
JP2014197341A (ja) 電子書籍制作装置、電子書籍システム、電子書籍制作方法及びプログラム
KR101567449B1 (ko) 음성인식에 기반한 애니메이션 재생이 가능한 전자책 단말기 및 그 방법
JP2006236315A (ja) 符号化が利用できないときに外国語テキスト表示を実現する方法および装置
JP4403561B2 (ja) 画面の表示を制御する技術
WO2004104857A1 (ja) データ処理装置、データ処理方法、データ処理プログラム、およびデータ処理プログラムを記録したコンピュータ読取可能な記録媒体
KR20060088175A (ko) 멀티 포맷을 갖는 전자책 파일 생성 방법 및 시스템
JP4184155B2 (ja) データ処理装置、データ処理方法、データ処理プログラム、およびデータ処理プログラムを記録したコンピュータ読取可能な記録媒体
JP2003091344A (ja) 情報処理装置および情報処理方法、記録媒体、データ構造、並びにプログラム
JP6664536B1 (ja) ウエブフォーム入力支援システム
JP4173770B2 (ja) データ処理装置、データ処理方法、データ処理プログラムおよび記録媒体
JP2003067421A (ja) 情報処理装置および情報処理方法、記録媒体、並びにプログラム
JP5230193B2 (ja) データ検索装置、データ検索方法、及びコンピュータプログラム
JP4628450B2 (ja) データ処理装置、データ処理方法、データ処理プログラムおよび記録媒体
JPWO2005101210A1 (ja) データ解析装置およびデータ解析プログラム
JP2003099424A (ja) 文書のデータ構造、記憶媒体及び情報処理装置
JP6229645B2 (ja) 情報処理装置、情報処理方法、及びそのプログラム
JP4183263B2 (ja) 画像表示装置及びその制御方法
JP5894074B2 (ja) テキスト変換装置、テキスト変換方法、及びプログラム
US20050119888A1 (en) Information processing apparatus and method, and program
JP2020129392A (ja) 情報処理装置と、その処理方法及びプログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200480021096.4

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DPEN Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed from 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2004733166

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2004733166

Country of ref document: EP