WO2007052680A1 - 文書処理装置及び文書処理方法 - Google Patents

文書処理装置及び文書処理方法 Download PDF

Info

Publication number
WO2007052680A1
WO2007052680A1 PCT/JP2006/321798 JP2006321798W WO2007052680A1 WO 2007052680 A1 WO2007052680 A1 WO 2007052680A1 JP 2006321798 W JP2006321798 W JP 2006321798W WO 2007052680 A1 WO2007052680 A1 WO 2007052680A1
Authority
WO
WIPO (PCT)
Prior art keywords
document
display
outline
unit
displayed
Prior art date
Application number
PCT/JP2006/321798
Other languages
English (en)
French (fr)
Inventor
Takahiko Ichino
Original Assignee
Justsystems Corporation
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 Justsystems Corporation filed Critical Justsystems Corporation
Priority to US12/092,168 priority Critical patent/US20090287994A1/en
Priority to JP2007542771A priority patent/JPWO2007052680A1/ja
Publication of WO2007052680A1 publication Critical patent/WO2007052680A1/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
    • 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 document processing technique, and more particularly to a document processing apparatus and a document processing method for processing a document described in a markup language.
  • XML is attracting attention as a format suitable for sharing data with others via a network, and applications for creating, displaying, and editing XML documents have been developed (for example, (See Patent Document 1).
  • An XML document is created based on a vocabulary (tag set) defined by a document type definition or the like.
  • Patent Document 1 Japanese Patent Laid-Open No. 2001-290804
  • the present invention has been made in view of such circumstances, and an object of the present invention is to provide a technique for presenting an outline of a document in an easily identifiable manner.
  • the document processing apparatus includes a document acquisition unit that acquires a document described in a markup language, a setting unit that sets a display condition of a document outline for each tag set of the markup language, and the display When receiving a request to display the document outline acquired by the document acquisition unit and the holding unit holding the condition, the display condition corresponding to the tag set included in the document is read from the storage unit; And a generation unit that generates an outline display of the document based on the display condition.
  • the display condition specifies an item to be displayed when an outline of the document is displayed.
  • the generation unit that may include a condition for generating the outline display generates the outline display by extracting the items to be displayed from the document and hierarchizing them according to a hierarchical structure in the document. May be.
  • the display condition may further include a condition for specifying an item used as a division of a hierarchy of the item to be displayed in the outline display.
  • the display items extracted from the document are hierarchized according to the hierarchical structure of the items used as delimiters in the document, so that the outline display is performed. May be generated.
  • the generation unit regards the item to be displayed in a hierarchy between an item used as a break of the hierarchy and an item used as a break of the hierarchy existing in the lower layer as the same hierarchy.
  • a display may be generated.
  • the display condition may include a condition for specifying an item to be displayed when the outline of the document is displayed, and a condition for specifying a hierarchy in the outline display of the item.
  • the generation unit extracts the item to be displayed from the document, specifies a hierarchy in the outline display of the extracted item, and hires the extracted item according to the specified hierarchy, thereby generating the outline.
  • a display may be generated.
  • the document processing method includes a step of acquiring a document described in a markup language, a step of setting a display condition of a document outline for each tag set of the markup language, and holding the display condition in a storage unit. And receiving the outline display request of the acquired document, reading the display condition corresponding to the tag set included in the document from the storage unit, and outputting the outline of the document based on the display condition Generating a display.
  • FIG. 1 is a diagram showing a configuration of a document processing apparatus according to a prerequisite technology.
  • FIG. 2 is a diagram showing an example of an XML document to be processed.
  • FIG. 3 is a diagram showing an example of mapping the XML document shown in FIG. 2 to a table described in HTML.
  • FIG. 4 (a) is a diagram showing an example of a definition file for mapping the XML document shown in FIG. 2 to the table shown in FIG.
  • FIG. 4 (b) is a diagram showing an example of a definition file for mapping the XML document shown in FIG. 2 to the table shown in FIG.
  • FIG. 5 is a diagram showing an example of a screen displayed by mapping the XML document described in the grade management vocabulary shown in FIG. 2 to HTML according to the correspondence shown in FIG.
  • FIG. 6 is a diagram showing an example of a graphical user interface presented to the user by the definition file generation unit in order for the user to generate a definition file.
  • FIG. 7 is a diagram showing another example of the screen layout generated by the definition file generation unit.
  • FIG. 8 is a diagram showing an example of an XML document editing screen by the document processing apparatus.
  • FIG. 9 is a diagram showing another example of an XML document edited by the document processing apparatus.
  • FIG. 10 is a diagram showing an example of a screen displaying the document shown in FIG.
  • FIG. 11 is a diagram showing a configuration of a document processing apparatus according to the embodiment.
  • FIG. 12 is a diagram showing an example of a dialog screen presented by the condition setting unit.
  • FIGS. 13A and 13B are diagrams showing examples of dialog screens presented by the condition setting unit.
  • FIG. 14 is a diagram showing an example of a dialog screen presented when the “add” or “edit” button is clicked on the dialog screen of FIG. 13 (a).
  • FIG. 15 is a diagram showing an example of a dialog screen presented when the “add” or “edit” button is clicked on the dialog screen of FIG. 13 (b).
  • FIG. 16 is a diagram showing an example of a dialog screen presented by the condition setting unit.
  • FIG. 17 is a diagram showing an example of display conditions set by a condition setting unit.
  • FIG. 18 is a diagram showing an example of an XML document described in the “XHTML” vocabulary.
  • FIG. 20 is a diagram showing another example of display conditions set by the condition setting unit.
  • FIG. 21 is a diagram showing an example of an XML document described in the “XHTML” vocabulary.
  • FIG. 22 is a diagram showing an example in which the outline of the XML document shown in FIG. 21 is displayed based on the display conditions shown in FIG.
  • 20 document processing device 22 main control unit, 24 editing unit, 29 acquisition unit, 30 DOM unit, 32 DOM providing unit, 34 DOM generation unit, 36 output unit, 40 CSS unit, 42 CSS analysis unit, 44 CSS providing unit, 46 rendering unit, 50 HTML unit, 52, 62 control unit, 54, 64 editing unit, 56, 66 display unit, 60 SVG unit, 70 outline display unit, 71 condition setting unit, 72 condition holding unit, 73 Outline view generation unit, 80 VC unit, 82 mapping unit, 84 definition file acquisition unit, 86 definition file generation unit, 100 document processing device.
  • FIG. 1 shows the configuration of the document processing apparatus 20 according to the base technology.
  • the document processing apparatus 20 processes a structured document in which data in the document is classified into a plurality of components having a hierarchical structure.
  • an example of processing an XML document as an example of a structured document is used. I ’ll explain it.
  • the document processing apparatus 20 includes a main control unit 22, an editing unit 24, a DOM unit 30, a CSS unit 40, an HTML unit 50, an SVG unit 60, and a VC unit 80 which is an example of a conversion unit.
  • these configurations are the power realized by the CPU, memory, and programs loaded in the memory of any computer.
  • functional blocks realized by their cooperation are depicted. Therefore, those skilled in the art will understand that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof.
  • the main control unit 22 provides a framework for loading plug-ins and executing commands.
  • the editing unit 24 provides a framework for editing XML documents.
  • the document display and editing functions in the document processor 20 are implemented by plug-ins. Thus, necessary plug-ins are loaded by the main control unit 22 or the editing unit 24 in accordance with the document type.
  • the main control unit 22 or the editing unit 24 refers to the name space of the XML document to be processed, determines whether the XML document is described by the misplaced library, and displays or displays corresponding to the missing library. Load the editing plug-in to display or edit.
  • the document processing device 20 has a display system and editing system plug-in for each vocabulary (tag set), such as an HTML unit 50 that displays and edits HTML documents and an SVG unit 60 that displays and edits SVG documents.
  • the HTML unit 50 is loaded when editing an HTML document
  • the SVG unit 60 is loaded when editing an S VG document.
  • both HTML unit 50 and SVG unit 60 are loaded.
  • the user can select and install only the necessary functions and add or delete functions as needed later, so that the recording medium such as a hard disk for storing the program can be used.
  • the storage area can be used effectively, and memory can be prevented from being wasted during program execution.
  • it has excellent function expandability, and as a development entity, it is possible to cope with a new vocabulary in the form of a plug-in, making development easier, and as a user, it is easy and low by adding plug-ins. Additional functions can be added at cost.
  • the editing unit 24 accepts an editing instruction event via the user interface, notifies the appropriate plug-in of the event, and re-executes the event (redo) or cancels the execution (undo). Control the process.
  • the DOM unit 30 includes a DOM providing unit 32, a DOM generation unit 34, and an output unit 36, and is a document object model (Document) defined to provide an access method when an XML document is handled as data. Implements functions that conform to Object Model (DOM).
  • the DOM provider 32 is a DOM implementation that satisfies the interface defined in the editing unit 24.
  • the DOM generator 34 also generates a DOM tree with XML document capabilities. As will be described later, when mapping to another vocabulary by the XML document power VC unit 80 to be processed, the source tree corresponding to the mapping source XML document and the mapping destination X A destination tree corresponding to the ML document is generated.
  • the output unit 36 outputs the DOM tree as an XML document at the end of editing, for example.
  • the CSS unit 40 includes a CSS analysis unit 42, a CSS providing unit 44, and a rendering unit 46, and provides a display function compliant with CSS.
  • the CSS analysis unit 42 has a function of a parser that analyzes the syntax of CSS.
  • the CSS provider 44 is an implementation of a CSS object and performs CSS cascade processing on the DOM tree.
  • the rendering unit 46 is a CSS rendering engine, and is used to display a document described in a vocabulary such as HTML that is laid out using CSS.
  • the HTML unit 50 displays or edits a document described in HTML.
  • the SVG unit 60 displays or edits documents written in SVG.
  • These display Z editing systems are realized in the form of plug-ins.
  • Each display unit (Canvas) 56 and 66 displays a document, and each control unit (Editlet) 52 and 62 receives and transmits an event including an editing instruction. It is equipped with editing sections (Zone) 54 and 64 that receive editing commands and edit the DOM.
  • the control unit 52 or 62 accepts a DOM tree editing command even when an external force is received, the editing unit 54 or 64 changes the DOM tree, and the display unit 56 or 66 updates the display.
  • MVC Model-View-Controller
  • the display units 56 and 66 are changed to "View”, and the control units 52 and 62 are changed to "Controller”. Parts 54 and 64 and the entity of the DOM correspond to “Model”, respectively.
  • the document processing apparatus 20 of the base technology enables not only editing of an XML document in a tree display format but also editing according to the respective vocabulary.
  • the HTML unit 50 provides a user interface for editing an HTML document in a manner similar to a word processor
  • the SVG unit 60 provides a user interface for editing an SVG document in a manner similar to an image drawing tool.
  • the VC unit 80 includes a mapping unit 82, a definition file acquisition unit 84, and a definition file generation unit 86.
  • a mapping destination Provides a framework for displaying or editing documents with a display editing plug-in that supports the vocabulary. In this base technology, this function is called Vocabulary Connection (VC).
  • Definition file collection The obtaining unit 84 obtains a script file describing the mapping definition. This definition file describes the correspondence (connection) between nodes for each node. At this time, whether to edit the element value or attribute value of each node may be specified. Also, an arithmetic expression using the element value or attribute value of the node may be described.
  • the mapping unit 82 refers to the script file acquired by the definition file acquisition unit 84, causes the DOM generation unit 34 to generate a destination tree, and manages the correspondence between the source tree and the destination tree.
  • the definition file generator 86 provides a graphical user interface for the user to generate a definition file.
  • the VC unit 80 monitors the connection between the source tree and the destination tree.
  • the VC unit 80 first matches the source tree. Change the node to be used.
  • the DOM unit 30 issues a mutation event indicating that the source tree has been changed
  • the VC unit 80 receives the mutation event and synchronizes the destination tree with the change in the source tree. Change the destination tree node corresponding to the changed node.
  • a plug-in that displays / edits the destination tree for example, the HTML unit 50, receives a mutation event indicating that the destination tree has been changed, and updates the display with reference to the changed destination tree.
  • the DOM generation unit 34 When the document processing device 20 reads a document to be processed, the DOM generation unit 34 generates a DOM tree for the XML document power. Further, the main control unit 22 or the editing unit 24 refers to the name space to determine the vocabulary describing the document. If a plug-in corresponding to the vocabulary is installed in the document processing apparatus 20, the plug-in is loaded to display / edit the document. If the plug-in linker S is not installed, check whether the mapping definition file exists. When the definition file exists, the definition file acquisition unit 84 acquires the definition file and follows the definition to obtain the destination file. A generation tree is created, and the document is displayed and edited by the plug-in corresponding to the mapping destination library.
  • the corresponding parts of the document are displayed and edited by plug-ins corresponding to each vocabulary as described later. If the definition file does not exist, the document source or tree structure is displayed and edited on the display screen.
  • FIG. 2 shows an example of an XML document to be processed.
  • This XML document is used to manage student grade data.
  • the component “score” that is the top node of the XML document has a plurality of component “students” provided for each student under the subordinate.
  • the component “student” has an attribute value “name” and child elements “national language”, “mathematics”, “science”, and “society”.
  • the attribute value “name” stores the name of the student.
  • the constituent elements “National language”, “Mathematics”, “Science”, and “Society” store the results of national language, mathematics, science, and society, respectively.
  • the student with the name “A” has a national grade of “90”, a mathematical grade of “50”, a science grade of “75”, and a social grade of “60”.
  • the vocabulary (tag set) used in this document will be referred to as the “results management vocabulary”.
  • the document processing apparatus 20 of the base technology does not have a plug-in that supports display Z editing of the grade management vocabulary, in order to display this document by a method other than source display and tree display,
  • the VC function is used.
  • the user interface for creating a definition file by the user himself will be described later.
  • the description will proceed assuming that a definition file has already been prepared.
  • FIG. 3 shows an example of mapping the XML document shown in FIG. 2 to a table described in HTML.
  • the “Student” node in the Grade Management Library is associated with the row (“TR” node) of the table (“TA BLE” node) in HTML, and the attribute value “name” appears in the first column of each row.
  • the element value of the "National Language” node the element value of the "Mathematics” node in the third column, the element value of the "Science” node in the fourth column, and " Associate the element values of the “Society” node.
  • the XML document shown in FIG. 2 can be displayed in an HTML table format.
  • these attribute values and element values are specified to be editable. However, on the HTML display screen, these values can be edited using the editing function of HTML unit 50.
  • the sixth column specifies the formula for calculating the weighted average of national language, mathematics, science, and society, and displays the average score of the students. In this way, by making it possible to specify an arithmetic expression in the definition file, more flexible display is possible, and user convenience during editing can be improved. Note that the sixth column specifies that editing is not possible, so that only the average score cannot be edited individually. In this way, by making it possible to specify whether or not editing can be performed in the mapping definition, it is possible to prevent erroneous operations by the user.
  • FIGS. 4A and 4B show examples of definition files for mapping the XML document shown in FIG. 2 to the table shown in FIG.
  • This definition file is described in the script language defined for the definition file.
  • the definition file contains command definitions and display templates.
  • "add student” and “delete student” are defined as commands, respectively, the operation of inserting the node “student” into the source tree, and the source tree The operation of deleting the node “student” from the node is associated.
  • headings such as “name” and “national language” are displayed in the first line of the table, and the contents of the node “student” are displayed in the second and subsequent lines.
  • FIG. 5 shows an example of a screen displayed by mapping the XML document described in the grade management vocabulary shown in FIG. 2 to HTML according to the correspondence shown in FIG.
  • Table 90 shows, from the left, each student's name, national language grade, mathematics grade, science grade, social grade, and average score.
  • the user can edit the XML document on this screen. For example, if the value of the second row and third column is changed to “70”, the element value of the source corresponding to this node, that is, the math grade of the student “B” is changed to “70”.
  • the VC unit 80 makes the destination tree follow the source tree. -Change the corresponding part of the destination tree and update the display based on the changed destination tree. Therefore, also in the table on the screen, the mathematics score of the student “B” is changed to “70”, and the average score is changed to “55”.
  • the screen shown in FIG. 5 displays the “add student” and “delete student” command menus as defined in the definition file shown in FIGS. 4 (a) and 4 (b). Is displayed.
  • the node “Student” is added or deleted in the source tree.
  • Such a single-structure editing function may be provided to the user in the form of a command.
  • a command for adding or deleting a table row may be associated with an operation for adding or deleting the node “student”.
  • a command for embedding other vocabulary may be provided to the user.
  • this table as an input template, new student grade data can be added in the form of hole filling.
  • the VC function makes it possible to edit a document described in the grade management vocabulary while using the display Z editing function of the HTML unit 50.
  • FIG. 6 shows an example of a graphical user interface that the definition file generator 86 presents to the user in order for the user to generate a definition file.
  • the XML document of the mapping source is displayed in a tree.
  • the area 92 on the right side of the screen shows the screen layout of the mapping destination XML document.
  • This screen layout can be edited by the HTML unit 50, and the user creates a screen layout for displaying a document in an area 92 on the right side of the screen.
  • mapping source XML document displayed in the area 91 on the left side of the screen into the HTML screen layout displayed in the area 92 on the right side of the screen.
  • the connection between the mapping source node and the mapping destination node is specified. For example, if you drop “math”, which is a child element of the element “student”, into the first row and third column of Table 90 on the HTML screen, it will be between the “math” node and the “TD” node in the third column. A connection is established. Each node can be designated for editing. An arithmetic expression can also be embedded in the display screen. When you finish editing the screen, The definition file generation unit 86 generates a definition file describing the screen layout and the connection between nodes.
  • FIG. 7 shows another example of the screen layout generated by the definition file generator 86.
  • a table 90 and a pie chart 93 are created on the screen for displaying the XML document described in the grade management vocabulary.
  • This pie chart 93 is described in SVG.
  • the document processing apparatus 20 of the base technology can process a compound document including a plurality of libraries in one XML document, and thus a table described in HTML as in this example. 90 and a pie chart 93 written in SVG can be displayed on one screen.
  • FIG. 8 shows an example of an XML document editing screen by the document processing apparatus 20.
  • one screen is divided into multiple parts, and the XML document to be processed is displayed in different display formats in each area.
  • the document 94 is displayed in the area 94
  • the tree structure of the document is displayed in the area 95
  • the table described in HTML shown in FIG. 5 is displayed in the area 96.
  • Documents can be edited on any of these screens.
  • the source tree is changed and the plug-in and source trees responsible for displaying each screen are displayed. Update the screen to reflect your changes.
  • the display section of the plug-in responsible for displaying each editing screen is registered, and either plug-in or VC unit 80 is registered.
  • the source tree is changed by, all the display units displaying the edit screen receive the issued mutation event and update the screen.
  • the VC unit 80 follows the source tree change.
  • the display section of the plug-in updates the screen with reference to the changed destination tree.
  • the source display plug-in and the tree display plug-in directly refer to the source tree without using the destination tree. And display.
  • the source display plug-in and the tree display plug-in update the screen with reference to the changed source tree, and take charge of the screen in area 96! /
  • the HTML unit 50 updates the screen by referring to the changed destination tree following the change of the source tree.
  • the source display and the tree display can also be realized by using the VC function. That is, the source and tree structure may be laid out in HTML, an XML document may be mapped to the HTML, and displayed by the HTML unit 50. In this case, three destination trees are generated: source format, tree format, and tabular format.
  • VC Unit 80 changes the source tree, then changes each of the three destination trees: source format, tree format, and tabular format. Refer to those destination trees and update the three screens.
  • the user can display and edit a document in a format that can be easily visually divided using the table 90 or the like while grasping the hierarchical structure of the document by the source display or the tree display.
  • the ability to divide a screen and display a screen in multiple display formats at the same time may display a screen in a single display format on a single screen, and the display format can be switched by a user instruction.
  • the main control unit 22 receives a display format switching request from the user, and instructs each plug-in to switch the display.
  • FIG. 9 shows another example of an XML document edited by the document processing device 20.
  • the XHTML document is embedded in the “foreignObject” tag of the SVG document, and moreover, the mathematical expression described in MathML is included in the XHTML document.
  • the editing unit 24 refers to the namespace and draws on the appropriate display system. Sort the work.
  • the editing unit 24 first causes the SVG unit 60 to draw a rectangle, and then causes the HTML unit 50 to draw an XHTML document.
  • the MathML unit (not shown) is made to draw mathematical expressions. In this way, a compound document including a plurality of vocabularies is appropriately displayed.
  • Figure 10 shows the display results.
  • the displayed menu may be switched according to the position of the cursor (carriage). That is, when the cursor is in the area where the SVG document is displayed, the menu defined by the SVG unit 60 or the command defined in the definition file for mapping the SVG document is displayed.
  • the menu defined by the HTML unit 50 or the command defined in the definition file for mapping the XHTML document is displayed. Thereby, an appropriate user interface can be provided according to the editing position.
  • the portion described by the specified library may be displayed in the source display or the tree display.
  • the application power to display the embedded document S Installed powerful power that cannot display its contents
  • the contents can be grasped by displaying the XML document composed of text data in the source display or tree display. This is a unique feature of text-based documents such as XML.
  • Another advantage of the data being described in the text base is, for example, in the part described by a certain library in a compound document, refer to the data of the part described by another in the same document. May be.
  • a character string embedded in a figure such as SVG can also be searched.
  • a tag of another vocabulary may be used in a document described by a certain vocabulary. This XML document is not valid, but if it is well-formed (welH rmed), it can be processed as a valid XML document. In this case, the tag of another inserted library may be mapped by the definition file. For example, you can use tags such as “important” and “most important” in an XHTML document, and highlight the part surrounded by these tags, You can sort them in order of importance.
  • the plug-in or VC unit 80 in charge of the edited part changes the source tree. Mutation event listeners can be registered for each node in the source tree. Normally, the plug-in display or VC cut 80 corresponding to the vocabulary to which each node belongs is registered as a listener. Is done.
  • the DOM provider 32 traces from the changed node to a higher hierarchy, and if there is a registered listener, issues a mutation event to that listener. For example, in the document shown in Fig.
  • the overall layout may change as the display is updated by the HTML unit 50.
  • the layout of the display area for each plug-in is updated by a configuration that manages the layout of the screen, for example, a plug-in that is responsible for displaying the top node.
  • the HTML unit 50 first draws a part that it is in charge of and determines the size of the display area. Then, it notifies the configuration that manages the layout of the screen of the size of the display area after the change, and requests a layout update.
  • the configuration that manages the layout of the screen receives the notification and re-lays out the display area for each plug-in. In this way, the display of the edited part is updated appropriately, and the layout of the entire screen is updated.
  • FIG. 11 is a diagram showing a configuration of the document processing apparatus 100 according to the embodiment.
  • the document processing apparatus 100 includes an acquisition unit 29 and And an outline display unit 70.
  • the acquisition unit 29 acquires a document described in a markup language such as XML.
  • the outline display unit 70 displays an outline of the structure of the acquired document.
  • the outline display unit 70 includes a condition setting unit 71 for setting the display conditions of the document outline, a condition holding unit 72 for holding the set display conditions, and a document outline display screen based on the set display conditions.
  • an outline view generation unit 73 In terms of hardware components, these configurations are realized by the CPU, memory, and programs loaded in the memory of an arbitrary computer. Here, functional blocks realized by their cooperation are depicted. Therefore, those skilled in the art will understand that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof.
  • the condition setting unit 71 sets the outline display condition for each tag set or library.
  • a “tag set” is a set of tags for marking up a document and is often used synonymously with a vocabulary.
  • a “tag set” is a subset of a “vocabulary”. It may also include a plurality of vocabulary tags.
  • the condition setting unit 71 may automatically set the outline display conditions based on the schema of the vocabulary or the like, and the user power may accept the display conditions.
  • the condition setting unit 71 grasps the hierarchical structure of the tag based on the schema and, for example, exists multiple times in parallel from the root element to the lower layers.
  • the element to be searched may be searched, and the element may be set as an element to be extracted in the outline display.
  • the condition setting unit 71 When accepting the display condition, the condition setting unit 71 presents a dialog screen for setting and the like, and the user sets the namespace URI or tag set namespace URI for setting the display condition and the element of the root element. It accepts the name, type of element or attribute to be extracted, and display format such as font size and color.
  • FIG. 12 shows an example of a dialog screen presented by the condition setting unit 71.
  • the dialog screen 3001 is a screen for accepting general settings regarding outline display.
  • the dialog screen 3001 accepts the name space of the vocabulary for setting outline display conditions, the root element, and whether or not a section is specified.
  • a section is specified, an outline reflecting the hierarchical structure of the element specified as the section item in the hierarchical structure in the document is displayed, and if no section is specified, the display condition The outline is displayed according to the hierarchical structure set as.
  • FIGS. 13A and 13B show examples of dialog screens presented by the condition setting unit 71.
  • FIG. A dialog screen 3002 shown in FIG. 13 (a) and a dialog screen 3003 shown in FIG. 13 (b) are screens for accepting settings of items displayed in the outline display.
  • the dialog screen 3002 displays a list of set section / title pairs that have been set when “Yes” is specified in the section specification on the dialog screen 3001.
  • the dialog screen 3003 displays a list of the set titles and hierarchies that have been set when “none” is specified in the section specification on the dialog screen 3001.
  • an add Z edit dialog screen is presented.
  • FIG. 14 shows an example of a dialog screen presented when the “Additional Calo” or “Edit” button is clicked on the dialog screen 3002 of FIG. 13 (a).
  • a dialog screen 3004 is a screen for accepting addition or editing of a session and a title.
  • a section is an item that indicates the hierarchical structure of elements (tags) in a document.
  • the title is an item displayed in the outline display.
  • Dialog screen 3004 accepts section element names and title element names. You can also specify attributes, global attributes, and attribute values as sections or titles.
  • Possible element names, attribute names, and global attribute candidates are presented. This candidate may be presented with reference to the elements or attributes contained in the document that is currently being edited, and with reference to the schema or instance of the library that is the target of the display conditions. It will be presented.
  • FIG. 15 shows an example of the dialog screen presented when the “add” or “edit” button is clicked on the dialog screen 3003 of FIG. 13 (b).
  • the dialog screen 3005 is a screen for accepting titles and levels.
  • the title is an item displayed in the outline display.
  • a hierarchy (level) in the outline display of those titles can be designated.
  • a display condition that generates an outline display reflecting the hierarchical structure of the document may be set as the display condition, or a hierarchical structure different from the hierarchical structure of the document can be defined. It may be.
  • elements or attributes are set as title items as items to be displayed, and the items are extracted from the document and displayed hierarchically according to the hierarchical structure in the document.
  • the hierarchy is determined based on the section item.
  • all title items in the hierarchy between a section item and a section item existing below it are regarded as the same hierarchy, even if the hierarchy in the document is different.
  • a hierarchical outline display is realized by designating a hierarchy in the title item such as an element or an attribute.
  • FIG. 16 shows an example of a dialog screen presented by the condition setting unit 71.
  • the dialog screen 3006 is a screen for accepting a display style for each hierarchy in the outline display. As the display style for titles in each level, you can specify the character size, presence / absence of character modification such as bold italic, and character color.
  • FIG. 17 shows an example of display conditions set by the condition setting unit 71.
  • the display conditions are stored in the condition holding unit 72 in XML format.
  • the setting file 3101 in FIG. 17 stores display conditions for displaying the outline of a document described in the “XHTML” library.
  • the element “div” is specified as the section item, and the elements “hl”, “h2”, “h3”, and “h4” are specified as the title items. Therefore, the element “div” serves as a delimiter for the title item hierarchy in the outline display.
  • FIG. 18 shows an example of an XML document 3102 described in the “XHTML” vocabulary.
  • FIG. 19 shows an example of a display screen 3103 that displays the outline of the XML document 3102 shown in FIG. 18 based on the display conditions shown in FIG.
  • the display screen 3103 is divided into two display areas.
  • the outline of the document is displayed on the left side, and the text of the document is displayed on the right side.
  • the outline view generation unit 73 reads the display condition to be applied from the condition holding unit 72 based on the name space of the root element of the XML document to be displayed. In this case, since the display condition in which the section is specified is set, the outline view generation unit 73 extracts the specified title item from the document and extracts the section item from the hierarchy.
  • a hierarchical structure of the extracted title items is constructed.
  • the title items are displayed in a hierarchy according to the hierarchical structure of the element “div” in the document.
  • the value of the text node of the element or attribute may be displayed as the title item, or the element name or attribute name may be displayed. If an attribute value is set for a title item, the attribute value may be displayed.
  • the title item that includes other title items in the hierarchy lower than itself is provided with UI such as an icon for specifying display / hide of the lower hierarchy. By clicking on the icon, you can expand or collapse the lower hierarchy. You may be able to jump to the relevant part of the text by double-clicking the displayed title item in the outline view.
  • element values and attribute values displayed as title items in the outline view may be editable.
  • the hierarchical structure of the document may be editable in the outline view. For example, let's be able to change the hierarchical structure of the text by dragging and dropping title items.
  • FIG. 20 shows another example of display conditions set by the condition setting unit 71.
  • the setting file 3111 in FIG. 20 stores display conditions for displaying the outline of a document described in the “XHTML” library.
  • no section is specified, and the title item and the hierarchy are stored in association with each other. For example, level “1”, which is the highest hierarchy, is specified for element “hl”, level “2” is specified for element “h2”, level “3” is specified for element “h 3”, and element “S” Level “4” is designated for “h4”.
  • FIG. 21 shows an example of an XML document 3112 described in the “XHTML” vocabulary.
  • FIG. 22 shows an example of a display screen 3113 that displays the outline of the XML document 3112 shown in FIG. 21 based on the display conditions shown in FIG.
  • the outline view generation unit 73 extracts designated title items from the document, and displays them in a hierarchical manner based on the level designated for each title item.
  • the element “hl”, element “h2”, element “h3”, and element “h4” all belong to the same hierarchy as the hierarchical structure of the elements in the XML document 3112.
  • the hierarchies are displayed according to the specified hierarchy.
  • a document When a document includes a plurality of namespaces, the document is divided into a plurality of regions based on the namespace, and an outline view is generated as described above based on the namespace of each region. If there is an element that belongs to a namespace for which no display condition is set, an icon indicating that the namespace is unknown may be displayed, or the document source may be displayed.
  • a group of vocabularies to be displayed in outline may be set, and when a document is displayed in outline, only the area described in the vocabulary included in the group may be displayed in outline.
  • the structure of the document can be displayed in an easy-to-understand manner depending on the elements or attributes of the focused library.
  • the power described as an example of processing an XML document can also process a document described in another markup language such as SGML or HTML. It can be processed similarly.
  • the present invention can be used in a document processing apparatus that processes a document described in a markup language.

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)

