WO2002103554A1 - Procede de traitement de donnees, programme de traitement de donnees et appareil de traitement de donnees - Google Patents

Procede de traitement de donnees, programme de traitement de donnees et appareil de traitement de donnees Download PDF

Info

Publication number
WO2002103554A1
WO2002103554A1 PCT/JP2002/005880 JP0205880W WO02103554A1 WO 2002103554 A1 WO2002103554 A1 WO 2002103554A1 JP 0205880 W JP0205880 W JP 0205880W WO 02103554 A1 WO02103554 A1 WO 02103554A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
block
electronic data
processing
electronic
Prior art date
Application number
PCT/JP2002/005880
Other languages
English (en)
French (fr)
Inventor
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
Application filed by Sharp Kabushiki Kaisha filed Critical Sharp Kabushiki Kaisha
Priority to JP2003505803A priority Critical patent/JP4794127B2/ja
Priority to DE60224271T priority patent/DE60224271T2/de
Priority to KR1020037016296A priority patent/KR100556647B1/ko
Priority to US10/480,211 priority patent/US20050165835A1/en
Priority to EP02738675A priority patent/EP1396793B1/en
Publication of WO2002103554A1 publication Critical patent/WO2002103554A1/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/137Hierarchical processing, e.g. outlines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • 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 data processing method, a data processing program, a data processing device, structured data, a computer-readable recording medium on which the structured data is recorded, and a transmission device, and more particularly to processing electronic data having a P-layer structure.
  • the present invention relates to a data processing method, a data processing program, a data processing device, structured data, a computer-readable recording medium on which the structured data is recorded, and a transmission device.
  • SGML Standard Generalized Markup Language: quasi-generalized
  • XML Extensible Markup Language
  • XML has been widely 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 electronic data, and then accesses each element of the electronic data. For example, if there is electronic data with a hierarchical structure as shown in Fig. 16, once read the entire electronic data and analyze the hierarchical structure of all elements. Fig. 16 shows only the hierarchical structure of electronic data, and the text and contents are omitted. After creating a tree structure (tree structure) as shown in Fig. 17 from the electronic data having the hierarchical structure shown in Fig. 16, each element (TITLE, AUTHOR, etc.) is accessed. Therefore, the method of processing electronic data in the D0M format has the characteristic that any element can be easily accessed because the electronic data is processed after the hierarchical structure of the electronic data is grasped.
  • the SAX format is a processing method in which electronic data is sequentially read from the top, and only the read elements are subjected to structural analysis and processed. Therefore, electronic day Data can be processed sequentially without waiting for analysis of the entire data. This has the advantage that there is little overhead, both in terms of processing speed and memory capacity.
  • the region to be processed for electronic data having a P-layer structure is However, even when trying to read only the data, it was not possible to know the control information (tag, attribute, etc.) written in the area other than the area to be processed.
  • the present invention provides a data processing method, a data processing program, a data processing device, structured data, a computer-readable recording medium recording the structured data, and a transmission device which can solve such a problem. It is intended to provide. Disclosure of the invention
  • a data processing method, a data processing program, a data processing device, structured data, a computer-readable recording medium recording the structured data, and a transmission device described below are provided. Is provided.
  • a data processing method further comprising:
  • the block capture data includes position information of each block of the electronic data divided into a plurality of blocks, and a start position and an end position of the block.
  • a data processing method characterized by including information on all members at the end position.
  • the block auxiliary data includes position information of a link destination.
  • the block size is determined by the processing capacity of the device that processes the electronic data, the number of characters displayed on the device screen, and the number of characters displayed.
  • Ba A receiving step of requesting the block and receiving the data of the block; a reproducing step of analyzing the hierarchical structure of the block using the received block and the block auxiliary data of the block, and performing a predetermined process using the result.
  • a data processing program for dividing electronic data having a hierarchical structure into a plurality of blocks and generating structured data for executing predetermined processing for each of the divided blocks, An extraction step of extracting boundary candidates at each block boundary when the electronic data is divided into a predetermined block size; a determination step of determining a block division position based on boundary candidates; each of the determined blocks Acquisition step of acquiring information indicating the characteristics of the hierarchical structure at the start position and end position of the block, the position information of the division information of each block determined in the determination step, and the hierarchy corresponding to the acquired position information Generating block auxiliary data including information indicating structural features, and adding block auxiliary data to the electronic data to generate structured data.
  • Konbiyu ⁇ data, data processing program.
  • a data processing program for receiving electronic data having a hierarchical structure from the server and performing predetermined processing on the electronic data, and transmitting a name of the electronic data to be subjected to predetermined processing to the server.
  • Steps and electronic data from the server A reception step for receiving block auxiliary data for processing by dividing the block into a plurality of blocks, and requesting a server to transmit a block containing electronic data to be subjected to a predetermined process from among electronic data, and receiving block data.
  • the received block, the received block, and the block capture data of the block to analyze the hierarchical structure of the block, and using the result to execute a reproduction step of performing a predetermined process on the computer, Processing program.
  • a data processing device for processing electronic data having a hierarchical structure, wherein the electronic data is accompanied by block auxiliary data, which is auxiliary information for dividing the electronic data into a plurality of blocks for processing.
  • block auxiliary data which is auxiliary information for dividing the electronic data into a plurality of blocks for processing.
  • the electronic data a block containing the data to be processed, an input unit for reading the block auxiliary data, and a data structure analysis for analyzing the hierarchical structure of the read block using the block auxiliary data.
  • a processing unit for performing predetermined processing using the result of the data structure analysis unit.
  • a data processing device for calculating a display layout of the read block; and a display unit for displaying based on the display layout obtained by the layout calculator.
  • a data processing device for receiving electronic data having a hierarchical structure from a server and performing predetermined processing on the electronic data, wherein the electronic data is processed by dividing the electronic data into a plurality of blocks.
  • Block information which is auxiliary information of the electronic data, is attached to the server, and a block containing electronic data to be subjected to predetermined processing is transmitted to the server, and block data and block auxiliary data are transmitted from the server.
  • a data structure analysis unit that analyzes the hierarchical structure of the received packet using the transmission / reception unit to receive, the received block, and the block auxiliary data, and a predetermined process using the result of the data structure analysis unit
  • a data processing device comprising:
  • the block auxiliary data shall be a link Structured data characterized by including location information.
  • Structured data characterized by comprising a pair of electronic data described in accordance with the definition of a document description language and block auxiliary data for processing by dividing the electronic data into a plurality of blocks Computer readable recording medium.
  • a transmission device comprising: a transmission unit configured to transmit the data processing program described in any one of (13) to (15).
  • a transmission device comprising: a transmission unit that transmits the hierarchical data described in (20) or (21).
  • FIG. 1 is a block diagram of a data processing device 100 according to the first embodiment of the present invention.
  • FIG. 2 is a diagram showing an overview when a display device according to the first embodiment of the present invention is realized by a portable device as a specific example.
  • FIG. 3 is a diagram showing a specific outline of block auxiliary data according to the present embodiment.
  • FIG. 4 is a diagram specifically showing a state in which electronic data is divided into a plurality of blocks.
  • FIG. 5 is a diagram showing a specific example of block assist data set for the electronic data shown in FIG.
  • FIG. 6 is a flowchart showing processing of the data processing device 100 according to the first embodiment of the present invention.
  • FIG. 7 is a diagram showing a specific example of data created from data for one block and block auxiliary data.
  • FIG. 8 is a diagram showing a specific example of electronic data that does not completely have a hierarchical structure.
  • FIG. 9 is a block diagram of a data processing device 200 according to the second embodiment of the present invention.
  • FIG. 10 is a flowchart showing processing of the data processing device 200 in the second embodiment of the present invention.
  • FIG. 11 is a flowchart showing a process when creating block auxiliary data in the second embodiment.
  • FIG. 128 to FIG. 12C are diagrams showing a specific example of data to be divided into blocks in the middle of a row and a specific example of display.
  • FIG. 13 is a block diagram of a data processing device according to the third embodiment of the present invention.
  • FIG. 14 is a flowchart showing processing when creating block auxiliary data in the third embodiment.
  • FIG. 15 is a flowchart showing the processing of the data processing device according to the third embodiment of the present invention.
  • FIG. 16 is a diagram showing a specific example of electronic data having a P-layer structure.
  • FIG. 17 is a diagram for explaining a tree structure extracted from electronic data having a hierarchical structure.
  • FIG. 18 is a diagram showing a specific example of electronic data having a hierarchical structure. BEST MODE FOR CARRYING OUT THE INVENTION
  • FIG. 1 is a diagram showing an example of a block diagram of a data processing device 100 in the case where the data processing device 100 in the first embodiment is a display device.
  • server 110 receives a request from a user and transmits electronic data recorded in a database.
  • the network 114 connects the server 110 to a user's personal computer (hereinafter referred to as a personal computer) 115.
  • the recording medium 111 retrieves electronic data from the personal computer 115 and supplies the data to the data processor 100.
  • the personal computer 1 15 described above is replaced with an electronic data receiving device (not shown) installed in the convenience store station yard or the like, and the electronic data is taken out from the electronic data receiving device, and the recording medium 111 is read out. May be recorded. In this case, it is possible to charge when extracting the electronic data from the electronic data receiving device and recording it on the recording medium 111. Further, the electronic data transmitted from the server 110 may be received by the data processing device 100 and recorded on the recording medium 111 without passing through the personal computer 115.
  • the electronic data 101 is electronic data recorded on the recording medium 111, and the block auxiliary data 102 is recorded on the recording medium 111. This is data associated with 101.
  • the above-mentioned electronic data 101 is structured electronic data for executing a predetermined process in accordance with the definition of the document description language, and has a data format for recording a structured document having a hierarchical structure. It is recorded using a certain SGML or XML.
  • the block auxiliary data 102 is data that divides the electronic data 101, which is the above-described structured electronic data, into a plurality of blocks and executes a predetermined process for each of the divided blocks. Paired with data 101.
  • input section 103 reads electronic data 101 and block auxiliary data 102.
  • the data structure analysis unit 104 analyzes the hierarchical structure of the data from the electronic data 101 and the block assist data 102.
  • the processing unit 105 performs a predetermined process based on the hierarchical structure analyzed by the data structure analysis unit 104.
  • the control unit 109 controls each processing unit of the input unit 103, the data structure analysis unit 104, and the processing unit 105.
  • the processing unit 1005 has a different configuration depending on the contents of the electronic data to be processed and the processing contents.
  • the display rate of texts is calculated based on the analysis result of the data structure translator 104, as shown in Fig. 1.
  • the processing unit 105 is changed to a reading device, the display unit 108 uses a voice reproducing unit, and the layout calculating unit 106 reads the voice. It is changed to a part that determines the part to be read and the part that cannot be read, a part that is emphasized to be read and a part that is not read, and a part that takes the interval between each reading.
  • the voice attribute may be changed according to the hierarchical structure of the electronic data to read out the voice.
  • the data processing device 100 needs a scenario interpreting unit, a voice output unit, and a synchronizing unit for synchronizing each element in order to manage the reproduction order.
  • FIG. 2 shows a specific example in a case where the above-described data processing device 100 is realized by a portable device.
  • a display unit 108 performs display based on the display layout calculated by the layout calculation unit 106, and includes a display and the like.
  • the recording medium As shown in FIG. 1, the body 111 is extracted from the document database via the server 110 and the network 114 by the personal computer 115 or the electronic data receiving device. In addition, this is a recording medium on which electronic data 101 to be processed and block auxiliary data 102 are recorded.By inserting this recording medium 111 into the data processing device 100 of the main body, These two data are read through an input unit 103 provided in a data processing device 200 which is a display device. The pen 1 13 is used to jump to the link destination when the electronic data includes a link function, and the data processing device 1 as a display device. Change from 0 0 to the required confirmation items It is also used in order.
  • an area for recording is provided inside the data processing device 100, and May be stored.
  • the two data may be recorded in the server 110 on the network 114 or in a database, and processed while downloading.
  • the block auxiliary data generally consists of three areas: electronic data file name 1, block information 2, and link destination information 3.
  • Electronic data file name 1 is an area prepared to record which electronic data the block auxiliary data corresponds to. When the block auxiliary data is recorded in the electronic data or linked to the electronic data, the area of the electronic data file name 1 may be omitted.
  • the area of the link destination information 3 may not exist depending on the electronic data to be processed.
  • area 20 of the block auxiliary data is an area of electronic data file / file name 1, and the file name of the XHTML document in FIG. 4 is recorded.
  • Block capture data areas 21 to 37 are areas for block information 2.
  • the area 21 is an area for recording the number of blocks. When dividing into four blocks, 4 is recorded.
  • Areas 22 to 25, 26 to 29, 30 to 33, and 34 to 37 are areas of block information for blocks 10, 11, 11, 12, and 13, respectively. In general, when divided into n blocks, the structure of the block information in the areas 22 to 25 is repeatedly recorded n times.
  • the start position of each block is stored in areas 22, 26, 30 and 34, and the end position of each block is stored in areas 23, 27, 31 and 35. It is recorded in the form of a number. Therefore, if you want to extract the data belonging to block 11, check the value of the block information in area 26 and area 27, and count the 2nd to 4th bytes from the 2nd and 2nd bytes from the beginning of the file. Just read it.
  • the start tags that have not been completed are recorded at the start position of each block.
  • the block information of area 24 is the area where the start tag that is not ended at the start position of block 10 is recorded, but since block 10 starts from the beginning of the file, the control code to be recorded in area 24 Does not exist. Since the html> is not closed at the start position of block 1 1, area 2 8
  • link destination information 3 and 4 in Fig. 4 are examples where a link to a part of the same file is made.
  • the character string "BBB" enclosed in the ⁇ a> tag of the link destination information 3 is clicked, the location where the label specified by the href attribute @ SUMMARY is set, that is, Jump the display position to link destination information 4 for which "SUMMARY ⁇ " is set in the name attribute.
  • the position information of the label of the link destination that is, the position information of the label set by the narae attribute of the ⁇ a> tag is recorded.
  • 1 is recorded in area 3 8 and the combination of areas 3 9 to 4 1 is recorded only once.
  • the link destination information of the structure in areas 39 to 41 is repeated n times.
  • the label name recorded in the name attribute of the a> tag, and in the areas 40, 41, the start and end positions of the character string sandwiched by the a> tag are copied from the beginning of the file. Record by number.
  • the size of the block is determined from the processing capacity of the device. In other words, the larger the block size, the greater the amount of processing per block, so the processing time increases and the memory capacity and resource capacity used also increase. Therefore, it is desirable that the size of the block be determined according to the processing capacity of the apparatus.
  • Factors that determine the processing capacity of the equipment include the processing capacity, memory capacity, and resource capacity of the CPU (Central Processing Unit) mounted on the equipment.
  • the size of the block depends on the number of characters displayed on the screen and the factors that determine it. It is also determined. For example, an apparatus for displaying a text such as an electronic book is often designed to display one screen and then wait until a user instructs to move a page. In this case, if the block size is set extremely large with respect to the number of characters displayed on the screen, the block is not displayed on the screen because the block is read as one unit in the processing method according to the present embodiment. Unnecessary data will be read, resulting in waste. Therefore, it is desirable that the block size is determined based on the number of characters displayed on the screen.
  • the number of characters displayed on the screen varies depending on the screen size and resolution of the display device, the number of fonts of displayed characters, the size of lines and characters, the size of margins, etc.
  • the size of the block may be changed depending on the size of the block.
  • the structure and format of this block auxiliary data differ slightly depending on the type of electronic data to be processed. Generally, in the case of electronic data written in ML format, there are two areas, electronic data file name 1 and block information 2, except for the link information 3 in Fig. 3, and the format is the same. Since the link destination information 3 is information for a link function which is a function of the XHTML document, it may not exist for electronic data other than the electronic book such as the XHTML document.
  • applicable electronic data is not limited to the XML format. In general, it can be applied to structured documents having a hierarchical structure.
  • the start and end position control codes of the block information 2 indicate the hierarchical structure at the start Z end position of the block. Please record in this format.
  • Figure 6 shows a flowchart for the display device.
  • step S101 electronic data to be displayed is specified by the user through the user instruction processing unit 107 (step S101), and the electronic data of is prepared.
  • the input block auxiliary data is read from the input section 103 (step S102).
  • step S102 Next, of the block auxiliary data read in step S102, which block is to be read based on the start Z end position of each block and the position from the file head of the area to be displayed on the screen. Is determined (step S103), and only necessary blocks are read from the input unit 103 (step S104).
  • step S105 the control code at the start Z end position of the read block is checked by referring to the contents of the block auxiliary data read in step S102. Then, the start position control code, the block data, and the end position control code are connected in this order, the hierarchical structure is analyzed, and a tree structure is created (step S105).
  • the data shown in FIG. 7 in which the block information in the area 32 and the area 33 of the block auxiliary data in FIG. Create and analyze the hierarchical structure.
  • the data of the area 51 is the control code recorded in the block information of the area 32
  • the data of the area 52 is the data of the block 12 read in step S104
  • the area 5 3 Is the control code recorded in area 33.
  • an L declaration and a document type declaration such as data in the area 50 may be added at the beginning.
  • the processing in step S105 is performed by the data structure analysis unit 104.
  • the layout calculation unit 160 calculates a layout in the display screen based on the tree structure for one block created in step S105 (step S106). As a result, when the layout of the entire display screen of the display unit 108 is determined (step S107), the process proceeds to step S108, and the display unit 108 displays the image.
  • step S107 if there is an area in the display screen for which the layout has not been determined yet, the process returns to step S104, reads the next block, and creates a tree structure (step S105) Then, the layout processing of the current block is performed from the continuation of the layout screen obtained for the previous block (step S106). In the subsequent steps S107 and SI08, the same processes as those described above are performed.
  • step S109 After displaying on the display unit 108 in step S108, the process moves to step S109 and waits for an instruction from the user. Wait at step S109 until there is an instruction from the user I do.
  • step S109 if the user issues a scroll instruction for the next page or the previous page, the process proceeds to step S111, and as a result of the scroll instruction received from the user, the content to be displayed next is the current content. Determine if it is the same as the block. If they are the same, the process proceeds to step S106, where the layout processing is performed based on the tree structure created earlier, and the processing from step S107 onward is continued in the same manner as the processing described above. .
  • step S111 If it is determined in step S111 that the block is different from the current block, the process proceeds to step S104, where a block necessary for display is read, and the same process as described above is performed. Then, the processing after step S105 is continued.
  • step S109 if it is instructed to fly to another area by a link jump or the like in step S109, the procedure moves to step S110, and the destination is moved to another file.
  • step S110 Find out what. For example, in an XHTML document, if a character string sandwiched between 3> tags with an href attribute is clicked, the value of the href attribute determines the link strength to other files and the link to its own file. You.
  • step S111 determine whether the link destination is the same as the current block.
  • the link destination information 3 recorded in the block auxiliary data it is checked which block includes the link destination. For example, in the case of the example in FIG.
  • step S106 If the obtained block at the link destination is the same as the current block, the process proceeds to step S106, and thereafter, the same processing as the processing described above is performed.
  • step S104 the block is read, and thereafter, the same processing as that described above is performed.
  • step S110 Moves to step SI 02, reads the block auxiliary data prepared for the file at the link destination, and thereafter performs the same processing as the processing described above.
  • an XHTML document has been described in some places as an example.
  • the present invention is not limited to a display device of an XHTML document.
  • the block auxiliary data shown in FIG. 3 and the flowchart shown in FIG. 6 can be applied to an electronic data display device having a link function such as an XHTML document and having a hierarchical structure.
  • electronic data without a link function can be applied by omitting the link destination information 3 in FIG. 3 and step S110 in FIG.
  • JepaX JEPA Electronic Publishing Exchange Format
  • Network Electronic Book Format Network Electronic Book Format
  • the present invention is characterized in that by preparing the block capture data, only a part of the electronic data having a hierarchical structure can be read and processed. Therefore, in the block diagram of FIG. 1, the present invention can be applied not only to the display device but also to other processing devices by replacing the processing unit 105 with processing unique to the processing device. At this time, in the flowchart of FIG. 6, the processing in steps S106 to S108 is replaced with processing unique to the processing device. For example, in the case of a text-to-speech device, there are steps for determining which portions of the electronic data are readable and which are not, for example, a step for setting the sound quality and intensity to be read according to the portions, and a step for reproducing sound. Replaced by processing. On the other hand, in the present embodiment, the description has been made for electronic data having a hierarchical structure such as XML, but electronic data which does not have a complete hierarchical structure such as an HTML document is described. It is also applicable.
  • FIG. 9 is an example of a block diagram of a data processing device 200 according to the second embodiment of the present invention.
  • electronic data 201 is electronic data processed by data processing apparatus 200 of the present invention.
  • the block auxiliary data 202 is block auxiliary data attached to the electronic data 201.
  • the input unit 203 reads the electronic data 201 and the block auxiliary data 202.
  • the data structure analysis unit 204 analyzes the hierarchical structure of the data based on the electronic data 201, the block auxiliary data 202, and the force.
  • the block auxiliary data creating unit 205 creates block assist data from the electronic data 201 when the block assist data 202 does not exist.
  • the processing unit 206 performs predetermined processing based on the hierarchical structure analyzed by the data structure analysis unit 204.
  • the control unit 210 controls each of the input unit 203, the data structure analysis unit 204, the block assisting data creation unit 205, and the processing unit 206.
  • the electronic data 201 and the block assisting data 202 are recorded on the recording medium 111 as in the first embodiment, and read into the data processing device 200.
  • the processing unit 206 described above has a different configuration depending on the contents of the target electronic data and the processing contents.
  • the data processing device 200 is a display device for displaying a sentence, etc.
  • the layout calculation unit 207 calculates the display layout of a sentence based on the analysis result of the data structure analysis unit 204.
  • the display unit 209 includes a display unit 209 for displaying based on a display rate, and a user instruction processing unit 209 for processing an instruction from the user such as scrolling.
  • FIG. 10 shows a flowchart of the processing in the processing device 200.
  • step S201 when the user specifies electronic data to be processed using a keyboard, a mouse, a pen, or the like (step S201), the user instruction processing unit Through step 208, it is determined in step S202 whether or not block auxiliary data exists for the electronic data.If so, processing similar to that of the first embodiment described above is performed. The processing after step S102 in FIG. 6 is performed.
  • step S202 If it is stimulated in step S202 that the corresponding block auxiliary data does not exist, block auxiliary data is created in step S203 and the processing after step S102 in FIG. 6 is performed. It is. Since the processing after step S102 is the same as the processing described in the first embodiment, description thereof will not be repeated.
  • step S203 Next, the process of step S203 will be described in detail.
  • the block auxiliary data creation unit 205 divides the electronic data input from the input unit 202 into a plurality of blocks, and examines the control code at the start Z end position of each block, as shown in Fig. 3. Create block auxiliary data.
  • FIG. 11 shows a flowchart of the process in step S203.
  • a target value T of the block size is set (step S301). As described above, it is desirable that the appropriate block size is determined based on the processing capacity of the treatment device, the number of characters displayed on the screen, and the factors that determine it. Therefore, the target value T of the block size is set based on these parameters. Note that the target value T may be set using a default value provided in advance in the processing device or a value specified by the user.
  • the block auxiliary data shown in FIG. 5 is created by setting the target value of the block size to 200 bytes.
  • the set block size is set as the target value because, in general, there are restrictions on the locations where blocks can be divided. Details will be described in the description of step S303.
  • the process proceeds to step S302, where the X-byte area sandwiching the ⁇ th byte from the beginning of the file is set as the search range of the block boundary. Set.
  • the value of X is set, for example, to half of the target value ⁇ of the block size.
  • a boundary candidate within the search range is extracted.
  • Boundary candidates vary depending on the type of target electronic data.For example, if the electronic data is an XML document, the delimiting point is not in the middle of a tag, comment, or character string, but just before the tag Or immediately after. For example, div Div
  • the data processing device 200 is a display device that displays an electronic book such as an XHTML document
  • the part where the display starts from the beginning of the line such as immediately after a line feed tag or at the beginning of a paragraph.
  • the XHTML document whose specific example is shown in FIG. 12A is divided into two blocks 60 and 61 in the middle of a line.
  • a display example when displayed from the top of the XHTML document is shown in Fig. 12B.
  • block 61 will be laid out in the middle of the line (from the 7th character on line 3).
  • layout calculation is performed by reading only block 61, so that block 61 is located at the top of the line as shown in Fig. 12C. Displayed from. Therefore, if the user issues a schoronography instruction from block 61 to block 60 in the direction opposite to the text, the display start position of block 61 differs as shown in Fig. 12B and Fig. 12C. The display is distorted when switching.
  • the division position of the block is limited to the place where the display starts from the beginning of the line. Therefore, such a problem does not occur because the layout is always performed from the beginning of the line without depending on the layout result of the immediately preceding block. Therefore, in the case of an e-book such as an XHTML document, the boundary of the block is extracted immediately before or after the tag, and the power is always extracted from the position where the display is at the beginning of the line. '
  • step S304 the condition is branched by step S304 according to the number of boundary signs extracted in step S303.
  • step S302 If the boundary candidate is not found, the process moves to step S302, and the search range is shifted below the finolare, and the processing after step S302 is performed in the same manner as described above.
  • step S302 the candidate closest to the center of the search range set in step S302 is selected and set as the boundary (step S305). Then, in step S306, the position and the hierarchical relationship of the start / end position of the block from the beginning of the file are checked, and information for one block recorded in the block information 2 is acquired. Then, it is checked whether the end of this block is the end of the file (step S308). If not, the process proceeds to step S302, and the search for the next block is continued. On the other hand, if it matches the end of the file, in step S308, the block information checked in S301 to S307 and the file name of the electronic data are recorded in the block capture data. At this time, if necessary, check the link destination information and record it in the block capture data. When step S308 is completed, the block assisting data creation processing ends.
  • the block auxiliary data creation unit 205 is provided in the data processing device 200 has been described.
  • the block auxiliary data creation unit 205 has been described in the first embodiment. It is also possible to prepare the block 110 in the server 110 and create block auxiliary data there.
  • the processing flow in this case is as described in the present embodiment.
  • the content described in a general document description language can be unique to this application. It can be converted to content having the data structure of.
  • the content generated in this way is transferred to the server 1 in Fig. 1. Upload to 10 and download from server 110 to user's PC 115.
  • a system for creating and selling content to be displayed on the data processing device 100 can be constructed.
  • the data processing device 100 is an electronic book viewer, such a system converts the electronic book content described in a general-purpose document description language into a data structure dedicated to the data processing device 100 and provides the data structure. It is effective when you do.
  • the display device has been described in some places as an example.
  • the present invention creates a block auxiliary data and processes the same to form a hierarchical structure. It is unique in that it can read and process only a part of the electronic data that it has. Therefore, in the block diagram of FIG. 9, the present invention can be applied not only to a display device but also to a general data processing device by replacing the processing unit 206 with a processing unit unique to the processing device.
  • FIG. 13 is an example of a block diagram of a data processing device according to the third embodiment of the present invention.
  • a data display device will be described as an example.
  • the data display device according to the present embodiment is roughly divided into a document DB (database) 301, a server processing unit 302, and a client processing unit 304.
  • the server processor 302 and the client processor 304 are connected by a network line 303.
  • the document DB301 stores electronic data to be processed and auxiliary block data associated therewith.
  • the server processing unit 302 creates the input unit 305 for reading the electronic data and the block auxiliary data from the document DB 301 and the block auxiliary data when there is no block auxiliary data for the electronic data.
  • a transmission / reception unit 3 which receives a request from the block auxiliary data creation unit 303 to be recorded in the document DB 301 and a client processing unit 304 and transmits designated data to the client processing unit 304. 0 7
  • the client processing section 304 is used to process electronic data to be processed and scroll instructions.
  • a user instruction processing unit 309 for processing an instruction from the user, an instruction content from the user analyzed by the user instruction processing unit 309 and the like are transmitted to the server processing unit 302, and the server processing unit 30
  • a transmission / reception unit 310 that receives the data sent from the server 2
  • a data structure analysis unit 310 that analyzes the hierarchical structure of the electronic data sent from the server processing unit 302, and a data structure analysis.
  • a layout calculation unit 311 for calculating a display layout of electronic data using the hierarchical structure analyzed by the unit 3110, and a display unit 31 for displaying based on the layout calculated by the layout calculation unit 311 And 2.
  • the server is configured to transmit necessary data through the transmission / reception unit 3108. In some cases, a request is issued to the processing unit 302.
  • step S301 when electronic data to be processed is specified by the user, the final name of the electronic data to be processed is sent to server processing unit 302 (step S301).
  • the server processing section 302 checks whether or not block auxiliary data for the electronic data exists in the document DB 301 (step S302), and if not, proceeds to step S303. Move on to create block assistance data, and move on to step S304.
  • the process in step S303 is similar to the process described with reference to FIG. 11, and thus description thereof will not be repeated.
  • the pro click Tosuke data exists in the step S 3 0 2
  • step S304 the block auxiliary data is sent to the client processing unit 304 and received by the client processing unit 304 (step S305).
  • step S301 the target value of the size at the time of block division from the screen size of the display unit 312 and the amount of memory is transmitted along with the file name of the electronic data, and the server processing unit 302
  • the block auxiliary data may be created based on the block size. With this configuration, it is possible to perform block division according to the processing capability of the client processing unit 304, and ultimately to improve the usability of the user.
  • the client processing unit 304 receives the block assist data, it analyzes the received block assist data and displays the start / end position of each block and the screen. Based on the position of the area to be read from the beginning of the file, it is determined which block is to be read, and the block to be read is transmitted to the server processing unit 302 (step S306).
  • the server processing unit 302 Upon receiving the request, the server processing unit 302 reads the designated block from the document DB 301 and returns it to the client processing unit 304 (step S307).
  • the client processing unit 304 performs the same processing as in step S105 described above based on the received block data and the contents of the block assisting data, and thereafter performs the processing from step S106 onward.
  • the same processing as in step S105 described in (1) is performed (step S309 to step S314).
  • the block auxiliary data creation unit 303 is located in the server processing unit 302 .
  • the block auxiliary data creation unit 303 is provided in the document DB 301 or In preparation for the client processing unit 304, it is also possible to create the block capture data in the document DB 301 or the client processing unit 304.
  • the data display device has been described as an example.
  • the present invention processes electronic data having a hierarchical structure by processing using block capture data.
  • the feature is that only a part can be received and processed. Therefore, in the block diagram of FIG. 13, the present invention can be applied not only to a display device but also to a general data processing device by replacing the layout calculation unit 311 and the display unit 3112 with a processing unit unique to the processing device. Can be applied.
  • a part or all of the processing in the above-described first to third embodiments is constituted by an ordered sequence of instructions suitable for processing by a computer (program). It is also possible to provide as. Further, these programs can be provided as a computer-readable recording medium on which the programs are recorded for installation, execution, and distribution of the programs.
  • the hierarchical structure can be obtained by using the block auxiliary data prepared for the electronic data.
  • the block auxiliary data prepared for the electronic data.
  • only a part of the electronic data can be read and processed.
  • processing can be performed at a higher speed and less memory is required.
  • by providing the location information of the link destination in the block auxiliary data it is possible to move at high speed even when moving to an arbitrary block like the link function of the XHTML document.
  • the electronic data does not have the block auxiliary data, it is processed after the block auxiliary data is created once. Even electronic data that does not exist can be processed at high speed and with low memory usage.
  • the data processing device divides the size of the block into substantially equal sizes, even when the display is moved to the previous or next block by a scroll instruction from the user, the processing time is substantially the same. Is displayed with. Therefore, there is an advantage that the user does not feel a sense of discomfort. In addition, if there is an extremely large block, the processing memory may be insufficient due to the lack of working memory depending on the processing device. Is also less likely to occur.
  • processing is performed by reading only a part of the electronic data while considering the hierarchical structure. it can. Therefore, electronic Compared to downloading and processing the entire data from the server, processing can be performed at a higher speed and less memory is required.
  • the present invention is advantageous in a data processing method, a data processing program, and a data processing device. Can be applied.

