Systems and methods for creating and displaying a user interface for displaying hierarchical data
9 claims: 8 independent, 1 dependent
- 1ハイパーテキストマークアップ言語(HTML)で階層データを表示する装置であって、 前記階層データ内の第1レベルのデータを構文解析し、前記ハイパーテキストマークアップ言語(HTML)で該第1レベルの所定のデータ構造を作成する手段と、 ここで、前記第1レベルのデータ に第2レベルの 従属データが関連付けられているか否かを、前記階層データの追跡経路を利用して判別する手段と、 前記第1レベルのデータに第2レベルの 従属データが関連付けられている場合 、第1従 属データインジケータを生成する手段とを含み、 前記作成された第1レベルのデータ構造において、該第1レベルのデータおよび前記 第1 従属データインジケータを表示する手段と、 ここで、前記第1従属データインジケータは、第2レベルの従属データが存在するときには、前記第1レベルのデータのデータ項目に対応して表示され、かつ、第2レベルの従属データが存在しないときには、前記第1レベルのデータ構造内においては表示されないように表示制御されるものであり、 前記第1レベルのデータ構造において前記第1 従属データインジケータが作動したとき、該 第1 従属データインジケータに対応した前記 第2 レベルの前記従属データを構文解析し、前記ハイパーテキストマークアップ言語(HTML)で該 第2 レベルの所定のデータ構造を作成する手段と、 前記作成された第2レベルのデータ構造において、 該第2 レベルの 従属 データおよび 前記第2 従属データインジケータを表示する手段と ここで、前記第2レベルの従属データは、前記第1レベルのデータが表示される形式に類似した形式で表示され、かつ、該第2レベルの従属データのデータ項目は、該第1レベルのデータのデータ項目が表示される形式とは異なる形式で表示され 前記第2従属データインジケータは、第3レベルの従属データが存在するときには、前記第1レベルのデータのデータ項目および前記第2レベルのデータのデータ項目に対応して表示され、かつ、第3レベルの従属データが存在しないときには、前記第2レベルのデータ構造内においては表示されないように表示制御されるものであり、 を具えたことを特徴とする装置。
- 2前記従属データが、表示されるときに、前記従属データインジケータと関連する前記第1レベルのデータが前記表示でそのまま見えるように表示されることを特徴とする請求 項1記 載の装置。
- 3前記階層データは、拡張可能マークアップ言語(XML)データであることを特徴とする請求項1記載の装置。
- 4前記第1レベルの表示が行と列を備えるテーブル形式であり、 各行に第1レベルのデータ項目が形成され、 各行と各列との交差点にフィールドが形成されたことを特徴とする請求項1記載の装置。
- 5ハイパーテキストマークアップ言語(HTML)で階層データを表示する方法であって、 前記階層データ内の第1レベルのデータを構文解析し、前記ハイパーテキストマークアップ言語(HTML)で該第1レベルの所定のデータ構造を作成するステップと、 ここで、前記第1レベルのデータ に第2レベルの 従属データが関連付けられているか否かを、前記階層データの追跡経路を利用して判別するステップと、 前記第1レベルのデータに第2レベルの 従属データが関連付けられている場合 、第1従 属データインジケータを生成するステップとを含み、 前記作成された第1レベルのデータ構造において、該第1レベルのデータおよび前記 第1 従属データインジケータを表示するステップと、 ここで、前記第1従属データインジケータは、第2レベルの従属データが存在するときには、前記第1レベルのデータのデータ項目に対応して表示され、かつ、第2レベルの従属データが存在しないときには、前記第1レベルのデータ構造内においては表示されないように表示制御されるものであり、 前記第1レベルのデータ構造において前記第1 従属データインジケータが作動したとき、該 第1 従属データインジケータに対応した前記 第2 レベルの前記従属データを構文解析し、前記ハイパーテキストマークアップ言語(HTML)で該 第2 レベルの所定のデータ構造を作成するステップと、 前記作成された第2レベルのデータ構造において、 該第2 レベルの 従属 データおよび 前記第2 従属データインジケータを表示するステップと ここで、前記第2レベルの従属データは、前記第1レベルのデータが表示される形式に類似した形式で表示され、かつ、該第2レベルの従属データのデータ項目は、該第1レベルのデータのデータ項目が表示される形式とは異なる形式で表示され、 前記第2従属データインジケータは、第3レベルの従属データが存在するときには、前記第1レベルのデータのデータ項目および前記第2レベルのデータのデータ項目に対応して表示され、かつ、第3レベルの従属データが存在しないときには、前記第2レベルのデータ構造内においては表示されないように表示制御されるものであり、 を具えたことを特徴とする方法。
- 6前記従属データが、表示されるときに、前記従属データインジケータと関連する前記第1レベルのデータが前記表示でそのまま見えるように表示されることを特徴とする請求 項5記 載の方法。
- 7前記階層データは、拡張可能マークアップ言語(XML)データであることを特徴とする請求 項5記 載の方法。
- 8前記第1レベルの表示が行と列を備えるテーブル形式であり、 各行に第1レベルのデータ項目が形成され、 各行と各列との交差点にフィールドが形成されたことを特徴とする請求 項5記 載の方法。
- 9コンピュータによって、請求項 5ないし8 のいずれかに記載された方法を実行可能なプログラムを記憶した記録媒体。
Independent claims9
1 paragraph, as filed
[0001] [Technical field to which the invention belongs] The systems and methods described in the present invention generally relate to graphical user interfaces for computing systems, more specifically in hypertext markup language (HTML) for hierarchical data (such as extensible markup language (XML) data). Regarding the user interface to be displayed. [0002] [Conventional technology] The extensible markup language (XML) is a relatively recent evolution of the general markup language, which was invented a few years ago as a common style sheet for technical reports. From this common markup language, the hypertext language (HTML) that enabled the World Wide Web has evolved. [0003] Prior to XML, markup languages usually focused on describing page layouts on computer screens. This layout defined the text font, text position, image position, background color, and so on. Web pages written in HTML can be rendered in web browser applications, and web browsers work on almost any kind of computer. Web pages look and work virtually exactly the same regardless of the computing environment. [0004] However, HTML does not have a way to "know" the meaning of the data displayed. You can only describe what a web page looks like, how it works, and what text it contains. HTML recognizes a lot about words, but nothing about information. [0005] On the other hand, the difference between XML and these markup languages is that XML emphasizes data description rather than page description. Therefore, XML makes an application aware of what it is doing. XML makes web pages intelligent. For example, a spreadsheet application written in XML can be linked to other spreadsheets and server-based applications that provide even greater power over the Internet. [0006] XML introduces the concept of metadata, or data about data. In XML, each piece of data contains not only the data itself, but also a description, or meaning, of the data. An XML database can have a list of names (data) and tags for the data (metadata) that tells them that those names are customer names. XML search engine (XML search) engine) does not have to pull in all the data to analyze the data and search the list of customer names, just query the metadata and that those names are the customer names and just retrieve the data Just find the tag that indicates it. [0007] XML data is hierarchical. That is, there are different levels of data, one level subordinate to another. For example, an XML document contains first-level data items, each data item being a customer name. Each first level data item (customer name) is populated with multiple attributes (stored in fields) and / or one or more second level data items, i.e. dependent data items. In the example where the first level data item is a customer name, each customer name may include a second level data item that includes a customer order. The second level data item may then have a dependent data level (third level data item). In the example described, the second level data item (customer order) can have dependent data items such as order details. [0008] [Problems to be Solved by the Invention] XML has these advantages, but XML does not allow you to format your data. Therefore, you still need to use a formatting language to display XML data. Efficiently displaying XML (or, in fact, hierarchical data) using HTML is an important goal to assist application developers and users of XML-based applications. [0009] Therefore, an object of the present invention is a system and a method capable of displaying hierarchical data such as extensible markup language (XML) data in a hypertext markup language (HTML) format in a convenient and efficient manner. Is to provide. [0010] [Means for solving problems] For data that includes dependent data, display an operable dependent data indicator in the user interface. Dependent data is displayed in a format similar to parent data when activated. [0011] There are two ways to build a table, the first is to parse all the data first, build the table needed for display, and the second is to first level the top level. Parses only the data in, and then builds a dependent table in response to user requests. [0012] BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. (Overview) In this example, hierarchical data (extensible markup language (XML)) in a hypertext markup language (HTML) with an actuatable subordinate data indicator that displays data that is dependent on the displayed data when activated. ) Describes a graphical user interface for displaying data, etc.). [0013] In addition, a method of constructing a display by parsing hierarchical data will be described. One way to do this is to first parse the complete data and build a hierarchical table that can be displayed with commands. As another method, a method is described in which a table is constructed according to the request and a table for displaying the requested data is required only for the data requested to be displayed. [0014] Hereinafter, a specific example will be described. (Example) FIG. 1 shows an example of a suitable computing environment 100 that a centralized alert delivery system can implement (fully or partially) as described in the present invention. The computing environment 100 is available in the computer and network architectures described in the present invention. [0015] Computing System Environment Example 100 is merely an example of a computing environment and does not imply any limitation on the use or scope of functionality of computer and network architectures. This computing environment 100 should not be construed as dependent on or required with respect to any or combination of the components shown in the example computing environment 100. [0016] Centralized alert delivery systems can also be implemented in many other general purpose or dedicated computing system environments or configurations. Examples of well-known computing systems, environments and / or configurations that may be suitable for use include, but are not limited to, personal computers, server computers, small and lightweight clients, large heavyweight clients, mobile or These include laptop devices, multiprocessor systems, microprocessor-based systems, settop boxes, programmable consumer electronics, network PCs, minicons, mainframe computers, and distributed computing environments that include the above systems or devices. [0017] A centralized alert delivery system can be described in the general context of computer executable instructions such as program modules executed by a computer. In general, a program module includes routines, programs, objects, components, data structures, etc. that perform a particular task or perform a particular abstract data type. The centralized alert delivery system can also be put to practical use in a distributed computing environment where tasks are performed by remote processing devices linked over a communication network. In a distributed computing environment, program modules can be located on both local and remote computer storage media, including memory storage devices. [0018] The computing environment 100 includes a general-purpose computing device in the form of a computer 102. The components of computer 102 include, but are not limited to, one or more processors or processing units 104, system memory 106, and system bus 108 that combines various system components, including processor 104, into system memory 106. .. [0019] System bus 108 represents one or more of several types of bus structures, including memory buses or memory controllers, peripheral buses, accelerated graphics ports (AGPs), and processors or local buses that use different bus architectures. For example, the architecture includes Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, and Video Electronics Standards. There is an Association (VESA) local bus and a Peripheral Component Interconnect (PCI) bus, also known as the Mezzanine bus. [0020] The computer 102 typically comprises a large number of computer readable media. Such media may be any available medium accessible by computer 102, including volatile and non-volatile media, removable and non-removable media. [0021] [0021] System memory 106 includes computer-readable media in the form of volatile memory such as random access memory (RAM) 110 and / or non-volatile memory such as read-only memory (ROM) 112. The basic input / output system (BIOS) 114, which contains basic routines that help transmit information between elements in computer 102, such as at boot time, is stored in ROM 112. RAM 110 typically contains data and / or program modules that have immediate access to processing unit 104 and / or are currently being manipulated by it. [0022] Computer 102 may also include other removable / non-removable, volatile / non-volatile computer storage media. For example, Figure 1 shows a hard disk drive 116 that reads and writes to a non-removable non-volatile magnetic medium (not shown), to a removable non-volatile magnetic disk 120 (eg, "floppy® disk"). The magnetic disk drive 118 for reading and writing, and the optical disk drive 122 for reading and writing to and from a removable non-volatile optical disk 124 such as a CD-ROM, DVD-ROM, or other optical medium are shown. The hard disk drive 116, the magnetic disk drive 118, and the optical disk drive 122 are connected to the system bus 108 by one or more data medium interfaces 126, respectively. Separately, the hard disk drive 116, the magnetic disk drive 118, and the optical disk drive 122 can be connected to the system bus 108 by one or more interfaces (not shown). [0023] The disk drive and associated computer readable media include non-volatile storage for storing computer readable instructions, data structures, program modules, and other data for the computer 102. Examples show hard disk 116, removable magnetic disk 120, and removable optical disk 124, but magnetic cassettes or other magnetic storage devices, flash memory cards, CD-ROMs, digital versatile disks (DVDs) or others. Other types of computer-readable media that can store computer-accessible data, such as optical storage, random access memory (RAM), read-only memory (ROM), and electrically erasable programmable read-only memory (EEPROM). It will be understandable that it can be used to implement examples of computing systems and environments. [0024] Hard disk 116, magnetic disk 120, optical disk 124, ROM 112, and / or RAM The 110 can contain any number of program modules, including, for example, an operating system 126, one or more application programs 128, other program modules 110, and program data 132. Each of such operating system 126, one or more application programs 128, other program modules 130, and program data 132 (or a combination thereof) is the communication layer and subscription layer of the centralized alert delivery system. Embodiments can be included. [0025] The user can enter commands and information into the computer 102 via an input device such as a keyboard 134 and a pointing device 136 (eg, a "mouse"). Other input devices 138 (not specifically shown) include microphones, joysticks, gamepads, satellite dishes, serial ports, scanners, and more. These input devices and other input devices are connected to the processing unit 104 via an input / output interface 140 coupled to the system bus 108, such as a parallel port, game port, or universal serial bus (USB). It can also be connected by other interfaces and bus structures. [0026] Monitor 142 and other types of display devices can also be connected to system bus 108 via an interface such as video interface 144. In addition to monitor 142, there are other output peripheral devices such as speakers (not shown) and printer 146 that can be connected to computer 102 via input / output interface 140. [0027] Computer 102 can also operate in a network environment using a logical connection to one or more computers, such as remote computing device 148. For example, remote computing devices 148 include personal computers, portable computers, servers, routers, network computers, peer devices, or other common network nodes. The remote computing device 148 is shown as a portable computer capable of comprising many or all of the elements and functions described in the present invention with respect to the computer 102. [0028] The logical connection between computer 102 and remote computer 148 is shown as local area network (LAN) 150 and common wide area network (WAN) 152. Such networking environments are common in offices, enterprise-scale computer networks, intranets, and the Internet. [0029] When implemented in a LAN networking environment, the computer 102 is connected to the local network 150 via a network interface or network adapter 154. When implemented in a WAN networking environment, computer 102 typically includes other means for establishing communication over modem 156 or wide network 152. Modem 156 may be internal or external to computer 102, but can be connected to system bus 108 via input / output interface 140 or other suitable mechanism. It will be appreciated that the network connection illustrated is an example and other means of establishing a communication link between computers 102 and 148 can be used. [0030] In network environments, such as those shown in Computing Environment 100, the program modules shown for personal computer 102 or parts thereof can be stored in remote memory storage devices. For example, the remote application program 158 resides in the memory device of the remote computer 148. For illustration purposes, other executable program components such as application programs and operating systems are shown here as discrete blocks, but such programs and components are at different times in different storage components of computing device 102. It will be understood that it is resident and executed by the computer's data processor. [0031] <<u style="single">Computer executable instructions</u>> The implementation of a user interface that displays hierarchical data can be described in the general context of computer executable instructions, such as program modules, executed by one or more computers or other devices. In general, a program module includes routines, programs, objects, components, data structures, etc. that perform a particular task or perform a particular abstract data type. Generally, the functionality of the program module can be combined or distributed as needed in various embodiments. [0032] <<u style="single">Example of operating environment</u>> FIG. 1 shows an example of an appropriate operating environment 100 capable of implementing a user interface for displaying hierarchical data. In particular, the centralized alert delivery system described in the present invention can be implemented in whole or in part by any program module 128-130 and / or operating system 128 of FIG. 1 or a portion thereof. [0033] This operating environment is merely an example of a suitable operating environment and does not imply any limitation on the use or scope of functionality of the centralized alert delivery system described in the present invention. Other well-known computing systems, environments and / or configurations suitable for use include, but are not limited to, personal computers (PCs), server computers, mobile or laptop devices, multiprocessor systems, etc. Distributed computing environment including microprocessor-based systems, programmable home appliances, wireless phones and equipment, general purpose and dedicated appliances, application-specific integrated circuits (ASICs), network PCs, minicons, mainframe computers, and the above systems or devices. and so on. [0034] <<u style="single">Computer readable medium</u>> Implementations of user interfaces that display hierarchical data can be stored in some form of computer-readable medium or transmitted over some form of computer-readable medium. The computer-readable medium can be any computer-accessible medium. For example, computer-readable media include, but are not limited to, "computer storage media" and "communication media." [0035] "Computer storage media" includes volatile and non-volatile removable and non-removable media, methods or techniques for storing information such as computer-readable instructions, data structures, program modules, or other data. It is carried out in. Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROMs, digital versatile disks (DVDs), or other optical storage, magnetic cassettes, magnetic tapes, magnetics. There is disk storage or other magnetic storage device, or other medium that can be used to store desired information and is accessible by a computer. [0036] A "communication medium" is usually the embodiment of other data by computer-readable instructions, data structures, program modules, or modulated data signals such as carrier waves or other transport mechanisms. Communication media also include information distribution media. [0037] A "modulated data signal" is a signal that sets or changes one or more characteristics, such as by encoding information into a signal. For example, communication media include, but are not limited to, wired media such as wired networks or direct wired connections and wireless media such as acoustic, RF, infrared, and other wireless media. The above combinations are also included in the range of computer readable media. [0038] <<u style="single">Graphical user interface: First level data items</u>> FIG. 2 is a diagram illustrating an example of a graphical user interface 200 that displays first-level data items in a hierarchical dataset. The user interface 200 is displayed on the monitor screen 202 of the computer. Also shown on screen 202 are the first toolbar 204a and the second toolbar 204b, which are similar to those normally displayed in a web browser. [0039] The graphical user interface 200 includes a plurality of rows 206a-206j and columns 208a-208h. Lines 206a-206j each represent a first-level data item in a hierarchical dataset, such as an XML document. In each column 208a to 208h, the heading is described in the heading row 210. In heading row 210, the headings are customer ID (column 208a), company name (column 208b), contact information (208c), address (208d), telephone (208e), order (208f), order details (208g), respectively. , And the customer statement (208h). In this example, most of the contents of the data items are irrelevant. [0040] However, for the purposes of the following description, the customer ID of the customer identified in row 206a, column 208a is 3C146HD, and the customer ID of the customer identified in row 206b, column 208a is 7A654LD. [0041] Columns 208f (order), 208g (order item), and 208h (customer item)-in some rows-contain a subordinate data indicator 212. The dependent data indicator 212 is an actuable icon that, when activated, displays the dependent level of data in the hierarchical dataset. In this embodiment, the dependent data indicator 212 is displayed in each row 206a-206j of column 208f (order). This indicates that there is data for each order of the customers shown in columns 208a-208h. As described in more detail below, if the dependent data indicator in column 208f is activated, the second level of data is associated with the customer identified in rows 206a-206j where the activated dependent data indicator 212 is located. Displayed for orders to be placed. [0042] If there is no dependent data associated with the first level data item, the dependent data indicator corresponding to the first level data item is not displayed. For example, for customer 3C146HD, there is no order line because column 208g (order line) does not show the dependent data indicator 212. However, since the dependent data indicator 212 is displayed in column 208h (customer line item) associated with that customer, there is a customer line item associated with customer 3C146HD. [0043] Similarly, for customer 7A654LD, there is dependent data for the order (column 208f) and order line (column 208g), but no dependent data for the customer line (208h). This can be seen by the presence or absence of the dependent data indicator 212 in the column. [0044] <<u style="single">Graphical user interface: Second level data items</u>> FIG. 3 is a diagram of the graphical user interface 200 shown in FIG. 2 after the dependent data indicator 212 is activated for the customer order column (208f) identified in row 206a (customer ID 3C146HD). Note that the second level data is displayed in Table 300, which is similar to the first level data, but the dependent level data items are displayed in a different format than the first level data items are displayed. I want to. [0045] Table 300 contains a plurality of rows (302) and columns (304), and fields are formed at the intersections thereof. The field can store a dependent data indicator 212 similar to the dependent data indicator 212 shown in FIG. In this example, only column 304, which can contain dependent data indicator 212, is titled "Details" (column 306). As already mentioned, if the dependent data indicator 212 is displayed in one row in column 306, then the second level data item in the row associated with the column in which the dependent data indicator 212 is displayed is dependent-that is, the first. 3 levels-contains data items. [0046] <<u style="single">Graphical user interface: 3rd level data items</u>> FIG. 4 is a diagram of the graphical user interface 200 shown in FIGS. 2 and 3 after the dependent data indicator 212 has been activated in the "details" column (306) of table 300. The third level data item is displayed in table 400, which is similar to table 300 shown in FIG. Again, table 400 contains at least one column 402 that may contain dependent data indicator 212. The dependent data indicator 212 can be activated to display dependent (4th level) data items. [0047] Table 300 in FIG. 3 and table 400 in FIG. 4 are positioned so that the rows associated with the activated dependent data indicator 212 and the activated dependent data indicator 212 that are activated to display the tables 300, 400 remain visible. Please note that it is displayed. This is not necessary to implement the user interface described, but is convenient for the user. [0048] <<u style="single">Recursive way to build a display table</u>> To build an HTML page from XML data, you need to create an Extendable Style Language (XSL) or Extendable Style (or Style Sheet) Language Transformation (XSLT) script. FIG. 5 is a flow chart of the method used to create the user interface described here for display. Those skilled in the art will understand that the steps described in Figure 5 can be performed with an XSL or XSLT script, so the details of such a script will not be discussed here. [0049] The method outlined in Figure 5 is a recursive method used to parse the entire hierarchical dataset and build a table (or some other data structure) that displays the data in the dataset. [0050] At block 500, the current level of data is identified and initially set to 1 (indicating the first level of data in the hierarchical dataset). [0051] In block 502, a table representing the first level data is created and stored. [0052] Block 504 identifies the current node (or data item) at the current level. [0053] A row is created in the table that represents the first level of data for the current node (block 506). [0054] Block 508 determines if the node currently has dependent (child) data associated with it. If there is no dependent data (no branch, block 508), determine if there is more data to parse (block 520). [0055] If there is more data (yes branch, block 520), the new or next node (data item) at the current level is identified. [0056] Again, block 506 creates a row in the table that represents the first level of data for the new node. [0057] If the new current node has dependent data associated with it ("yes" branch, block 508), the current level is the current level + 1 (block 510), that is, the second level data in the hierarchical data. Set. The current node for the new current level is identified in block 512, and this process returns to block 508 to determine if the current node has dependent data associated with it. This process continues recursively until the lowest level of data is reached. After all the data items have been parsed and there is no more data ("no" branch, block 520), this process ends and the complete representation of the hierarchical data is stored in memory. [0058] [0058] Note that this recursive method works well for "flat" data that does not contain many levels, or for data that has a relatively small number of data items, such as less than 1000 data items. For deep or extensive data, the "build on demand" method may be suitable for this situation. Such a method will be described below with reference to FIG. [0059] <<u style="single">How to create a Dynamic Nested Table to build a display table</u>> FIG. 6 is a flow chart of a method for constructing the graphical user interface shown in FIGS. 2 to 4. The method described does not first parse all the data in the hierarchical (XML) dataset. In the method described in Figure 6, the dependent data display is created only by the user on demand. For example, if the initial user interface (200, Figure 2) is displayed, only the first level data items are parsed. When the dependent data indicator 212 is activated, the second level data items are parsed and the second level table 300 is constructed and displayed. [0060] To perform dynamic table creation, use a dynamic X path to track previous data. The X path is a concept of XML that provides a means for retrieving data. If a level of data item has already been accessed, a dynamic X path that tracks that level of data item is stored. When the dependent data level is accessed, a table (or other kind of display) is constructed and displayed. Dependent data levels are added to the dynamic X path, making it easy to find data items for that data level the next time you need it. [0061] In block 600, a first level-parent-table is constructed and displayed by parsing the first level data items of the hierarchical dataset. This can be done using the non-recursive version of the algorithm already described for Figure 5. [0062] When the dependent data indicator is activated (block 602), it uses the dynamic X path to retrieve the parent table. A search for the dynamic X route associated with the parent table is done in block 604. [0063] From the dynamic X path, it is possible to determine if the dependent data level has already been accessed and therefore parsed and displayed. If the dependent data level is already accessed ("yes" branch, block 608), block 616 shows or hides the table that has already been built. [0064] If the dependent data level is no longer accessed (no branch, block 608), block 612 uses the dynamic X path associated with the hierarchical dataset to access the dependent data level data item. [0065] A table (or some other display format) is built (block 614). After building the table, the table is displayed in block 616. [0066] [Effect of the invention] By parsing the data and constructing the display as described above, a large dataset can be parsed and displayed more efficiently than when the data is first parsed before the initial display. This makes it possible to provide a graphical user interface that displays hierarchical data, such as extensible markup language (XML) data, in hypertext markup language (HTML) format in a convenient and efficient way. [0067] <Conclusion> Although the present invention is described in terms specific to structural features and / or steps of method, the invention defined in the appended claims is not necessarily limited to the particular features or steps described. You should understand that. Rather, the particular features and steps are disclosed as preferred forms of the claimed invention. [Simple explanation of drawings] FIG. 1 is a block diagram of an embodiment of a computer system that implements the described invention. FIG. 2 is an explanatory diagram of a display example showing a first level data item. FIG. 3 is an explanatory diagram of a display example showing a second level data item. FIG. 4 is an explanatory diagram of a display example showing a third level data item. FIG. 5 is a flow diagram showing a recursive method for constructing a display from hierarchical data. FIG. 6 is a flow chart showing a method of creating a dynamic nested table for constructing a display from hierarchical data. [Explanation of symbols] 100 computing environment 102 computer 104 Processor or processing unit 106 system memory 108 processor 108 system bus 110 Random access memory (RAM) 112 Read-only memory (ROM) 114 Basic I / O System (BIOS) 116 hard disk drive 118 magnetic disk drive 120 Removable non-volatile magnetic disk 122 optical disk drive 124 Detachable non-volatile optical disc 126 Data media interface 128 application program 132 Program data 134 keyboard 136 pointing device 138 Input device 140 input / output interface 142 monitor 144 video interface 146 printer 148 remote computer 150 Local Area Network (LAN) 152 Wide Area Network (WAN) 154 Network interface or network adapter 156 Modem 158 Remote application program 200 user interface 202 monitor screen 204 Toolbar 204b Toolbar 212 Dependent data indicator
6 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| JP06131334A | Cites | Japan |
| JP2000250679A | Cites | Japan |
| JP2000242641A | Cites | Japan |
| JP2000305949A | Cites | Japan |
| JP2001147933A | Cites | Japan |
8 members in 3 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 09883125 | United States of America | – | |
| 88312501 | United States of America | A | |
| 88312501 | United States of America | A | |
| 2001883125 | – | – | – |
| US20010883125 | – | – | – |
Members8
| Document | Office | Kind | |
|---|---|---|---|
| US2002191033A1 | United States of America | A1 | |
| JP2003058291A | Japan | A | |
| EP1291766A2 | European Patent Office (EPO) | A2 | |
| US6868528B2 | United States of America | B2 | |
| US2005160379A1 | United States of America | A1 | |
| EP1291766A3 | European Patent Office (EPO) | A3 | |
| US7320113B2 | United States of America | B2 | |
| JP4339554B2This record | Japan | B2 |
29 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Cancellation because of no payment of annual feesLAPS | LAPS | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Written notification of registration of transferJAPANESE INTERMEDIATE CODE: R350R350 | R350 | |
| Request for change of ownership or part of ownershipJAPANESE INTERMEDIATE CODE: R313113S111 | S111 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| First payment of annual fees (during grant procedure)JAPANESE INTERMEDIATE CODE: A61A61 | A61 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Decision of grant or rejection writtenTRDD | TRDD | |
| Transfer to examiner for re-examination before appeal (zenchi)AppealJAPANESE INTERMEDIATE CODE: A911A911 | A911 | |
| Written amendmentJAPANESE INTERMEDIATE CODE: A821A521 | A521 | |
| Notification of appointment of power of sub attorneyJAPANESE INTERMEDIATE CODE: A7433RD13 | RD13 | |
| Written amendmentJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Decision of refusalJAPANESE INTERMEDIATE CODE: A02A02 | A02 | |
| Written amendmentJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Report on retrievalJAPANESE INTERMEDIATE CODE: A971007A977 | A977 | |
| Written request for application examinationJAPANESE INTERMEDIATE CODE: A621A621 | A621 | |
| Notification of resignation of power of attorneyJAPANESE INTERMEDIATE CODE: A7424RD04 | RD04 |
Numbers
- Publication
- 4339554
- Publication, DOCDB
- 4339554
- Publication, EPODOC
- JP4339554B
- Application
- 173328
- Application, DOCDB
- 2002173328
- Application, EPODOC
- JP20020173328
Titles2
- Japanese
- 階層データを表示するユーザインタフェースを作成し表示するためのシステムおよび方法
- English
- Systems and methods for creating and displaying user interfaces that display hierarchical data
Classification
- CPC, 6
- G06F3/0481
- G06Q30/0601
- G06Q30/0641
- Y10S707/99937
- Y10S707/99943
- Y10S707/99931
- IPC, 3
- G06F3 048
- G06F17 30
- G06F3 033