Abstract

 文書の概要を分かりやすく提示する技術を提供する。  文書処理装置100において、取得部29は、マークアップ言語により記述された文書を取得する。条件設定部71は、マークアップ言語のタグセットごとに、文書のアウトラインの表示条件を設定する。条件保持部72は、設定された表示条件を保持する。アウトラインビュー生成部73は、取得部29が取得した文書のアウトラインの表示要求を受け付けたときに、条件保持部72から文書に含まれるタグセットに対応する表示条件を読み出し、その表示条件に基づいて文書のアウトライン表示を生成する。

Description

明 細 書
文書処理装置及び文書処理方法
技術分野
[0001] 本発明は、文書処理技術に関し、特に、マークアップ言語により記述された文書を 処理する文書処理装置及び文書処理方法に関する。
背景技術
[0002] XMLは、ネットワークなどを介して他者とデータを共有するのに適した形式として注 目されており、 XML文書を作成、表示、編集するためのアプリケーションが開発され ている(たとえば、特許文献 1参照)。 XML文書は、文書型定義などにより定義された ボキヤブラリ(タグセット)に基づいて作成されている。
特許文献 1:特開 2001— 290804号公報
発明の開示
発明が解決しょうとする課題
[0003] 文書のサイズが大きくなると、全体を把握することが困難になる。大きな文書であつ ても、構造を把握しながら編集することができるような環境をユーザに提供する技術 が望まれる。
[0004] 本発明はこうした状況に鑑みてなされたものであり、その目的は、文書の概要を分 カゝりやすく提示する技術を提供することにある。
課題を解決するための手段
[0005] 上記課題を解決するために、本発明のある態様は文書処理装置に関する。この文 書処理装置は、マークアップ言語により記述された文書を取得する文書取得部と、前 記マークアップ言語のタグセットごとに、文書のアウトラインの表示条件を設定する設 定部と、前記表示条件を保持する保持部と、前記文書取得部が取得した文書のァゥ トラインの表示要求を受け付けたときに、前記保持部から前記文書に含まれるタグセ ットに対応する前記表示条件を読み出し、前記表示条件に基づいて前記文書のァゥ トライン表示を生成する生成部と、を備えることを特徴とする。
[0006] 前記表示条件は、前記文書のアウトラインを表示するときに表示する項目を特定す るための条件を含んでもよぐ前記生成部は、前記文書の中から前記表示する項目 を抽出し、それらを文書における階層構造に即して階層化することにより、前記アウト ライン表示を生成してもよい。
[0007] 前記表示条件は、前記アウトライン表示における前記表示する項目の階層の区切 りとして用いられる項目を特定するための条件を更に含んでもよぐ前記生成部は、 前記文書の中から前記階層の区切りとして用いられる項目を更に抽出し、前記文書 の中から抽出した前記表示する項目を、前記階層の区切りとして用いられる項目の 前記文書における階層構造に即して階層化することにより、前記アウトライン表示を 生成してもよい。前記生成部は、前記階層の区切りとして用いられる項目と、その下 層に存在する前記階層の区切りとして用いられる項目との間の階層にある前記表示 する項目は、同一の階層とみなして前記アウトライン表示を生成してもよい。
[0008] 前記表示条件は、前記文書のアウトラインを表示するときに表示する項目を特定す るための条件と、前記項目の前記アウトライン表示における階層を特定するための条 件とを含んでもよぐ前記生成部は、前記文書の中から前記表示する項目を抽出し、 抽出した項目の前記アウトライン表示における階層を特定し、抽出した項目を特定し た階層に応じて階層化することにより、前記アウトライン表示を生成してもよい。
[0009] 本発明の別の態様は文書処理方法に関する。この文書処理方法は、マークアップ 言語により記述された文書を取得するステップと、前記マークアップ言語のタグセット ごとに、文書のアウトラインの表示条件を設定するステップと、前記表示条件を記憶 部に保持するステップと、取得した文書のアウトラインの表示要求を受け付けたときに 、前記記憶部から前記文書に含まれるタグセットに対応する前記表示条件を読み出 し、前記表示条件に基づいて前記文書のアウトライン表示を生成するステップと、を 備えることを特徴とする。
[0010] なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システムな どの間で変換したものもまた、本発明の態様として有効である。
発明の効果
[0011] 本発明によれば、文書の概要を分かりやすく提示する技術を提供することができる 図面の簡単な説明
[図 1]前提技術に係る文書処理装置の構成を示す図である。
[図 2]処理対象となる XML文書の例を示す図である。
[図 3]図 2に示した XML文書を HTMLで記述された表にマッピングする例を示す図 である。
[図 4(a)]図 2に示した XML文書を図 3に示した表にマッピングするための定義フアイ ルの例を示す図である。
[図 4(b)]図 2に示した XML文書を図 3に示した表にマッピングするための定義フアイ ルの例を示す図である。
[図 5]図 2に示した成績管理ボキヤブラリで記述された XML文書を、図 3に示した対 応により HTMLにマッピングして表示した画面の例を示す図である。
[図 6]ユーザが定義ファイルを生成するために、定義ファイル生成部がユーザに提示 するグラフィカルユーザインターフェースの例を示す図である。
[図 7]定義ファイル生成部により生成された画面レイアウトの他の例を示す図である。
[図 8]文書処理装置による XML文書の編集画面の一例を示す図である。
[図 9]文書処理装置により編集される XML文書の他の例を示す図である。
[図 10]図 9に示した文書を表示した画面の例を示す図である。
[図 11]実施の形態に係る文書処理装置の構成を示す図である。
[図 12]条件設定部が提示するダイアログ画面の例を示す図である。
[図 13]図 13 (a) (b)は、条件設定部が提示するダイアログ画面の例を示す図である。
[図 14]図 13 (a)のダイアログ画面にお 、て、「追加」又は「編集」ボタンがクリックされ たときに提示されるダイアログ画面の例を示す図である。
[図 15]図 13 (b)のダイアログ画面にぉ 、て、「追加」又は「編集」ボタンがクリックされ たときに提示されるダイアログ画面の例を示す図である。
[図 16]条件設定部が提示するダイアログ画面の例を示す図である。
[図 17]条件設定部により設定された表示条件の例を示す図である。
[図 18]「XHTML」ボキヤブラリで記述された XML文書の例を示す図である。
[図 19]図 17に示した表示条件に基づ 、て、図 18に示した XML文書のアウトラインを 表示した例を示す図である。
[図 20]条件設定部により設定された表示条件の別の例を示す図である。
[図 21]「XHTML」ボキヤブラリで記述された XML文書の例を示す図である。
[図 22]図 20に示した表示条件に基づいて、図 21に示した XML文書のアウトラインを 表示した例を示す図である。
符号の説明
[0013] 20 文書処理装置、 22 主制御ユニット、 24 編集ユニット、 29 取得部、 30 DO Mユニット、 32 DOM提供部、 34 DOM生成部、 36 出力部、 40 CSSユニット、 42 CSS解析部、 44 CSS提供部、 46 レンダリング部、 50 HTMLユニット、 52, 62 制御部、 54, 64 編集部、 56, 66 表示部、 60 SVGユニット、 70 アウトライ ン表示ユニット、 71 条件設定部、 72 条件保持部、 73 アウトラインビュー生成部、 80 VCユニット、 82 マッピング部、 84 定義ファイル取得部、 86 定義ファイル生 成部、 100 文書処理装置。
発明を実施するための最良の形態
[0014] (前提技術)
図 1は、前提技術に係る文書処理装置 20の構成を示す。文書処理装置 20は、文 書内のデータが階層構造を有する複数の構成要素に分類された構造化文書を処理 するが、本前提技術では構造化文書の一例として XML文書を処理する例にっ ヽて 説明する。文書処理装置 20は、主制御ユニット 22、編集ユニット 24、 DOMユニット 3 0、 CSSユニット 40、 HTMLユニット 50、 SVGユニット 60、及び変換部の一例である VCユニット 80を備える。これらの構成は、ハードウェアコンポーネントでいえば、任意 のコンピュータの CPU、メモリ、メモリにロードされたプログラムなどによって実現され る力 ここではそれらの連携によって実現される機能ブロックを描いている。したがつ て、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合 せによっていろいろな形で実現できることは、当業者には理解されるところである。
[0015] 主制御ユニット 22は、プラグインのロードや、コマンド実行のフレームワークを提供 する。編集ユニット 24は、 XML文書を編集するためのフレームワークを提供する。文 書処理装置 20における文書の表示及び編集機能は、プラグインにより実現されてお り、文書の種別に応じて必要なプラグインが主制御ユニット 22又は編集ユニット 24に よりロードされる。主制御ユニット 22又は編集ユニット 24は、処理対象となる XML文 書の名前空間を参照して、 XML文書が 、ずれのボキヤブラリにより記述されて 、る かを判別し、そのボキヤブラリに対応した表示又は編集用のプラグインをロードして表 示や編集を実行させる。例えば、文書処理装置 20には、 HTML文書の表示及び編 集を行う HTMLユニット 50、 SVG文書の表示及び編集を行う SVGユニット 60など、 ボキヤブラリ(タグセット)ごとに表示系及び編集系がプラグインとして実装されており、 HTML文書を編集するときは HTMLユニット 50が、 S VG文書を編集するときは S V Gユニット 60が、それぞれロードされる。後述するように、 HTMLと SVGの双方の構 成要素を含む複合文書が処理対象となって ヽる場合は、 HTMLユニット 50と SVG ユニット 60の双方がロードされる。
[0016] このような構成によれば、ユーザは、必要な機能のみを選択してインストールし、後 力 適宜機能を追加又は削除することができるので、プログラムを格納するハードデ イスクなどの記録媒体の記憶領域を有効に活用することができ、また、プログラム実行 時にも、メモリの浪費を防ぐことができる。また、機能拡張性に優れており、開発主体 としても、プラグインの形で新たなボキヤブラリに対応することが可能なので開発が容 易となり、ユーザとしても、プラグインの追カ卩により容易かつ低コストにて機能を追カロ することができる。
[0017] 編集ユニット 24は、ユーザインターフェースを介してユーザ力も編集指示のイベント を受け付け、そのイベントを適切なプラグインなどに通知するともに、イベントの再実 行 (リドウ)又は実行の取消(アンドゥ)などの処理を制御する。
[0018] DOMユニット 30は、 DOM提供部 32、 DOM生成部 34、及び出力部 36を含み、 X ML文書をデータとして扱うときのアクセス方法を提供するために定められた文書ォ ブジェクトモデル(Document Object Model: DOM)に準拠した機能を実現する。 DO M提供部 32は、編集ユニット 24に定義されているインタフェースを満たす DOMの実 装である。 DOM生成部 34は、 XML文書力も DOMツリーを生成する。後述するよう に、処理対象となる XML文書力 VCユニット 80により他のボキヤブラリにマッピング される場合は、マッピング元の XML文書に対応するソースツリーと、マッピング先の X ML文書に対応するデスティネーションツリーが生成される。出力部 36は、例えば編 集終了時に、 DOMツリーを XML文書として出力する。
[0019] CSSユニット 40は、 CSS解析部 42、 CSS提供部 44、及びレンダリング部 46を含 み、 CSSに準拠した表示機能を提供する。 CSS解析部 42は、 CSSの構文を解析す るバーサの機能を有する。 CSS提供部 44は、 CSSオブジェクトの実装であり、 DOM ツリーに対して CSSのカスケード処理を行う。レンダリング部 46は、 CSSのレンダリン グエンジンであり、 CSSを用いてレイアウトされる HTMLなどのボキヤブラリで記述さ れた文書の表示に用いられる。
[0020] HTMLユニット 50は、 HTMLにより記述された文書を表示又は編集する。 SVGュ ニット 60は、 SVGにより記述された文書を表示又は編集する。これらの表示 Z編集 系は、プラグインの形で実現されており、それぞれ、文書を表示する表示部(Canvas) 56、 66、編集指示を含むイベントを送受信する制御部(Editlet) 52、 62、編集コマン ドを受けて DOMに対して編集を行う編集部 (Zone) 54、 64を備える。制御部 52又は 62が外部力も DOMツリーの編集コマンドを受け付けると、編集部 54又は 64が DO Mツリーを変更し、表示部 56又は 66が表示を更新する。これらは、 MVC (Model-Vi ew-Controller)と呼ばれるフレームワークに類似する構成をとつており、概ね、表示部 56及び 66が「View」に、制御部 52及び 62が「Controller」に、編集部 54及び 64と D OMの実体が「Model」に、それぞれ対応する。本前提技術の文書処理装置 20では、 XML文書をツリー表示形式で編集するだけでなく、それぞれのボキヤブラリに応じた 編集を可能とする。例えば、 HTMLユニット 50は、 HTML文書をワードプロセッサに 類似した方式で編集するためのユーザインターフェースを提供し、 SVGユニット 60は 、 SVG文書を画像描画ツールに類似した方式で編集するためのユーザインターフエ ースを提供する。
[0021] VCユニット 80は、マッピング部 82、定義ファイル取得部 84、及び定義ファイル生 成部 86を含み、あるボキヤブラリにより記述された文書を、他のボキヤブラリにマツピ ングすることにより、マッピング先のボキヤブラリに対応した表示編集用プラグインで文 書を表示又は編集するためのフレームワークを提供する。本前提技術では、この機 能を、ボキヤブラリコネクション(Vocabulary Connection: VC)と呼ぶ。定義ファイル取 得部 84は、マッピングの定義を記述したスクリプトファイルを取得する。この定義ファ ィルは、ノードごとに、ノード間の対応 (コネクション)を記述する。このとき、各ノードの 要素値や属性値の編集の可否を指定してもよい。また、ノードの要素値や属性値を 用いた演算式を記述してもよい。これらの機能については、後で詳述する。マツピン グ部 82は、定義ファイル取得部 84が取得したスクリプトファイルを参照して、 DOM生 成部 34にデスティネーションツリーを生成させ、ソースツリーとデスティネーションッリ 一の対応関係を管理する。定義ファイル生成部 86は、ユーザが定義ファイルを生成 するためのグラフィカルユーザインターフェースを提供する。
[0022] VCユニット 80は、ソースツリーとデスティネーションツリーの間のコネクションを監視 し、表示を担当するプラグインにより提供されるユーザインタフェースを介してユーザ 力も編集指示を受け付けると、まずソースツリーの該当するノードを変更する。 DOM ユニット 30が、ソースツリーが変更された旨のミューテーシヨンイベントを発行すると、 VCユニット 80は、そのミューテーシヨンイベントを受けて、ソースツリーの変更にデス ティネーシヨンツリーを同期させるベぐ変更されたノードに対応するデスティネーショ ンツリーのノードを変更する。デスティネーションツリーを表示/編集するプラグイン、 例えば HTMLユニット 50は、デスティネーションツリーが変更された旨のミューテー シヨンイベントを受けて、変更されたデスティネーションツリーを参照して表示を更新 する。このような構成により、少数のユーザにより利用されるローカルなボキヤブラリに より記述された文書であっても、他のメジャーなボキヤブラリに変換することで、文書を 表示することができるとともに、編集環境が提供される。
[0023] 文書処理装置 20により文書を表示又は編集する動作について説明する。文書処 理装置 20が処理対象となる文書を読み込むと、 DOM生成部 34が、その XML文書 力も DOMツリーを生成する。また、主制御ユニット 22又は編集ユニット 24は、名前空 間を参照して文書を記述しているボキヤブラリを判別する。そのボキヤブラリに対応し たプラグインが文書処理装置 20にインストールされて 、る場合は、そのプラグインを ロードして、文書を表示/編集させる。プラグインカ Sインストールされていない場合は 、マッピングの定義ファイルが存在するか否かを確認する。定義ファイルが存在する 場合、定義ファイル取得部 84が定義ファイルを取得し、その定義に従って、デスティ ネーシヨンツリーが生成され、マッピング先のボキヤブラリに対応するプラグインにより 文書が表示 Z編集される。複数のボキヤブラリを含む複合文書である場合は、後述 するように、それぞれのボキヤブラリに対応したプラグインにより、文書の該当箇所が それぞれ表示 Z編集される。定義ファイルが存在しない場合は、文書のソース又はッ リー構造を表示し、その表示画面にぉ 、て編集が行われる。
[0024] 図 2は、処理対象となる XML文書の例を示す。この XML文書は、生徒の成績デー タを管理するために用いられる。 XML文書のトップノードである構成要素「成績」は、 配下に、生徒ごとに設けられた構成要素「生徒」を複数有する。構成要素「生徒」は、 属性値「名前」と、子要素「国語」、「数学」、「理科」、「社会」を有する。属性値「名前」 は、生徒の名前を格納する。構成要素「国語」、「数学」、「理科」、「社会」は、それぞ れ、国語、数学、理科、社会の成績を格納する。例えば、名前カ^ A」である生徒の国 語の成績は「90」、数学の成績は「50」、理科の成績は「75」、社会の成績は「60」で ある。以下、この文書で使用されているボキヤブラリ(タグセット)を、「成績管理ボキヤ ブラリ」と呼ぶ。
[0025] 本前提技術の文書処理装置 20は、成績管理ボキヤブラリの表示 Z編集に対応し たプラグインを有しないので、この文書をソース表示、ツリー表示以外の方法で表示 するためには、前述した VC機能が用いられる。すなわち、成績管理ボキヤブラリを、 プラグインが用意された別のボキヤブラリ、例えば、 HTMLや SVGなどにマッピング するための定義ファイルを用意する必要がある。ユーザ自身が定義ファイルを作成す るためのユーザインターフェースについては後述することにして、ここでは、既に定義 ファイルが用意されているとして説明を進める。
[0026] 図 3は、図 2に示した XML文書を HTMLで記述された表にマッピングする例を示 す。図 3の例では、成績管理ボキヤブラリの「生徒」ノードを、 HTMLにおける表(「TA BLE」ノード)の行(「TR」ノード)に対応づけ、各行の第 1列には属性値「名前」を、第 2 列には「国語」ノードの要素値を、第 3列には「数学」ノードの要素値を、第 4列には「 理科」ノードの要素値を、第 5列には「社会」ノードの要素値を、それぞれ対応付ける 。これにより、図 2に示した XML文書を、 HTMLの表形式で表示することができる。 また、これらの属性値及び要素値は、編集可能であることが指定されており、ユーザ が HTMLによる表示画面上で、 HTMLユニット 50の編集機能により、これらの値を 編集することができる。第 6列には、国語、数学、理科、社会の成績の加重平均を算 出する演算式が指定されており、生徒の成績の平均点が表示される。このように、定 義ファイルに演算式を指定可能とすることにより、より柔軟な表示が可能となり、編集 時のユーザの利便性を向上させることができる。なお、第 6列は、編集不可であること が指定されており、平均点のみを個別に編集することができないようにしている。この ように、マッピング定義において、編集の可否を指定可能とすることにより、ユーザの 誤操作を防ぐことができる。
[0027] 図 4 (a)及び図 4 (b)は、図 2に示した XML文書を図 3に示した表にマッピングする ための定義ファイルの例を示す。この定義ファイルは、定義ファイル用に定義された スクリプト言語により記述される。定義ファイルには、コマンドの定義と、表示のテンプ レートが記述されている。図 4 (a) (b)の例では、コマンドとして、「生徒の追加」と「生 徒の削除」が定義されており、それぞれ、ソースツリーにノード「生徒」を挿入する操作 と、ソースツリーからノード「生徒」を削除する操作が対応付けられている。また、テン プレートとして、表の第 1行に「名前」、「国語」などの見出しが表示され、第 2行以降 に、ノード「生徒」の内容が表示されることが記述されている。ノード「生徒」の内容を 表示するテンプレート中、「text-of」と記述された項は「編集可能」であることを意味し 、「value-of」と記述された項は「編集不可能」であることを意味する。また、ノード「生 徒」の内容を表示する行のうち、第 6列には、「(src:国語 + src:数学 + src:理科 + src: 社会) div 4」という計算式が記述されており、生徒の成績の平均が表示されることを 意味する。
[0028] 図 5は、図 2に示した成績管理ボキヤブラリで記述された XML文書を、図 3に示した 対応により HTMLにマッピングして表示した画面の例を示す。表 90の各行には、左 から、各生徒の名前、国語の成績、数学の成績、理科の成績、社会の成績、及び平 均点が表示されている。ユーザは、この画面上で、 XML文書を編集することができる 。たとえば、第 2行第 3列の値を「70」に変更すると、このノードに対応するソースッリ 一の要素値、すなわち、生徒「B」の数学の成績が「70」に変更される。このとき、 VC ユニット 80は、デスティネーションツリーをソースツリーに追従させるベぐデスティネ ーシヨンツリーの該当箇所を変更し、 HTMLユニット 50力 変更されたデスティネー シヨンツリーに基づいて表示を更新する。したがって、画面上の表においても、生徒「 B」の数学の成績が「70」に変更され、更に、平均点が「55」に変更される。
[0029] 図 5に示した画面には、図 4 (a) (b)に示した定義ファイルに定義されたように、「生 徒の追加」及び「生徒の削除」のコマンドカ -ユーに表示される。ユーザがこれらの コマンドを選択すると、ソースツリーにおいて、ノード「生徒」が追加又は削除される。 このように、本前提技術の文書処理装置 20では、階層構造の末端の構成要素の要 素値を編集するのみではなぐ階層構造を編集することも可能である。このようなッリ 一構造の編集機能は、コマンドの形でユーザに提供されてもよい。また、例えば、表 の行を追加又は削除するコマンドが、ノード「生徒」を追加又は削除する操作に対応 づけられてもよい。また、他のボキヤブラリを埋め込むコマンドがユーザに提供されて もよい。この表を入力用テンプレートとして、穴埋め形式で新たな生徒の成績データ を追加することもできる。以上のように、 VC機能により、 HTMLユニット 50の表示 Z 編集機能を利用しつつ、成績管理ボキヤブラリで記述された文書を編集することが可 能となる。
[0030] 図 6は、ユーザが定義ファイルを生成するために、定義ファイル生成部 86がユーザ に提示するグラフィカルユーザインタフェースの例を示す。画面左側の領域 91には、 マッピング元の XML文書がツリー表示されている。画面右側の領域 92には、マツピ ング先の XML文書の画面レイアウトが示されている。この画面レイアウトは、 HTML ユニット 50により編集可能となっており、ユーザは、画面右側の領域 92において、文 書を表示するための画面レイアウトを作成する。そして、例えば、マウスなどのポイン ティングデバイスにより、画面左側の領域 91に表示されたマッピング元の XML文書 のノードを、画面右側の領域 92に表示された HTMLによる画面レイアウト中へドラッ グ&ドロップ操作を行うことにより、マッピング元のノードと、マッピング先のノードとの コネクションが指定される。例えば、要素「生徒」の子要素である「数学」を、 HTML画 面の表 90の第 1行第 3列にドロップすると、「数学」ノードと、 3列目の「TD」ノードの間 にコネクションが張られる。各ノードには、編集の可否が指定できるようになつている。 また、表示画面中には、演算式を埋め込むこともできる。画面の編集が終わると、定 義ファイル生成部 86は、画面レイアウトとノード間のコネクションを記述した定義フアイ ルを生成する。
[0031] XHTML, MathML、 SVGなどの主要なボキヤブラリに対応したビューヮゃエディ タは既に開発されて 、るが、図 2に示した文書のようなオリジナルなボキヤブラリで記 述された文書に対応したビューヮゃエディタを開発するのは現実的でな 、。しかし、 上記のように、他のボキヤブラリにマッピングするための定義ファイルを作成すれば、 ビューヮゃエディタを開発しなくても、 VC機能を利用して、オリジナルなボキヤブラリ で記述された文書を表示 ·編集することができる。
[0032] 図 7は、定義ファイル生成部 86により生成された画面レイアウトの他の例を示す。図 7の例では、成績管理ボキヤブラリで記述された XML文書を表示するための画面に 、表 90と、円グラフ 93が作成されている。この円グラフ 93は、 SVGにより記述される。 後述するように、本前提技術の文書処理装置 20は、一つの XML文書内に複数のボ キヤブラリを含む複合文書を処理することができるので、この例のように、 HTMLで記 述された表 90と、 SVGで記述された円グラフ 93とを、一つの画面上に表示すること ができる。
[0033] 図 8は、文書処理装置 20による XML文書の編集画面の一例を示す。図 8の例で は、一つの画面が複数に分割されており、それぞれの領域において、処理対象とな る XML文書を異なる複数の表示形式により表示している。領域 94には、文書のソー スが表示されており、領域 95には、文書のツリー構造が表示されており、領域 96に は、図 5に示した HTMLにより記述された表が表示されている。これらのいずれの画 面上においても、文書の編集が可能であり、いずれかの画面上でユーザが編集を行 うと、ソースツリーが変更され、それぞれの画面の表示を担当するプラグインカ、ソー スツリーの変更を反映すべく画面を更新する。具体的には、ソースツリーの変更を通 知するミューテーシヨンイベントのリスナーとして、それぞれの編集画面の表示を担当 するプラグインの表示部を登録しておき、いずれかのプラグイン又は VCユニット 80に よりソースツリーが変更されたときに、編集画面を表示中の全ての表示部が、発行さ れたミューテーシヨンイベントを受け取って画面を更新する。このとき、プラグインが V C機能により表示を行っている場合は、 VCユニット 80がソースツリーの変更に追従し てデスティネーションツリーを変更した後、変更されたデスティネーションツリーを参照 してプラグインの表示部が画面を更新する。
[0034] 例えば、ソース表示及びツリー表示を、専用のプラグインにより実現している場合は 、ソース表示用プラグインとツリー表示用プラグインは、デスティネーションツリーを用 いず、直接ソースツリーを参照して表示を行う。この場合、いずれかの画面において 編集が行われると、ソース表示用プラグインとツリー表示用プラグインは、変更された ソースツリーを参照して画面を更新し、領域 96の画面を担当して!/、る HTMLユニット 50は、ソースツリーの変更に追従して変更されたデスティネーションツリーを参照して 画面を更新する。
[0035] ソース表示及びツリー表示は、 VC機能を利用して実現することもできる。すなわち 、ソース、ツリー構造を HTMLによりレイアウトし、その HTMLに XML文書をマツピン グして、 HTMLユニット 50により表示してもよい。この場合、ソース形式、ツリー形式、 表形式の 3つのデスティネーションツリーが生成されることになる。いずれかの画面に おいて編集が行われると、 VCユニット 80は、ソースツリーを変更した後、ソース形式、 ツリー形式、表形式の 3つのデスティネーションツリーをそれぞれ変更し、 HTMLュ ニット 50は、それらのデスティネーションツリーを参照して、 3つの画面を更新する。
[0036] このように、一つの画面上に複数の表示形式で文書を表示することにより、ユーザ の利便性を向上させることができる。例えば、ユーザは、ソース表示又はツリー表示 により文書の階層構造を把握しつつ、表 90などを用いて視覚的に分力りやすい形式 で文書を表示し、編集することができる。上記の例では、一つの画面を分割して複数 の表示形式による画面を同時に表示した力 一つの画面に一つの表示形式による画 面を表示し、表示形式をユーザの指示により切り替え可能としてもよい。この場合、主 制御ユニット 22が、ユーザから表示形式の切り替え要求を受け付け、各プラグインに 指示して表示を切り替える。
[0037] 図 9は、文書処理装置 20により編集される XML文書の他の例を示す。図 9に示し た XML文書では、 SVG文書の「foreignObject」タグの中に XHTML文書が埋め込 まれており、さら〖こ、 XHTML文書の中に MathMLで記述された数式が入っている 。このような場合、編集ユニット 24が、名前空間を参照して、適切な表示系に描画作 業を振り分ける。図 9の例では、編集ユニット 24は、まず、 SVGユニット 60に四角形 を描画させ、つづいて、 HTMLユニット 50に XHTML文書を描画させる。さらに、図 示しない MathMLユニットに、数式を描画させる。こうして、複数のボキヤブラリを包 含する複合文書が適切に表示される。表示結果を図 10に示す。
[0038] 文書編集中、カーソル (キャリッジ)の位置に応じて、表示されるメニューを切り替え てもよい。すなわち、カーソルが、 SVG文書が表示された領域内に存在するときは、 SVGユニット 60が提供するメニュー、又は SVG文書をマッピングするための定義フ アイルに定義されたコマンドを表示し、カーソルが、 XHTML文書が表示された領域 内に存在するときは、 HTMLユニット 50が提供するメニュー、又は XHTML文書を マッピングするための定義ファイルに定義されたコマンドを表示する。これにより、編 集位置に応じて適切なユーザインターフェースを提供することができる。
[0039] 複合文書にお!、て、あるボキヤブラリに対応する適切なプラグイン又はマッピング定 義ファイルがな力つた場合は、そのボキヤブラリにより記述された部分は、ソース表示 又はツリー表示されてもよい。従来、ある文書に他の文書を埋め込んだ複合文書を 開くとき、埋め込まれた文書を表示するアプリケーション力 Sインストールされて 、な 、と 、その内容を表示することができな力つた力 本前提技術では、表示用のアプリケー シヨンが存在しなくても、テキストデータにより構成された XML文書をソース表示又は ツリー表示することにより内容を把握することができる。これは、テキストベースである XMLなどの文書ならではの特徴と 、える。
[0040] データがテキストベースで記述されることの他の利点として、例えば、複合文書中の 、あるボキヤブラリにより記述される部分において、同一文書内の他のボキヤブラリで 記述された部分のデータを参照してもよい。また、文書内で検索を実行する時に、 S VGなどの図に埋め込まれた文字列も検索対象とすることができる。
[0041] あるボキヤブラリにより記述された文書内に、他のボキヤブラリのタグを用いてもよい 。この XML文書は、妥当(valid)ではないが、整形式 (welH rmed)であれば、有効な XML文書として処理可能である。この場合、挿入された他のボキヤブラリのタグは、 定義ファイルによりマッピングされてもよい。例えば、 XHTML文書中に、「重要」、「 最重要」などのタグを使用し、これらのタグで囲まれた部分を強調表示してもよ 、し、 重要度の順にソートして表示してもよ 、。
[0042] 図 10に示した編集画面において、ユーザにより文書が編集されると、編集された部 分を担当するプラグイン又は VCユニット 80がソースツリーを変更する。ソースツリー には、ノードごとにミューテーシヨンイベントのリスナーを登録できるようになっており、 通常は、各ノードが属するボキヤブラリに対応したプラグインの表示部又は VCュ-ッ ト 80がリスナーとして登録される。 DOM提供部 32は、ソースツリーが変更されると、 変更されたノードから上位の階層へたどって、登録されたリスナーがあれば、そのリス ナ一へミューテーシヨンイベントを発行する。例えば、図 9に示した文書において、く html >ノードの下位のノードが変更された場合、く html >ノードにリスナーとして登 録された HTMLユニット 50にミューテーシヨンイベントが通知されるとともに、その上 位のく svg>ノードにリスナーとして登録された SVGユニット 60にもミューテーシヨン イベントが通知される。このとき、 HTMLユニット 50は、変更されたソースツリーを参 照して表示を更新する。 SVGユニット 60は、自身のボキヤブラリに属するノードが変 更されて!/、な!/、ので、ミューテーシヨンイベントを無視してもよ!/、。
[0043] 編集の内容によっては、 HTMLユニット 50による表示の更新に伴って、全体のレイ アウトが変わる可能性がある。この場合は、画面のレイアウトを管理する構成、例えば 最上位のノードの表示を担当するプラグインにより、プラグインごとの表示領域のレイ アウトが更新される。例えば、 HTMLユニット 50による表示領域が以前より大きくなつ た場合、 HTMLユニット 50は、まず自身の担当する部分を描画して、表示領域の大 きさを決定する。そして、画面のレイアウトを管理する構成に、変更後の表示領域の 大きさを通知し、レイアウトの更新を依頼する。画面のレイアウトを管理する構成は、 通知を受けて、プラグインごとの表示領域を再レイアウトする。こうして、編集された部 分の表示が適切に更新されるとともに、画面全体のレイアウトが更新される。
[0044] (実施の形態)
実施の形態では、 XML文書力 特定の要素又は属性を抽出して文書のアウトライ ンを表示する技術を提案する。
[0045] 図 11は、実施の形態に係る文書処理装置 100の構成を示す図である。文書処理 装置 100は、前提技術で説明した文書処理装置 20の構成に加えて、取得部 29及 びアウトライン表示ユニット 70を備える。取得部 29は、 XMLなどのマークアップ言語 により記述された文書を取得する。アウトライン表示ユニット 70は、取得した文書の構 造の概要を表示する。アウトライン表示ユニット 70は、文書のアウトラインの表示条件 を設定する条件設定部 71と、設定された表示条件を保持する条件保持部 72と、設 定された表示条件に基づいて文書のアウトラインの表示画面を生成するアウトライン ビュー生成部 73とを含む。これらの構成は、ハードウェアコンポーネントでいえば、任 意のコンピュータの CPU、メモリ、メモリにロードされたプログラムなどによって実現さ れるが、ここではそれらの連携によって実現される機能ブロックを描いている。したが つて、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組 合せによっていろいろな形で実現できることは、当業者には理解されるところである。
[0046] 条件設定部 71は、タグセット又はボキヤブラリごとにアウトラインの表示条件を設定 する。ここで、「タグセット」は、文書をマークアップするためのタグの集合であり、ボキ ャブラリと同義に用いられることが多いが、「タグセット」は、「ボキヤブラリ」の部分集合 であってもよぐまた、複数のボキヤブラリのタグを含んでもよい。
[0047] 条件設定部 71は、ボキヤブラリのスキーマなどに基づいてアウトラインの表示条件 を自動的に設定してもよいし、ユーザ力も表示条件を受け付けてもよい。スキーマか らアウトラインの表示条件を自動生成する場合は、条件設定部 71は、スキーマに基 づいてタグの階層構造を把握し、例えば、ルート要素から下位の層へ向かって、複数 回並列に存在する要素を探索し、その要素を、アウトライン表示のときに抽出する要 素に設定してもよい。
[0048] ユーザ力 表示条件を受け付ける場合は、条件設定部 71は、設定用のダイアログ 画面などを提示して、ユーザから、表示条件を設定するボキヤブラリ又はタグセットの 名前空間 URI、ルート要素の要素名、抽出すべき要素又は属性の種類、フォントサ ィズゃ色などの表示形式、などを受け付ける。
[0049] 図 12は、条件設定部 71が提示するダイアログ画面の例を示す。ダイアログ画面 30 01は、アウトライン表示に関する全般的な設定を受け付けるための画面である。ダイ ァログ画面 3001は、アウトラインの表示条件を設定するボキヤブラリの名前空間と、 ルート要素と、セクション指定の有無とを受け付ける。セクション指定については後で 詳述するが、セクションが指定された場合は、文書内の階層構造における、セクショ ン項目として指定された要素の階層構造が反映されたアウトラインが表示され、セク シヨンが指定されない場合は、表示条件として設定された階層構造によりアウトライン が表示される。
[0050] 図 13 (a) (b)は、条件設定部 71が提示するダイアログ画面の例を示す。図 13 (a) に示すダイアログ画面 3002及び図 13 (b)に示すダイアログ画面 3003は、アウトライ ン表示において表示される項目の設定を受け付けるための画面である。ダイアログ画 面 3002は、ダイアログ画面 3001において、セクション指定で「あり」が指定された場 合に、設定済みのセクションとタイトルの対を一覧表示する。ダイアログ画面 3003は 、ダイアログ画面 3001において、セクション指定で「なし」が指定された場合に、設定 済みのタイトルと階層の対を一覧表示する。それぞれの画面において、「追加」又は「 編集」ボタンがクリックされると、追加 Z編集ダイアログ画面が提示される。
[0051] 図 14は、図 13 (a)のダイアログ画面 3002において、「追カロ」又は「編集」ボタンがク リックされたときに提示されるダイアログ画面の例を示す。ダイアログ画面 3004は、セ クシヨン及びタイトルの追加又は編集を受け付けるための画面である。セクションは、 文書における要素 (タグ)の階層構造の区切りを示す項目である。タイトルは、アウトラ イン表示において表示される項目である。ダイアログ画面 3004は、セクションの要素 名と、タイトルの要素名を受け付ける。セクション又はタイトルとして、属性、グローバ ル属性、属性値を指定することもできる。このダイアログ画面 3004において、「参照」 ボタンがクリックされると、設定可能な要素名、属性名、グローバル属性の候補が提 示される。この候補は、現在編集対象となっている文書に含まれる要素又は属性を 参照して提示されてもょ 、し、表示条件の設定対象となって 、るボキヤブラリのスキー マ又はインスタンスを参照して提示されてもょ ヽ。
[0052] 図 15は、図 13 (b)のダイアログ画面 3003において、「追加」又は「編集」ボタンがク リックされたときに提示されるダイアログ画面の例を示す。ダイアログ画面 3005は、タ ィトル及び階層を受け付けるための画面である。タイトルは、アウトライン表示におい て表示される項目である。複数のタイトルを用いてアウトライン表示する場合には、そ れらのタイトルのアウトライン表示における階層(レベル)を指定することができる。 [0053] このように、表示条件として、文書の階層構造を反映したアウトライン表示が生成さ れるような表示条件が設定されてもよいし、文書の階層構造とは異なる階層構造を定 義できるようにしてもよい。前者の場合、例えば、表示する項目として、要素又は属性 などをタイトル項目として設定しておき、その項目を文書内から抽出し、それらを文書 における階層構造に即して階層的に表示する。このとき、セクション項目に基づいて 階層が決定される。すなわち、あるセクション項目と、それよりも下位に存在するセク シヨン項目との間の階層にあるタイトル項目は、文書内における階層が異なっていた としても、全て同一階層とみなされる。後者の場合、例えば文書が階層構造を有しな い場合であっても、要素又は属性などのタイトル項目に階層を指定しておくことにより 、階層的なアウトライン表示が実現される。
[0054] 図 16は、条件設定部 71が提示するダイアログ画面の例を示す。ダイアログ画面 30 06は、アウトライン表示における階層ごとの表示スタイルを受け付けるための画面で ある。各階層のタイトルの表示スタイルとして、文字サイズ、太字ゃ斜体字などの文字 修飾の有無、文字色を指定することができる。
[0055] 図 17は、条件設定部 71により設定された表示条件の例を示す。本実施の形態で は、表示条件は XML形式で条件保持部 72に格納される。図 17の設定ファイル 310 1は、「XHTML」ボキヤブラリで記述された文書のアウトラインを表示するための表示 条件を格納する。設定ファイル 3101では、セクション項目として要素「div」が指定さ れており、タイトル項目として要素「hl」、「h2」、「h3」、「h4」が指定されている。したが つて、要素「div」がアウトライン表示におけるタイトル項目の階層の区切りとなる。
[0056] 図 18は、「XHTML」ボキャブラリで記述されたXML文書3102の例を示す。図 19 は、図 17に示した表示条件に基づいて、図 18に示した XML文書 3102のアウトライ ンを表示した表示画面 3103の例を示す。表示画面 3103は、 2つの表示領域に分 割されており、左側には文書のアウトラインが表示され、右側には文書の本文が表示 されている。アウトラインビュー生成部 73は、表示すべき XML文書のルート要素の名 前空間に基づいて、適用すべき表示条件を条件保持部 72から読み出す。この場合 、セクションが指定された表示条件が設定されているので、アウトラインビュー生成部 73は、指定されたタイトル項目を文書中から抽出しつつ、セクション項目を階層の区 切りとして、抽出されたタイトル項目の階層構造を構築する。この例では、要素「div」 がセクション項目として指定されているので、文書中の要素「div」の階層構造に即し て、タイトル項目を階層化して表示している。要素又は属性がタイトル項目に設定さ れている場合には、その要素又は属性のテキストノードの値がタイトル項目として表 示されてもよいし、要素名又は属性名が表示されてもよい。属性値がタイトル項目に 設定されて ヽる場合には、その属性値が表示されてもょ ヽ。
[0057] アウトラインビューにおいて、自身よりも下位の階層に他のタイトル項目を包含する タイトル項目には、下位の階層の表示 Z非表示を指定するためのアイコンなどの UI が設けられており、このアイコンをクリックすることにより、下位の階層を展開したり折り 畳んだりすることができる。アウトラインビューにおいて、表示されているタイトル項目 をダブルクリックすることにより、本文中の該当部分へジャンプできるようにしてもよい 。また、アウトラインビューにおいてタイトル項目として表示されている要素値、属性値 などを編集可能としてもよい。さらに、アウトラインビューにおいて文書の階層構造を 編集可能としてもよい。例えば、タイトル項目をドラッグアンドドロップすることにより、 本文の階層構造を変化させることができるようにしてもょ 、。
[0058] 図 20は、条件設定部 71により設定された表示条件の別の例を示す。図 20の設定 ファイル 3111は、「XHTML」ボキヤブラリで記述された文書のアウトラインを表示す るための表示条件を格納する。設定ファイル 3111では、セクションが指定されておら ず、タイトル項目と階層が対応づけられて格納されている。例えば、要素「hl」には最 上位の階層であるレベル「1」が指定されており、要素「h2」にはレベル「2」が、要素「h 3」にはレベル「3」 1S 要素「h4」にはレベル「4」が指定されている。
[0059] 図 21は、「XHTML」ボキャブラリで記述されたXML文書3112の例を示す。図 22 は、図 20に示した表示条件に基づいて、図 21に示した XML文書 3112のアウトライ ンを表示した表示画面 3113の例を示す。アウトラインビュー生成部 73は、指定され たタイトル項目を文書中から抽出して、それぞれのタイトル項目に指定されたレベル に基づいて階層化して表示する。要素「hl」、要素「h2」、要素「h3」、要素「h4」は、 X ML文書 3112内の要素の階層構造としては全て同一の階層に属して ヽるが、設定 ファイル 3111にお 、て指定された階層に応じて階層化されて表示されて 、る。 [0060] 文書内に複数の名前空間が含まれる場合は、名前空間に基づいて文書を複数の 領域に分割し、それぞれの領域の名前空間に基づいて、上述したようにアウトライン ビューを生成する。表示条件が設定されていない名前空間に属する要素が存在する 場合には、不明な名前空間であることを示すアイコンなどを表示してもよいし、文書の ソースを表示してもよい。
[0061] 特定のボキヤブラリで記述された領域のみをアウトライン表示するようにしてもよ!、。
例えば、アウトライン表示すべきボキヤブラリのグループを設定しておき、文書をアウト ライン表示するときには、そのグループに含まれるボキヤブラリで記述された領域のみ をアウトライン表示するようにしてもよい。これにより、巨大な文書であったとしても、注 目するボキヤブラリの要素又は属性により、文書の構造を分かりやすく表示することが できる。
[0062] 以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それ らの各構成要素や各処理プロセスの組合せに 、ろ 、ろな変形例が可能なこと、また そうした変形例も本発明の範囲にあることは当業者に理解されるところである。
[0063] 実施の形態では、 XML文書を処理する例にっ 、て説明した力 本実施の形態の 文書処理装置 100は、他のマークアップ言語、例えば、 SGML, HTMLなどで記述 された文書も同様に処理可能である。
産業上の利用可能性
[0064] 本発明は、マークアップ言語により記述された文書を処理する文書処理装置に利 用可能である。