Description

明細書
データ処理方法、 データ処理プログラム、 およびデータ処理装置 技術分野
本発明は、 データ処理方法、 データ処理プログラム、 データ処理装置、 構造化 データ、 構造化データを記録したコンピュータ読取可能な記録媒体、 および送信 装置に関し、 特に、 P皆層構造を有する電子データを処理することのできるデータ 処理方法、 データ処理プログラム、 データ処理装置、 構造化データ、 構造化デー タを記録したコンピュータ読取可能な記録媒体、 およぴ送信装置に関する。 背景技術
文書記述言語の定義に従って所定の処理を実行させるための構造化された電子 データであって、 階層構造を有する構造化文書を記録するためのデータ形式とし て、 SGML (Standard Generalized Markup Language:準一般化マーク付け言語) や XML (Extensible Markup Language) などが知られている。 特に XMLは、 イン ターネットで交換する電子文書や電子データなどで近年盛んに使用されている。
XML形式の電子データを扱う処理方法として、 DOM (Document Object Model) 形式と SAX (Simple API for XML) 形式とが存在する。
DOM形式とは、 対象とする電子データを全て読込み、 電子データ内の全要素の 階層構造を把握してから、 電子データの各要素にアクセスする処理方法である。 例えば、 図 1 6のような階層構造をもつ電子データがある場合、 いったん電子デ ータ全体を読込み、 全要素の階層構造を解析する。 図 1 6は、 電子データの階層 構造のみを示し、 本文、 内容は省略している。 そして、 図 1 6の階層構造をもつ 電子データから、 図 1 7のような木構造 (ツリー構造) を作成した後、 各要素 (TITLE, AUTHOR など) にアクセスする。 よって、 D0M形式の電子データの処理 方法は、 電子データの階層構造を把握した後に処理することになるため、 任意の 要素にアクセスしやすいという特徴がある。
これに対し、 SAX形式は、 電子データを先頭から順に読込みながら、 読込んだ 要素のみ構劍军析し、 処理していく形式の処理方法である。 そのため、 電子デー タ全体の解析処理を待たずに、 順次処理していくことができ、 処理速度としても、 メモリの容量としても、 オーバーへッドが少ないというメリットがある。
以上のように、 D0M形式おょぴ SAX形式ともにそれぞれのメリットがあるが、 反面、 次のようなデメリットがそれぞれにある。
すなわち、 D0M形式の場合、 電子データ内の一部のデータだけを処理したい場 合であっても、 木構造を生成するために、 電子データ全体の構造解析をしなくて はならず、 処理に無駄が生じる。 また、 電子データのサイズが大きくなると、 木 構造を作成するための処理時間、 および木構造を記憶しておくためのメモリ使用 量が大きくなるという欠点があった。
一方 SAX形式の場合、 電子データの先頭から順に処理することを前提にしたァ クセス形式であるため、 電子データの内容を先頭から順に処理せず、 任意の要素 を任意の順番に扱う場合には、 無駄な読込処理、 および構造解析処理が入るとい う欠点が存在する。 また、 電子データの後半の要素を処理した時であっても、 電 子データの先頭から読込み、 構造解析をしないといけないため、 処理時間として 無駄が生じていた。 -
—方、 D0M形式や SAX形式ではなく、 取出したい要素のみを、 P皆層構造を解析 することなく取出す処理方法もある。 しかしながら、 取出したい領域が、 どの要 素の下に含まれるかによつて、 その要素の意味が変わったり、 表示する位置ゃサ ィズ、 属性などが変わってしまう場合があるため、 この方法では取出した要素に 対して適切な処理ができない。 例えば、 図 1 8のような、 階層構造をもつ HTML (Extensible HyperText Markup Language) 文書の例を考える。 図 1 8において、 領域 7 1の先頭部分は、 く html>、 く body bgcolor="yellow">、 <p>に挟まれている。 このうち、 く body bgcolor="yellow"〉は、 このタグで挟まれた領域が本文データ であることを示すと共に、 本文の背景を黄色にすることを意味しており、 このタ グがあるかないかにより、 本文の背景が黄色になるか、 白色 (省略時のデフオル ト値) になるか変わってしまう。 したがって、 領域 7 1だけをファイルから読込 んで表示処理を行なおうとしても、 本文の背景が黄色であることを知ることがで きず、 正しい表示処理ができない。
このように、 一般に、 P皆層構造をもつ電子データに対しては、 処理したい領域 のみを読込んで処理しょうとしても、 処理する領域以外に書かれた制御情報 (タ グゃ属性等) を知ることができないため、 正しく処理できないという問題があつ た。
そこで、 本発明は、 このような問題を解決することのできるデータ処理方法、 データ処理プログラム、 データ処理装置、 構造化データ、 構造化データを記録し たコンピュータ読取可能な記録媒体、 および送信装置を提供することを目的とし ている。 発明の開示
本発明においては、 上述の課題を解決するために、 以下に示されるデータ処理 方法、 データ処理プログラム、 データ処理装置、 構造化データ、 構造化データを 記録したコンピュータ読取可能な記録媒体、 および送信装置が提供される。
( 1 ) 階層構造を有する電子データと、 電子データを複数のブロックに分割し て処理するためのブロック補助データとからなる構造化データを処理するデータ 処理方法であって、 電子データから所望の電子データが含まれるプロックを読込 むステップと、 読込まれたプロックのプロック補助データを用いて所望の電子デ ータの階層構造を解析するステップと、 解析された結果を用いて所定の処理をす るステップとを備える、 データ処理方法。
( 2 ) ( 1 ) に記載されたデータ処理方法であって、 電子データは表示用の文書 データであり、 所定の処理は、 読込んだブロックの表示レイアウトを計算し表示 する処理であることを特徴とする、 データ処理方法。
( 3 ) ( 1 ) に記載されたデータ処理方法であって、 電子データに対するブロッ ク補助データが存在しない場合、 電子データの処理をする前に、 電子データに対 するブロック補助データを作成するステップをさらに備えることを特徴とする、 データ処理方法。
( 4 ) ( 1 ) に記載されたデータ処理方法であって、 複数に分割された電子デー タのブロックは、 ほぼ等しい大きさであることを特徴とする、 データ処理方法。
( 5 ) ( 1 ) に記載されたデータ処理方法であって、 ブロック捕助データは、 複 数に分割された電子データの各ブロックの位置情報と、 ブロックの開始位置と終 了位置とにおける P皆層情報とを含むことを特徴とする、 データ処理方法。
( 6 ) ( 1 ) に記載されたデータ処理方法であって、 電子データに、 電子データ 内の任意の位置にジャンプするリンク機能が含まれる場合、 プロック補助データ は、 リンク先の位置情報を含むことを特徴とする、 データ処理方法。
( 7 ) 階層構造を有する電子データを複数のブロックに分解し、 分割された各プ 口ックごとに所定の処理を実行させるための構造化データを生成するためのデー タ処理方法であって、 電子データを所定のブロックサイズに分割する際の、 各ブ 口ック境界における境界候捕を抽出する抽出ステップと、 抽出された境界候捕に 基づいて、 ブロックの分割位置を決定する決定ステップと、 決定された各プロッ クの先頭位置と終了位置とにおける階層構造の特徴を示す情報を取得する取得ス テツプと、 決定ステップで決定された各プロックの分割位置の位置情報と、 取得 された位置情報に対応する階層構造の特徴と示す情報とを含むブロック補助デー タを生成し、 プロック補助データを電子データに追加して構造化データを生成す る生成ステップとを備える、 データ処理方法。
( 8 ) ( 7 ) に記載されたデータ処理方法であって、 抽出ステップは、 表示 た ときに行頭から表示される箇所から境界候補を抽出することを特徴とする、 デー タ処理方法。
( 9 ) ( 7 ) に記載されたデータ処理方法であって、 抽出ステップは、 電子デー タの構造を記録している制御コードの前後とその付近とから境界候捕を抽出する ことを特徴とする、 データ処理方法。
( 1 0 ) ( 7 ) に記載されたデータ処理方法であって、 プロックサイズは、 電子 データを処理する装置の処理能力と、 装.置の画面に表示される文字数と、 表示さ れる文字数を決定する要因との少なくとも 1つに応じて決められることを特徴と する、 データ処理方法。
( 1 1 ) サーバより階層構造を有する電子データを受取り、 電子データに対して 所定の処理をするデータ処理方法において、 サーバに対して所定の処理をしたい 電子データ名を送信する送信ステップと、 サーバより電子データを複数のプ口ッ クに分割して処理するためのブロック補助データを受信する受信ステツプと、 電 子データのうち、 所定の処理をしたい電子データを含むブロックの送信をサ^"バ に要求し、 ブロックのデータを受信する受信ステップと、 受信したプロックと、 ブロックのプロック補助データとを用いて、 プロックの階層構造を解析し、 その 結果を用いて所定の処理をする再生ステップとを備える、 データ処理方法。
( 1 2 ) ( 1 1 ) に記載されたデータ処理方法であって、 サーバよりプロック補 助データを受信するステップにおいて、 プロック捕助デ―タが存在しない場合に は、 プロック捕助データを作成した後、 サーバより受信することを特徴とする、 データ処理方法。
( 1 3 ) 階層構造を有する電子データと、 電子データを複数のブロックに分割し て処理するためのプロック補助データとを対として備える構造化データに対して、 所定の文書記述言語の定義に従って所定の処理を実行させるためのデータ処理プ ログラムであって、 プロック補助データに基づいて、 電子データのプロックデー タを読込む読込みステップと、 読込まれたプロックデータと、 ブロック.補助デー タとに基づいて、 プロックデータに含まれる階層構造を解析する解析ステップと、 解析結果と、 文書記述言語の定義とに基づいて、 プロックデータに対して所定の 処理を実行させる寒行ステップとをコンピュータに実行させる、 データ処理プロ グラム。
( 1 4 ) 階層構造を有する電子データを複数のブロックに分割し、 分割された各 プロックごとに所定の処理を実行させるための構造化データを生成するためのデ ータ処理プログラムであって、 電子データを所定のブロックサイズに分割する際 の、 各プロック境界における境界侯補を抽出する抽出ステップと、 境界候補に基 づいて、 ブロックの分割位置を決定する決定ステップと、 決定された各ブロック の先頭位置と終了位置とにおける階層構造の特徴を示す情報を取得する取得ステ ップと、 決定ステップで決定された各ブロックの分割情報の位置情報と、 取得さ れた位置情報に対応する階層構造の特徴を示す情報とを含むプロック補助データ を生成し、 ブロック補助データを電子データに追加して構造化データを生成する 生成ステップとをコンビユ^ "タに実行させる、 データ処理プログラム。
( 1 5 ) サーバより階層構造を有する電子データを受取り、 電子データに対して 所定の処理をするためのデータ処理プログラムであって、 サーバに対して所定の 処理をしたい電子データ名を送信する送信ステップと、 サーバより電子データを 複数のプロックに分割して処理するためのプロック補助データを受信する受信ス テツプと、 電子データのうち、 所定の処理をしたい電子データを含むブロックの 送信をサーバに要求し、 プロックのデータを受信する受信ステップと、 受信した ブロックと、 ブロックのブロック捕助データとを用いて、 プロックの階層構造を 解析し、 その結果を用いて所定の処理をする再生ステップとをコンピュータに実 行させる、 データ処理プログラム。
( 1 6 ) 階層構造を有する電子データを処理するデータ処理装置であって、 電子 データには、 電子データを複数のプロックに分割して処理するための捕助情報で あるブロック補助データが付随し、 電子データのうち、 処理をしたいデータが含 まれるブロックと、 ブロック補助データとを読込む入力部と、 ブロック補助デー タを用いて、 読込んだ前記プロックの階層構造を解析するデータ構造解析部と、 データ構造解析部の結果を用いて、 所定の処理をする処理部を備える、 データ処
( 1 7 ) ( 1 6 ) に記載されたデータ処理装置であって、 電子データは表示用の 文書 ータであり、 処理部は、 データ構造解析部によって解析されたプロックの 階層構造を用いて、 読込んだプロックの表示レイアウトを計算するレイアウト計 算部と、 レイァゥト計算部によって求めた表示レイァゥトに基づいて表示する表 示部とをさらに備える、 データ処理装置。
( 1 8 ) サーバより階層構造を有する電子データを受取り、 電子データに対して 所定の処理をするデータ処理装置であって、 電子データには、 電子データを複数 のプロックに分割して処理するための補助情報であるプロック補助データが付随 し、 電子データのうち、 所定の処理をしたい電子データが含まれるプロックをサ ーバに伝え、 プロックのデータと、 ブロック補助デ^"タとをサーバより受信する 送受信部と、 受信したブロックと、 ブロック補助データとを用いて、 受信したプ 口ックの階層構造を解析するデータ構造解析部と、 データ構造解析部の結果を用 いて、 所定の処理をする処理部とを備える、 データ処理装置。
( 1 9 ) ( 1 6 ) または (1 8 ) に記載されたデータ処理装置であって、 携帯型 の端末であることを特徴とするデ タ処理装置。
( 2 0 ) 文書記述言語の定義に従って記述された電子データと、 電子データを複 数のブロックに分割—して処理するためのブロック捕助データとを対として備えた ことを特徴とする、 構造化データ。
(21) 文書記述言語の定義に従って所定の処理を実行させるための電子データ と、 電子データを複数のプロックに分割し、 分割された各ブロックごとに所定の 処理を実行させるためのブロック補助データとを対として備えたことを特徴とす る、 構造化データ。
(22) (20) または (21) に記載された構造化データであって、 複数に分 割された電子データのブロックは、 ほぼ等しい大きさであることを特徴とする、 構造化データ。
(23) (20) または (21) に記載された構造化データであって、 ブロック 補助データは、 少なくとも各プロックの位置情報と、 ブロックの開始位置と終了 位置とにおける階層情報とを有することを特徴とする、 構造化データ。
(24) (20) または (21) に記載された構造化データであって、 プロック 補助データは、 ブロックの分割箇所を、 電子データの構造を記録している制御コ ードの前後とその付近とから選ぶことを特徴とする、 構造化データ。
(25) (20) または (21) に記載された構造 データであって、 プロック 補助データは、 プロックの分割箇所を、 表示したときに行頭から表示される箇所 に限定することを特徴とする、 構造化データ。
(26) (20) または (21) に記載された構造化データであって、 電子デー タに、 電子データ内の任意の位置にジャンプするリンク機能が含まれる場合、 ブ ロック補助データは、 リンク先の位置情報を含むことを特徴とする、 構造化デー タ。
(27) 文書記述言語の定義に従って記述された電子データと、 電子データを複 数のブロックに分割して処理するためのブロック補助データとを対として備えた ことを特徴とする構造化データを記録した、 コンピュータ読取可能な記録媒体。
(28) (13) 〜 (15) のいずれかに記載されたデータ処理プログラムを送 信する送信部を備えることを特徴とする、 送信装置。
(29) (20) または (21) に記載された階層化データを送信する送信部を 備えることを特徴とする、 送信装置。 図面の簡単な説明
第 1図は、 本宪明の第 1の実施の形態におけるデータ処理装置 1 0 0のプロッ ク図である。
第 2図は、 本癸明の第 1の実施の形態における表示装置を、 具体例として携帯 機器で実現した場合の概観図を示す図である。
第 3図は、 本実施の形態におけるブロック補助データの具体的な概略を示す図 である。
第 4図は、 電子データを複数のプロックに分割した様子を具体的に示す図であ る。
第 5図は、 図 4に示される電子データに対して設定されるプロック捕助データ の具体例を示す図である。
第 6図は、 本発明の第 1の実施の形態におけるデータ処理装置 1 0 0の処理を 示すフローチヤ一トである。
第 7図は、 1ブロック分のデータとブロック補助データとから作成したデータ の具体例を示す図である。
第 8図は、 完全には階層構造を有しない電子データの具体例を示す図である。 第 9図は、 本発明の第 2の実施の形態におけるデータ処理装置 2 0 0のプロッ ク図である。
第 1 0図は、 本努明の第 2の実施の形態におけるデータ処理装置 2 0 0の処理 を示すフローチャートである。
第 1 1図は、 第 2の実施の形態において、 ブロック補助データを作成する際の 処理を示すフ ーチャートである。
第 1 2八図〜第1 2 C図は、 行の途中でブロック分割するデータの具体例と表 示の具体例とを示す図である。
第 1 3図は、 本発明の第 3の実施の形態におけるデータ処理装置のブロック図 である。
第 1 4図は、 第 3の実施の形態において、 ブロック補助データを作成する際の 処理を示すフローチャートである。 第 1 5図は、 本発明の第 3の実施の形態におけるデータ処理装置の処理を示す フローチヤ一トである。
第 1 6図は、 P皆層構造をもつ電子データの具体例を示す図である。
第 1 7図は、 階層構造をもつ電子データから取出した木構造を説明するための 図である。
第 1 8図は、 階層構造をもつ電子データの具体例を示す図である。 発明を実施するための最良の形態
本発明をより詳細に説明するために、 添付の図面を用いてこれを説明する。 第 1図は、 第 1の実施の形態におけるデータ処理装置 1 0 0が表示装置である 場合のデータ処理装置 1 0 0のブロック図の一例を示す図である。
図 1を参照して、 サーバ 1 1 0は、 ユーザからの要求を受信し、 データベース に記録された電子データを送信する。 ネットワーク 1 1 4は、 サーバ 1 1 0とュ 一ザのパーソナルコンピュータ (以下、 パソコンと称する) 1 1 5とを接続する。 記録媒体 1 1 1は、 パソコン 1 1 5から電子データを取出してデ タ処理装置 1 0 0に電子データを供給する。
なお、 上述のパソコン 1 1 5を、 コンビュエンスストァゃ駅構内等に設置され た電子データ受信装置 (図示せず) に替えて、 この電子データ受信装置から電子 データを取出し、 記録媒体 1 1 1に記録する方式としてもよい。 この場合、 電子 データ受信装置から電子データを取出して記録媒体 1 1 1に記録する際に、 課金 することが可能である。 また、 サーバ 1 1 0から送信される電子データを、 パソ コン 1 1 5を介することなく、 データ処理装置 1 0 0が受信して記録媒体 1 1 1 に記録する構成であってもよい。
さらに図 1を参照して、 電子データ 1 0 1は、 記録媒体 1 1 1の中に記録され た電子データであり、 ブロック補助データ 1 0 2は、 記録媒体 1 1 1に記録され、 電子データ 1 0 1に付随するデータである。
上述の電子データ 1 0 1は、 文書記述言語の定義に従って所定の処理を実行さ せるための構造化された電子データであつて、 階層構造を有する構造化文書を記 録するためのデータ形式である SGMLや XMLなどを用いて記録されている。 プロック補助データ 1 0 2は、 上述の構造化された電子データである電子デー タ 1 0 1を複数のプロックに分割し、 分割された各プロックごとに所定の処理を 実行させるデータであり、 電子データ 1 0 1と対になっている。
さらに図 1を参照して、 入力部 1 0 3は、 電子データ 1 0 1およびブロック補 助データ 1 0 2を読込む。 データ構造解析部 1 0 4は、 電子データ 1 0 1とプロ ック捕助データ 1 0 2とからデータの階層構造を解析する。 処理部 1 0 5は、 デ ータ構造解析部 1 0 4で解析した階層構造に基づき、 所定の処理を行なう。 制御 部 1 0 9は、 入力部 1 0 3、 データ構造解析部 1 0 4、 および処理部 1 0 5の各 処理部を制御する。
処理部 1 0 5は、 対象とする電子データの内容、 および処理内容によって構成 が異なるが、 データ処理装置 1 0 0が、 例えばインターネットで交換する電子文 書や電子データ、 単行本、 教科書、 雑誌、 小説、 および論文のような文章などの 表示を行なう表示装置である場合には、 図 1に示すように、 データ構翻?析部 1 0 4の解析結果に基づいて、 文章の表示レイァゥトを計算するレイァゥト計算部 1 0 6と、 求めた表示レイアウトに基づいて文章を表示する表示部 1 0 8と、 ス クロールなどのユーザからの指示を処理するユーザ指示処理部 1 0 7とから構成 される。
また、 電子データが音声である場合は、 処理部 1 0 5は、 読上装置に変更され、 また、 表示部 1 0 8には音声再生部が使用され、 レイアウト計算部 1 0 6は、 読 む部分と読まない部分とを判定したり、 強調して読む箇所とそうでない箇所とを 判定したり、 また各読上げの間隔 (ま) を取ったりする部分に変更される。 この、 電子データが音声である場合、 電子データの階層構造に応じて、 音声の属性を変 えて読上げるようにしてもよい。 さらに、 電子データが音声である場合、 データ 処理装置 1 0 0には、 シナリオ解釈部、 音声 ¾力部、 および、 再生順を管理する ために各要素の同期をとる同期部が必要になる。
図 2に、 上述のデータ処理装置 1 0 0を携帯型機器で実現した場合の具体例を 示す。
図 2において、 表示部 1 0 8は、 レイアウト計算部 1 0 6で計算した表示レイ アウトに基づき表示を行ない、 ディスプレイなどから構成される。 また、 記録媒 体 1 1 1は、 図 1に示したように、 パソコン 1 1 5や電子データ受信装置によつ て、 サーバ 1 1 0、 およびネットワ^ "ク 1 1 4を介して文書データベースから取 出された、 処理対象の電子データ 1 0 1と、 プロック補助データ 1 0 2とが記録 された記録媒体である。 この記録媒体 1 1 1を本体のデータ処理装置 1 0 0に揷 入することで、 表示装置であるデータ処理装置 2 0 0内に設けられた入力部 1 0 3を通してこの 2つのデータが読込まれる。 さらに十字キー 1 1 2は、 ユーザが 文書のスクロール指示や表示させた 、書籍や文書を選択する場合などに用いられ る。 また、 ペン 1 1 3は、 電子データにリンク機能が含まれるとき、 リンク先に ジャンプするために使われる。 また、 表示装置であるデータ処理装置 1 0 0から 求められた確認事項に変更するためにも使用される。
なお、 記録媒体 1 1 1のように、 記録媒体に電子データ 1 0 1やブロック補助 データ 1 0 2を記録するものではなく、 データ処理装置 1 0 0の内部に記録する 領域を設けて、 そこに記憶するようにしてもよい。 また、 ネットワーク 1 1 4上 のサーバ 1 1 0、 あるいはデータベースにこの 2つのデータを記録し、 ダウン口 ードしながら処理するようにしてもよい。
次に、 プロック補助データについて説明する。 3 プロック補助データは、 一般に、 図 3に示すように、 電子データフアイノレ名 1、 ブロック情報 2、 およぴリンク先情報 3の 3つの領域から構成される。
電子データファイル名 1は、 このプロック補助データが、 どの電子データに対 応するものかを記録するために用意された領域である。 ブロック補助データを、 電子データ内、 もしくは電子データに連結して記録する場合は、 電子データファ ィル名 1の領域は、 省略してもよい。
また、 処理する電子データによっては、 リンク先情報 3の領域は存在しないこ とがある。
以降、 この 3領域の書式について、 文書記述言語の定義に従って記述され、 階 層構造を有する電子データの具体例として XHTML文書を用いて説明する。 図 1 8 に示される XHTML文書を、 図 4に示されるように、 4つのブロック (プロック 1 0、 ブロック 1 1、 ブロック 1 2、 ブロック 1 3 ) に分割する場合を考える。 こ のとき、 この XHTML文書に対するブロック補助データは、 図 5に示されるように なる。
図 5を参照して、 プロック補助データの領域 2 0は電子データフアイ/レ名 1の 領域であり、 図 4の XHTML文書のファイル名が記録される。
ブロック捕助データの領域 2 1〜 3 7は、 プロック情報 2の領域である。
領域 2 1はプロック数を記録する領域であり、 4つのプロックに分割する場合 には 4が記録される。
領域 2 2〜2 5、 2 6〜2 9、 3 0〜3 3、 3 4〜 3 7は、 それぞれプロック 1 0, 1 1, 1 2 , 1 3に対するブロック情報の領域である。 一般に、 n個のブ ロックに分割する場合、 領域 2 2〜 2 5のプロック情報の構造が n回繰返し記録 される。
領域 2 2, 2 6 , 3 0 , 3 4にはそれぞれのプロックの開始位置が、 領域 2 3 , 2 7 , 3 1, 3 5にはそれぞれのプロックの終了位置が、 ファイル先頭からのバ ィト数の形で記録される。 したがって、 ブロック 1 1に属するデータを取出した い場合は、 領域 2 6と領域 2 7とのプロック情報の値を調べ、 ファイルの先頭か ら数えて 2 1 2バイト目から 4 2 3バイト目を読込めばよい。
領域 2 4 , 2 8, 3 2 , 3 6には、 各プロックの開始位置において、 終了され ていない開始タグを記録する。 領域 2 4のブロック情報は、 プロック 1 0の開始 位置において終了されていない開始タグを記録する領域であるが、 ブロック 1 0 はファイルの先頭から始まっているため、 領域 2 4に記録する制御コードは存在 しない。 プロック 1 1の開始位置ではく html>が閉じられていないため、 領域 2 8
'一、
にはく html>を記録する。 また、 ブロック 1 2の開始位置のように、 複数のタグ
(く html>、 く body bgcolor yellow"〉、 <p> ) が閉じられていない場合は、 <html><body bgcolor= yellow Xp>のように、 出現順に連結して領域 3 2にブロ ック情報を記録する。 なお、 く body>タグのように属性 (bgcolor yellow") をも つ場合は、 属性を付けたまま記録する。 プロック 1 3も同様にして、 <htmlXbody bgcolor ' yellow"〉と領域 3 6にプロック情報を記録する。
領域 2 5 , 2 9, 3 3 , 3 7には、 各ブロックの終了位置において閉じられて いないタグの終了タグを記録する。 ブロック 1 0の終了位置においては、 く htnil〉 タグが終了されていないため、 領域 2 5にはブロック情報く /html〉を記録する。 また、 ブロック 1 1の終了位置においては、 く html>、 く body bgcolor^yellow'^, く P>タグが閉じられていないため、 出現順とは逆の順番で、 上記の終了タグを く /PX/body〉</html〉と連結してプロック情報を領域 2 9に記録する。 同様にして、 ブロック 1 2に対してはブロック情報く/ bodyX/html〉を記録する。 ブロック 1 3 の終了位置では全てのタグが閉じられているので、 領域 3 7には何も記録しない。 領域 3 8〜 4 1は、 リンク先情報 3の領域であり、 図 1 8の XHTML文書のうち、 リンク先として指定されたラベル位置を記録する。
ここで、 XHTML文書のリンクについて簡単に説明する。 XHTML文書では、 <a〉タ グによって他のファイルやファイルの一部へリンクをはることができる。 例えば、 図 4のリンク先情報 3, 4は、 同一ファイルの一部へのリンクがはられた例であ る。 この例で、 リンク先情報 3の〈a〉タグで囲まれた文字列" BBBがクリックされ ると、 href 属性で指定されたラベル〃 SUMMARY"が設定されている場所、 つまり、 く a〉の name属性に" SUMMARY〃が設定されているリンク先情報 4に表示位置をジャ ンプさせる。
図 5において、 領域 3 8〜4 1には、 リンク先のラベルの位置情報、 つまり 〈a〉タグの narae属性により設定されているラベルの位置情報を記録する。 図 4の XHTML文書の場合、 name属性をもつく a>タグは 1つし力存在しないため、 領域 3 8には 1を記録し、 領域 3 9〜 4 1の組合わせを 1回だけ記録する。
—般的に、 name属性をもつ <a>タグが n個ある場合は、 領域 3 9〜4 1の構造 のリンク先情報が n回繰返される。 領域 3 9にはく a>タグの name属性に記録され たラベル名を、 領域 4 0, 4 1にはく a>タグに挟まれた文字列の開始位置および 終了位置をファイル先頭からのパイト数で記録する。
なお、 ブロックの大きさは、 装置の処理能力から決定される。 すなわち、 ブロ ックの大きさが大きいほど 1ブロックあたりの処理量が増えるため、 処理時間が 増大し、 使用するメモリ容量やリソース容量も増大する。 そのため、 プロックの 大きさは、 装置の処理能力に応じて決定されることが望ましい。 装置の処理能力 を決定する要因として、 装置に搭載されている C P U (Central Processing Unit) の処理能力、 メモリ容量、 およびリソース容量等が挙げられる。
一方、 ブロックの大きさは、 画面に表示される文字数やそれを決定する要因に よっても決定される。 例えば、 電子書籍等の文章を表示する装置においては、 1 画面分の表示をした後、 ユーザによるページ移動の指示があるまで待機するよう に設計されていることが多い。 この場合、 画面に表示される文字数に対してプロ ックの大きさを極端に大きく設定した場合には、 本実施の形態における処理方法 ではプロックを 1つの単位として読込むため、 画面に表示しない不杲なデータも 読込まれることになり、 無駄が生じてしまう とになる。 したがって、 画面に表 示される文字数に基づき、 ブロックの大きさが決定されることが望ましい。 なお、 画面に表示される文字数は、 表示装置の備える画面の大きさおよび解像度、 表示 する文字のフォント数、 行間や字間の大きさ、 および余白の大きさ等によって変 わるため、 これらの要因によってプロックの大きさを変えるようにしてもよい。 このブロック補助データは、 対象とする電子データの種類によって構成および 書式が若干異なる。 一般に ML形式で書かれた電子データの場合、 図 3のリンク 先情報 3を除き、 電子データファイル名 1、 ブロック情報 2の 2領域は存在し、 書式も同じになる。 リンク先情報 3は、 XHTML文書の機能であるリンク機能のた めの情報であるため、 XHTML文書などの電子書籍以外の電子データに対レては存 在しないこともある。 し力 し、 他のブロック内のデータを参照しながら処理を進 めるような電子データや、 ユーザの動作に応じて他プロック内のデータを表示さ せたり、 もしくは再生させたりする機能をもつような電子データの場合は、 ァク セスしゃすくするために、 そのデータがどこにあるかをこのリンク先情報 3に記 録しておくとよい。
また、 適用可能な電子データは XML形式に限らない。 一般に階層構造をもつ構 造化文書に対して適用可能であり、 具体的には、 プロック情報 2の開始 終了位 置制御コードに、 ブロックの開始 Z終了位置での階層構造がわかるように、 それ ぞれの書式で記録しておけばよ 、。
次に、 この電子データとブロック補助データとによるデータ処理装置 1 0 0の 動作について、 表示装置を例に挙げて説明していく。 図 6に表示装置でのフロー チヤ一トを示す。
図 6を参照して、 まず、 ユーザ指示処理部 1 0 7を通じ、 ユーザから表示した い電子データが指定され (ステップ S 1 0 1 ) 、 の電子データに対して用意さ れたブロック補助データを入力部 1 0 3より読込む (ステップ S 1 0 2 ) 。
次に、 ステップ S 1 0 2で読込んだブロック補助データのうち、 各ブロックの 開始 Z終了位置と、 画面に表示しようとしている領域のファイル先頭からの位置 とを元に、 どのプロックを読込むかを判断し (ステップ S 1 0 3 ) 、 必要なブロ ックのみを入力部 1 0 3より読込む (ステップ S 1 0 4 ).。
そして、 ステップ S 1 0 2で読込んだプロック補助データの内容を参照し、 読 込んだプロックの開始 Z終了位置における制御コードを調べる。 そして、 開始位 置制御コード、 ブロックデータ、 終了位置制御コードの順に連結し、 階層構造を 解析し、 木構造を作成する (ステップ S 1 0 5 ) 。
例えば、 図 4のブロック 1 2を読込んだ場合には、 図 5のブロック補助データ の領域 3 2と領域 3 3とにあるブロック情報を前後に連結した、 図 7のようなデ ータを作成し、 階層構造を解析する。 図 7において、 領域 5 1のデータが領域 3 2のブロック情報に記録された制御コード、 領域 5 2のデータがステップ S 1 0 4で読込んだプロック 1 2のデータ、 およぴ領域 5 3が領域 3 3に記録された制 御コードである。 なお、 図 7のように、 必要ならば、 先頭に領域 5 0のデータの ような、 L宣言と文書型宣言とを付けてもよい。 このステップ S 1 0 5の処理 はデータ構造解析部 1 0 4で行なわれる。
次にレイァゥト計算部 1 6 0により、 ステップ S 1 0 5で作成した 1プロック 分の木構造を元に、 表示画面内でのレイアウトを計算する (ステップ S 1 0 6 ) 。 この結果、 表示部 1 0 8がもつ表示画面全体めレイァゥトが決まれば (ステップ S 1 0 7 ) 、 ステップ S 1 0 8に移り、 表示部 1 0 8に表示する。
一方、 ステップ S 1 0 7において、 まだ表示画面のうちレイアウトが決まって いない領域があればステップ S 1 0 4に戻り、 次のブロックを読込み、 木構造を 作成して (ステップ S 1 0 5 ) 、 1つ前のプロックに対して求めたレイアウト画 面の続きから、 現在のブロックのレイアウト処理を行なう (ステップ S 1 0 6 ) 。 続くステップ S 1 0 7, S I 0 8の処理は、 先に説明した処理と同様の処理を行 なう。
ステップ S 1 0 8で表示部 1 0 8に表示した後は、 ステップ S 1 0 9に移り、 ユーザからの指示を待つ。 ユーザからの指示があるまでステップ S 1 0 9で待機 する。
ここで、 ユーザから表示処理の終了が指示された場合、 表示処理を終了する。 ステップ S 1 0 9において、 ユーザから次ページ、 あるいは前ページのスクロー ル指示があった場合、 ステップ S 1 1 1に移り、 ユーザから受けたスクロール指 示の結果、 次に表示する内容が現在のプロックと同じかどうかを判断する。 もし 同じならば、 ステップ S 1 0 6に移り、 先に作成した木構造を元にレイアウト処 理をし、 以下先に説明した処理と同様にして、 ステップ S 1 0 7以降の処理を続 ける。
また、 ステップ S 1 1 1の判断の結果、 現在と異なるブロックと判断された場 合は、 ステップ S 1 0 4に移り、 表示に必要なプロックを読込み、 以下先に説明 した処理と同様にして、 ステップ S 1 0 5以降の処理を続ける。
一方、 ステップ S 1 0 9において、 リンクジャンプなどにより、 他の領域へ飛 ぶように指示された場合、 ステップ S 1 1 0に移り、 移動先が他ファイルへの移 動か自ファイル内への移動かを調べる。 例えば、 XHTML文書では、 href属性をも つく 3>タグで挟まれた文字列がクリックされると、 href 属性の値から、 他ファィ ノレへのリンク力、 自ファイル内へのリンクがが判断される。 その結果、 自フアイ ノレ内へのリンクであった場合、 ステップ S 1 1 1に移り、 リンク先が現在のプロ ックと同じかどうか判断する。 この時、 プロック補助データに記録されたリンク 先情報 3を参照して、 リンク先がどのブロックに含まれるかを調べる。 例えば、 図 5の例の場合、 領域 3 8〜 4 1のプロック情報を参照し、 <a>の href属性で指 定されたリンク先のラベルが、 ファイル内のどの位置にあるかを調べる。 その後、 領域 2 1 - 3 7のプロック情報を参照して、 その位置がどのプロックに含まれる かを調べることでリンク先のブロックを調べる。
求められたリンク先のプロックが現在のプロックと同じであれば、 ステップ S 1 0 6に移り、 以降、 先に説明した処理と同様の処理を行なう。
一方、 リンク先のブロックが現在のブロックと別のプロックであれば、 ステツ プ S 1 0 4に移り、 そのブロックを読込み、 以降、 先に説明した処理と同様の処 理を行なう。
また、 ステップ S 1 1 0の判断の結果、 リンク先が他のファイルであった場合 は、 ステップ S I 0 2に移り、 リンク先のファイルに対して用意されたブロック 補助データを読込み、 以降、 先に説明した処理と同様の処理を行なう。
上記のようにプロック補助データを用いて処理することで、 電子データの一部 のみのデータを読込んで処理することができるため、 高速かつ低メモリでの処理 ができる。
なお、 本実施の形態では、 所々で XHTML文書を例に挙げながら説明したが、 以 上の説明から明らかなように XHTML文書の表示装置に対象を限定するものではな い。 XHTML文書のようなリンク機能をもち、 階層構造を有する電子データの表示 装置に対しては、 図 3のプロック補助データ、 および図 6のフローチャートが適 用可能である。 また、 リンク機能をもたない電子データの場合も、 図 3のリンク 先情報 3と図 6のステップ S 1 1 0とを省略することで適用可能である。 例えば、 日本電子出版協会が標準化を進めている JepaX (JEPA電子出版交換フォーマツ ト) 、 日本電子プックコミツティーが提案しているネットワーク電子プックフォ 一マツト (Network Electronic Book Format) など、 XMLなどにより記録された 階層構造を有する電子データであれば、 図 6と同様にして処理ができる。
また、 本発明は、 ブロック捕助データを用意することにより、 階層構造をもつ 電子データの一部分のみを読出して処理できることに特徴がある。 そのため、 図 1のプロック図において、 処理部 1 0 5を処理装置固有の処理に替えることで、 表示装置に限らず、 他の処理装置に対しても本発明を適用できる。 この時、 図 6 のフローチャートにおいては、 ステップ S 1 0 6〜S 1 0 8の処理が、 処理装置 固有の処理に替わる。 例えば、 文章の読上げ装置の場合、 電子データのうち読上 げる個所と読上げない個所とを判断するステップや、 個所に応じて読上げる音質 や強度を設定するステツプゃ、 音声再生するステツプなどの処理に置換えられる。 一方、 本実施の形態においては、 XML などのように階層構造を有する電子デー タを対象に説明をしてきたが、 HTML文書のように、 完全には階層構造を有しな い電子データに対しても適用可能である。
例えば、 HTML文書にはく basefont>という基準フォントのサイズを指定するタ グがある。 図 8の領域 7 2に示されるように指定すると、 それ以降の文章の階層 構造に関係なく、 次のく basefont〉タグの指定が来るまで、 基準フォントのサイズ が 3 (size="3"で指定) に設定される。 例えば、 領域 7 2に示されるく basefont〉 は、 く P〉タグやく u〉タグなどに挟まれているが、 く p>やく u〉の終了タグが現れても設 定が持続されるため、 階層構造が崩れてしまっている。 このように、 階層構造を 無視して効果が持続されるようなタグが存在する場合には、 このタグを含むプロ ックの終了位置制御コードにそのタグの終了タグも記録し、 次ブロック以降にも、 開始位置制御コードにそのタグを、 終了位置制御コードにそのタグの終了タグを 追加しておくことにより、 別のブロックのみを処理する場合でも、 そのタグの効 果がそのブロックにかかっていることを知ることができる。 そのため、 図 6と同 様な処理が可能となる。
(第 2の実施の形態)
次に、 本発明の第 2の実施の形態について説明する
図 9は、 本発明の第 2の実施の形態に係るデータ処理装置 2 0 0のブロック図 の一例である。
図 9を参照して、 電子データ 2 0 1は、 本データ処理装置 2 0 0で処理される 電子データである。 プロック補助デ^ "タ 2 0 2は、 電子データ 2 0 1に付随する ブロック補助データである。
入力部 2 0 3は、 電子データ 2 0 1とプロック補助データ 2 0 2とを読込む。 データ構造解析部 2 0 4は、 電子データ 2 0 1とプロック補助データ 2 0 2と力 らデータの階層構造を解析する。 プロック補助データ作成部 2 0 5は、 プロック 捕助データ 2 0 2が存在しない場合に電子データ 2 0 1からプロック捕助データ を作成する。 処理部 2 0 6は、 データ構造解析部 2 0 4で解析した階層構造に基 づき所定の処理を行なう。 制御部 2 1 0は、 入力部 2 0 3、 デ タ構造解析部 2 0 4、 プロック捕助データ作成部 2 0 5、 および処理部 2 0 6の各処理部を制御 する。 電子データ 2 0 1とブロック捕助データ 2 0 2とは、 第 1の実施の形態と 同様に記録媒体 1 1 1に記録され、 データ処理装置 2 0 0に読込まれる。
上述の処理部 2 0 6は、 対象とする電子データの内容、 および処理内容によつ て構成が異なるが、 このデータ処理装置 2 0 0が文章などの表示を行なう表示装 置である場合には、 図 9に示すように、 データ構造解析部 2 0 4の解析結果に基 づいて、 文章の表示レイアウトを計算するレイアウト計算部 2 0 7と、 計算した 表示レイァゥトに基づいて表示する表示部 2 0 9と、 スクロールなどのユーザか らの指示を処理するユーザ指示処理部 2 0 8とから構成される。
図 1 0に処理装置 2 0 0での処理のフローチャートを示す。
図 1 0を参照して、 まず、 ユーザより、 キーボード、 マウス、 およびペン等を 使用して、 処理する電子デ^ "タが指定されると (ステップ S 2 0 1 ) 、 ユーザ指 示処理部 2 0 8を通じステップ S 2 0 2により、 その電子データに対するプロッ ク補助データが存在するかどうかが判断される。 もし、 存在していれば、 上述の 第 1の実施の形態と同様の処理となり、 図 6のステップ S 1 0 2以降の処理が行 なわれる。
もし、 ステップ S 2 0 2において対応するブロック補助データが存在しないと 剌断されれば、 ステップ S 2 0 3によりブロック補助データが作成され、 引続き 図 6のステップ S 1 0 2以降の処理が行なわれる。 ステップ S 1 0 2以降の処理 は、 第 1の実施の形態で説明した処理と同じであるため、 ここでの説明を繰返さ ない。
次に、 ステップ S 2 0 3の処理について、 詳しく説明する。
プロック補助データ作成部 2 0 5では、 入力部 2 0 2より入力した電子データ を複数のプロックに分割し、 それぞれのブロックの開始 Z終了位置での制御コ一 ドを調べ、 図 3に示したブロック補助データを作成する。
この、 ステップ S 2 0 3での処理のフローチヤ一トを図 1 1に示す。
図 1 1を参照して、 まず、 ブロックサイズの目標値 Tを設定する (ステップ S 3 0 1 ) 。 先述の如く、 適切なプロックサイズは、 処置装置の処理能力や、 画面 に表示される文字数およびそれを決定する要因に基づいて決定されることが望ま しい。 そのため、 これらのパラメータに基づきブロックサイズの目標値 Tを設定 する。 なお、 目標値 Tの設定には、 処理装置が予め備えるデフォルト値、 もしく はユーザにより指定された値を用いてもよい。
図 5に示されるプロック補助データは、 プロックサイズの目標値を 2 0 0バイ トに設定して作成されたものである。 ここで、 設定するプロックサイズを目標値 としたのは、 一般に、 ブロック分割できる個所に制限があるためである。 詳しく はステップ S 3 0 3の説明で述べる。 さて、 ステップ S 3 0 1によりプロックサイズの目標値 Tが設定されると、 ス テツプ S 3 0 2に移り、 ファイル先頭から Τバイト目を挟んだ Xバイトの領域を、 ブロック境界の探索範囲に設定する。 Xの値は、 例えば、 プロックサイズの目標 値 Τの半分に設定する。 そして、 ステップ S 3 0 3において、 その探索範囲内に おける境界候補を抽出する。
境界候補は、 対象とする電子データの種類によって変わるが、 例えば、 電子デ ータが XML文書である場合は、 区切る個所はタグやコメント、 および文字列の途 中ではな く 、 タ グの直前か直後かで区切 る。 例えば、 〃く div
Figure imgf000022_0001
いうデータ列がある場合、 "く div
しくは直後、 または "く/ div の直前か直後かにブロックの境界を設定する。 タグ の途中で区切らないのは、 "く div
Figure imgf000022_0002
と、 タグ名ゃ属 '性名、 属性値が途中で切れてしまう可能性があるためであり、 文字列要素" abcdef"の途 中で区切らないのは、 タグで挟まれた文字列や文章が、 それ自身で 1つの意味の ある文字列や文章を形成している場合が多く、 意味のある文字列や文章を途中で 分断することは避けた方が望 しいためである。
さらに、 データ処理装置 2 0 0が XHTML文書のような電子書籍を表示する表示 装置である場合は、 上記の制限に加え、 改行タグの直後や、 段落の先頭など、 行 頭から表示が始まる個所を境界候捕とすることが望ましい。 例えば、 図 1 2 Aに 具体例が示される XHTML文書を、 行の途中で 2つのブロック 6 0, 6 1に区切つ た場合を考える。 この時、 XHTML文書の先頭から表示した場合の表示例を図 1 2 Bに示す。
プロック 6 0が行の途中で終わる場合、 ブロック 6 1は行の途中 (3行目の 7 文字目以降) からレイアウトされることになる。 一方、 ユーザ等により、 ブロッ ク 6 1の先頭から表示するよう指示された場合、 プロック 6 1のみを読込んでレ ィアウト計算がされるため、 図 1 2 Cのようにプロック 6 1は行の先端から表示 される。 そのため、 ユーザによって、 ブロック 6 1から 6 0へ、 文章とは逆方向 にスクローノレ指示がされると、 図 1 2 Bと図 1 2 Cのようにプロック 6 1の表示 開始位置が異なるため、 プロック切替わり時に表示が乱れてしまう。
これに対し、 プロックの分割位置を行頭から表示が始まる個所に限定しておく と、 直前のブロックのレイアウト結果によることなく、 常に行頭からレイアウト することになるため、 このような問題が生じない。 よって、 XHTML文書のような 電子書籍の場合は、 プロックの境界候捕を、 タグの直前もしくは直後であり、 し 力 も表示が常に行頭となる個所から抽出する。 '
次に、 ステップ S 3 0 3により抽出された境界候捕の数により、 ズテツプ S 3 0 4により条件が分岐される。
もし境界候補が見つからなければ、 ステップ S 3 0 2に移り、 探索範囲をファ ィノレの下方にずらして、 先に述べたのと同様にしてステップ S 3 0 2以降の処理 をする。
一方、 境界候捕が存在していれば、 ステップ S 3 0 2で設定した探索範囲の中 心に一番近い候補を選び、 境界に設定する (ステップ S 3 0 5 ) 。 そして、 ステ ップ S 3 0 6により、 ブロックの開始/終了位置の、 ファイル先頭からの位置お よび階層関係を調べ、 プロック情報 2に記録する 1プロック分の情報を取得する。 そしてこのブロックの終端がファイルの終端かどうかを調べ (ステップ S 3 0 8 ) 、 終端でなければステップ S 3 0 2に移り、 次のプロックの調査を続ける。 一方、 ファイルの終端と一致すれば、 ステップ S 3 0 8により、 S 3 0 1から S 3 0 7で調べたプロック情報と電子データのファイル名とをブロック捕助デー タに記録する。 この時、 もし必要ならばリンク先情報も調査し、 ブロック捕助デ ータに記録するようにする。 ステップ S 3 0 8が終わると、 ブロック捕助データ 作成処理が終了する。
なお、 本実施の形態は、 プロック補助データ作成部 2 0 5がデータ処理装置 2 0 0内にある場合について説明したが、 プロック補助データ作成部 2 0 5を第 1 の実施の形態で説明したサーバ 1 1 0に備え、 そこでプロック補助データを作成 することも可能である。
この場合の処理の流れは本実施の形態で説明した通りである。 また、 ブロック 補助データ作成部 2 0 5の機能を実現するハードウェアまたはソフトウェアを汎 用のパーソナルコンピュータ (図示せず) に組込むことにより、 一般的な文書記 述言語で記述されたコンテンツを本願特有のデータ構造を備えるコンテンツに変 換させることができる。 このようにして生成されたコンテンツを図 1のサーバ 1 1 0にアップロードして、 サーバ 1 1 0からユーザのパソコン 1 1 5にダウン口 ードさせることができる。 このような構成により、 データ処理装置 1 0 0に表示 させるコンテンツを作成し販売するシステムを構築することができる。 このよう なシステムは、 データ処理装置 1 0 0が電子ブックビューァの場合には、 汎用の 文書記述言語で記述された電子ブックコンテンツをデータ処理装置 1 0 0専用の データ構造に変換して提供する場合に有効である。
また、 本実施の形態では所々で表示装置を例に挙げて説明したが、 以上の説明 力 ら明らかなように、 本発明は、 プロック補助データを作成して処理することに よって、 階層構造をもつ電子データの一部分のみを読出して処理できることに特 徴がある。 そのため、 図 9のブロック図において、 処理部 2 0 6を処理装置固有 の処理部に替えることで、 表示装置に限らず、 一般のデータ処理装置に対しても 本発明を適用できる。
(第 3の実施の形態)
次に、 本筅明の第 3の実施の形態について説明する。
図 1 3は、 本発明の第 3の実施の形態に係るデータ処理装置のプロック図の一 例である。 説明のため、 データ表示装置を例に挙げて説明する。 - 図 1 3に示すように、 本実施の形態におけるデータ表示装置は、 文書 D B (デ ータベース) 3 0 1、 サーバ処理部 3 0 2、 およびクライアント処理部 3 0 4の 大きく 3つに分かれ、 サーバ処理装置 3 0 2とクライアント処理部 3 0 4とはネ ットワーク回線 3 0 3により接続されている。
文書 D B 3 0 1には処理する電子データおよびそれに付随するプロック補助デ ータが格納されている。
サーバ処理部 3 0 2は、 文書 D B 3 0 1から電子データとブロック補助データ とを読込む入力部 3 0 5と、 電子データに対するプロック補助データが存在しな いときにブロック補助データを作成し文書 D B 3 0 1に記録するプロック補助デ ータ作成部 3 0 6と、 クライアント処理部 3 0 4からの要求を受付けると共に、 指定されたデータをクライアント処理部 3 0 4に送信する送受信部 3 0 7とから 構成される。
クライアント処理部 3 0 4は、 処理する電子データやスクロール指示などのュ 一ザからの指示を処理するユーザ指示処理部 3 0 9と、 ユーザ指示処理部 3 0 9 で解析したユーザからの指示内容などをサーバ処理部 3 0 2に送信すると共に、 サーバ処理部 3 0 2から送られてきたデータを受信する送受信部 3 0 8と、 サー バ処理部 3 0 2から送られてきた電子データの階層構造を解析するデータ構造解 析部 3 1 0と、 データ構造解析部 3 1 0で解析された階層構造を用いて、 電子デ ータの表示レイアウトを計算するレイアウト計算部 3 1 1と、 レイアウト計算部 3 1 1によって計算したレイァゥトに基づき表示する表示部 3 1 2とから構成さ れる。 なお、 レイアウト計算部 3 1 1によって表示レイアウトを計算した結果、 表示部 3 1 2の途中までし力表示レイアウトが定まらなかった場合、 送受信部 3 0 8を通じて、 必要なデータを送信するようにサーバ処理部 3 0 2に要求を出す 場合もある。
次に、 図 1 4、 図 1 5を使って、 本実施の形態のデータ表示装置における処理 の流れを説明する。
図 1 4を参照して、 まず、 ユーザから処理したい電子データが指定されると、 サーバ処理部 3 0 2に処理したい電子データのフアイノレ名が送られる (ステップ S 3 0 1 ) 。 サーバ処理部 3 0 2では、 その電子データに対するブロック補助デ ータが文書 D B 3 0 1内に存在するかどうかを調べ (ステップ S 3 0 2 ) 、 存在 していなければステップ S 3 0 3に移り、 ブロック捕助データを作成し、 ステツ プ S 3 0 4に移る。 ステップ S 3 0 3での処理は、 図 1 1を用いて説明した処理 と同様であるため、 ここでの説明は繰返さない。 一方、 ステップ S 3 0 2でプロ ック捕助データが存在していた場合は、 何もせずステップ S 3 0 4に移る。
そしてステップ S 3 0 4において、 ブロック補助データがクライアント処理部 3 0 4に送られ、 クライアント処理部 3 0 4で受信される (ステップ S 3 0 5 )。 なお、 このうちステップ S 3 0 1において、 表示部 3 1 2の画面サイズやメモ リ量などからブロック分割する際のサイズの目標値を、 電子データのファイル名 と共に伝え、 サーバ処理部 3 0 2はそのブロックサイズを元に、 ブロック補助デ' ータを作成するようにしてもよい。 このように構成することで、 クライアント処 理部 3 0 4の処理能力に応じたブロック分割が可能となり、 最終的にユーザの使 い勝手の向上につながる。 次に、 図 1 5を参照して、 クライアント処理部 3 0 4は、 ブロック捕助データ を受信すると.、 受取ったプロック補助データを解析し、 各ブロックの開始/"終了 位置と、 画面に表示しょうとしている領域のファイル先頭からの位置を元に、 ど のプロックを読込みかを判断し、 読込みたいプロックをサーバ処理部 3 0 2に伝 える (ステップ S 3 0 6 ) 。
サーバ処理部 3 0 2はその要求を受付けると、 指定されたブロックを文書 D B 3 0 1から読込み、 クライアント処理部 3 0 4に返す (ステップ S 3 0 7 ) 。 ク ライアント処理部 3 0 4は、 受取ったブロックデータとプロック捕助データの内 容とから、 先に述べたステップ S 1 0 5と同様の処理を行ない、 以降ステップ S 1 0 6力 ら、 先に述べたステップ S 1 0 5と同様の処理を行なう (ステップ S 3 0 9〜ステップ S 3 1 4 ) 。
このようにすることで、 処理する電子データがサーバ上にある場合でも、 階層 構造を考慮しながら電子データの一部分のみを読込んで処理ができるため、 電子 データ全体を読込んで処理する場合に比べ、 高速に処理ができ、 使用するメモリ も少なくて済む。 また電子データの一部のみを処理する場合には、 ネットワーク 上でやり取りするデータ量を減らすことも可能である。
なお、 本実施の形態においては、 ブロック補助データ作成部 3 0 6がサーバ処 理部 3 0 2内にある場合について説明したが、 ブロック補助データ作成部 3 0 6 を文書 D B 3 0 1、 あるいはクライアント処理部 3 0 4に備え、 ブロック捕助デ ータを文書 D B 3 0 1、 あるいはクライアント処理部 3 0 4で作成することも可 H¾ C?ある。
また、 上記の説明ではデータ表示装置を例に挙げて説明したが、 以上の説明か ら明らかなように、 本発明はブロック捕助データを用いて処理することによって、 階層構造をもつ電子データの一部分のみを受信して処理できることに特徴がある。 そのため図 1 3のブロック図において、 レイアウト計算部 3 1 1および表示部 3 1 2を処理装置固有の処理部に替えることで、 表示装置に限らず、 一般のデータ 処理装置に対しても本発明を適用できる。
また、 上述の第' 1〜 3の実施の形態における処理の一部または全部を、 コンビ ユータによる処理に適した命令の順番付けられた列からなるもの (プログラム) として提供することも可能である。 さらに、 これらのプログラムは、 そのプログ ラムのインス ト一ノレ、 実行、 プログラムの流通のために、 そのプログラムを記録 したコンピュータ読取可能な記録媒体として提供することも可能である。
また、 上述のプログラムまたは第 1〜 3の実施の形態におけるデータ構造を備 えるコンテンツデータを、 ネットワークを介してサーバ装置からクライアント装 置に送信して提供することも可能である。 その場合は、 例えば、 図 1のサーバ 1 1 0にプログラムまたはコンテンッデータを送信する送信部を備えることにより 実現可能である。
本実施の形態におけるデータベース処理装置が、 以上のように構成されている ことで、 階層構造をもつ電子データであっても、 電子データに対して用意したプ ロック補助データを用いて、 階層構造を考慮しながら、 電子データの一部分のみ を読込んで処理ができる。 そのため、 電子データ全体を読込んで処理する場合に 比べ、 高速に処理ができ、 使用するメモリも少なくて済む。 また、 プロック補助 データにリンク先の位置情報を用意することで、 XHTML文書のリンク機能のよう に任意のブロックに移動する場合であっても、 高速に移動ができる。
また、 第 2の実施の形態におけるデータ処理装置では、 ブロック補助データを もたない電子データであっても、 いったんブロック補助データを作成した後に処 理するようにしたので、 プロック補助データをもたない電子データに対しても、 同様に高速かつ低メモリ使用量で処理ができる。
さらに本実施の形態におけるデータ処理装置は、 ブロックの大きさをほぼ均等 な大きさに分割するので、 ユーザからのスクロール指示によって前後のプロック に表示を移動する場合であっても、 ほぼ同じ処理時間で表示される。 そのため、 ユーザにあまり違和感を感じさせないというメリットがある。 また、 サイズが極 端に大きいプロックが存在すると、 処理装置によっては、 作業用メモリが不足し て正常に動作しない可能性があるが、 大きさがほぼ均等となっているため、 その ような問題も生じにくくなる。
また、 第 3の実施形態におけるデータ処理装置では、 電子データおよびプロッ ク補助データがネットワーク接続されたサーバ上にある場合でも、 階層構造を考 盧しながら、 電子データの一部分のみを読込んで処理ができる。 そのため、 電子 データ全体をサ一バからダウンロードして処理する場合に比べ、 高速に処理がで き、 使用するメモリも少なくて済む。
なお、 今回開示された実施の形態はすべての点で例示であって制限的なもので はないと考えられるべきである。 本発明の範囲は上記した説明ではなくて特許請 求の範囲によって示され、 特許請求の範囲と均等の意味おょぴ範囲内でのすべて の変更が含まれることが意図される。 産業上の利用可能性
以上のように、 この発明によれば、 階層構造をもつ電子データを、 高速にかつ 低メモリで処理することができるので、 本発明は、 データ処理方法、 データ処理 プログラムおよびデータ処理装置に有利に適用することができる。

