WO2008015787A1 - Dispositif et procédé de traitement de documents - Google Patents
Dispositif et procédé de traitement de documents Download PDFInfo
- Publication number
- WO2008015787A1 WO2008015787A1 PCT/JP2007/000819 JP2007000819W WO2008015787A1 WO 2008015787 A1 WO2008015787 A1 WO 2008015787A1 JP 2007000819 W JP2007000819 W JP 2007000819W WO 2008015787 A1 WO2008015787 A1 WO 2008015787A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- document
- data
- component
- avc
- display
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
Definitions
- the present invention relates to a document processing technique, and more particularly to a document processing apparatus and method for processing a document described in a markup language.
- Patent Document 1 Japanese Patent Laid-Open No. 2 00 1 _ 2 90 80 4
- a poch-library is allowed to be defined arbitrarily, and in theory, there can be an infinitely many pockies. It is impractical to provide a dedicated display and editing environment corresponding to all of these Poch libraries.
- the source of the document composed of text data was directly edited using a text editor or the like.
- the present invention has been made in view of such circumstances, and an object of the present invention is to provide a technique for improving user convenience when processing a document described in a markup language. .
- One embodiment of the present invention relates to a document processing apparatus.
- This document processing apparatus includes a plurality of processing modules that can be used as general-purpose parts for processing data in a document to express a predetermined function, and a plurality of different previous modules for the same data. And a switching unit that can be applied by switching the processing module.
- the document may include a tag set component that is described in a markup language and can be processed by the processing module.
- the tag set to which the component belongs is selected.
- the processing module capable of processing may be activated.
- the switching unit When switching the processing module, the switching unit is configured to change the component from a tag set component that can be processed by the switching source processing module to a tag set configuration that can be processed by the switching destination processing module. It may be rewritten as an element.
- the document processing apparatus may further include a property setting unit that receives a parameter setting necessary for the operation of the processing module, and the property setting unit receives the received parameter as the component element or its descendant.
- the element value or attribute value of the component may be described in the document.
- the property setting unit switches the setting of the parameter used in common between the switching source processing module and the switching destination processing module from the switching source processing module. It may be set automatically by inheriting to the previous processing module.
- the property setting unit may accept a setting of a data type in the document processed by the processing module.
- the property setting unit accepts the setting of text data to be displayed as a label of the data when the processing module displays the data in the document on the screen, and the text data to be displayed as the label of the data is a user If not set from, the element name of the data may be set as a label.
- the document processing method includes a step of applying any one of a plurality of processing modules that can be used as general-purpose components for processing data in a document and expressing a predetermined function to the data in the document. And switching and applying another processing module to data in the same document.
- any combination of the above-described constituent elements, and a conversion of the expression of the present invention between a method, an apparatus, a system, and the like are also effective as an aspect of the present invention.
- FIG. 1 is a diagram showing a configuration of a document processing apparatus according to a base technology.
- FIG. 2 is a diagram showing an example of an XML document edited by a document processing apparatus.
- 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 shown in FIG. 2 to the HTML file corresponding 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 (a) is a diagram showing a basic configuration of a document processing system.
- FIG. 11 (b) is a diagram showing a block diagram of the entire document processing system.
- FIG. 11 (c) is a block diagram of the entire document processing system.
- FIG. 12 is a diagram showing details of the document management unit.
- FIG. 13 is a diagram showing the details of the poker library connection subsystem.
- FIG. 14 is a diagram showing details of the relationship between the program starter and other components.
- FIG. 15 is a diagram showing the details of the structure of the application service reloaded by the program startup unit.
- FIG. 16 is a diagram showing details of the core component bowl.
- FIG. 17 is a diagram showing details of a document management unit.
- FIG. 18 is a diagram showing details of an undo framework and an undo command.
- FIG. 19 is a diagram showing how a document is loaded in the document processing system.
- FIG. 20 shows an example of a document and its expression.
- FIG. 21 is a diagram showing a relationship between a model and a controller.
- FIG. 22 is a diagram showing the details of the plug-in subsystem, the poker library connection, and the connector.
- FIG. 23 is a diagram showing an example of a V CD file.
- FIG. 24 A diagram showing a procedure for loading a compound document in the document processing system.
- FIG. 25 A diagram showing a procedure for loading a compound document in the document processing system.
- FIG. 26 A compound document loading in the document processing system.
- FIG. 27 is a diagram showing a procedure for loading a compound document in the document processing system.
- FIG. 28 is a diagram showing a procedure for loading a compound document in the document processing system. It is a figure which shows the flow of.
- FIGS. 30 (a), 30 (b), and 30 (c) are diagrams showing examples of the data structure of an XML document to be processed.
- FIGS. 31 (a) and 31 (b) are diagrams showing examples of pointer information.
- FIG.32 is a diagram showing a configuration of a document processing apparatus according to the first embodiment.
- FIG. 34 is a diagram showing an example of a document editing screen.
- FIG. 35 is a diagram showing an editing screen in a state in which a view template for schedule is activated.
- FIG. 36 is a diagram showing a configuration of a document processing apparatus according to a second embodiment.
- FIG. 37 A diagram showing an example of an XML document in which the property of the AV component is inserted.
- FIG. 38 shows a procedure of a document processing method according to the second embodiment.
- FIG. 39 is a diagram showing an example of a screen displayed by the AV component.
- FIG. 40 is a diagram showing a configuration of a document processing apparatus according to a third embodiment.
- FIG. 41 is a diagram showing a procedure of a document processing method according to the third embodiment.
- FIG. 42 is a diagram showing a configuration of a document processing apparatus according to a fourth embodiment.
- FIG. 43 is a diagram showing an example of a document in which the AV property of the AV component for table display is inserted.
- FIG. 44 A diagram showing the contents of the AV property described in the document shown in FIG.
- FIG. 45 A diagram showing the contents of the AV property described in the document shown in FIG.
- FIG. 46 is a diagram showing an example of a screen on which the document shown in FIG. 43 is displayed.
- FIG. 47 is a diagram showing a menu displayed when the mouse is right-clicked in the view area generated by the AV component.
- FIG. 48 is a diagram showing an example of a dialog screen displayed by the A V C component switching unit.
- FIG. 49 is a diagram showing an example of an AV property setting screen displayed by the AV property setting section.
- FIG. 50 is a diagram showing an example of an A V C property setting screen displayed by the A V C property setting unit.
- FIG.51 AVC property setting screen displayed by AVC property setting section It is a figure which shows the example of a surface.
- FIG. 52 is a diagram showing an example of an A V C property setting screen displayed by the A V C property setting section.
- FIG. 53 is a diagram showing an example of an AV property setting screen displayed by the AV property setting section.
- FIG. 54 is a diagram showing an example of a display screen when switching to a single display A VC component.
- FIG. 55 is a diagram showing a state in which the document shown in FIG. 43 is changed by switching AV components.
- FIG. 56 is a diagram showing the contents of the AV property described in the document shown in FIG. 55.
- FIG. 57 is a diagram showing the contents of the AV property described in the document shown in FIG. 55.
- FIG. 58 is a diagram showing the contents of the AV property described in the document shown in FIG. 55.
- FIG. 59 is a diagram showing the contents of the AV property described in the document shown in FIG. 55.
- FIG. 60 is a diagram showing a screen when the Y-axis data is changed on the screen for setting the scatter diagram data shown in FIG. 49.
- FIG. 61 is a diagram showing a screen when the data type of Y-axis data is changed. Explanation of symbols
- FIG. 1 shows the configuration of the document processing apparatus 20 according to the base technology.
- the document processing device 20 processes a structured document in which data in the document is classified into a plurality of structural elements having a hierarchical structure.
- 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 as an example of a conversion unit.
- These hardware components are realized by the CPU of any computer, memory, programs loaded in the memory, etc., but here we draw functional blocks realized by their cooperation. ing. 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.
- Editing unit 24 provides a framework for editing XML documents.
- the document display and editing functions in the document processing device 20 are realized by plug-ins, and necessary plug-ins are dictated by the main control unit 22 or the editing unit 24 according to the type of document.
- the main control unit 22 or the editing unit 24 refers to the name space of the XML document to be processed, and by which vocabulary the XML document is described.
- the display or editing plug-in corresponding to the POB library is loaded to execute display or editing.
- the document processing device 20 is plugged with a display system and an editing system for each platform (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.
- tags such as an HTML unit 50 that displays and edits HTML documents
- SVG unit 60 that displays and edits SVG documents.
- HTML documents it is loaded with 50 units of HTML unit.
- SVG documents it is loaded with 60 units of S VG unit.
- both the HTML unit 50 and the SVG unit 60 are dictated.
- the user can select and install only the necessary functions, and can add or delete functions later as appropriate. Therefore, a recording medium such as a hard disk for storing the program It is possible to effectively use the storage area of the memory, and it is possible to prevent memory from being wasted even during program execution. In addition, it has excellent function expandability, and as a development entity, it is possible to cope with new poker libraries in the form of plug-ins, so development is easy, and for users, it is easy and low-cost by adding plug-ins. Functions can be added.
- the editing unit 24 accepts an editing instruction event from the user via the user interface, notifies the appropriate plug-in of the event, and re-executes the event or cancels the execution. Control processing such as (Undo).
- the DOM unit 30 includes a DOM providing unit 32, a DOM generating unit 34, and an output unit 36, and is a document object model (Document) defined to provide an access method when handling an XML document as data. Implements functions that conform to Object Model: DO M).
- the DOM provider 32 is an implementation of DOM that satisfies the interface defined in the editing unit 24.
- the DOM generation unit 34 generates a DOM tree from the XML document. As will be described later, the XML document to be processed is transferred to other vocabulary by VC Unit 80. In the case of mapping, a source tree corresponding to the XML document of the mapping source and a destination tree corresponding to the XML document of the mapping destination are 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 33 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 CSS syntax.
- the CSS provider 44 is an implementation of CSS objects, and performs CSS force scheduling 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 the CSS.
- the HTML unit 50 displays or edits a document described in HTML.
- the SVG unit 60 displays or edits documents described in SVG.
- These display / editing systems are realized in the form of plug-ins. Each of them is a display unit (Canvas) 56, 66 for displaying a document, a control unit (Editlet) 52 for sending / receiving events including editing instructions, 62. Includes editing sections (Zone) 54 and 64 that receive editing commands and edit the DOM.
- the control unit 52 or 62 receives a DOM tree editing command from the outside, the editing unit 54 or 64 changes the DOM tree, and the display unit 56 or 66 updates the display.
- MVC Model-View-Control ler
- the display units 56 and 66 are set to “View”, and the control units 52 and 62 force ⁇ ⁇ Control lerj.
- the editing parts 54 and 64 and the DOM entity correspond to “Model”, respectively.
- the document processing apparatus 20 of the base technology enables not only editing of an XML document in a single display format but also editing according to each 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. Provide one face.
- the VC unit 80 includes a mapping unit 8 2, a definition file acquisition unit 8 4, and a definition file generation unit 8 6, and mapping is performed by mapping a document described in a certain library to another one.
- This function is called Pocabulary Connection (VC).
- the definition file acquisition unit 84 acquires 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 scribble 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, and receives an editing instruction from the user via the user interface provided by the plug-in responsible for display. Change the corresponding node.
- DOM unit 3 0 When a mutation event is issued to the effect that the source tree has changed, VC Unit 8 0 receives the mutation event and synchronizes the destination tree with the source tree change. Change the node of the destination tree corresponding to the changed node.
- Plug-ins that display / edit the destination tree for example HTML unit 50, receives a mutation event that the destination tree has changed, and updates the display with reference to the changed destination tree To do. With such a configuration, even a document described by a local vocabulary used by a small number of users can be converted into another major vocabulary to display the document.
- An editing environment is provided.
- the DOM generation unit 34 When the document processing apparatus 20 reads a document to be processed, the DOM generation unit 34 generates a DOM tree from the XML document. Further, the main control unit 2 2 or the editing unit 2 4 refers to the name space to determine the poker library describing the document. A plug-in corresponding to the vocabulary is installed in the document processing device 20! If so, load the plug-in to view / edit the document. If the plug-in is not installed, check whether the mapping definition file exists. If the definition file exists, the definition file acquisition unit 84 acquires the definition file, generates a destination tree according to the definition, and displays / edits the document by the plug-in corresponding to the mapping destination library.
- the corresponding parts of the document are displayed / edited by plug-ins corresponding to each library as described later. If the definition file does not exist, the source or tree structure of the document is displayed, and editing is performed on the display screen.
- a student with the name “A” has a national language grade of “9 0”, a mathematical grade of “5 0”, a scientific grade of “7 5”, and a social grade of “6 0”.
- the Pocabulary (tag set) used in this document will be referred to as the “Performance Management Pocabulary”.
- the document processing apparatus 20 of the base technology does not have a plug-in that supports display / editing of the grade management vocabulary, this document is displayed in the source display, tree display, and so on.
- the VC function described above is used to display in other ways. In other words, it is necessary to prepare a definition file for mapping the grade management library to another library with plug-ins, such as HTML and SVG.
- the user interface for creating a definition file by the user himself will be described later. Here, the explanation 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 of the Grade Management Platform is mapped to a row (“TR” node) of a table (“TABLE” node) in HTML, and the attribute value “name” is assigned to the first column of each row.
- the second column contains the element values of the “National Language” node, the third column the element values of the “Mathematics” node, the fourth column the element values of the “Science” node, and the fifth column “Society”. Associate node element values with each other.
- the XML document shown in Fig. 2 can be displayed in the HTML table format.
- 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' grades. 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.
- 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 editing is possible in the mapping definition, it is possible to prevent user misoperation.
- FIGS. 4 (a) and 4 (b) 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. Each of them is associated with an operation for inserting the node “student” in the source tree and an operation for deleting the node “student” from the source tree.
- headings such as “name” and “national language” are displayed in the first row of the table, and the contents of the node “student” are displayed in the second and subsequent rows.
- FIG. 5 shows an example of a screen displayed by mapping the XML document described in the grade management platform shown in FIG. 2 to the 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 you change the value in the second row and third column to “7 0”, the element value in the source tree corresponding to this node, that is, the math grade for student “B” changes to “7 0” Is done.
- VC unit 80 should make the destination tree follow the source tree, change the corresponding part of the destination tree, and HTML unit 50 will update the display based on the changed destination tree. To do. Therefore, in the table on the screen, the mathematics score of student “B” is changed to “7 0”, and the average score is changed to “5 5”.
- the commands "Add Student” and "Delete Student” appear in the menu as defined in the definition file shown in Fig. 4 (a) (b). Indicated.
- the node “Student” is added or deleted in the source tree.
- the document processing apparatus 20 of the base technology can not only edit the element value of the component at the end of the hierarchical structure but also edit the hierarchical structure.
- An editor with a tree structure like this Capabilities may be provided to the user in the form of commands. For example, a command for adding or deleting a table row may be associated with an operation for adding or deleting a node “student”.
- a command for embedding other libraries may be provided to the user.
- this table as an input template, you can also add new student grade data in the form of blanks.
- the VC function makes it possible to edit a document described in the grade management library while using the display / editing function of the HTML unit 50.
- FIG. 6 shows an example of a graphical user interface that the definition file generator 86 provides to the user in order for the user to generate a definition file.
- the mapping source XML document is displayed as a tree.
- the screen layout of the XML document to be mapped is shown. This screen layout can be edited by the HTML unit 50, and the user creates a screen layout for displaying the document in the area 92 on the right side of the screen.
- the node of the mapping source XML document displayed in the area 91 on the left side of the screen is displayed in the screen layout using HTML 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 “Mathematics”, a child element of the element “Student”, into the first row and third column of Table 90 on the HTML screen, between the “Mathematics” node and the “TD” node in the third column. A connection is stretched over.
- Each node can be specified for editing.
- An arithmetic expression can be embedded in the display screen.
- FIG. 7 shows another example of the screen layout generated by the definition file generation unit 86.
- Table 90 and a pie chart 93 are created on the screen for displaying the XML document described in the grade management policy.
- This pie chart 93 is described by S V G.
- the document processing apparatus 20 of the base technology can process a composite document including a plurality of libraries in one XML document, so that it is described in HTML as in this example.
- Table 90 and the pie chart 93 described 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 a plurality of areas, and the XML document to be processed is displayed in a plurality of different display formats in each area.
- the source of the document is displayed.
- the document structure is displayed.
- the table described in HTML shown in Fig. 5 is displayed. Is displayed. Documents can be edited on any of these screens.
- the source code is changed, and the plug-in responsible for displaying each screen Update the screen to reflect the tree changes.
- the display unit of the plug-in responsible for displaying each editing screen is registered, and either of the plug-in or VC unit 8 0 is used.
- the source tree is changed, all the display units displaying the edit screen receive the issued mutation event and update the screen.
- the VC unit 80 changes the destination tree following the change of the source tree, and then refers to the changed destination tree.
- the display unit updates the screen.
- the source display and the tree display are realized by a dedicated plug-in, the source display plug-in and the tree display plug-in do not use the destination tree, but directly use the source tree. Browse and display.
- the source display plug-in and the single display plug-in update the screen with reference to the changed source tree, and take charge of the screen in area 96.
- the following 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.
- the source and tree structure may be laid out using HTML, XML documents may be mapped onto the HTML, and displayed using the HTML unit 50.
- three destination destinations are generated: source format, tree format, and tabular format.
- VC Unit 8 0 changes the source tree, then changes each of the three destination trees: source format, solid format, and table format. Browse the destination tree and update the three screens.
- the editing unit 24 refers to the name space and distributes the drawing work to an appropriate display system.
- 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 Math ML unit (not shown) draw mathematical formulas. In this way, a compound document including a plurality of pages is properly displayed. The display results are shown in Fig. 10.
- the displayed menu may be switched according to the position of the cursor (carriage). That is, when the cursor exists 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.
- an appropriate user interface can be provided according to the editing position.
- a compound document when there is no appropriate plug-in or mapping definition file corresponding to a certain library, the part described by the library may be displayed in a source or tree.
- the contents could not be displayed unless an application that displayed the embedded document was installed. Then, even if there is no display application, the content can be grasped by displaying the XML document composed of text data in the source display or the 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 that, for example, in a part described by a certain library in a compound document, the data of a part described in another part of the same document is changed. You may refer to it. Also, sentence When performing a search within a document, text strings embedded in diagrams such as SVG can also be searched.
- a tag written in another poker library may use a tag of another poker library.
- This XML document is not valid, but can be processed as a valid XML document if it is well-formed.
- the tag of the other vocabulary inserted 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 parts enclosed by these tags, or sort them in order of importance. May be.
- the plug-in or VC unit 80 responsible for the edited part changes the source tree.
- listeners for mutation events can be registered for each node.
- the plug-in display section or VC unit 80 corresponding to the portal to which each node belongs is registered as a listener.
- 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 mutation event is notified to the HTM Lunit 50 registered as a listener in the ⁇ htm I> node.
- the mutation event is also notified to the SVG unit 60 registered as a listener in the upper ⁇ s V g> node.
- the HTML unit 50 refers to the changed source tree and updates the display.
- the SVG unit 60 may ignore the mutation event because the node belonging to its own Pocabulary has not changed.
- the overall layout may change as the display is updated by the HTML unit 50.
- a configuration that manages the layout of the screen for example, a plug-in that is responsible for displaying the top-level node.
- the layout of the display area for each plug-in is updated. For example, when the display area by the HTML unit 50 becomes larger than before, the HTML unit 50 first draws a part that it is in charge of and determines the size of the display area. Then, notify the configuration that manages the layout of the screen of the size of the display area after the change, and request a layout update.
- the configuration that manages the screen layout 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.
- Documents described in a markup language are usually represented in the form of a tree data structure in browsers and other applications. This structure corresponds to the tree of the result of parsing the document.
- the DOM (Document Object Model) is a well-known tree-based data structure model used to represent and manipulate documents. DOM includes HTML and XML documents Provides a standard set of objects for representing documents. The DOM has two basic components: a standard model of how objects that represent components in a document are connected, and a standard interface for accessing and manipulating those objects. Nent included.
- a DOM tree is a hierarchical representation of a document based on the contents of the corresponding DOM.
- the DOM tree contains a “root” and one or more “nodes” that originate from the root. In some cases, the root represents the entire document. Intermediate nodes can represent elements such as a table and the rows and columns in the table, for example.
- a “leaf” in a DOM tree usually represents text or image-like data that cannot be further decomposed.
- Each node in the DOM tree may be associated with attributes that describe the parameters of the element represented by the node, such as font, size, color, and indentation.
- HTML is a language generally used to create a document, but is a language for format and layout, not a data description language. Nodes in the DOM tree that represent HTML documents are elements that are predefined as HTML formatting tags, and HTML is usually used for data description and tagging / labeling of data. It is often difficult to formulate queries for data in HTML documents.
- the goal of network designers is to enable documents on the web to be queried and processed by software applications. Regardless of how they are displayed, a hierarchically structured language can be queried and processed that way. Markup languages such as XML (extensible Markup Language) can provide these features.
- XML XML Markup Language
- HTML HyperText Markup Language
- XML XML Style Language
- Additional information on DOM, HTML, XML, CSS, XS L and related language features can also be obtained from the web.
- X path provides common syntax and semantics for specifying the location of parts of an XML document.
- An example of functionality is traversing the DOM tree corresponding to an XML document. It provides basic functions for manipulating strings, numbers, and Boolean characters associated with various representations of XML documents.
- X path is the syntax of the appearance of an XML document, for example, the grammar and the abstract syntax such as the DOM tree, not the grammar of what line or number of characters when viewed as a text string. It works in any structure.
- the location can be specified through a hierarchical structure in the DOM tree of the XML document, for example.
- X path is also designed to be used to test whether a node in the DOM tree matches the pattern. More details about XP ath can be found at http: // www. W3. Org / TR / xpath [0055]
- the known advantages and features of XML can handle documents written in a markup language (eg XML) and provide a user-friendly interface for creating and modifying documents. An effective document processing system is needed.
- MVC Model-View-Control ler
- model M
- view V
- controller C
- the controller interprets input such as mouse and keyboard input from the user and maps these user actions to commands sent to the model and / or view to bring about appropriate changes.
- the model acts to manage one or more data elements, responds to queries about that state, and responds to instructions that change the state.
- the view acts to manage the rectangular area of the display and has the function of presenting data to the user through a combination of graphics and text.
- Fig. 11 (a) shows a conventional configuration example of elements that function as the basis of a document processing system of the type described later.
- Configuration 10 includes a processor of the type such as a CPU or microprocessor 11 connected to memory 12 by communication path 13.
- Memory 1 2 can be any ROM and / or R available now or in the future It may be in AM format.
- the communication path 13 is typically provided as a bus.
- An input / output interface 1 6 to user input devices 14 and display devices 15 (or other user interfaces) such as a mouse, keyboard, voice recognition system, etc. is also provided for communication between the processor 1 1 and the memory 1 2. Connected to the bus.
- This configuration may be a stand-alone, a networked form in which a plurality of terminals and one or more servers are connected, or may be configured by any known method.
- the present invention is not limited by the arrangement of these components, the centralized or distributed architecture, or the communication methods of the various components.
- the present system and the embodiments discussed herein are discussed as including several components and sub-components that provide various functionalities. These components and sub-components can be realized not only by a combination of hardware and software, but also by hardware alone or software alone to provide the noted functionality. Furthermore, the hardware, software, and combinations thereof can be realized by general-purpose computing devices, dedicated hardware, or combinations thereof. Thus, the configuration of a component or subcomponent includes a general purpose / dedicated computing device that executes specific software to provide the functionality of the component or subcomponent.
- FIG. 11 (b) shows an overall block diagram of an example of a document processing system.
- a document is generated and edited in such a document processing system.
- These documents may be written in any language that has the characteristics of a markup language, such as XML.
- XML markup language
- the document processing system can be regarded as having two basic configurations.
- the first configuration is an “execution environment” 1 0 1 which is an environment in which the document processing system operates.
- the execution environment can be a user during document processing and management.
- the second configuration is an “application” 1 0 2 composed of applications running in the execution environment. These applications include the document itself and various representations of the document.
- Program lvoker 1 0 3 is a basic program accessed to start the document processing system. For example, when a user logs on to a document processing system and starts, Program l nvoker 1 0 3 force is executed. Program l nvoker 1 0 3 can, for example, read and execute functions added as plug-ins to the document processing system, start and execute applications, and read properties related to documents . The functions of Program l nvoker 1 0 3 are not limited to these. When a user wants to launch an application that is intended to run in the execution environment, Program lvoker 1 0 3 finds the application, launches it, and executes the application.
- the plug-in subsystem 104 includes a Service Broker (service broker) 1041.
- ServiceBroker 1 041 mediates services added to the document processing system by managing plug-ins added to the document processing system.
- Service 1042 Individual functions that achieve the desired functionality are added to the system in the form of Service 1042.
- Available types of Service 1042 are: Application service, ZoneFactory (zone factory: zone generator) Service, Editlet (editlet: editor) Service, Comma dFactory (command factory) : Command generation part) Service, ConnectXPath (Connect XP ath: XP ath management part) Service, CSS Computation (CSS calculation part: CSS calculation part) Service, etc., but not limited to these.
- a plug-in is a unit that can contain one or more ServiceProviders. Each ServiceProvider has one or more classes of Service associated with it. For example, by using a single plug-in with the appropriate software application, one or more services can be added to the system, thereby adding the corresponding functionality to the system.
- Command subsystem 105 is used to execute commands in the form of commands related to document processing.
- a user can execute an operation on a document by executing a series of instructions. For example, a user edits an XML DOM tree corresponding to an XML document in a document processing system by issuing an instruction in the form of a command, and processes an XML document. These commands can be used for keystrokes, mouse clicks, or other valid user designs. It may be entered using a interface action.
- One command may execute more than one instruction. In this case, these instructions are wrapped (contained) in one command and executed in succession. For example, a user wants to replace a wrong word with a correct word. In this case, the first instruction is to find the wrong word in the document, the second instruction is to delete the wrong word, and the third instruction is to insert the correct word It may be. These three instructions may be wrapped in one command.
- the command may have an associated function, for example, an “undo” function, described in detail below. These functions may also be assigned to any base class that is used to create objects.
- the key component of the command subsystem 1 05 is Gommandlnvoker (command launcher: command starter) 1 05 1 which selectively gives commands and acts to execute them. Although only one Gommandln voker is shown in Fig. 11 (b), one or more Go countries and lnvoker may be used, and one or more commands may be executed simultaneously. Gommandlnvoker 1 05 1 retains the functions and classes necessary to execute commands. In operation, the Command 1 052 to be executed is loaded into the Queue 1 053. Gommandlnvoker generates a command thread that runs continuously.
- Command types executed by Commandlnvoker 1 05 1 include Undoab I eCommand (cancellation command) 1 054, AsynchronousCommand (asynchronous command) 1 055, and VGGo country and (VC command) 1 056, It is not limited to these.
- Undoab I eCommand 1 054 is the result of the command if the user wants it. It is a Go country and can cancel the fruit. Examples of UndoableGo country and include cutting, copying, and inserting text. In operation, when a user selects a portion of a document and applies a cut command to that portion, the cut portion is “not cut” if necessary, using UndoableG 0 country and. Can be.
- the VGGo country andl 056 is stored in a Vocabulary Connection Descriptor (VCD) script file.
- VCD Vocabulary Connection Descriptor
- These are user-specified commands that can be defined by the programmer.
- the Command may be a more abstract Go country and combination, for example, to add an XML fragment, delete an XML fragment, or set an attribute. These Go countries and are particularly focused on document editing.
- AsynchronousCommand 1 055 is a command from the system, such as saving a document, and is executed asynchronously separately from UndoableGommand and VGGommand. AsynchronousCommand cannot be undone because it is not possible with UndoableGommand.
- Resource 109 is an object that provides several functions to various classes. For example, string resources, icons, and default key bindings are examples of resources used in the system.
- the application component 102 which is the second main feature of the document processing system, is executed in the execution environment 101.
- Application component 1102 includes the actual document and various logical and physical representations of the document in the system.
- application component 102 includes the configuration of the system used to manage documents.
- the application component 102 further includes a user application (user application) 106, an application core 108, a user interface 107, and a GoreGomponent (core component) 110.
- user application user application
- application core 108 application core 108
- GoreGomponent core component
- UserApplication 10 06 is entered on the system together with Program nvoker 1 03.
- UserApplication 106 is an adhesive that connects a document, various representations of the document, and the user interface required to interact with the document. For example, suppose a user wants to generate a set of documents that are part of a project. When these documents are loaded, an appropriate representation of the document is generated. User interface functions are added as part of UserApplication 106. In other words, UserApplication 106 holds both the representation of the document that allows the user to interact with the document that forms part of the project, and various aspects of the document. Once UserApplication 1 06 is generated, whenever a user wants to interact with a document that forms part of Project ⁇ , the user can easily sneak UserApplication 1 06 into the execution environment. it can.
- CoreComponent 1 1 0 provides a way to share documents between multiple panes.
- Pane displays the DOM tree and handles the physical layout of the screen.
- a physical screen consists of multiple panes in the screen that depict individual pieces of information.
- the document that the user sees on the screen is
- the physical layout of the screen is also in the form of a tree.
- Pane can be RootPane 1 084 or SubPane 1 085.
- RootPane 1 084 is a Pane that hits the root of the pane tree
- SubPane 1 085 is an arbitrary Pane other than RootPane 1 084.
- CoreComponent 1 1 0 also provides fonts and serves as a source of multiple functional operations for documents, such as toolkits.
- One example of a task performed by CoreComponent 1 1 0 is the movement of a mouse force between multiple panes.
- Another example of a task to be performed is one of the documents in a Pane Mark a part and copy it onto another Pane containing a different document.
- the application component 1 0 2 is composed of documents that are processed and managed by the system. This includes various logical and physical representations of documents within the system.
- the application core 1 0 8 is a configuration of the application component 1 0 2. Its function is to keep the actual document with all the data it contains.
- the application core 1 0 8 includes DocumentManager (document manager: document management unit) 1 0 8 1 and Document (document: document) 1 0 8 2 itself.
- DocumentManager 1 0 8 1 manages Document 1 0 8 2.
- DocumentManager 1 0 8 1 is RootPane 1 0 8 4, SubPane 1 0 8 5, CI ipBoard (Clip Port) Utility 1 0 8 7, and Snapshot (Snapshot) Utility 1 0 8 8 Also connected to.
- the G i pBoard utility 1 0 8 7 provides a way to preserve the portion of the document that the user has decided to add to the clip pod. For example, suppose a user wants to cut a part of a document and save it in a new document for later review. In such a case, the clipped part is added to the G i pBoard.
- the Snapshot utility 1 0 8 8 makes it possible to remember the current state of an application as it transitions from one state to another.
- FIG. 1 0 7 Another configuration of application components 1 0 2 is a user interface 1 0 7 that provides a means for users to physically interact with the system.
- the user interface is used by users to upload, delete, edit, and manage documents.
- User interface The chair includes Frame 1 07 1, MenuBar 1 072, StatusBar 1 073, and URLBar 1 074.
- Frame 1 07 1 is considered to be an active area of the physical screen, as is generally known.
- MenuBar 1 072 is a screen area that contains menus that provide selection to the user.
- StatusBarl 073 is a screen area that displays the execution status of the application.
- URLBarl 074 provides an area for entering U R L address to navigate the Internet.
- FIG. 12 shows the details of DocumentManager 1 081. This includes the data structures and structures used to represent the document within the document processing system. For clarity, the configuration described in this subsection is described using the MVC paradigm.
- DocumentManager 1 081 includes a DocumentGontainer (document container: document container) 203 that holds and hosts all the documents in the document processing system.
- a tool kit 201 that is matched to DocumentManager 1 081 provides various tools used by DocumentManager 1 081.
- DomService DOM service
- toolkit 201 Another tool provided by tool kit 201, lOManager (input / output manager) manages input to and output from the system.
- StreamHandler stream handler
- These tools are not specifically shown in the figure and are not assigned a reference number, but form a component of the tool kit 201.
- model (M) includes a DOM tree model 202 of the document. As mentioned above, all documents are represented as DOM trees in the document processing system.
- the document is also DocumentGontainer 2 Form part of 03.
- Zone 209 which is a subset of the DOM tree, contains the associated area of one or more nodes in the DOM tree. For example, only a part of the document can be displayed on the screen, but this part of the visualized document is displayed using Zone 209.
- ZoneFactory zone factory: zone creation unit
- Zone represents a part of DOM, but one or more “namespaces” may be used.
- a namespace is a collection of names that are unique within a namespace. In other words, the same name does not exist in the namespace.
- Facet 2022 is another configuration within the model (M) part of the MVC paradigm. Facet is used to edit Nodes in the Zone. Facet2022 organizes access to the DOM using procedures that can be executed without affecting the contents of the Zone itself. As explained below, these procedures perform important and useful operations related to Node.
- Each Node has a corresponding Facet. Instead of directly manipulating Nodes in D O M, DOM integrity is protected by using Facet to perform operations. If the operation is performed directly on Node, several plugins can modify the DOM at the same time, resulting in inconsistencies.
- the DOM standard established by the W3 C defines a standard interface for operating Nodes, but in fact, there are operations specific to each POD library or Node. It is convenient to prepare this operation as API. In the document processing system, APIs specific to each node are prepared as Facet and attached to each node. This makes it possible to add useful APIs while complying with the DOM standard. In addition, every pokébra Rather than implementing a specific DOM, by adding a specific API to the standard DOM implementation later, it is possible to handle various poker libraries in a unified manner. Documents with mixed vocabulary in any combination can be processed appropriately.
- a Poch Library is a set of tags (for example, XML tags) belonging to a namespace.
- a namespace has a set of unique names (here tags).
- a poch library appears as a subtree of the DOM tree that represents an XML document. This subtree contains Zones. In a specific example, the tag set boundary is defined by the Zone.
- Zone 209 is generated using a service called ZoneFactory 205.
- Zone 209 is an internal representation of part of the DOM tree that represents the document.
- Zone 209 is required to provide access to some of these documents. This logical representation informs the computer how the document is logically represented on the screen.
- Canvas 210 is a service that acts to provide a logical layout corresponding to the Zone.
- the Pane 21 1 is a physical screen layout corresponding to the logical layout provided by the Canvas 210.
- the user sees only the rendering of the document with text and images on the display screen. Therefore, the document must be rendered on the screen by the process of drawing characters and images on the screen.
- the document is drawn on the screen by Canvas 210 based on the physical layout provided by Pane 21 1.
- Ganvas 210 corresponding to Zone 209 is generated using Editlet 206.
- the DOM of the document is edited using Editlet 206 and Ganvas 210.
- Editlet 206 and Ganvas 210 use Facet corresponding to one or more Nodes in Zone 209. These services do not directly operate the nodes in the Zone and DOM. Facet is operated using Gommand207.
- the user generally moves the cursor on the screen or types a command To interact with the screen.
- Canvas 2 10 which provides a logical layout on the screen accepts this powerful operation.
- Canvas 2 1 0 allows Facet to execute the corresponding action. Due to this relationship, the Kichiichi Sol Subsystem 20 4 functions as a controller (C) of the MVC paradigm for DocumentManager 1 0 8 1.
- Ganvas 2 1 0 also has a task to handle events. For example, Canvas 2 1 0 handles events such as mouse clicks, focus movements, and similar actions triggered by the user.
- Documents in a document processing system can be viewed from at least four perspectives. 1) the data structure used to maintain the content and structure of the document in the document processing system, 2) a means for editing the content of the document without affecting the integrity of the document, 3) on the screen of the document 4) The physical layout of the document on the screen. Zone, Facet, Canvas, and Pane represent the components of the document processing system that correspond to the above four viewpoints.
- UndoManager Undo Manager 2 1 2 1 holds operations on all documents that may be canceled by the user.
- the controller portion of the MVC may include a force-sol subsystem 204.
- the Rikiichi Sol Subsystem 204 accepts input from the user. These inputs generally have the character of commands and / or editing operations. Therefore, the Rikiichi Sol Subsystem 204 can be considered as the controller (C) part of the MVC paradigm related to DocumentManager 1 081.
- Canvas 210 represents the logical layout of the document to be presented on the screen.
- Ganvas 210 may include a box tree 208 that logically represents how the document looks on the screen. This box tree 208 will be included in the view (V) portion of the MVC paradigm associated with DocumentManager 1 081.
- XML documents can be handled by mapping them to other representations, and if the mapped destination representation is edited, the editing is consistent with the original XML document.
- a document described in a markup language for example, an XML document, is created based on a library defined by a document type definition.
- a Pokéebra is a set of tags. Since a pocabulary may be arbitrarily defined, there can be an infinite number of pocabularies. However, it is impractical to provide a dedicated processing / management environment for each of the many possible libraries. Pocabulary Connection provides a way to solve this problem
- a document may be described in two or more markup languages.
- Documents include, for example, XHTML (extensible HyperText Markup Language), SVG (Scalable Vector Graphics), Math ML (Mathematical Markup Lan guage) and other markup languages.
- XHTML extensible HyperText Markup Language
- SVG Scalable Vector Graphics
- Math ML Math ML
- the markup language may be found in the same way as a tag library in XML.
- the Pokélibry is processed using a Pokéebra rib lagquin.
- Documents described in a vocabulary where plug-ins are not available in the document processing system are displayed by mapping to documents in another vocabulary where plug-ins are available. This feature enables proper display of vocabulary documents without plug-ins.
- the poker library connection includes the ability to obtain a definition file and map between two different vocabularies based on the obtained definition file.
- a document written in one Poch library can be mapped to another Poch library.
- the PB library connection allows a document to be displayed and edited by a display / edit plug-in corresponding to the Pb library to which the document is mapped.
- each document is generally described in the document processing system as a DOM tree having a plurality of nodes.
- the “definition file” describes the correspondence between each node and other nodes. It is specified whether the element value and attribute value of each node can be edited. An arithmetic expression using the element value or attribute value of the node may be described.
- a destination DOM tree to which the definition file is applied is generated. In this way, the relationship between the source DOM tree and the destination DOM tree is established and maintained.
- the Pocabular connection monitors the correspondence between the source DOM tree and the destination DOM tree.
- the Pb library connection Upon receiving an editing instruction from the user, the Pb library connection changes the associated node in the source D O M tree. A “mutation event” is issued to indicate that the source D O M tree has changed, and the destination D O M tree is changed accordingly.
- the Pocabulary Connection Subsystem which is a part of the document processing system, provides a function that enables multiple expressions of a document.
- FIG. 13 shows a Vocabulary Connection (V C) subsystem 300.
- the VC subsystem 300 provides a way to maintain the consistency of two alternative representations of the same document.
- the two representations may be representations of the same document in two different pockets.
- one may be the source DOM tree and the other may be the destination DOM tree.
- the functions of the POB library connection subsystem 300 are realized in a document processing system using a plug-in called Vocabulary Connection 301.
- Vocabulary Connection 301 For each Vocabulary 305 in which the document is represented, a corresponding plug-in is required. For example, if a part of a document is described in HTML and the rest is described in SVG, a plug-in plug-in corresponding to HTML and SVG is required.
- the VocabularyGonnection plug-in 301 generates an appropriate VGGanvas (Pocket library connection canvas) 310 for Zone 209 or Pane 211 corresponding to the appropriate Vocabulary 305 document.
- VGGanvas Pocket library connection canvas
- changes to Zone 209 in the source DOM tree are propagated to the corresponding Zone in another DOM tree 306 by the transformation rule.
- a conversion zole is described in the form of a Vocabulary Connection Descriptor (VCD).
- VCD Vocabulary Connection Descriptor
- Connector 304 connects the source node of the source D OM tree and the destination node of the destination DOM tree.
- Gonnector3 04 acts to see modifications (changes) to the source node in the source DOM tree and the source document corresponding to the source node. Then modify the node of the corresponding destination DOM tree.
- Gonnector304 is the only object that can modify the destination DOM tree. For example, the user can make modifications only to the source document and the corresponding source DOM library. Connector 304 then makes the corresponding modifications to the destination DOM tree.
- Connector 304 is logically linked to form a tree structure.
- the tree formed by Connector 304 is called GonnectorTree.
- the Connector 304 is generated using a service called GonnectorFactory (connector factory: connector generation unit) 303.
- GonnectorFactory 303 creates Connector 304 from the source document and links them to form GonnectorTree.
- the VocabularyGonnectionManager 302 holds a GonnectorFactory 303.
- a Poch Library is a set of tags in a namespace.
- Vocabulary 305 is generated for a document by Vocabu IaryConnection 301. This is done by parsing the document file and generating an appropriate Vocabulary Connection Manager 302 for mapping between the source DOM and the destination D OM. Further, an appropriate relationship is created between the GonnectorFactory 303 that generates the Connector, the ZoneFactory 205 that generates the Zone 209, and the Editlet 206 that generates the Canvas corresponding to the node in the Zone. When a user disposes of or deletes a document from the system, the corresponding VocabularyGonnectionManager 302 is deleted.
- Vocabulary 305 generates VGGanvas 310.
- Connector 30 4 and the destination DOM tree 306 are generated correspondingly.
- Sources DO M and Canvas correspond to model (M) and view (V), respectively.
- M model
- V view
- Pokayabra Rib Lagoin Pocabulary plug-ins are provided for major podocalyps such as XHTML, SVG, and MathML.
- Pokaya brarib lagins are used in conjunction with the target pokary library. They provide a way to map between podapuraries using vocabulary connection descriptors.
- Such mapping is only meaningful if the target Pocabula mapping is possible and the method depicted on the screen is predefined.
- a rendering method is a standard defined by organizations such as W 3 C, such as X H TM L.
- VGGanvas is used when a poker library connection is required.
- the source Ganva s is not generated because the source view cannot be generated directly.
- VGGanvas is created using GonnectorTree. This VGGanvas only handles event conversion and does not assist in rendering the document on the screen.
- the purpose of the Pocabulary Connection Subsystem is to generate and maintain two representations of the same document simultaneously.
- the second representation is also in the form of a DOM tree, which has already been described as a destination DOM tree. To see the document in the second representation, we need DestinationZone, Canv as and Pane.
- DestinationGanvas308 provides a logical layout of the document in the second representation. In particular, DestinationGanvas308 provides user interface features such as cursors and selections to depict documents in the destination representation. Events that occur in DestinationGanvas308 are fed to Gonnector. DestinationGanvas 308 notifies Connector 304 of events specific to the mouse event, key event, drag and drop event, and document destination (second) representation of the library.
- VC POB library connection
- the library connection command subsystem 313 generates a VGGo country and (pocket connection command) 315 used for execution of instructions related to the protocol connection subsystem 300.
- VGGo country and can be generated by using the built-in Go country andTemplate (command template) 31 8 and / or by generating commands from scratch in the script subsystem 31 4 using script language can do.
- command templates include "lf” command template, "When” command template, and "Insert” command template. These templates are used to create VGGommand.
- the X P at h subsystem 31 6 is an important component of the document processing system, and supports the implementation of the poker library connection.
- Connector 304 generally contains xpath information. As mentioned above, one of the tasks of a poker library connection is to reflect changes in the source DOM tree in the destination DOM tree.
- the xpath information contains one or more xpath expressions that are used to determine the subset of the source DOM tree that should be monitored for changes / modifications.
- the source DOM tree is a DOM tree or Zone that represents a document in a vocabulary before being converted to another vocabulary.
- the node of the source DOM tree is called the source node.
- the destination DOM tree is a DOM tree that represents the same document with a different vocabulary after being transformed by mapping, as described above in connection with the Pocabulary connection. Zone. Destination D O M Tree nodes are called destination nodes.
- GonnectorTree is a hierarchical expression based on a Connector that represents a correspondence between a source node and a destination node.
- the Connector monitors the source node and modifications made to the source document and modifies the destination DOM tree.
- the Connector is the only object that is allowed to modify the destination DOM tree.
- An event is a way to describe and execute a user action executed on a program.
- Many high-level languages, such as J a V a rely on events that describe user actions.
- programs had to actively gather information to understand user actions and execute them themselves. For example, after a program initializes itself, it enters a loop that repeatedly checks the user's actions to take appropriate action when the user takes action on the screen, keyboard, mouse, etc. Means. However, this process is cumbersome. In addition, it requires a program that consumes CPU cycles and loops while waiting for the user to do something.
- the document processing system defines and uses its own events and how to handle these events.
- a mouse event is an event that occurs from a user mouse action.
- User actions including the mouse are passed to the mouse event by Canvas 2 10.
- Canvas can be said to be at the forefront of interaction by users of the system. If necessary, the canvas at the front passes the content related to the event to the child.
- a keest mouth event starts from Canvas 2 1 0.
- Key Stroke events have immediate focus. That is, it is related to work at any moment. Keystroke events entered on Ganvas 2 1 0 are passed to their parents. Keystrokes are handled by different events that can handle string insertion. Events that handle string insertion occur when a character is inserted using the keyboard. Other “events” include, for example, other events that are treated like drag events, drop events, and mouse events.
- Dest i nat i onCanvas 7—the example XHTMLGanvasl 106 is specific to events that occurred, eg mouse events, keypoint events, dragand drop events, and poker libraries. Receive events, etc. These events are notified to the connector 30. More specifically, as shown in Figure 21 (b), the event flow in the VocabularyGonnection plug-in 301 is SourcePane 1 1 03 , VCCanvas 1 10 04, Destination Pane 1 1 05, DestinationGanvas 1 10 06, which is an example of DestinationGanvas, Destination DOM tree and Goni- ector ree3 ⁇ 4r.
- Programlnvoker 1 03 is a basic program in the execution environment that is executed to start the document processing system. As shown in Figure 11 (b) and Figure 11 (c), UserApplication 10 06, ServiceBroke r 1041, Command I nvoker 1 051, and Resource 1 09 are all in Program I nvoker 1 03. Connected. As described above, the application 102 is a component that is executed in the execution environment. Similarly, ServiceBroker 1 0 41 manages plug-ins that add various functions to the system. On the other hand, Go country ndlnvoker 1 051 executes the instructions provided by the user and holds the classes and functions used to execute the commands.
- ServiceBroker 1 041 will be described in more detail with reference to FIG. 14 (b). As mentioned above, ServiceBroker 1 041 manages plug-ins (and related services) that add various functions to the system.
- Service 1 042 is the lowest layer that can add or change features to the document processing system.
- “Service” consists of two components of ServiceGategory401 and ServiceProvider 402. As shown in Figure 14 (c), one 361 ⁇ 6031: 680 ⁇ 40 1 Can have multiple related ServiceProviders 402. Each ServicePro V i der acts to run part or all of a particular Service Gategory. On the other hand, ServiceGatego401 defines the type of Service.
- Service is 1) "spot color service” that provides specific spot colors to the document processing system, 2) “ablation service” that is an application executed by the document processing system, and 3) the entire document processing system. It can be classified into three types: “environmental services”, which provide the necessary characteristics over a wide range.
- FIG. 14 An example of Service is shown in Figure 14 (d).
- Gat egory of application Service it is a row of system utility card ⁇ corresponding ServiceProvider.
- Editlet 206 is a Category
- HTMLEditlet and SVGEdit let are corresponding ServiceProviders.
- ZoneFactory 205 is another Category of Service, and has a corresponding ServiceProvider (not shown).
- plug-ins have already been described as adding functionality to a document processing system, they may be considered a unit consisting of several ServiceProviders 402 and their associated classes. Each plug-in has dependencies and ServiceGategory 401 described in the declaration file.
- Figure 14 (e) shows further details about the relationship between Programlnvoker 1 03 and UserApplication 1 06. Necessary documents and data are loaded from storage. All necessary plug-ins are loaded on ServiceBroker 1 04 1. ServiceBroker 1 04 1 holds and manages all plug-ins. Plug-ins can be physically added to the system and their functions can be loaded from storage. When the plug-in content is loaded, ServiceBroker 1 04 1 defines the corresponding plug-in. Next, the corresponding UserApplication 1 06 is generated, loaded into the execution environment 1 0 1, and attached to the Programlnvoker 1 03.
- Figure 15 (a) shows an application loaded on Programlnvoker 1 03 Provides further details about the configuration of the service.
- Command Invoker 1 051 which is a component of command subsystem 1 05, starts or executes Command 1 052 in Program Invoker 1 03.
- Command 1 052 is a command used to process a document such as XML and edit the corresponding XML DOM tree in the document processing system.
- Command Invoker 1 051 holds classes and functions necessary for executing Comma nd1 052.
- ServiceBroker 1 041 is also executed in Program nvoker 1 03.
- UserApipication 1 06 is connected to the user interface 1 07 and GoreGomponent 1 1 0.
- GoreGomponent 1 1 0 provides a way to share documents between all panes.
- GoreGomponent 1 1 0 provides additional fonts and acts as a toolkit for Pane.
- FIG. 15 (b) shows the relationship between Frame 1 07 1, MenuBar 1 072, and StatusBar 1 07 3.
- Figure 16 (a) provides further explanation of the application core 108 that holds all documents, and parts of documents and data belonging to the documents.
- Gor eComponent 1 1 0 is attached to DocumentManager 1 081 that manages document 1 082.
- DocumentManager 1 081 is the owner of all documents 1 082 stored in the memory associated with the document processing system.
- DocumentManager 1 081 is also connected to Root Pane 1 084 to facilitate the display of the document on the screen.
- the functions of GI ipBoard 1 087, SnapShot 1 088, Drag & Drop 601 and Over Iay 602 are also attached to GoreGomponent 1 1 0.
- SnapShot 1 088 is used to restore the application state.
- SnapShot 1 088 When the user starts SnapShot 1 088, the current state of the application is detected and stored. Then, when the application state changes to another state, the stored state contents are preserved. SnapShotl 088 is illustrated in Figure 16 (b). In operation, from the URL where the application is In order to make it possible to seamlessly execute the operation of going back and the operation of moving forward when moving to Snapshot, Snapshot 1088 stores the previous state.
- Figure 17 (a) shows further explanation of DocumentManager 1 08 1 and how documents are organized and maintained in DocumentManager.
- DocumentManager 1 08 1 manages document 1 082.
- one of the documents is RootDocument 701, and the remaining document is SubDocument 702.
- Do cumentManager 1 08 1 is connected to RootDocument 70 1 and RootDocument 7 0 1 is connected to all SubDocuments 702.
- DocumentManager 1 08 1 is an object that manages all documents 1 082 00 (51 ⁇ 6111: 00111: 3 ⁇ 6 "203 Tools that form part of the toolkit 20 1 (eg XM L toolkit) including D0MService703 and lOManager 704 are also supplied to DocumentManager 1 08 1. See Figure 17 (a) again. Then, D0MService703 generates a DOM tree based on the document managed by DocumentManager 1 08 1. Each Document 705 is created by the corresponding DocumentGontainer 203, whether it is RootDocument 701 or SubDo cument702. Managed.
- 203 Tools that form part of the toolkit 20 1 (eg XM L toolkit) including D0MService703 and lOManager 704 are also supplied to DocumentManager 1 08 1. See Figure 17 (a) again. Then, D0MService703 generates a DOM tree based on the document managed by DocumentManager 1 08 1. Each Document 705 is created by the corresponding DocumentGontainer 203, whether it
- Figure 17 (b) shows how documents A_E are arranged hierarchically.
- Document A is a RootDocument.
- Document B—D is a SubDocument of Document A.
- Document E is a SubDocument of Document D.
- the left side of Fig. 17 (b) shows an example of the same document hierarchy displayed on the screen.
- Document A the RootDocument
- Document B_D which is a SubDocument of Document A
- Document E which is a SubDocument of Document D
- UndoManager (Undo Manager: Undo Manager) 706 and UndoWrapper 707 are respectively Generated for DocumentGontainer 203.
- UndoManager 706 and UndoWrapper 707 are used to execute undoable commands.
- SubDocument changes are also closely related to RootDocument.
- the undo operation takes into account changes that affect other documents in the hierarchy and maintains consistency among all documents in a chained hierarchy, for example, as shown in Figure 17 (b). Guarantee that.
- UndoWrapper 707 wraps the undo objects related to SubDocument in DocumentGontainer 203 and binds them to the undo object related to RootDocument. UndoWrapper 707 executes collection of undoable objects that can be used in UndoableEditAcceptor (undoable edit acceptor).
- UndoManager 706 and the UndoWrapper 707 are connected to the Undoab IE Edit Acceptor 709 and the UndoableEditSource (Undoable Edit Source) 708.
- Document 705 may be UndoableEditSource 708 or the source of an editable edit object.
- Figures 18 (a) and 18 (b) provide further details about the undo framework and undo commands.
- UndoCommand 80 1, RedoCommand 802, and UndoableEditGommand803 are commands that can be loaded on Gommandlnvoker 1 05 1 as shown in Fig. 11 (b) and executed in order. Is done.
- UndoableEditGommand803 is further attacked by Undoable EditSource 708 and Undoab IeIdAcceptor 709.
- “Foo” EditGommand804 and “bar” EditGommand 805 are examples of Undoab IeEditC ommand.
- Figure 18 (b) shows the execution of UndoableEditGommand.
- the user edits Suppose you edit a Document 705 using a command.
- UndoableEditAcceptor 709 is attacked in Document 705 DOM tree 11
- Document705 is edited using the DOM API based on the command issued by the user.
- the mutation event listener is notified that a change has been made. That is, in this step, the listener that monitors all changes in the DOM tree detects the editing operation.
- UndoableEdit is stored as an object of UndoManager 706.
- the UndoableEditSource 708 may be the Document 705 itself.
- Figure 19 (a) shows an overview of how a document is loaded into the document processing system. Each step is detailed in relation to a specific example in Figures 24-28.
- a document processing system generates a DOM from a binary data stream consisting of data contained in a document.
- ApexNode anapex node
- the corresponding Pane is identified.
- the identified Pane generates Zone and Canvas from ApexNode and physical screen surface.
- the Zone then creates Facets for each node and provides the information needed for them.
- Canvas generates a data structure for rendering nodes from the DOM tree.
- the document is loaded from storage 901.
- a DOM tree 902 of the document is generated.
- a corresponding DocumentGontainer 903 is created to hold the document.
- DocumentGonta iner 903 is compatible with DocumentManager 9 Attach to 04.
- a DOM tree contains a root node and sometimes multiple secondary nodes.
- a DOM tree may have, for example, an SV G subtree as well as an X H TM L subtree.
- the XH TM L subtree has an XH TM L ApexNode 905.
- the SVG subtree has S V G ApexNode 906.
- step 1 ApexNode 906 force is attached to Pane907, which is the logical layout of the screen.
- Pane907 asks GoreGomponent, who is PaneOwner 908, a ZoneFactory for ApexNode 906.
- step 3 PaneOwner 908 returns a ZoneFactory and an Edi tl et which is a GanvasFactory for ApexNode 906.
- step 4 Pane907 force ⁇ Zone909 is generated. Zone909 is attached to Pane 907.
- step 5 Zone909 generates a facet for each node and attaches to the corresponding node.
- Step 6 Pane 907 force ⁇ Ganvas9 1 0 is generated. Canvas 9 1 0 is attacked by Pane 907.
- Ganvas9 1 0 includes various commands.
- step 7 Ganvas9 10 builds a data structure for rendering the document on the screen. For XH TM L, this includes a box tree structure.
- Figure 19 (b) shows an overview of the Zone configuration using the MVC paradigm.
- Model (M) since Zone and Facet are inputs related to the document, Model (M) includes Zone and Facet. Since the canvas and the data structure for rendering the document on the screen are the output that the user sees on the screen, the view (V) corresponds to the canvas and the data structure. Since Command executes control operations on the document and its various relationships, Control (C) includes Go Country and included in Canvas. [0164] L. Document Representation
- FIG. 20 An example of a document and its various expressions will be described below using FIG.
- the document used in this example contains both text and images.
- Text is represented using X HTML, and images are represented using SVG.
- Figure 20 details the MVC representation of the relationship between the document components and the corresponding objects.
- Document 1 001 is attached to DocumentContainer 1 002 that holds Document 1 001.
- the document is represented by a DO M tree 1 003.
- the DOM tree contains ApexNode 1 004.
- ApexNode is represented by a black circle. Nodes that are not vertices are represented by white circles. The Facet used to edit a node is represented by a triangle and is attached to the corresponding node. Since the document has text and images, the DOM tree of this document contains an XHTML portion and an SVG portion.
- ApexNode 1 004 is the top node of the XH TM L subtree. This is attacked by XHTMLPane 1 005, the top pane for the physical representation of the XHTML part of the document. ApexNode 1 004 is also attacked by XHTMLZone 1 006, which is part of the document's DOM tree.
- Facet corresponding to Node 1 004 is also attached to XHTMLZone 1 006.
- X HTMLZone 1 006 is attached to XHTMLPane 1 005.
- XHTMLEditlet generates XHTMLGanvas 1007, which is a logical representation of the document.
- XHTMLGanvas 1 007 is attacked by XHTMLPane 1 005.
- XHTMLGanvas 1 007 generates BoxTree 1 009 for the XHTML component of Document 1 001.
- Various Go countries and 1 008 required to hold and render the X H TM L portion of the document are also added to XHTMLGanvas 1 007.
- ApexNode 1 0100 in the SVG subtree of the document is attached to SVGZone 1 01 1 that is part of the DOM tree of Document 1 001 that represents the SVG component of the document.
- ApexNode 1 01 0 is attached to SVGPane 1 01 3 which is the highest Pane in the physical representation of the SVG part of the document.
- SVGGanvas 1 01 2 which represents the logical representation of the S VG part of the document, is generated by SVGEditlet And attached to SVGPanel 01 3.
- the data structure and commands for rendering the SVG part of the document on the screen are attacked by SVGGanvas.
- this data structure may include circles, lines, rectangles, etc. as shown.
- FIG. 21 (a) shows a simplified MV relationship in the XH TM L component of Document 1001.
- the model is XHTMLZonel 1 01 for the X H TM L component of Document 1 001.
- the XHTMLZone tree contains several Nodes and their corresponding Facets.
- the corresponding XHTMLZone and Pane are part of the model (M) part of the MV C paradigm.
- the View (V) portion of the MVC paradigm is the corresponding X HTML Canvas 1 1002 and BoxTree of the X H TM L component of Document 1 001.
- the XHTML part of the document is rendered on the screen using Canvas and Go country and included. Events such as keyboard and mouse input go in the opposite direction, as shown.
- SourcePane has an additional function: the role as a holder of DOM.
- Figure 21 (b) provides a library connection for the Document "! 001 component shown in Figure 21 (a).
- SourcePane 1 1 03 acting as a DOM holder, is the source D OM tree of the document.
- Gonne ctorTree is created by GonnectorFactory and creates DestinationPane 1 1 05 which also functions as the destination DOM holder
- Destinatio nPane 1 1 05 is a layout of the XHTMLDestinationGanvas 1 1 06 in the form of a box tree. Is done.
- Figures 22 (a)-(c) show further details related to the plug-in subsystem, the poker library connection, and the connector, respectively.
- Plug-in subsystems are used to add or replace functionality in a document processing system. It is.
- the plug-in subsystem includes ServiceBroker 1 041.
- ZoneFactoryService 1 201 that is attacked by Service Broker 1 041 generates a Zone for a part of the document.
- EditletService 1 202 is also attached to ServiceBroker 1 04 1.
- EditletService 1 202 generates a Ganvas corresponding to the Node in the Zone.
- ZoneFactory examples are XHTMLZoneF actory 1 21 1 and SVGZoneFactory 1 21 2 that generate XHTMLZone and SVGZone, respectively.
- the text component of the document may be represented by generating XHTMLZone, and the image may be represented using SVGZone.
- EditletService examples include XHTMLEditlet 1 221 and SVGEditlet 1 222.
- FIG 22 (b) shows further details related to the Pocabulary connection.
- the POB library connection is an important feature of a document processing system, and enables consistent expression and display of documents in two different ways.
- the VGManager 302 that holds the GonnectorFactory 303 is a part of the poker library connection subsystem. GonnectorFactory 303 generates a connector 304 for the document.
- the Connector monitors the nodes in the source D OM and modifies the nodes in the destination DOM to maintain consistency between the two representations.
- Temp late 31 7 represents a conversion rule of several nodes.
- a poker library connection descriptor (VCD) file is a list of Templates that represent a number of rules that transform an element or set of elements that satisfy a particular path or rule into another element.
- Temp late 31 7 and GommandTemplate 31 8 are all attached to VGMana ger302.
- VGManager is an object that manages all sections in a V CD file. One VGManager object is generated for one VCD file.
- FIG. 22 provides further details related to the Connector.
- GonnectorF actory 303 (Connect 3 ⁇ 4: Generate from i source document.
- ConnectorFactory 3 03 is attached to Vocabulary, Template, and ElementTemplate Each creates a Vocabu IaryConnector TemplateConnector ElementGonnector.
- the VGManager 302 holds a GonnectorFactory 303.
- the corresponding VCD file is read to generate the Vocabulary. In this way, Connect orFactory 303 force ⁇ is generated.
- This GonnectorFactory 303 is related to a ZoneFactory that generates a Zone and an Editlet that generates a Canvas.
- a template is a set of rules for converting markup language elements into other elements. For example, each template is matched to the source DOM tree or Zone. If it matches properly, a vertex connector is created. For example, the template “A / * / D” matches all branches that start at node A and end at node D, regardless of what nodes are in between. Similarly, “ ⁇ B” matches all “B” nodes from the root.
- FIG. 23 shows an example VCD script using VGManager and Connect orFactoryTree for the “MySampleXML” file. Shows the section, template section and corresponding components in VGManager in the script file.
- the attribute “match” is “sample: rootj”
- “label” is “MySampl eXMLj”
- “cal temp latej is“ sample templatej ”.
- Vocabulary includes a vertex element as “sampl e: root j in the VGManager of“ MySampl eXML ”.
- the corresponding UI label is“ MySampl eXMLj.
- the tag is “vcd: templatej, 3 ⁇ 4 Hij (i “sample: tempi ate”.
- FIG 24-28 shows a detailed description of loading the document “MySampleXML”.
- the document is loaded from storage 1 405 forces.
- the DOMService generates a DocumentGontaineM 401 that matches the D OM tree and DocumentManager 1 406.
- DocumentGontaineM 4 01 is attached to DocumentManager 1 406.
- the document contains XHTML and MySampleXML subtrees.
- ApexNode 1 403 of XH T M L is the top node of X H T M L to which the tag rxhtml: htmlj is attached.
- ApexNode 1 404 of “MySampleXML” is the top node of “MySampl eXMLj” with the tag “sample: rootj”.
- step 2 shown in Fig. 24 (b) RootPane generates XHTMLZone, Facet, and Canvas of the document.
- Panel 407, XHTMLZone 1 408, XHTMLCanvas 1 409, and BoxTree 1 410 are generated corresponding to ApexNode 1 403.
- step 3 shown in Fig. 24 (c) a tag "samp le: root" that XHTMLZone does not know is found and a SubPane is generated from the XHTMLGanvas area.
- Step 4 shown in Fig. 25 SubPane can handle "sample: rootj and obtain a ZoneFactory that can generate an appropriate Zone.
- This ZoneFactory is in a Vocabulary where ZoneFactory can be executed. It contains the contents of the Vo Ibu IarySection on “MySampl eXML”.
- a Vocabulary force ⁇ DefaiHtZone 1 601 corresponding to “MySampleXML” is generated.
- a corresponding Editlet is created and SubPane 1 501 is provided to create a corresponding Ganvas.
- Editlet is generated as VGGanvas 3 ⁇ 4 :. And that's TemplateSection3 ⁇ 4rP ⁇ .
- GonnectorFactoryTree Ru was also included ⁇ .
- GonnectorFactoryTree creates all Gonn ector3 ⁇ 4r that will become GonnectorTree.
- each connector is a destination DO Generate an M object.
- Some of the connectors contain xpath information.
- the xpath information contains one or more xpath expressions that are used to determine the subset of the source DOM tree that needs to be monitored for changes / modifications.
- step 7 shown in FIG. 28 the Pocabulary creates a Destination DOM i onPane from the source DOM pane. This is done based on the SourcePane.
- the ApexNode in the destination tree is attached to the DestinationPane and the corresponding Zone.
- the DestinationPane is provided with its own Editlet that creates a DestinationGanvas and builds data structures and commands to render the document in the destination format.
- Figure 29 (a) shows the flow when an event occurs on a node that does not have a corresponding source node and exists only in the destination tree.
- Events acquired by Canvas such as mouse events and keyboard events, are passed to the destination interface and transmitted to the EI ementTemp IateConnector. Since ElementTemplateGonnector does not have a corresponding source node, the transmitted event is not an edit operation on the source node.
- ElementTemplateGonnector executes the corresponding Action if it is communicated and the new event matches the command described in GommandTemplate. If there is no matching command, El ementTemp IateConnector ignores the transmitted event.
- Figure 29 (b) shows the flow when an event occurs on the node of the destination tree associated with the source node by TextOfGonnector.
- the TextOf Connector gets the text node from the node specified by XP ath in the source D OM tree and maps it to the node in the destination DOM tree. Events acquired by Ganva s, such as mouse events and keyword events, pass through the destination tree and are transmitted to TextOfGonn ector. TextOf Connector maps the transmitted event to the corresponding edit command of the source node, and loads it in Queuel 053.
- An edit command is a set of DOM API calls that are executed via Facet. Ki When a command loaded on the user is executed, the source node is edited.
- a new XML utilization technology is proposed.
- a new programming / radame is proposed.
- the creator of a web page is able to create a web page having various functions by using the V B script to control the Active X control.
- the Active X controls themselves are black-boxed inside, so you can freely customize the functions of the Activ X controls and connect multiple Activ X controls to each other. It cannot be operated directly in cooperation.
- the present inventor has realized that the XML processing technology described in the base technology is a technology suitable for solving such a problem.
- Conventional general archiving stores data necessary for its own operation in its own binary format, so unless an API that allows external reference is prepared, It was not possible to refer to the internal data from outside.
- the document processing apparatus 20 of the base technology holds the XML document in the DOM format, so that data can be freely accessed from the outside using the API provided by the DOM as a standard.
- This technology that should be called a “white box” Build a highly flexible programming paradigm.
- the present inventor has further advanced the XML processing technology described in the prerequisite technology, and has come up with a new XML usage technology as described later.
- Figures 30 (a), (b), and (c) show examples of the data structure of the XML document to be processed.
- the simplest example is an XML document written in a single Pocabulary, as shown in Figure 30 (a).
- the processing system of this XML document only needs to be able to process an XML document described in a specific vocabulary, such as a browser that displays a web page described in XHTML.
- the applicant of the present invention has a certain component of a library (indicated by white circles) and another one.
- a document processing device that can properly process XML documents that contain the following components (indicated by black circles).
- the base technology document processing device 20 an appropriate processing system is called for each fragment by the main control unit 22, which is an example of the activation unit, for an XML compound document that combines various XML vocabularies. You can build a view and edit the XML compound document according to the user's editing operation.
- processing systems may be hard-coded plug-ins (for example, HTM L unit 50 and S VG unit 60) developed by Java (registered trademark), etc., or written in the definition file according to VC unit 80. Sometimes it is script-based. If it is a media vocabulary such as XHTML, a one-word plug-in is provided, and if it is a user's private library, it will be described in a definition file. With this technology, for example, in the example shown in Fig. 30 (b), a document described in XHTML (components with white circles) is replaced with a partial document described with a library for displaying graphs (components with black dots). It is possible to insert and place a graph on the screen of an XH TM L document.
- Processing system is X Called by the ML fragment, and builds a view based on the contents of XML. Then, get UI events from the user and edit the XML. From a different point of view, it can be understood that the processing system responsible for displaying and editing a specific library is called with the XML fragment of that library as an argument.
- the processing system is not limited to displaying and editing a certain XML, but may perform various processes more freely.
- the server may be accessed through the Web Service API based on the data in the XML fragment, or natural language processing such as summarization and translation may be performed.
- the XML fragment is also an argument when starting the processing system, but at the same time, it plays the role of heap memory used during operation.
- the document processing device 20 of the base technology places a “tag” to start the procedure (processing system) in the XML document, and designates the argument as an attribute (attribute). It can be seen that this is a unique program execution environment where the procedure is executed with the enclosed text part as the operation target.
- the document processing device refers to the namespace of the component included in the document and Start the processing system. Therefore, in the example of FIG. 30 (c), the component 25 shown with diagonal lines has a function of starting a processing system for displaying graphs. Then, the activated processing system does not process the component existing under the component 25, but refers to the data 26 pointed to by the pointer information of the component 25. Operate. This component 25 also has an “anchor” function that indicates the position of the graph in the document.
- the pointer information included in the component 25 may be specified as an attribute of the component 25, or may be specified as an element value of the component 25 itself or a subordinate component. Parameter information necessary for the operation of the processing system may be described in the XML fragment containing the component 25.
- an application runtime environment that can operate by referring to data at any location in a document. Furthermore, as described above, data in a document can be referenced from any application using the DOM API. Therefore, there is a new programming environment that can use data in a document held as a DOM as a shared memory.
- the component 25 for starting the application is described, and the application started with the component 25 refers to the pointer information of the component 25.
- the other data 26 of the document is used as a shared memory. In this way, a new programming paradigm is realized in which documents and applications work together seamlessly.
- the document processing device 20 can detect the mutation when the DOM is changed.
- the data is referred to by the graph display processing system 2 6 force even if it is changed by another processing system, the change is notified to the graph display processing system. By doing so, changes can be appropriately reflected. In this way, even when multiple applications are operating with reference to the same data, the data can be linked appropriately, so that multiple applications can be easily linked to operate.
- the fact that multiple processing systems operate with reference to the same pointer is, in other words, the cooperation of processing systems that use XML documents as shared memory.
- the document processing apparatus of the present embodiment uses the above-described technology to link various procedures (processing systems) to create “functional” XML compound documents specialized for various purposes. Can do. What's more, unlike spreadsheet applications, it is possible to implement a platform based on open, XML technology that is transparent and scalable. Users can use these functional XML documents to perform various operations.
- Figures 3 1 (a) and (b) show examples of pointer information.
- Figure 31 (a) shows an example when the pointer information is described by an X path expression.
- pointer information indicating the position of data 26 to be referred to by the processor is described by an X path expression.
- the processor uses this X path expression to specify the data that it should reference. 2 6 can know the position.
- Figure 3 (b) shows an example where pointer information is given as conceptual information.
- Component 25 contains clearly standardized conceptual information that conceptually indicates the location of data 26 to be referenced by the processor as element or attribute values.
- the “clearly defined conceptual information” may be, for example, conceptual information based on ontology technology.
- a concept solution engine 27 is provided to interpret the concept information and identify the actual data.
- the concept solution engine 27 acquires the concept information and converts the concept information into, for example, a tag name.
- the concept resolution engine 27 returns tag names such as ⁇ important>, ⁇ i mportant>, and ⁇ confidential>, for example. This indicates that the processor should refer to the data with tags such as ⁇ Important> in the document.
- semantic type information may be, for example, semantic type information based on ontology technology. For example, when the concept of “important” is designated as the pointer information, information such as “management” and “business” may be designated as the semantic type information. In addition, when the concept of “amount” is specified as the pointer information, information such as “sales money”, “recommended retail price”, and “borrowing money” may be specified as semantic type information. This allows the processor to check semantic type consistency.
- Figures 3 2 (a) and (b) are diagrams for explaining the mechanism for notifying DOM changes.
- Figure 3 2 (a) shows the mechanism of the mutation event in the document processing device 20 of the base technology.
- Processing system 29 specifies the node that should be monitored for changes using the X path expression and registers it as a listener for the mutation event.
- the DOM unit 30 issues a mutation event to the registered listener when the DOM changes.
- Figure 3 2 (b) shows the mechanism of the mutation event newly proposed in this embodiment.
- the document processing device 20 is newly provided with a notification unit 28 that mediates notification of mutation events.
- the notification unit 28 receives the designation of the node to be monitored from the processing system 29.
- the DOM unit 30 notifies the notification unit 28 of that fact.
- the notifying unit 28 issues a mutation event to the processing system 29 monitoring the changed node.
- the notification unit 2 8 may accept the node to be monitored by the processing system 29 using the X path expression, but it is clearly standardized to provide a more flexible and versatile programming environment.
- the designation based on the converted concept information may be accepted.
- the notification unit 28 when notified of the DOM change from the DOM unit 30, the notification unit 28 sends the tag name of the node to the concept resolution engine 27, and the concept resolution engine 27 sends the tag name to the tag name. Get the corresponding conceptual information.
- the notification unit 28 issues a mutation event to the processing system 29 in which the acquired conceptual information is registered. Thereby, the processing system 29 can request the notification unit 28 to notify, for example, when “important information” is changed.
- the notification unit 28 determines whether the changed node corresponds to “important information” by using the concept solution engine 27. If applicable, notify the processor 29 of the DOM change.
- the processing system of the namespace library to which the component 25 belongs that is, the processing system activated by the component 25 may be provided as a part of a customizable application.
- this processing system is called a “view template” in the sense of the parts that make up the document view.
- a view template may be provided as a script-based definition file or It may be provided as a druppin.
- To use the functions of the view template ⁇ describe the component 2 5 that is the anchor of the view template ⁇ in the document, and indicate the data that the processor should refer to the component 2 5 In addition to describing the pointer information, other information required by the processing system may be described.
- the pointer information can be specified as clearly standardized conceptual information.
- the data to be referred to may be specified using a conditional expression that combines arithmetic operations, logical operations, natural language processing, and other arbitrary operations.
- FIG. 33 shows the configuration of the document processing apparatus according to the embodiment.
- the document processing apparatus 100 includes a view template control unit 70, an acquisition unit 71, and a view template 7 8 in addition to the configuration of the document processing apparatus 20 of the base technology shown in FIG. Is provided.
- the view template control unit 70 includes a presentation unit 72, a reception unit 74, and an editing unit 76.
- the presentation unit 7 2 presents the user with a view template 78 that can be used in the document processing apparatus 100.
- the presentation unit 72 may present a list of view templates 78 installed in the document processing apparatus 100 on the display screen, and the available view according to the contents of the document being edited. Template 7 8 may be selected and presented. For example, when an SVG document is being edited, a view template 78 that can be inserted into the SVG document may be selected and presented.
- the accepting unit 74 accepts an instruction from the user to add the view template 78 to the document.
- the reception unit 7 4 An instruction to insert a view template 78 at the position may be accepted.
- the editing unit 7 6 is configured to activate the view template 7 8 at the position instructed to be inserted in the document when the reception unit 7 4 receives the insertion instruction of the view template 7 8. Insert an element (tag).
- the editing unit 76 may present a screen for accepting the range of data used by the view template 78 for operation, and accept the designation of data from the user.
- the editing unit 76 may automatically determine the range of data used by the view template 78 for operation.
- the editing section 76 describes the pointer information of the data used by the view template 78 for operation in the document. Further, the editing unit 76 may accept parameters necessary for the operation of the view template 78 from the user or automatically determine and describe them in the document.
- the main control unit 22 starts the processing system for processing the component, that is, the view template 7 8.
- the view provided by the view template 7 8 is displayed on the document editing screen.
- the functions provided by View Template 78 can be used on the document editing screen.
- Figure 34 shows an example of a document editing screen.
- a view template palette 9 8 is displayed by the presentation unit 72.
- the document being edited contains information such as the personal schedule, To Do, and e-mail, but the edit screen shown in Figure 34 shows a view on the information. It is not displayed because it is not.
- the reception unit 7 4 This request is accepted, and the editing unit 76 inserts a component for starting the view template 78 for schedule display at a predetermined position of the document.
- the editing unit 76 describes the pointer information of the part storing the schedule information in the document as the attribute value of this component.
- Figure 3 5 shows the view template for schedule 7 8 activated
- the edit screen is shown.
- a view template 7 that processes the component by the main control unit 2 2, which is an example of the startup unit, 7 8, that is, the schedule view template 7 8 is activated, and the schedule information 9 9 described in the part indicated by the pointer information is displayed in a table format.
- view templates 78 having various functions prepared for general purposes can be added to a document, and a functional document can be easily constructed. can do.
- FIG. 36 shows the configuration of the document processing apparatus according to the present embodiment.
- the document processing apparatus 100 replaces the view template control unit 70 and the view template 78 of the document processing apparatus 100 according to the first embodiment shown in FIG. Units 3 0 0 0 are provided.
- AVC control unit 3 00 0 is a processing system that provides AVC functions.
- AVC component for table display 3 0 1 0,
- AVC component for chart display 3 0 2 0, UI display
- AVC property setting part 3 0 0 2 for setting property information necessary for the operation of these AVC components including.
- Figure 37 shows an example of an XML document populated with AVC component properties.
- This XML document is described as a “doc”, a library for describing data in the word book.
- An element “page” that is a child element of the root element “doc” indicates a page of the word book, and a plurality of elements are provided according to the number of pages. So Each element “page” includes an element “english” for storing English notation and an element “japanese” for storing Japanese notation.
- an AVC property 3012 describing property information necessary for the operation of the AVC component 3010 for table display is inserted.
- the AVC property 3012 is described by a table display “tbl” that can be processed by the table display AVC component 3010.
- the correspondence between the “tbl” and the “doc” library is described using the “avc” library for describing the AVC property.
- the following is a description of the original XML document, where “doc” is referred to as “host library” and the inserted AVC property is described as “pbl”, where “tbl” is referred to as “guest Poch library”. Or “AVC Pocapri”.
- the element “column” that stores the data of each column of the table has two "property” elements as child elements.
- the property information that the parameter “labe ⁇ transfer 1” refers to the element “engl ish” of the host platform is recorded.
- the second element “pr opertyj” records property information that the parameter “labe ⁇ transfer2” refers to the element “japanese” of the host library.
- the AVC component for table display 301 0 refers to this property information and displays the values by substituting the values of “english” and “japa nesej” of the host platform in each column of the table. Any document data can be passed to a processing system having general-purpose functions such as the AVC component 3010 for table display and processed.
- FIG. 38 shows the procedure of the document processing method according to the present embodiment.
- the host platform implementation is instructed by the source DOM to specify the AVC property template of the AVC component that is instructed to insert.
- This function may be handled by the main control unit 22 of the document processing apparatus 20 or the AVC control unit 3000.
- An instruction to insert an AVC component may be accepted when a menu or command is selected, or an AVC component may be accepted when an icon indicating the AVC component is dropped at the insertion position on the document display screen. You may accept a component insertion instruction.
- the schema of the host platform it is determined whether or not the AVC property can be inserted at the indicated position. If the AVC property is against the schema, the insertion may not be accepted.
- the processing system of the host platform requests the main control unit 22 to delegate the processing.
- the main control unit 22 selects an AVC component as a processing system capable of processing the AVC property and instructs the processing (S 18).
- the A VC property 3012 is described by the A VC library “tbl”
- the A VC component 3010 for table display is selected.
- the delegated A VC component processes and displays the A VC property, but here the template is inserted and the property value entity is not set, so the AVC component In order to set the A VC property, the A VC property setting section 3002 is called (S20).
- the AVC property setting unit 3002 requests the AVC component to present a dialog screen for accepting the setting of the AVC property (S22).
- This dialog screen is prepared as a library where A VC components can be used in common, and the A VC component generates a dialog screen that displays the property information that needs to be set and presents it to the user (S twenty four) .
- this dialog screen for example, property information to be set List, screen preview displayed, and data that can be referenced by the AVC component, that is, a list of elements and attributes included in the document may be presented.
- the user can select the element to be set in the table column, row, label, etc. from the list of elements included in the document, and drag and drop it on the property information list screen so that the correspondence can be set. It may be.
- the AVC component accepts the property setting information, and the node corresponding to the AVC property inserted in the source D OM Write the set property value (S28).
- the source DOM is changed, a mutation event is issued by the DOM unit 30 (S 30), and the AVC component itself, which is the AVC property processing system, receives the mutation event and processes the AVC property ( S 32). In this way, using the information set in the AVC property, the function of the AVC component is expressed and the display desired by the user is made (S34).
- Figure 39 shows an example of the displayed screen.
- the screen shown in Fig. 39 is displayed in the same way as described below.
- the main control unit 22 dispatches the processing system to the root element, and processes the host library. Since the processing system of the host pouch library cannot process the inserted AV C vocabulary, a pane is assigned to the part described in the AV C vocabulary, and the processing is transferred to another processing system.
- the main control unit 22 selects the A VC component as the processing system of the A VC library, and the selected AVC component generates a view with reference to the AVC property. In this way, the display screen shown in FIG. 39 is obtained.
- the AVC property is inserted into the XML document, and the AVC component is activated as the AVC property processing system to express the AVC function.
- the A VC property is inserted into the XML document. Without explaining the technology to develop A VC function.
- FIG. 40 shows the configuration of the document processing apparatus according to the present embodiment.
- the document processing apparatus 100 of the present embodiment includes an AVC property setting unit 3002 and an AVC property generation unit 3004 and a definition file.
- a generation unit 3006 is further included.
- Other configurations and operations are the same as those of the second embodiment.
- the AVC property generation unit 3004 displays the AVC property in the source document as shown in Fig. 37. Instead of importing 3012, an AVC property file containing AVC properties 3012 is generated as a separate file from the source document.
- the definition file generation unit 3006 generates a module for reading the A VC property file. Here, a script-based definition file using the VC function is generated.
- FIG. 41 shows the procedure of the document processing method according to the present embodiment.
- the user switches the processing system of the entire document or a zone from the first processing system that processes the tag set to which the zone component belongs to the A VC component that is an example of the second processing system.
- the AVC property setting unit 3 002 obtains a list of A VC components that are registered and available in the document processing apparatus 100 and presents them to the user. Accepts selection of VC components (S 52).
- a VC property setting unit 30 02 When receiving the selection of the A VC component to be used (S54), the A VC property generation unit 3004 selects the necessary parameter / parameter settings for the operation of the AVC component.
- AVC property generation unit 3004 When the user sets property information using the dialog screen (S62), the A VC property generation unit 3004 generates an A VC property file.
- the A VC component requests the definition file generation unit 3006 to present the definition file registration dialog screen (S 64).
- the definition file generation unit 3006 queries the user for the registration name of the definition file (S 66) and receives the definition file name from the user (S 68).
- a definition file to be called as a processing system is generated and registered so that the document processing apparatus 100 can be used (S 70).
- This definition file includes an instruction for reading an A VC property file and an instruction for delegating the processing of the read A VC property to another appropriate processing system, that is, an A VC component.
- the AVC function can be realized without inserting property information into the source document. Therefore, it is possible to add a new view using the AVC function while maintaining the validation of the source document, regardless of the platform describing the source document. Also, by saving the generated definition file and applying it to another document, you can reuse the definition file and use the AV function for multiple documents.
- a PI that specifies the processing system may be described for each zone where the processing system switches.
- the main control unit 22 assigns the processing system preferentially if a PI that specifies the processing system is described. If this function is used, the AVC component can be assigned preferentially and the AVC function can be expressed by specifying the definition file generated to call the AVC function as PI.
- FIG. 42 shows a configuration of the document processing apparatus according to the present embodiment.
- the document processing apparatus 100 according to the present embodiment further includes an AVC component switching unit 3050 in addition to the configuration of the document processing apparatus 100 according to the second embodiment shown in FIG.
- the A VC component switching unit 3050 accepts from the user whether the A VC component applied to the document is to be switched to a plurality of A VC components 301 0 to 3040, and selects the selected AVC component. Apply the nent to the document. As a result, the user can switch and apply a plurality of AVC components to the same document, and can process the document in a multifaceted manner using AVC components having various functions. Other configurations and operations are the same as those of the second embodiment.
- the element 3025 is described in “avc-datagrid”, which is a library in which the table display AVC component 3 100 is responsible for starting up the table display AVC component 3010.
- the root element “datagrid” of this Pocabulary has as its attributes information indicating the name of the AVC component, the version number, and whether to open the dialog at startup.
- the AVC property 3012 is omitted in FIG. 43, and details are shown in FIG. 44 and FIG.
- FIG. 44 shows the contents of the AV property 3012 described in the document shown in FIG.
- the AVC property 301 2 includes the property information referenced by the AVC component for table display, that the repeated element is “/ html / body / p / root / pcj”, the display / non-display of the header line, and the line number column.
- FIG. 45 shows the contents of the AV property 3012 described in the document shown in FIG.
- the element “column” in the “avc_datagr id” of the poch library “cpu” is a subordinate element of “/ html / body / p / root / pc” in which the column node is specified as a repeated element as property information about the table column.
- Property information is described in the same way for the other columns.
- FIG. 46 shows an example of a screen on which the document shown in FIG. 43 is displayed.
- Tape started as a processing module for element 3025 described in the document shown in Figure 43
- the AVC component 3010 for displaying the data refers to the AVC property 3012, and displays the data related to the computer specifications described in the document in a table.
- the heading is not set and it is an empty element.
- the AVC component for table display 3010 displays the element name of the element designated as data in this column as a heading. Therefore, in Figure 46, the element name “cpu” of the element specified as the data of that column is displayed as the heading of the second column of the table.
- Figure 47 shows the menu that appears when the mouse is right-clicked in the region of the view generated by the A VC component.
- a dialog screen for setting the A VC property 3012 to which the A VC property setting section 3002 force table display A VC component 3010 refers is displayed.
- the AVC component switching section displays a dialog screen for switching 3050 AVC components.
- FIG. 48 shows an example of a dialog screen displayed by the A VC component switching unit 3050.
- the AVC component switching unit 3050 acquires and displays a list of AVC components that can be used by the document processing apparatus 100, and accepts selection of the switching destination AVC component from the user.
- the number of AVC components to be switched to can be increased.
- the chart display A VC component 3020 to be displayed in the form of a scatter diagram is selected.
- the AVC component switching unit 3050 receives the AVC component of the switching destination, as will be described later, the element 3025 serving as an anchor for starting the AVC component in the source DOM is replaced with the original AVC component.
- the vocabulary element that can be processed by the element is rewritten to the vocabulary element that can be processed by the AVC component at the switching destination. Rewriting the source DOM The change is notified to the processing system by the mutation event.
- the AVC component of the switching destination here for the chart display AVC component 3 0 2 0 is activated.
- the activated chart display AVC component 3 0 2 0 calls the AVC property setting unit 3 0 0 2 in order to accept the setting of the AVC property.
- Fig. 49 shows an example of the A V C property setting screen displayed by the A V C property setting section 3 0 0 2.
- Figure 49 shows the screen for setting scatter plot data.
- series and element labels can be specified.
- the repetition element was specified as "/ htm l / body / p / root / pcj" in the AVC component for table display 3 0 10 which is the AVC component before switching. Inheriting this setting, the same element is automatically set as a repeated element.In the AVC component for table display 3 0 1 0, "cpu”, "memoryj," specified as column data
- the text nodes of “hdd” and “pr i ce” are automatically set as X axis, ⁇ axis, series, and element label data.
- To change the data specification simply select the data from the document elements on the left-hand side, and click “Settings” or drag and drop. A preview of the display screen is displayed in the lower right.
- FIG. 50 shows an example of the AVC property setting screen displayed by the AVC property setting unit 300.
- Figure 50 shows the screen for setting the option of the data specified as the X-axis.
- the data specified as the X-axis is found, and the data type, display item, and data type are “string”.
- the maximum number of characters, if any The display / hide of invalid data can be set.
- “String” is selected by default as the data type, but “numeric” and “date / time” can be specified if the data is numeric.
- the data type is “character string”, the same character string is grouped and an icon is displayed on the scatter plot.
- the scatter plot is displayed with the axis as a number line.
- the element “cpu” is specified as a character string on the X axis and the element “memory” is specified as a character string on the Y axis, so the text node of the element “cpu” is “2.2 ghz on the X axis. ”,“ 2.8 ghz ”,“ 3.0 ghz ”, and the Y-axis displays the icons with the text node of the element“ memory ”classified into“ 512 mbj ”and“ 1 gbj ”. .
- FIG. 5 1 shows an example of an AVC property setting screen displayed by the AV property setting section 3 0 0 2.
- Figure 5 1 shows the screen for setting the option of data specified as a series.
- the maximum data when the data type, display item, and data type of the data specified as a series is "string"
- the number of characters and legend display / non-display can be set.
- different icons are displayed for the same character string, numerical value, or date / time.
- the element “hdd” is specified as a character string in the series, three types of icons are displayed for each character string of the text node of the element “hdd”.
- FIG. 5 2 shows an example of the A V C property setting screen displayed by the A V C property setting unit 3 0 0 2.
- Figure 52 shows the screen for setting the options for the data specified as the element label, and the maximum number of characters for the data specified as the element label can be set.
- the specified data is displayed as a label near the icon.
- the element “pr i cej” included in the element “pc” is located near each icon corresponding to the element “pc”.
- the text node string is displayed as a label.
- FIG. 53 shows an example of an AVC property setting screen displayed by the AVC property setting unit 3 0 2.
- Figure 5 3 shows the property information in the scatter plot display area. The screen for setting the information is shown, and the width and height of the display area can be set.
- FIG. 54 shows an example of the display screen when switching to the AVC component 3020 for chart display.
- the table display A VC component 3010 was applied and the data in the document was displayed in a table.
- the same data can be obtained by switching to the chart display A VC component 3020. Displayed as a scatter plot. In this way, multiple AVC components can be switched and applied to the same document, so that various general-purpose functions can be used to process the document in multiple ways. You can.
- FIG. 55 shows how the document shown in FIG. 43 is changed by switching the AV component.
- the table display AVC component 301 0 processes the element 3025 that is an anchor to activate the AVC components.
- the element of “avc_datagr i dj”, which is a possible vocabulary, is rewritten to the element of “avc-xychart”, which is a library that can be processed by the AVC component for chart display 3020.
- FIG. 56 shows the contents of the AVC property 3012 described in the document shown in FIG.
- the AVC property 301 2 includes the property information referenced by the chart display AVC component 3020.
- the repeated element is “/ html / body / p / root / pcj”, the width of the display area, and the display area width.
- This property information is the same as that described in the AVC property 301 2 of the AVC component for table display shown in Fig. 44-component 301 0, and describes the A VC property. In this way, by describing the AVC property 3 01 2 using a common schema, one AVC component can be written once for a document.
- the setting is inherited between the AVC components when the AVC component is switched. It is possible to reduce the trouble of user setting. It is also possible to generate a view with AVC components applied semi-automatically. When developing a new AVC component, make it operate by referring to the AVC property 3 0 1 2 using a common schema so that settings common to other AVC components can be inherited. It is desirable.
- FIG. 5 7 shows the contents of the AV property 3 0 1 2 described in the document shown in FIG.
- the element “ax is” of the Poch Library “avc-xychart” is the property information related to the X-axis, and the axis data is specified as a repeated element.
- “Chtm” The subordinate element “cpu” ”Text node, axis heading, data type, minimum value when data type is“ number ”, maximum value, major tick width, minor tick width, minimum when data type is“ datetime ” Value, maximum value, major scale width, minor scale width, how to handle date-only data, display items when data type is ⁇ character string '', maximum number of characters, display / hide of invalid data are described Includes elements. Property information is also described for the Y axis.
- FIG. 5 8 shows the contents of the AV property 3 0 1 2 described in the document shown in FIG.
- the element “ser i es” of the pav library “avc-xychart” is subordinate to “/ htm l / body / p / root / pc”, where the data of the series is specified as a repeated element as property information about the series.
- Figure 59 shows the contents of the AV property 3 0 1 2 described in the document shown in Figure 55.
- the element “object l abe l” of the pavobbler “avc_xychart” is a subordinate element of “/ htm l / body / p / root / pc” in which the element label data is specified as a repeated element as property information about the element label. It is a text node of “pr i ce” and includes an element describing the maximum number of characters.
- Figure 60 is a screen for setting the scatter plot data shown in Figure 49.
- the screen when the Y-axis data is changed is shown.
- the text node of element “pr i ce” is dragged and dropped onto the Y-axis data area, the text node of element “pr i ce” is newly designated as the Y-axis data.
- a preview of the scatter plot with the Y axis changed to “pri cej” is displayed.
- the AVC component for chart display 3 0 2 0 is an arbitrary element that exists repeatedly in the document. Scatter plots can be created by setting element data as axes.
- Figure 61 shows the screen when the data type of the Y-axis data is changed.
- the text node of the element “p r i cej” stores the price of the computer as a numeric value, so a data type of “numeric value” is allowed in addition to “string”. So, if you change the data type of the Y-axis to “Numeric” and set the minimum value to “0”, the Y-axis will change to a number line starting from 0 as shown in the lower right of the screen. The price of each computer is plotted on a straight line.
- the document processing apparatus 10 0 in the form can similarly process documents described in other markup languages such as SGML and HTML.
- the present invention can be used for a document processing apparatus that processes data structured 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
La présente invention concerne un appareil de traitement de documents (100) comportant un composant AVC (3010) destiné à l'affichage en tableau, qui est un module de traitement à utiliser comme composant polyvalent pour le traitement de données dans les documents et exécutant des fonctions prescrites, un composant AVC (3020) pour l'affichage des graphiques, un composant AVC (3030) pour l'affichage de la partie interface utilisateur, et un composant AVC (3040) pour l'affichage des arborescences. Un module de commutation des composants AVC (3050) permet au composant AVC de s'appliquer aux données par commutation d'une pluralité de différents composants AVC pour les mêmes données.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008527655A JPWO2008015787A1 (ja) | 2006-07-31 | 2007-07-31 | 文書処理装置及び文書処理方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006209319 | 2006-07-31 | ||
JP2006-209319 | 2006-07-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2008015787A1 true WO2008015787A1 (fr) | 2008-02-07 |
Family
ID=38996975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2007/000819 WO2008015787A1 (fr) | 2006-07-31 | 2007-07-31 | Dispositif et procédé de traitement de documents |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2008015787A1 (fr) |
WO (1) | WO2008015787A1 (fr) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004288111A (ja) * | 2003-03-25 | 2004-10-14 | Sony Ericsson Mobilecommunications Japan Inc | メール装置、メールサーバおよびメーラープログラム |
-
2007
- 2007-07-31 WO PCT/JP2007/000819 patent/WO2008015787A1/fr active Application Filing
- 2007-07-31 JP JP2008527655A patent/JPWO2008015787A1/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004288111A (ja) * | 2003-03-25 | 2004-10-14 | Sony Ericsson Mobilecommunications Japan Inc | メール装置、メールサーバおよびメーラープログラム |
Non-Patent Citations (4)
Title |
---|
"HITACHI CD-ROM Manual o Sakusei shiyo! DocIntegra Browser Build User's Guide", vol. 1ST ED., 1 January 1997, HITACHI, LTD., pages: 17 - 25, XP003020891 * |
C&R KENKYUSHO: "Excel2003 Master Bible", vol. 1ST ED., 5 March 2004, SOFTBANK PUBLISHING INC., pages: 373 - 374, XP003020893 * |
FITZGERALD M.: "XML Hacks", vol. 1ST ED., 28 March 2005, O'REILLY JAPAN, INC., pages: 119 - 124, XP003020890 * |
MCCORMICK B.: "Power Authoring Internet Explorer no Authoring Technique", MICROSOFT INTERACTIVE DEVELOPER, no. 1, 18 May 1997 (1997-05-18), pages 147 - 156, XP003020892 * |
Also Published As
Publication number | Publication date |
---|---|
JPWO2008015787A1 (ja) | 2009-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5020075B2 (ja) | 文書処理装置 | |
WO2006137565A1 (fr) | Dispositif de traitement de document et méthode de traitement de document | |
WO2006121051A1 (fr) | Dispositif et procede de traitement de document | |
WO2006051905A1 (fr) | Dispositif et procede de traitement de donnees | |
WO2007034858A1 (fr) | Appareil de gestion de données, appareil d’édition de données, appareil de parcours de données, méthode de gestion de données, méthode d’édition de données et méthode de parcours de données | |
WO2006085455A1 (fr) | Dispositif et procede de traitement de document | |
WO2006051715A1 (fr) | Dispositif de traitement de document et methode de traitement de document associee | |
WO2006051870A1 (fr) | Dispositif de traitement de donnees et dispositif et procede de traitement de document | |
WO2006120926A1 (fr) | Dispositif de conception de formulaires de saisie et méthode de conception de formulaires de saisie | |
WO2006051975A1 (fr) | Dispositif de traitement de document | |
WO2006046666A1 (fr) | Dispositif de traitement de document et procede de traitement de document | |
WO2007105364A1 (fr) | Dispositif de traitement de document et procede de traitement de document | |
WO2006051713A1 (fr) | Dispositif et procede de traitement de document | |
WO2006051969A1 (fr) | Dispositif de traitement de document et methode de traitement de document | |
WO2006051960A1 (fr) | Dispositif de traitement de document et méthode de traitement de document | |
CN101203848A (zh) | 文档处理装置和文档处理方法 | |
WO2006051954A1 (fr) | Dispositif de traitement de document et méthode de traitement de document | |
WO2007007529A1 (fr) | Dispositif et module de traitement de document | |
WO2006051904A1 (fr) | Dispositif et procede de traitement de donnees | |
WO2007032460A1 (fr) | Appareil de traitement de données | |
WO2006046668A1 (fr) | Dispositif de traitement de document et méthode de traitement de document | |
WO2006051712A1 (fr) | Dispositif et procede de traitement de document | |
WO2006051716A1 (fr) | Dispositif et procede de traitement de document | |
WO2006051959A1 (fr) | Dispositif de traitement de document et méthode de traitement de document | |
WO2006051955A1 (fr) | Dispositif serveur et méthode d’attribution d’espace de noms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07790312 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2008527655 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
NENP | Non-entry into the national phase |
Ref country code: RU |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 07790312 Country of ref document: EP Kind code of ref document: A1 |