Claims

請求の範囲
[1] マークアップ言語により記述された文書を取得する文書取得部と、
前記マークアップ言語のタグセットごとに、文書のアウトラインの表示条件を設定す る設定部と、
前記表示条件を保持する保持部と、
前記文書取得部が取得した文書のアウトラインの表示要求を受け付けたときに、前 記保持部から前記文書に含まれるタグセットに対応する前記表示条件を読み出し、 前記表示条件に基づいて前記文書のアウトライン表示を生成する生成部と、 を備えることを特徴とする文書処理装置。
[2] 前記表示条件は、前記文書のアウトラインを表示するときに表示する項目を特定す るための条件を含み、
前記生成部は、前記文書の中から前記表示する項目を抽出し、それらを文書にお ける階層構造に即して階層化することにより、前記アウトライン表示を生成することを 特徴とする請求項 1に記載の文書処理装置。
[3] 前記表示条件は、前記アウトライン表示における前記表示する項目の階層の区切 りとして用いられる項目を特定するための条件を更に含み、
前記生成部は、前記文書の中から前記階層の区切りとして用いられる項目を更に 抽出し、前記文書の中から抽出した前記表示する項目を、前記階層の区切りとして 用いられる項目の前記文書における階層構造に即して階層化することにより、前記ァ ゥトライン表示を生成することを特徴とする請求項 2に記載の文書処理装置。
[4] 前記生成部は、前記階層の区切りとして用いられる項目と、その下層に存在する前 記階層の区切りとして用いられる項目との間の階層にある前記表示する項目は、同 一の階層とみなして前記アウトライン表示を生成することを特徴とする請求項 3に記載 の文書処理装置。
[5] 前記表示条件は、前記文書のアウトラインを表示するときに表示する項目を特定す るための条件と、前記項目の前記アウトライン表示における階層を特定するための条 件とを含み、
前記生成部は、前記文書の中から前記表示する項目を抽出し、抽出した項目の前 記アウトライン表示における階層を特定し、抽出した項目を特定した階層に応じて階 層化することにより、前記アウトライン表示を生成することを特徴とする請求項 1に記 載の文書処理装置。
[6] マークアップ言語により記述された文書を取得するステップと、
前記マークアップ言語のタグセットごとに、文書のアウトラインの表示条件を設定す るステップと、
前記表示条件を記憶部に保持するステップと、
取得した文書のアウトラインの表示要求を受け付けたときに、前記記憶部力 前記 文書に含まれるタグセットに対応する前記表示条件を読み出し、前記表示条件に基 づいて前記文書のアウトライン表示を生成するステップと、
を備えることを特徴とする文書処理方法。
[7] マークアップ言語により記述された文書を取得する機能と、
前記マークアップ言語のタグセットごとに、文書のアウトラインの表示条件を設定す る機能と、
前記表示条件を記憶部に保持する機能と、
取得した文書のアウトラインの表示要求を受け付けたときに、前記記憶部力 前記 文書に含まれるタグセットに対応する前記表示条件を読み出し、前記表示条件に基 づ 、て前記文書のアウトライン表示を生成する機能と、
をコンピュータに実現させることを特徴とするプログラム。
PCT/JP2006/321798 2005-10-31 2006-10-31 文書処理装置及び文書処理方法 WO2007052680A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US12/092,168 US20090287994A1 (en) 2005-10-31 2006-10-31 Document processing device and document processing method
JP2007542771A JPWO2007052680A1 (ja) 2005-10-31 2006-10-31 文書処理装置及び文書処理方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2005-316270 2005-10-31
JP2005-317826 2005-10-31
JP2005317826 2005-10-31
JP2005316270 2005-10-31