Claims

請求の範囲
1 · 階層構造を有する電子データと、 前記電子データを複数のプロックに分割し て処理するためのプロック補助データとカ らなる構造化データを処理するデータ · 処理方法であって、
前記電子データから所望の電子データが含まれるブロックを読込むステップと、 前記読込まれたプロックのプロック補助データを用いて前記所望の電子データ の階層構造を解析するステップと、 '
前記解析された結果を用いて所定の処理をするステップとを備える、 データ処 理方法。
2 . 前記電子データは表示用の電子データであり、 前記所定の処理は、 前記読込 んだブロックの表示レイアウトを計算し表示する処理であることを特徴とする、 請求の範囲の第 1項に記載のデータ処理方法。
3 . 前記電子データに対するプロック捕助データが存在しない場合、 前記電子デ タの処理をする前に、 前記電子データに対するブロック補助データを作成する ステップをさらに備えることを特徴とする、 請求の範囲の第 1項に記載のデータ 処理方法。
4. 前記複数に分割された電子データのプロックは、 ほぼ等しい大きさであるこ とを特徴とする、 請求の範囲の第 1項に記載のデータ処理方法。
5 . 前記プロック捕助データは、 前記複数に分割された電子データの各プロック の位置情報と、 前記プロックの開始位置と終了位置とにおける階層情報とを含む ことを特徴とする、 請求の範囲の第 1項に記載のデータ処理方法。
6 . 前記電子データに、 前記電子データ内の任意の位置にジャンプするリンク機 能が含まれる場合、 前記ブロック補助データは、 前記リンク先の位置情報を含む ことを特徴とする、 請求の範囲の第 1項に記載のデータ処理方法。
7 . 階層構造を有する電子データを複数のプロックに分解し、 前記分割された各 ブロックごとに所定の処理を実行させるための構造化データを生成するためのデ ータ処理方法であって、
前記電子データを所定のプロックサイズに分割する際の、 各プロック境界にお ける境界侯捕を抽出する抽出ステップと、
前記抽出された境界候捕に基づいて、 前記プロックの分割位置を決定する決定 ステップと、
前記決定された各プロックの先頭位置と終了位置とにおける前記階層構造の特 徴を示す情報を取得する取得ステップと、
前記決定ステップで決定された各プロックの分割位置の位置情報と、 前記取得 された前記位置情報に対応する前記階層構造の特徴と示す情報とを含むプロック 補助データを生成し、 前記プロック補助データを前記電子データに追加して前記 構造化データを生成する生成ステップとを備える、 データ処理方法。
8 . 前記抽出ステップは、 表示したときに行頭から表示される箇所から前記境界 候補を抽出することを特徴とする、 請求の範囲の第 7項に記載のデータ処理方法。 9 . 前記抽出ステップは、 前記電子データの構造を記録している制御コードの前 後とその付近とから前記境界候補を抽出することを特徴とする、 請求の範囲の第 7項に記載のデータ処理方法。
1 0 . 前記プロックサイズは、 前記電子データを処理する装置の処理能力と、 前 記装置の画面に表示される文字数と、 前記表示される文字数を決定する要因との 少なくとも 1つに応じて決められることを特徴とする、 請求の範囲の第 7項に記 載のデータ処理方法。
1 1 . サーバより階層構造を有する電子データを受取り、 前記電子データに対し て所定の処理をするデータ処理方法において、
前記サーバに対して前記所定の処理をしたい電子データ名を送信する送信ステ ップと、
前記サーバより前記電子データを複数のプロックに分割して処理するためのブ ロック補助データを受信する受信ステップと、
前記電子データのうち、 前記所定の処理をしたい前記電子データを含むプロッ クの送信を前記サーバに要求し、 前記プロックのデータを受信する受信ステップ と、
前記受信したプロックと、 前記プロックの前記プロック捕助データとを用いて、 前記プロックの階層構造を解析し、 その結果を用いて前記所定の処理をする再生 ステップとを備える、 データ処理方法。
1 2 . 前記サーバより前記ブロック補助データを受信するステップにおいて、 前 記プロック補助データが存在しない場合には、 前記プロック補助データを作成し た後、 前記サーバより受信することを特徴とする、 請求の範囲の第 1 1項に記載 のデータ処理方法。
1 3 . P皆層構造を有する電子データと、 前記電子データを複数のブロックに分割 して処理するためのプロック捕助データとを対として備える構造化デ^ "タに対し て、 所定の文書記述言語の定義に従って所定の処理を実行させるためのデータ処 理プログラムであって、
前記ブロック補助データに基づいて、 前記電子データのプロックデータを読込 む読込みステップと、
前記読込まれたプロックデータと、 前記プロック補助データとに基づいて、 前 記プロックデータに含まれる階層構造を解析する解析ステップと、
前記解析結果と、 前記文書記述言語の定義とに基づいて、 前記ブロックデータ に対して前記所定の処理を実行させる実行ステップ.と.をコンピュータに実行させ る、 データ処理プログラム。
1 4. P皆層構造を有する電子データを複数のブロックに分割し、 前記分割された 各ブロックごとに所定の処理を実行させるための構造化データを生成するための データ処理プログラムであって、
前記電子データを所定のプロックサイズに分割する際の、 各プロック境界にお ける境界候補を抽出する抽出ステップと、 '
前記抽出された境界候補に基づいて、 前記プロックの分割位置を決定する決定 前記決定された各プロックの先頭位置と終了位置とにおける前記階層構造の特 徴を示す情報を取得する取得ステツプと、
前記決定ステップで決定された各プロックの分割情報の位置情報と、 前記取得 された前記位置情報に対応する前記階層構造の特徴を示す情報とを含むプロック 補助データを生成し、 前記プロック捕助データを前記電子データに追加して前記 構造化データを生成する生成ステップとをコンピュータに実行させる、 データ処 理プログラム。
1 5 . サーバより階層構造を有する電子データを受取り、 前記電子データに対し て所定の処理をするためのデータ処理プログラムであって、
前記サーバに対して前記所定の処理をしたい電子データ名を送信する送信ステ ップと、
前記サーバより前記電子データを複数のプロックに分割して処理するためのプ ロック捕助データを受信する受信ステップと
前記電子データのうち、 前記所定の処理をしたい前記電子データを含むプロッ クの送信を前記サーバに要求し、 前記プロックのデータを受信する受信ステップ と、
前記受信したプロックと、 前記プロックの前記プロック捕助データとを用いて、 前記プロックの階層構造を解析し、 その結果を用いて前記所定の処理をする再生 ステップとをコンピュータに実行させる、 データ処理プログラム。
1 6 . 階層構造を有する電子データを処理するデータ処理装置であって、
前記電子データには、 前記電子データを複数のプロックに分割して処理するた めの捕助情報であるプロック補助データが付随し、
前記電子データのうち、 処理をしたいデータが含まれるブロックと、 前記プロ ック補助データとを読込む入力部と、
前記プロック補助データを用いて、 前記読込んだ前記プロックの階層構造を解 析するデータ構造解析部と、
前記データ構造解析部の結果を用いて、 所定の処理をする処理部を備える、 デ ータ処理装置。
1 7 . 前記電子データは表示用の文書データであり、 前記処理部は、 :
前記データ構造解析部によつて解析された前記プロックの階層構造を用いて、 前記読込んだブロックの表示レイアウトを計算するレイァゥト計算部と、 .
前記レイァゥト計算部によって求めた前記表示レイァゥトに基づいて表示する 表示部とをさらに備える、 請求の範囲の第 1 6項に記載のデータ処理装置。
1 8 . サーバより階層構造を有する電子データを受取り、 前記電子データに対し て所定の処理をするデータ処理装置であって、 前記電子データには、 '前記電子データを複数のプロックに分割して処理するた めの補助情報であるプロック補助データが付随し、
前記電子データのうち、 前記所定の処理をしたい電子データが含まれるプロッ クを前記サーバに伝え、 前記プロックのデータと、 前記ブロック補助データとを 前記サーバより受信する送受信部と、
前記受信した前記プロックと、 前記ブロック補助データとを用いて、 前記受信 した前記プロックの階層構造を解析するデータ構造解析部と、
前記データ構造解析部の結果を用いて、 前記所定の処理をする処理部とを備え る、 データ処理装置。
1 9 . 携帯型の端末であることを特徴とする、 請求の範囲の第 1 6項または第 1 8項に記載のデータ処理装置。
2 0 . 文書記述言語の定義に従って記述された電子データと、 前記電子データを 複数のブロックに分割して処理するためのブロック補助データとを対として備え たことを特徴とする、 構造化データ。
2 1 . 文書記述言語の定義に従って所定の処理を実行させるための電子データと、 前記電子データを複数のプロックに分割し、 前記分割された各プロックごとに前 記所定の処理を実行させるためのプロック補助データとを対として備えたことを 特徴とする、 構造化データ。
2 2. 前記複数に分割された電子データのブロックは、 ほぼ等しい大きさである ことを特徴とする、 請求の範囲の第 2 0項または第 2 1項に記載の構造化データ。
2 3 . 前記ブロック補助データは、.少なくとも前記各ブロックの位置情報と、 前 記ブロックの開始位置と終了位置とにおける階層情報とを有することを特徴とす る、 請求の範囲の第 2 0項または第 2 1項に記載の構造化データ。
2 4. 前記ブロック補助データは、 前記ブロックの分割箇所を、 前記電子データ の構造を記録している制御コードの前後とその付近とから選ぶことを特徴とする、 請求の範囲の第 2 0項または第 2 1項に記載の構造化データ。
2 5 , 前記ブロック捕助データは、 前記ブロックの分割箇所を、 表示したときに 行頭から表示される箇所に限定することを特徴とする、 請求の範囲の第 2 0項ま たは第 2 1項に記載の構造化データ。
2 6 . 前記電子データに、 前記電子データ内の任意の位置にジャンプするリンク 機能が含まれる場合、 前記プロック補助データは、 前記リンク先の位置情報を含 むことを特徴とする、 請求の範囲の第 2 0項または第 2 1項に記載の構造化デー タ。
2 .7, 文書記述言語の定義に従って記述された電子データと、 前記電子データを 複数のブロックに分割して処理するためのブロック補助データとを対として備え たことを特徴とする構造化データを記録した、 コンピュータ読取可能な記録媒体。
2 8 . 請求の範囲の第 1 3項〜第 1 5項のいずれかに記載のデータ処理プログラ ムを送信する送信部を備えることを特徴とする、 送信装置。
2 9 . 請求の範囲の第 2 0項または第 2 1項に記載の階層化データを送信する送 信部を備えることを特徴とする、 送信装置。
PCT/JP2002/005880 2001-06-14 2002-06-12 Procede de traitement de donnees, programme de traitement de donnees et appareil de traitement de donnees WO2002103554A1 (fr)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2003505803A JP4794127B2 (ja) 2001-06-14 2002-06-12 データ処理方法、データ処理プログラム、およびデータ処理装置
DE60224271T DE60224271T2 (de) 2001-06-14 2002-06-12 Datenverarbeitungsverfahren, datenverarbeitungsprogramm und datenverarbeitungsvorrichtung
KR1020037016296A KR100556647B1 (ko) 2001-06-14 2002-06-12 데이터 처리 방법, 데이터 처리 프로그램을 기록한 기록매체, 및 데이터 처리 장치
US10/480,211 US20050165835A1 (en) 2001-06-14 2002-06-12 Data processing method, program and data processing apparatus
EP02738675A EP1396793B1 (en) 2001-06-14 2002-06-12 Data processing method, data processing program, and data processing apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2001-179415 2001-06-14
JP2001179415 2001-06-14