Publications (1)

Publication Number Publication Date
WO2007052680A1 true WO2007052680A1 (ja) 2007-05-10

Family

ID=38005833

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/321798 WO2007052680A1 (ja) 2005-10-31 2006-10-31 文書処理装置及び文書処理方法

Country Status (3)

Country Link
US (1) US20090287994A1 (ja)
JP (1) JPWO2007052680A1 (ja)
WO (1) WO2007052680A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110289118A1 (en) * 2010-05-20 2011-11-24 Microsoft Corporation Mapping documents to a relational database table with a document position column
US9594729B2 (en) * 2011-08-30 2017-03-14 Microsoft Technology Licensing, Llc Content navigation and zooming on a mobile device
US9063637B2 (en) 2011-09-23 2015-06-23 Microsoft Technology Licensing, Llc Altering a view of a document on a display of a computing device
US9087064B2 (en) * 2011-10-27 2015-07-21 International Business Machines Corporation User-defined hierarchies in file system data sets
CN104111918B (zh) * 2013-04-16 2018-06-22 腾讯科技(北京)有限公司 网页内容的无障碍处理方法和无障碍网页装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001243222A (ja) * 2000-02-23 2001-09-07 Internatl Business Mach Corp <Ibm> 構造化文書の表示規則の生成方法、システムおよびプログラムが記録された媒体ならびに構造化文書およびその文書型定義の変更方法、システムおよびプログラムが記録された媒体
JP2004133943A (ja) * 2002-10-09 2004-04-30 Microsoft Corp テキストフォーマッティングまたはマークアップ言語フォーマッティングとアウトライン構造との間の変換のためのシステムおよび方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09251457A (ja) * 1996-03-18 1997-09-22 Dainippon Screen Mfg Co Ltd 文書変換装置
CA2354443A1 (en) * 2001-07-31 2003-01-31 Ibm Canada Limited-Ibm Canada Limitee Method and system for visually constructing xml schemas using an object-oriented model
US7581177B1 (en) * 2003-08-01 2009-08-25 Microsoft Corporation Conversion of structured documents
US7584420B2 (en) * 2004-02-12 2009-09-01 Lockheed Martin Corporation Graphical authoring and editing of mark-up language sequences

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001243222A (ja) * 2000-02-23 2001-09-07 Internatl Business Mach Corp <Ibm> 構造化文書の表示規則の生成方法、システムおよびプログラムが記録された媒体ならびに構造化文書およびその文書型定義の変更方法、システムおよびプログラムが記録された媒体
JP2004133943A (ja) * 2002-10-09 2004-04-30 Microsoft Corp テキストフォーマッティングまたはマークアップ言語フォーマッティングとアウトライン構造との間の変換のためのシステムおよび方法

Also Published As

Publication number Publication date
JPWO2007052680A1 (ja) 2009-04-30
US20090287994A1 (en) 2009-11-19

Similar Documents

Publication Publication Date Title
WO2006051715A1 (ja) 文書処理装置及び文書処理方法
US20100107048A1 (en) Document processor and document processing method
WO2006051713A1 (ja) 文書処理装置及び文書処理方法
WO2006137563A1 (ja) データ処理装置及びデータ処理方法
JP2008097215A (ja) データ処理装置
WO2006137562A1 (ja) 文書処理装置及び文書処理方法
WO2007081017A1 (ja) 文書処理装置
US20070198915A1 (en) Document Processing Device And Document Processing Method
US20070208995A1 (en) Document Processing Device and Document Processing Method
WO2006051869A1 (ja) 文書処理装置及び文書処理方法
JP4566196B2 (ja) 文書処理方法および装置
WO2006051712A1 (ja) 文書処理装置及び文書処理方法
WO2007052680A1 (ja) 文書処理装置及び文書処理方法
JP4627530B2 (ja) 文書処理方法および装置
JPWO2005098662A1 (ja) 文書処理装置及び文書処理方法
JPWO2005098661A1 (ja) 文書処理装置及び文書処理方法
JPWO2006051974A1 (ja) 文書処理装置および文書処理方法
JPWO2007105364A1 (ja) 文書処理装置及び文書処理方法
WO2006137564A1 (ja) 文書処理装置
JP4417384B2 (ja) 文書処理装置および文書処理方法
JP4719743B2 (ja) グラフ処理装置
US20070240036A1 (en) Document Processing Device and Document Processing Method
WO2006118287A1 (ja) 文書処理装置及び文書処理方法
JP2008257277A (ja) 文書処理装置、方法、及びプログラム
JP2008225931A (ja) 文書処理装置及び文書処理方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
ENP Entry into the national phase

Ref document number: 2007542771

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 12092168

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06822727

Country of ref document: EP

Kind code of ref document: A1