Publications (1)

Publication Number Publication Date
WO2002103554A1 true WO2002103554A1 (fr) 2002-12-27

Family

ID=19019974

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2002/005880 WO2002103554A1 (fr) 2001-06-14 2002-06-12 Procede de traitement de donnees, programme de traitement de donnees et appareil de traitement de donnees

Country Status (7)

Country Link
US (1) US20050165835A1 (ja)
EP (3) EP1770547B1 (ja)
JP (2) JP4794127B2 (ja)
KR (1) KR100556647B1 (ja)
AT (1) ATE382169T1 (ja)
DE (1) DE60224271T2 (ja)
WO (1) WO2002103554A1 (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004081809A1 (ja) * 2003-03-13 2004-09-23 Sharp Kabushiki Kaisha データ処理装置、データ処理方法、データ処理プログラムおよび該プログラムを記録した記録媒体
JP2004287978A (ja) * 2003-03-24 2004-10-14 Toshiba Corp 構造化文書の分割方法及びプログラム
WO2005062198A1 (ja) * 2003-12-19 2005-07-07 Sharp Kabushiki Kaisha データ生成方法、データ処理方法、データ生成装置、データ処理装置、データ生成プログラム、データ処理プログラム、データ生成プログラムを記録した記録媒体、およびデータ処理プログラムを記録した記録媒体
JP2005182517A (ja) * 2003-12-19 2005-07-07 Sharp Corp データ生成方法、データ生成装置、データ生成プログラム、およびデータ生成プログラムを記録した記録媒体
JP2005267449A (ja) * 2004-03-19 2005-09-29 Sharp Corp データ処理方法、データ処理装置、データ処理プログラム、およびデータ処理プログラムを記録した記録媒体
WO2005109241A1 (ja) * 2004-05-11 2005-11-17 Atl Systems, Inc. データ構造、構造化データ管理システム及び構造化データ管理方法並びに構造化データ管理プログラム
WO2007041703A1 (en) * 2005-10-04 2007-04-12 Microsoft Corporation Multi-form design with harmonic composition for dynamically aggregated documents
JP2007535749A (ja) * 2004-04-30 2007-12-06 マイクロソフト コーポレーション ドキュメントのパーツをインタリーブする方法と装置
JP2008123419A (ja) * 2006-11-15 2008-05-29 Kyocera Mita Corp Htmlテキストを変換する装置、方法、およびプログラム
JP2008293516A (ja) * 2008-07-01 2008-12-04 Sharp Corp データ処理装置、データ処理方法、データ処理プログラムおよび記録媒体
JP2011501299A (ja) * 2007-10-19 2011-01-06 マイクロソフト コーポレーション 動的に更新される仮想リストビュー
US7958056B2 (en) 2004-10-22 2011-06-07 Sharp Kabushiki Kaisha Content data creating device, control method thereof, program for creating content data, and content data display device

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2439182B1 (en) 2009-06-04 2021-03-17 Tosoh Corporation High-strength transparent zirconia sintered body and process for production thereof
JP5538159B2 (ja) * 2010-09-22 2014-07-02 シャープ株式会社 ページ数決定装置、ページ数決定方法、ページ数決定プログラム、及びコンピュータ読み取り可能な記録媒体
CN103164388B (zh) * 2011-12-09 2016-07-06 北大方正集团有限公司 一种版式文件中结构化信息获取的方法及装置
KR20150111221A (ko) * 2014-03-25 2015-10-05 삼성전자주식회사 페이지 구성 방법 및 이를 지원하는 전자장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10143498A (ja) * 1996-11-08 1998-05-29 Nippon Telegr & Teleph Corp <Ntt> リンク付与機能を持つページ分割通信中継装置
JPH10269160A (ja) * 1997-03-28 1998-10-09 Matsushita Electric Ind Co Ltd データ配信表示装置
JP2001195391A (ja) * 2000-01-14 2001-07-19 Nec Information Service Ltd フォーマット変換・ページ分割中継サーバ

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6267670A (ja) * 1985-09-20 1987-03-27 Toshiba Corp 文書編集システム
JPS6438866A (en) * 1987-08-05 1989-02-09 Hitachi Ltd Document editing device
US5452446A (en) * 1992-11-12 1995-09-19 Spx Corporation Method and apparatus for managing dynamic vehicle data recording data by current time minus latency
US5754840A (en) * 1996-01-23 1998-05-19 Smartpatents, Inc. System, method, and computer program product for developing and maintaining documents which includes analyzing a patent application with regards to the specification and claims
JPH09259028A (ja) * 1996-03-19 1997-10-03 Toshiba Corp 情報呈示方法
JPH10143403A (ja) * 1996-11-12 1998-05-29 Fujitsu Ltd 情報管理装置および情報管理プログラム記憶媒体
US6134552A (en) * 1997-10-07 2000-10-17 Sap Aktiengesellschaft Knowledge provider with logical hyperlinks
US6185585B1 (en) * 1997-12-16 2001-02-06 Corporate Media Partners System and method for distribution and navigation of internet content
US6032152A (en) * 1997-12-31 2000-02-29 Intel Corporation Object factory template
US6256622B1 (en) * 1998-04-21 2001-07-03 Apple Computer, Inc. Logical division of files into multiple articles for search and retrieval
US6560616B1 (en) * 1999-03-26 2003-05-06 Microsoft Corporation Robust modification of persistent objects while preserving formatting and other attributes
GB2357348A (en) * 1999-12-18 2001-06-20 Ibm Using an abstract messaging interface and associated parsers to access standard document object models
US6789229B1 (en) * 2000-04-19 2004-09-07 Microsoft Corporation Document pagination based on hard breaks and active formatting tags
WO2001089171A2 (en) * 2000-05-16 2001-11-22 Mshift, Inc. System for providing network content to wireless devices
US7143181B2 (en) * 2000-08-31 2006-11-28 Yohoo! Inc. System and method of sending chunks of data over wireless devices
US7613810B2 (en) * 2000-09-27 2009-11-03 Nokia Inc. Segmenting electronic documents for use on a device of limited capability

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10143498A (ja) * 1996-11-08 1998-05-29 Nippon Telegr & Teleph Corp <Ntt> リンク付与機能を持つページ分割通信中継装置
JPH10269160A (ja) * 1997-03-28 1998-10-09 Matsushita Electric Ind Co Ltd データ配信表示装置
JP2001195391A (ja) * 2000-01-14 2001-07-19 Nec Information Service Ltd フォーマット変換・ページ分割中継サーバ

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1777885B (zh) * 2003-03-13 2010-06-16 夏普株式会社 数据处理装置和数据处理方法
WO2004081809A1 (ja) * 2003-03-13 2004-09-23 Sharp Kabushiki Kaisha データ処理装置、データ処理方法、データ処理プログラムおよび該プログラムを記録した記録媒体
EP1605366A4 (en) * 2003-03-13 2010-07-07 Sharp Kk DATA PROCESSING DEVICE, DATA PROCESSING METHOD, DATA PROCESSING PROGRAM AND RECORDING MEDIA RECORDING THIS PROGRAM
EP1605366A1 (en) * 2003-03-13 2005-12-14 Sharp Kabushiki Kaisha Data processing apparatus, data processing method, data processing program, and recording medium having recorded therein that program
JP2004287978A (ja) * 2003-03-24 2004-10-14 Toshiba Corp 構造化文書の分割方法及びプログラム
WO2005062198A1 (ja) * 2003-12-19 2005-07-07 Sharp Kabushiki Kaisha データ生成方法、データ処理方法、データ生成装置、データ処理装置、データ生成プログラム、データ処理プログラム、データ生成プログラムを記録した記録媒体、およびデータ処理プログラムを記録した記録媒体
JP2005182517A (ja) * 2003-12-19 2005-07-07 Sharp Corp データ生成方法、データ生成装置、データ生成プログラム、およびデータ生成プログラムを記録した記録媒体
JP2005267449A (ja) * 2004-03-19 2005-09-29 Sharp Corp データ処理方法、データ処理装置、データ処理プログラム、およびデータ処理プログラムを記録した記録媒体
JP2007535749A (ja) * 2004-04-30 2007-12-06 マイクロソフト コーポレーション ドキュメントのパーツをインタリーブする方法と装置
JPWO2005109241A1 (ja) * 2004-05-11 2008-07-31 株式会社エーティーエルシステムズ データ構造、構造化データ管理システム及び構造化データ管理方法並びに構造化データ管理プログラム
WO2005109241A1 (ja) * 2004-05-11 2005-11-17 Atl Systems, Inc. データ構造、構造化データ管理システム及び構造化データ管理方法並びに構造化データ管理プログラム
US7958056B2 (en) 2004-10-22 2011-06-07 Sharp Kabushiki Kaisha Content data creating device, control method thereof, program for creating content data, and content data display device
WO2007041703A1 (en) * 2005-10-04 2007-04-12 Microsoft Corporation Multi-form design with harmonic composition for dynamically aggregated documents
JP2008123419A (ja) * 2006-11-15 2008-05-29 Kyocera Mita Corp Htmlテキストを変換する装置、方法、およびプログラム
US9170988B2 (en) 2006-11-15 2015-10-27 Kyocera Document Solutions Inc. Method for causing computer to display page view on display area by converting HTML page into new HTML pages, and non-transitory computer readable media recording program
JP2011501299A (ja) * 2007-10-19 2011-01-06 マイクロソフト コーポレーション 動的に更新される仮想リストビュー
JP2008293516A (ja) * 2008-07-01 2008-12-04 Sharp Corp データ処理装置、データ処理方法、データ処理プログラムおよび記録媒体
JP4628450B2 (ja) * 2008-07-01 2011-02-09 シャープ株式会社 データ処理装置、データ処理方法、データ処理プログラムおよび記録媒体

Also Published As

Publication number Publication date
JP4990302B2 (ja) 2012-08-01
KR20040011537A (ko) 2004-02-05
JP2009134741A (ja) 2009-06-18
EP1770547A2 (en) 2007-04-04
EP1396793A1 (en) 2004-03-10
EP1770548A3 (en) 2007-04-11
US20050165835A1 (en) 2005-07-28
JP4794127B2 (ja) 2011-10-19
EP1770548A2 (en) 2007-04-04
EP1770547B1 (en) 2012-09-12
DE60224271T2 (de) 2008-12-18
EP1396793B1 (en) 2007-12-26
DE60224271D1 (de) 2008-02-07
JPWO2002103554A1 (ja) 2004-10-07
EP1396793A4 (en) 2006-02-22
EP1770547A3 (en) 2007-04-11
KR100556647B1 (ko) 2006-03-06
ATE382169T1 (de) 2008-01-15

Similar Documents

Publication Publication Date Title
JP4990302B2 (ja) データ処理方法、データ処理プログラム、およびデータ処理装置
US7085999B2 (en) Information processing system, proxy server, web page display method, storage medium, and program transmission apparatus
US7143026B2 (en) Generating rules to convert HTML tables to prose
US8484552B2 (en) Extensible stylesheet designs using meta-tag information
US7146564B2 (en) Extensible stylesheet designs using meta-tag and/or associated meta-tag information
US6675355B1 (en) Redline extensible markup language (XML) schema
JP4716612B2 (ja) Html文書に表示されるデータオブジェクトのソースをリダイレクトする方法
US20030110442A1 (en) Developing documents
US20020143821A1 (en) Site mining stylesheet generator
US20080040659A1 (en) Markup Language Translator System
KR20040077530A (ko) 컴퓨터 소프트웨어 애플리케이션의 붙이기 기능을개선하기 위한 방법 및 시스템
US20130212121A1 (en) Client-side modification of electronic documents in a client-server environment
GB2382174A (en) Data formatting in a platform independent manner
Houlding XML—An opportunity for< meaningful> data standards in the geosciences
US7814408B1 (en) Pre-computing and encoding techniques for an electronic document to improve run-time processing
JP2002215519A (ja) ウェブページ生成方法およびシステム、ウェブページ生成プログラム、記録媒体
EP1377917A2 (en) Extensible stylesheet designs using meta-tag information
JP4018528B2 (ja) 文書処理装置、文書処理方法およびプログラム
Yang et al. A content provider-specified Web Clipping approach for mobile content adaptation
JP4337309B2 (ja) ブラウザ装置
Riadh et al. Web Content Adaptation System
WO2004029801A9 (en) Method for converting codes
JP2004280278A (ja) データ処理装置、データ処理方法、データ処理プログラム、および、記録媒体
JP2004355320A (ja) データ処理装置、データ処理方法、データ処理プログラムおよび記録媒体
Martin Internet technologies for bioinformatics

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP KR US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR

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

Ref document number: 2002738675

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2003505803

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 10480211

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1020037016296

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2002738675

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 2002738675

Country of ref document: EP