CA2303725C - Systems, methods and computer program products for building and displaying dynamic graphical user interfaces - Google Patents
Systems, methods and computer program products for building and displaying dynamic graphical user interfaces Download PDFInfo
- Publication number
- CA2303725C CA2303725C CA2303725A CA2303725A CA2303725C CA 2303725 C CA2303725 C CA 2303725C CA 2303725 A CA2303725 A CA 2303725A CA 2303725 A CA2303725 A CA 2303725A CA 2303725 C CA2303725 C CA 2303725C
- Authority
- CA
- Canada
- Prior art keywords
- xml
- data
- xml data
- aggregation
- display
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000004590 computer program Methods 0.000 title claims abstract description 30
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000002776 aggregation Effects 0.000 claims abstract description 100
- 238000004220 aggregation Methods 0.000 claims abstract description 100
- 238000009877 rendering Methods 0.000 claims description 70
- 238000003860 storage Methods 0.000 claims description 5
- 230000004048 modification Effects 0.000 abstract description 5
- 238000012986 modification Methods 0.000 abstract description 5
- 230000004044 response Effects 0.000 abstract description 5
- 238000012545 processing Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 6
- 150000001875 compounds Chemical class 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 238000013479 data entry Methods 0.000 description 3
- 101100079986 Caenorhabditis elegans nrfl-1 gene Proteins 0.000 description 1
- 101100480512 Caenorhabditis elegans tag-51 gene Proteins 0.000 description 1
- 101100480513 Caenorhabditis elegans tag-52 gene Proteins 0.000 description 1
- 101100480514 Caenorhabditis elegans tag-53 gene Proteins 0.000 description 1
- 241000321453 Paranthias colonus Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Abstract
Systems, methods and computer program products are provided for building and displaying dynamic graphical user interfaces (GUIs) that can be updated automatically without requiring code-level modification and recompiling. In response to a request to display a particular GUI on a computer display, an Extensible Markup Language (XML) data group is selected from a plurality of XML data groups and an XML display layout is selected from a plurality of XML display layouts.
The selected XML data group includes one or more aggregations of data hierarchically ordered within the selected XML data group. XML data items are hierarchically ordered within each of the aggregations of data. The selected XML display layout contains one or more areas that define respective GUI display spaces within which XML data items from the respective aggregations of data can be displayed. XML markup tags associated with each aggregation of data within the selected XML data group are matched with XML markup tags associated with a respective area contained within the selected XML display layout. The XML data items contained within each aggregation of data are rendered in hierarchical order within a respective GUI display space defined by a respective area within the XML display layout.
The selected XML data group includes one or more aggregations of data hierarchically ordered within the selected XML data group. XML data items are hierarchically ordered within each of the aggregations of data. The selected XML display layout contains one or more areas that define respective GUI display spaces within which XML data items from the respective aggregations of data can be displayed. XML markup tags associated with each aggregation of data within the selected XML data group are matched with XML markup tags associated with a respective area contained within the selected XML display layout. The XML data items contained within each aggregation of data are rendered in hierarchical order within a respective GUI display space defined by a respective area within the XML display layout.
Description
SYSTEMS, METHODS AND COMPUTER PROGRAM PRODUCTS FOR BUILDING
AND DISPLAYING DYNAMIC GRAPHICAL USER INTERFACES
Field of the Invention The present invention relates generally to user interfaces and, more particularly, to graphical user interfaces.
Reservation of Copyright A portion of the disclosure of this patent document contains material to which a claim of copyright protection is made. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but reserves all other rights whatsoever.
to Background of the Invention Computer graphical user interfaces (GUIs) written in conventional programming languages, such as JAVA and C/C++, are typically static in nature. This means that once a user interface has been rendered on a display device, a fixed number of GUI controls are displayed. If data within a displayed GUI changes, such as the number and/or format of displayed GUI
controls, the GUI must typically be modified at the code level, recompiled and then re-rendered on the display device. As a result, existing GUIs may not be able to react quickly to the needs and requests of users.
Accordingly, there is a need for GUIs that can change dynamically in response to user requests and other external factors. Furthermore, there is a need for GUIs that can be modified 2o without requiring code changes and recompiling.
Summary of the Invention The present invention is directed to systems, methods and computer program products for building and displaying dynamic graphical user interfaces (GUIs) that can be updated automatically without requiring code modification and recompiling. In response to a request to display a particular GUI on a computer display, an Extensible Markup Language (XML) data group is selected from a plurality of XML data groups. The selected XML data group includes one or more aggregations (groups) of data hierarchically ordered within the selected XML data group.
XML data items are hierarchically ordered within the aggregations of data.
Also, an XML display layout is selected in response to the request to display the GUI. The selected XML display layout contains one or more areas that define respective GUI display spaces within which XML data items from the respective aggregations of data can be displayed. XML
markup tags associated with each aggregation of data within the selected XML
data group are matched with XML markup tags associated with a respective area contained within the selected XML display layout. The XML data items contained within each aggregation of data are rendered to in hierarchical order within a respective GUI display space defined by a respective area within the XML display layout. GUI controls associated with displayed XML data items may also be rendered within a respective GUI display space.
According to the present invention, each area defined by an XML display layout may contain display order information for XML data items contained within a respective aggregation of data.
Furthermore, the step of rendering XML data items may include rendering the XML data items within a respective GUI display space according to the display order information. Each area defined by an XML display layout may also contain display format information that defines the format within which XML data items from an aggregation of data are displayed.
Furthermore, the step of rendering XML data items may include rendering the XML data items within a respective GUI
display space according to the display format information.
The dynamic nature of GUIs according to the present invention may facilitate enhanced user interactions with computer systems.
Brief Description of the Drawings Fig. l schematically illustrates operations according to the present invention for defining a display layout for a GUI that contains one or more areas within which data items are displayed.
Fig. 2A is a display layout having a wizard format.
Fig. 2B illustrates exemplary XML markup tags for specifying the wizard display layout of Fig. 2A.
AND DISPLAYING DYNAMIC GRAPHICAL USER INTERFACES
Field of the Invention The present invention relates generally to user interfaces and, more particularly, to graphical user interfaces.
Reservation of Copyright A portion of the disclosure of this patent document contains material to which a claim of copyright protection is made. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but reserves all other rights whatsoever.
to Background of the Invention Computer graphical user interfaces (GUIs) written in conventional programming languages, such as JAVA and C/C++, are typically static in nature. This means that once a user interface has been rendered on a display device, a fixed number of GUI controls are displayed. If data within a displayed GUI changes, such as the number and/or format of displayed GUI
controls, the GUI must typically be modified at the code level, recompiled and then re-rendered on the display device. As a result, existing GUIs may not be able to react quickly to the needs and requests of users.
Accordingly, there is a need for GUIs that can change dynamically in response to user requests and other external factors. Furthermore, there is a need for GUIs that can be modified 2o without requiring code changes and recompiling.
Summary of the Invention The present invention is directed to systems, methods and computer program products for building and displaying dynamic graphical user interfaces (GUIs) that can be updated automatically without requiring code modification and recompiling. In response to a request to display a particular GUI on a computer display, an Extensible Markup Language (XML) data group is selected from a plurality of XML data groups. The selected XML data group includes one or more aggregations (groups) of data hierarchically ordered within the selected XML data group.
XML data items are hierarchically ordered within the aggregations of data.
Also, an XML display layout is selected in response to the request to display the GUI. The selected XML display layout contains one or more areas that define respective GUI display spaces within which XML data items from the respective aggregations of data can be displayed. XML
markup tags associated with each aggregation of data within the selected XML
data group are matched with XML markup tags associated with a respective area contained within the selected XML display layout. The XML data items contained within each aggregation of data are rendered to in hierarchical order within a respective GUI display space defined by a respective area within the XML display layout. GUI controls associated with displayed XML data items may also be rendered within a respective GUI display space.
According to the present invention, each area defined by an XML display layout may contain display order information for XML data items contained within a respective aggregation of data.
Furthermore, the step of rendering XML data items may include rendering the XML data items within a respective GUI display space according to the display order information. Each area defined by an XML display layout may also contain display format information that defines the format within which XML data items from an aggregation of data are displayed.
Furthermore, the step of rendering XML data items may include rendering the XML data items within a respective GUI
display space according to the display format information.
The dynamic nature of GUIs according to the present invention may facilitate enhanced user interactions with computer systems.
Brief Description of the Drawings Fig. l schematically illustrates operations according to the present invention for defining a display layout for a GUI that contains one or more areas within which data items are displayed.
Fig. 2A is a display layout having a wizard format.
Fig. 2B illustrates exemplary XML markup tags for specifying the wizard display layout of Fig. 2A.
Fig. 3A is a display layout having a property sheet format.
Fig. 3B illustrates exemplary XML markup tags for specifying the property sheet display layout of Fig. 3A.
Fig. 4A is a display layout having a dialog format.
Fig. 4B illustrates exemplary XML markup tags for specifying the dialog display layout of Fig. 4A.
Fig. SA is a display layout containing an exemplary area within which data items are displayed.
Fig. SB illustrates exemplary XML markup tags for specifying the area of Fig.
SB.
to Fig. 6A is a display layout containing a vertical area and within which data items are displayed vertically.
Fig. 6B is a display layout containing a horizontal area and within which data items are displayed horizontally.
Fig. 6C is a display layout containing a table area and within which data items are displayed within a two-dimensional array of rows and columns.
Fig. 6D is a display layout containing a tree area and within which data items are displayed in "tree" format.
Fig. 6E illustrates exemplary XML markup tags for specifying the tree area of Fig. 6D.
Fig. 6F illustrates exemplary XML markup tags for specifying a display layout containing 2o a definite area and within which data items are displayed at specified coordinates within the display layout.
Fig. 7 schematically illustrates defining a data group by hierarchically ordering one or more data items therewithin.
Fig. 8 illustrates exemplary XML markup tags for defining a data group having multiple hierarchically ordered groups.
Fig. 9 illustrates the use of <DATA-TYPE></DATA-TYPE> markup tags to declare data items.
Fig.10 illustrates the use of <WHEN></WHEN> tags markup tags to alter the presentation of data from a data group according to an embodiment of the present invention.
Fig. 11A schematically illustrates operations for building and displaying a dynamic GUI
according to the present invention.
Fig.11B schematically illustrates operations for utilizing established correspondence rules to dynamically construct a GUI with a selected data group and a selected display layout, according to the present invention.
Fig. 12A illustrates the matching of a selected display layout with a selected data group.
Fig.12B illustrates a data group containing more groups than there are areas within a display layout with which the data group is matched.
to Fig. 12C illustrates a default area logically inserted within the display layout so as to be matched with the additional group within the data group of Fig. 12B.
Fig.13A illustrates matching a data group and display layout to build a GUI
according to the present invention.
Fig. 13B illustrates a GUI built and displayed according to the matched data group and 15 display layout of Fig. 13A.
Fig.14 illustrates the insertion ofthe XML markup tags <COMPONENT
ID="LastName"/>
and <COMPONENT ID="FirstName"/> between the <AREA></AREA> markup tags of the display layout of Fig. 13A to cause the data entry fields and respective captions for "FirstName" and "LastName" to be reversed when displayed within the dynamic GUI of Fig. 13B.
20 Fig. 15 schematically illustrates a data processing system within which various operations of the present invention may be performed.
Detailed Description of the Invention The present invention now is described more fully hereinafter with reference to the accompanying 25 drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Like numbers refer to like elements throughout.
H~perText Markup Lang_ua~~e (HTMLI
HTML utilizes various tags that control format attributes and that identify different portions of a document (i. e., <tag name>text</tag_name>). Tags are conventionally denoted by the "<
>" symbols, with the actual tag between the brackets. Most markup language tags have an opening tag "<tag>" and a closing tag "</tag>." A tag is a singular entity that opens or closes an element. For instance, the <P> HTML tag opens a paragraph element. Likewise, the </P> HTML tag closes a paragraph element.
These two tags, plus the content between them, represent the HTML element. A tag is only part of an element, not the element itself.
The HTML language is described in the HTML Reference Manual, January 2, 1996, published by Sandia National Laboratories.
Extensible Marku~Languuage (XMLI
Extensible Markup Language (XML) is currently a formal recommendation from the World Wide Web Consortium as a way to make the Web a more versatile tool. XML syntax guidelines and the definition of XML entities are presented in the Extensible Markup Language (XML) 1.0 Specification, February 10, 1998.
XML is similar to HTML in that both languages are subsets of Standard Generalized Markup Language (SGML) and that both utilize tags to describe the contents of a page or file. HTML, however, describes the content of a Web page (mainly text and graphic images) only in terms of how content is to be displayed and interacted with. XML describes the content in terms of what data is being described. For example, a <PHONENUM> tag could indicate that the data following the tag is a phone number. This means that an XML file can be processed purely as data by a program or it can be stored with similar data on another computer or, like an HTML file, that it can be displayed. For example, depending on how the application program in the receiving computer wanted to handle the phone number, it could be stored, displayed, or dialed. XML is "extensible" because, unlike HTML, XML markup tags can be unlimited and can be self defining.
The structure of an XML document is essentially a tree. The root element is the top-level element, and its descendants (i.e., the other elements) branch out from there. XML
parsers are applications that examine XML code and report forming errors. An XML parser reads XML files, generates a hierarchically structured tree, herein referred to as a Document Obj ect Model Tree ("DOM
Tree"), and then hands off data to viewers and other applications for processing.
Document Type Definitions (DTDs) may accompany an XML document, essentially defining the rules of the XML document, such as which elements are present and the structural relationship between the elements. DTDs can help validate data when a receiving application does not have a built-in description of the incoming XML data. With XML, however, DTDs are optional.
As will be appreciated by one of skill in the art, the present invention may be embodied as a method, data processing system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product on a computer-usable storage medium having computer-usable program code means embodied in the medium. Any suitable computer readable medium may be utilized including hard disks, CD-ROMs, optical storage devices, or magnetic storage devices.
Computer program code for carrying out operations of the present invention is preferably written in an object oriented programming language such as JAVA~, Smalltalk or C++.
However, the computer program code for carrying out operations of the present invention may also be written in conventional procedural programming languages, such as the "C" programming language, or functional (or fourth generation) programming languages such as Lisp, SML, or Forth may also be utilized. The program code for carrying out operations of the present invention may execute entirely on one or more data processors.
JAVA~ is an object-oriented programming language developed by Sun Microsystems, Mountain View, California. JAVA~ is a portable and architecturally neutral language.
JAVA~ source code is compiled into a machine-independent format that can be run on any machine with a JAVA~
runtime system known as the JAVA~ Virtual Machine (JVM). The JVM is defined as an imaginary machine that is implemented by emulating a processor through the use of software on a real machine.
Accordingly machines running under diverse operating systems, including UNIX~, Windows 95~, Windows NT~, and MacIntosh~ having a JVM can execute the same JAVA~ program.
The present invention is described below with reference to flowchart illustrations of methods, apparatus (systems) and computer program products according to an embodiment of the invention. It will be understood that each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart block or blocks.
The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks.
Display Layouts Referring now to Fig. l, operations according to the present invention are illustrated for defining an XML display layout for a GUI that contains one or more areas within which data items are displayed. A user initially selects a format for a display layout (Block 100). Exemplary display layout formats may include, but are not limited to, "wizard", "property sheet" and "dialog" formats. As would be understood by one of skill in the art, a wizard display layout format is typically used with a utility program known as a "wizard"
that is configured to ask a user various questions and then utilize the user's responses to perform one or more functions.
Wizards are typically used in conjunction with an application to help a user perform a particular task within the application. For example, a "letter wizard" within a word processing application may be configured to lead a user through the various steps of producing different types of letters.
An exemplary display layout 10 in wizard format is illustrated in Fig. 2A and may be specified according to the present invention using the XML markup tags 12 illustrated in Fig. 2B. A display layout in property sheet format utilizes a "tabbed notebook" appearance wherein a different page of user-interactive fields is presented to a user when a respective tab is activated. An exemplary display layout 14 in property sheet format is illustrated in Fig. 3A and may be specified according to the present invention using the XML
markup tags 16 illustrated in Fig. 3B. A display layout in dialog format is a single page of user-interactive fields. An exemplary display layout 18 in dialog format is illustrated in Fig.
4A and may be specified according to the present invention using the XML markup tags 20 illustrated in Fig. 4B.
Referring back to Fig. 1, once a display layout format has been selected, one or more areas within the display layout are defined (Block 102). If no areas are defined (Block 104), the display layout adopts a predefined default area (Block 106). Each defined area and each default area represents a respective display "space" within which data items are displayed, as will be described below. An exemplary display layout 22 in dialog format and containing an area 24 is illustrated in Fig. SA. The illustrated display layout 22 may be specified using the XML markup tags 26 illustrated in Fig. 5B.
According to the present invention, areas within display layouts may have various shapes and configurations. For example, areas may have "vertical" configurations, "horizontal" configurations, "table"
configurations, "tree" configurations and "definite" configurations. A
"vertical" area 28 displays data items and their captions within a display layout vertically, as illustrated in Fig.
6A. A "horizontal" area 30 displays data items and their captions within a display layout horizontally, as illustrated in Fig. 6B. A "table" area 32 displays data items within a two-dimensional array of rows and columns, as illustrated in Fig. 6C. Each row of the table may be addressable and selectable by a user.
A "tree" area displays data items within a graphical tree, as illustrated in Fig. 6D. Fig. 6E illustrates exemplary XML markup tags for specifying the tree area of Fig. 6D. Each node within the illustrated tree area of Fig. 6D may be addressable and selectable by a user.
A "definite" area displays data items at specific "X-Y" coordinates within a display layout.
Positioning of a data item within a display layout may be in absolute pixel units. An exemplary definite area configuration can be specified using the XML markup tags 36 illustrated in Fig. 6E.
Data Groups An XML data group is defined according to the present invention by hierarchically ordering one or more XML data items therewithin (Fig. 7, Block 110). Fig. 8 illustrates an exemplary data group 40 defined by multiple hierarchically ordered aggregations of data (hereinafter "groups") 42a, 42b. As illustrated in Fig.
8, the outermost XML markup tags in the data group 40 are the <DATA-GROUP></DATA-GROUP>
markup tags. These <DATA-GROUP></DATA-GROUP> markup tags establish the outermost containment of the groups) of data to be displayed. As is described below, when a GUI
according to the present invention is requested, the <DATA-GROUP></DATA-GROUP> markup tags for a selected data group are matched (i.e., a relationship is established) with the <LAYOUT></LAYOUT> markup tags of a selected display layout.
Hierarchically ordered groups within a data group are identified by <GROUP></GROUP> markup tags. Groups may be independent of each other or may be nested within other groups. Each group within a data group contains specific XML data items in hierarchical order. Each data item is declared using <DATA-TYPE></DATA-TYPE> markup tags as illustrated in Fig. 9. Exemplary data item types, including elementary, compound, and complex data items that may be declared, are listed below in Table 1.
Table 1 Data Item Types String A string is a collection of characters.
Number A number is any valid numeric expression of the form "characteristic.fraction".
Boolean A Boolean data item contains either a true value or a false value.
Date Any valid data expression in a subset of ISO 8601 format (yyyy-mm-dd).
Time Any valid data expression in a subset of ISO 8601 format (hh-mm-ss).
TCP-IP Address A compound data type that stores a TCP-IP
formatted numeric address.
Network-Name A compound data type that can be resolved by host name or DNS to a TCP-IP address.
Telephone A compound data type that can be used to address a device on Number PSTN.
Rich Text A compound data type that contains text, text formatting and special embedded tags to do linking.
Image A complex data type that stores a bit stream that is rendered as a visual image.
Audio A complex data type that stores a bit stream that is rendered as a sound.
Video A complex data type that stores a bit stream that is rendered as a video sequence.
Bit-Stream A complex data type that stores a contiguous stream of binary data.
Mandatory and optional attributes and sub-tags may be utilized to further define and initialize a data item. Data item attributes are listed below in Table 2 and data item sub-tags are listed below in Table 3.
Table 2 Data Item Attributes Mandatory When this attribute is specified with a TRUE value, then the value of the data item must be entered when this data item is displayed in a user query.
Enabled If a data item is enabled, then it is in a state which allows the data item to be re-valued by a user interface action. If the data item is disabled, then the user interface may not change the value of the data item.
Shown Data items may be initially defined as visible (SHOWN="TRUE") or invisible (SHOWN="FALSE").
Precision Specifies the numeric precision of a <NUMBER>
data item.
Validate- When Validate data item's value when this event is invoked.
Selected When a data item is selected, it is rendered with selected emphasis.
Table 3 Data Item Sub-Tags <CAPTION> Specifies a caption for a data item. This sub-tag is a container tag which may contain the following sub-tags to specify the caption information: <STRING>, <IMAGE>, <AUDIO> and <VIDEO>.
<STRING> Specifies a text string to use in captioning a data item.
<IMAGE> Specifies an image to use in captioning a data item.
<AUDIO> Specifies an audio clip to use in captioning a data item.
<VIDEO> Specifies a video clip to use in captioning a data item.
<VALUE> Specifies an initial value for a data item.
<TIP> Provides a more complete description of a data item or additional help information related to a data item.
<HINT> Provides a short phrase description of a data item.
According to a preferred embodiment of the present invention, conditional information can be used to alter the presentation of data items of a data group. For example, a data group specification becomes interactive with the addition of <WHEN></WHEN> markup tags. The data group illustrated in Fig. l0, when matched with a wizard presentation layout, can produce a two page wizard which prompts a user for a name and address. When this data group is displayed and the user enters "USA" for the country name, a county field will then be dynamically presented to the user.
<WHEN></WHEN> markup tags may be utilized with any data item. If the condition-attribute expression within <WHEN></WHEN> markup tags evaluates to true, then the sub-tags nested within the <WHEN></WHEN> markup tags are available for processing. If the condition is false, the included sub-tags are not available for processing.
Matching Data Groups and Display Layouts Referring now to Fig.11A, operations for building and displaying a dynamic GUI
according to the present invention are illustrated. When a request is made to display a specified GUI (Block 120), a data group and a display layout are selected (Block 122) using specified attributes "DATA
GROUP-ID" and "LAYOUT-ID", respectively, that are contained within the request. As described above, the selected display layout contains one or more areas within which data items from the selected data group are displayed.
At display time, the selected data group is matched with the selected display layout (Block 124) and established correspondence rules are utilized to dynamically construct a GUI by combining the selected data group with the selected display layout (Block 126). The constructed GUI can then be displayed via a computer display device (Block 128).
Preferably, the renderer that displays the constructed GUI within a computer display device creates the proper GUI controls for each area of a display layout. GUI
controls may be selected based on the data type of a data item. In addition, GUI controls may be selected from a class of GUI
controls or may be referenced by a specific data item. In addition, it is preferable that a renderer is sensitive to the location of a display device and is configured to choose the appropriate language and display format for the displayed GUI based on the location of the display device. Renderers are well 2o known by those of skill in the art and need not be described further herein.
Referring now to Fig. 11B, the step of utilizing established correspondence rules to dynamically construct a GUI (Block 126) is illustrated in greater detail. A
<DATA-GROUP>
markup tag associated with a selected data group is matched with the <LAYOUT>
markup tag associated with the selected display layout (Block 130). As described above, the data group contains one or more hierarchically ordered groups. The <GROUP> markup tag associated with each hierarchically ordered group within the data group is matched with an <AREA>
markup tag that is associated with an area having the same hierarchical order within the display layout as the group does within the data group (Block 132).
If there are more groups specified within a data group than there are areas specified within a display layout, the <GROUP> markup tag for a group is matched with an <AREA>
markup tag associated with a default area that is logically inserted into the display layout. <GROUP> tags associated with groups nested within other groups are matched with <AREA> tags associated with areas that are similarly nested within other area definitions.
Fig. 12A illustrates matching a selected display layout with a selected data group. The <DATA-GROUP> markup tag 50 is matched with the <LAYOUT> markup tag 51. The <GROUP>
markup tag 52 is matched with the <AREA> markup tag 53 and the nested <GROUP>
markup tag 54 is matched with a correspondingly nested <AREA> markup tag 54.
In Fig. 12B, the illustrated data group contains more groups than there are areas within the display layout. The <GROUP> markup tag 58 does not have a corresponding <AREA>
markup tag.
As illustrated in Fig. 12C, a default area (indicated by <DEFAULT AREA> markup tag 60 is logically inserted within the display layout so as to be matched with the additional group defined by the that the <GROUP> markup tag 58.
Referring now to Fig.13A, an XML data group 72 and an XML display layout 74 have XML
markup tags that are matched to produce the dynamic GUI 70 illustrated in Fig.13B. The illustrated data group 72 includes a single group. The <GROUP> markup tag within the data group 72 is matched with the <AREA> markup tag within the display layout 74 as illustrated by arrow 73. Data items hierarchically ordered within the group include data entry fields and respective captions for the following: "Title", "First Name", "Initial", and "Last Name". These data items are displayed in 2o the hierarchical order of the data group within the area defined by the display layout 74, as illustrated in Fig. 13B.
According to another embodiment of the present invention, data items can be displayed in an order different from their hierarchical order within a data group. As illustrated in Fig.14, an area within a display layout can be modified to change the display order of data items contained within a data group. In Fig. 14, the XML markup tags <COMPONENT ID="LastName"/> and <COMPONENT ID="FirstName"/> are inserted between the <AREA></AREA> markup tags as illustrated. This will cause the data entry fields and respective captions for "FirstName" and "LastName" to be reversed when displayed within the dynamic GUI 70 of Fig.
13A.
Fig. 15 illustrates a data processing system in which the present invention may be utilized.
As seen in Fig.15, a data processor 200 may have an operating system (such as UNIX~, Windows 95~, Windows NT~, and the like) 201 resident therein. An application program 202 may be running on the operating system 201. The processor 200 displays information on a display device 203. The display device 203 has a plurality of picture elements (collectively referred to as a screen) which may define the appearance of a GUI displayed on the display device 203. The contents of the screen 203 and, therefore, the appearance of the GUI, may be controlled or altered by the application program 202 or the operating system 201, either individually or in combination. For obtaining input from a user, the operating system 201, the application program 202, or both, may utilize user input devices to 204. User input devices 204 may include a pointing device 205 and a keyboard 206 or other input devices known to those of skill in the art.
Exemplary data processing systems in which the present invention may be utilized include, but are not limited to, Sun Microsystems~, Apple~, IBM~, and IBM~-compatible personal computers and workstations. However, it is to be understood that various computing devices and processors may be utilized to carry out the present invention without being limited to those enumerated herein. Exemplary operating systems within which the present invention may be utilized include, but are not limited to, UNIX~, Windows 95~, Windows 95~, and Windows NT~.
The foregoing is illustrative of the present invention and is not to be construed as limiting thereof. Although a few exemplary embodiments of this invention have been described, those skilled 2o in the art will readily appreciate that many modifications are possible in the exemplary embodiments without materially departing from the novel teachings and advantages of this invention. Accordingly, all such modifications are intended to be included within the scope of this invention as defined in the claims. In the claims, means-plus-function clause are intended to cover the structures described herein as performing the recited function and not only structural equivalents but also equivalent structures. Therefore, it is to be understood that the foregoing is illustrative of the present invention and is not to be construed as limited to the specific embodiments disclosed, and that modifications to the disclosed embodiments, as well as other embodiments, are intended to be included within the scope of the appended claims. The invention is defined by the following claims, with equivalents of the claims to be included therein.
Fig. 3B illustrates exemplary XML markup tags for specifying the property sheet display layout of Fig. 3A.
Fig. 4A is a display layout having a dialog format.
Fig. 4B illustrates exemplary XML markup tags for specifying the dialog display layout of Fig. 4A.
Fig. SA is a display layout containing an exemplary area within which data items are displayed.
Fig. SB illustrates exemplary XML markup tags for specifying the area of Fig.
SB.
to Fig. 6A is a display layout containing a vertical area and within which data items are displayed vertically.
Fig. 6B is a display layout containing a horizontal area and within which data items are displayed horizontally.
Fig. 6C is a display layout containing a table area and within which data items are displayed within a two-dimensional array of rows and columns.
Fig. 6D is a display layout containing a tree area and within which data items are displayed in "tree" format.
Fig. 6E illustrates exemplary XML markup tags for specifying the tree area of Fig. 6D.
Fig. 6F illustrates exemplary XML markup tags for specifying a display layout containing 2o a definite area and within which data items are displayed at specified coordinates within the display layout.
Fig. 7 schematically illustrates defining a data group by hierarchically ordering one or more data items therewithin.
Fig. 8 illustrates exemplary XML markup tags for defining a data group having multiple hierarchically ordered groups.
Fig. 9 illustrates the use of <DATA-TYPE></DATA-TYPE> markup tags to declare data items.
Fig.10 illustrates the use of <WHEN></WHEN> tags markup tags to alter the presentation of data from a data group according to an embodiment of the present invention.
Fig. 11A schematically illustrates operations for building and displaying a dynamic GUI
according to the present invention.
Fig.11B schematically illustrates operations for utilizing established correspondence rules to dynamically construct a GUI with a selected data group and a selected display layout, according to the present invention.
Fig. 12A illustrates the matching of a selected display layout with a selected data group.
Fig.12B illustrates a data group containing more groups than there are areas within a display layout with which the data group is matched.
to Fig. 12C illustrates a default area logically inserted within the display layout so as to be matched with the additional group within the data group of Fig. 12B.
Fig.13A illustrates matching a data group and display layout to build a GUI
according to the present invention.
Fig. 13B illustrates a GUI built and displayed according to the matched data group and 15 display layout of Fig. 13A.
Fig.14 illustrates the insertion ofthe XML markup tags <COMPONENT
ID="LastName"/>
and <COMPONENT ID="FirstName"/> between the <AREA></AREA> markup tags of the display layout of Fig. 13A to cause the data entry fields and respective captions for "FirstName" and "LastName" to be reversed when displayed within the dynamic GUI of Fig. 13B.
20 Fig. 15 schematically illustrates a data processing system within which various operations of the present invention may be performed.
Detailed Description of the Invention The present invention now is described more fully hereinafter with reference to the accompanying 25 drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Like numbers refer to like elements throughout.
H~perText Markup Lang_ua~~e (HTMLI
HTML utilizes various tags that control format attributes and that identify different portions of a document (i. e., <tag name>text</tag_name>). Tags are conventionally denoted by the "<
>" symbols, with the actual tag between the brackets. Most markup language tags have an opening tag "<tag>" and a closing tag "</tag>." A tag is a singular entity that opens or closes an element. For instance, the <P> HTML tag opens a paragraph element. Likewise, the </P> HTML tag closes a paragraph element.
These two tags, plus the content between them, represent the HTML element. A tag is only part of an element, not the element itself.
The HTML language is described in the HTML Reference Manual, January 2, 1996, published by Sandia National Laboratories.
Extensible Marku~Languuage (XMLI
Extensible Markup Language (XML) is currently a formal recommendation from the World Wide Web Consortium as a way to make the Web a more versatile tool. XML syntax guidelines and the definition of XML entities are presented in the Extensible Markup Language (XML) 1.0 Specification, February 10, 1998.
XML is similar to HTML in that both languages are subsets of Standard Generalized Markup Language (SGML) and that both utilize tags to describe the contents of a page or file. HTML, however, describes the content of a Web page (mainly text and graphic images) only in terms of how content is to be displayed and interacted with. XML describes the content in terms of what data is being described. For example, a <PHONENUM> tag could indicate that the data following the tag is a phone number. This means that an XML file can be processed purely as data by a program or it can be stored with similar data on another computer or, like an HTML file, that it can be displayed. For example, depending on how the application program in the receiving computer wanted to handle the phone number, it could be stored, displayed, or dialed. XML is "extensible" because, unlike HTML, XML markup tags can be unlimited and can be self defining.
The structure of an XML document is essentially a tree. The root element is the top-level element, and its descendants (i.e., the other elements) branch out from there. XML
parsers are applications that examine XML code and report forming errors. An XML parser reads XML files, generates a hierarchically structured tree, herein referred to as a Document Obj ect Model Tree ("DOM
Tree"), and then hands off data to viewers and other applications for processing.
Document Type Definitions (DTDs) may accompany an XML document, essentially defining the rules of the XML document, such as which elements are present and the structural relationship between the elements. DTDs can help validate data when a receiving application does not have a built-in description of the incoming XML data. With XML, however, DTDs are optional.
As will be appreciated by one of skill in the art, the present invention may be embodied as a method, data processing system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product on a computer-usable storage medium having computer-usable program code means embodied in the medium. Any suitable computer readable medium may be utilized including hard disks, CD-ROMs, optical storage devices, or magnetic storage devices.
Computer program code for carrying out operations of the present invention is preferably written in an object oriented programming language such as JAVA~, Smalltalk or C++.
However, the computer program code for carrying out operations of the present invention may also be written in conventional procedural programming languages, such as the "C" programming language, or functional (or fourth generation) programming languages such as Lisp, SML, or Forth may also be utilized. The program code for carrying out operations of the present invention may execute entirely on one or more data processors.
JAVA~ is an object-oriented programming language developed by Sun Microsystems, Mountain View, California. JAVA~ is a portable and architecturally neutral language.
JAVA~ source code is compiled into a machine-independent format that can be run on any machine with a JAVA~
runtime system known as the JAVA~ Virtual Machine (JVM). The JVM is defined as an imaginary machine that is implemented by emulating a processor through the use of software on a real machine.
Accordingly machines running under diverse operating systems, including UNIX~, Windows 95~, Windows NT~, and MacIntosh~ having a JVM can execute the same JAVA~ program.
The present invention is described below with reference to flowchart illustrations of methods, apparatus (systems) and computer program products according to an embodiment of the invention. It will be understood that each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart block or blocks.
The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks.
Display Layouts Referring now to Fig. l, operations according to the present invention are illustrated for defining an XML display layout for a GUI that contains one or more areas within which data items are displayed. A user initially selects a format for a display layout (Block 100). Exemplary display layout formats may include, but are not limited to, "wizard", "property sheet" and "dialog" formats. As would be understood by one of skill in the art, a wizard display layout format is typically used with a utility program known as a "wizard"
that is configured to ask a user various questions and then utilize the user's responses to perform one or more functions.
Wizards are typically used in conjunction with an application to help a user perform a particular task within the application. For example, a "letter wizard" within a word processing application may be configured to lead a user through the various steps of producing different types of letters.
An exemplary display layout 10 in wizard format is illustrated in Fig. 2A and may be specified according to the present invention using the XML markup tags 12 illustrated in Fig. 2B. A display layout in property sheet format utilizes a "tabbed notebook" appearance wherein a different page of user-interactive fields is presented to a user when a respective tab is activated. An exemplary display layout 14 in property sheet format is illustrated in Fig. 3A and may be specified according to the present invention using the XML
markup tags 16 illustrated in Fig. 3B. A display layout in dialog format is a single page of user-interactive fields. An exemplary display layout 18 in dialog format is illustrated in Fig.
4A and may be specified according to the present invention using the XML markup tags 20 illustrated in Fig. 4B.
Referring back to Fig. 1, once a display layout format has been selected, one or more areas within the display layout are defined (Block 102). If no areas are defined (Block 104), the display layout adopts a predefined default area (Block 106). Each defined area and each default area represents a respective display "space" within which data items are displayed, as will be described below. An exemplary display layout 22 in dialog format and containing an area 24 is illustrated in Fig. SA. The illustrated display layout 22 may be specified using the XML markup tags 26 illustrated in Fig. 5B.
According to the present invention, areas within display layouts may have various shapes and configurations. For example, areas may have "vertical" configurations, "horizontal" configurations, "table"
configurations, "tree" configurations and "definite" configurations. A
"vertical" area 28 displays data items and their captions within a display layout vertically, as illustrated in Fig.
6A. A "horizontal" area 30 displays data items and their captions within a display layout horizontally, as illustrated in Fig. 6B. A "table" area 32 displays data items within a two-dimensional array of rows and columns, as illustrated in Fig. 6C. Each row of the table may be addressable and selectable by a user.
A "tree" area displays data items within a graphical tree, as illustrated in Fig. 6D. Fig. 6E illustrates exemplary XML markup tags for specifying the tree area of Fig. 6D. Each node within the illustrated tree area of Fig. 6D may be addressable and selectable by a user.
A "definite" area displays data items at specific "X-Y" coordinates within a display layout.
Positioning of a data item within a display layout may be in absolute pixel units. An exemplary definite area configuration can be specified using the XML markup tags 36 illustrated in Fig. 6E.
Data Groups An XML data group is defined according to the present invention by hierarchically ordering one or more XML data items therewithin (Fig. 7, Block 110). Fig. 8 illustrates an exemplary data group 40 defined by multiple hierarchically ordered aggregations of data (hereinafter "groups") 42a, 42b. As illustrated in Fig.
8, the outermost XML markup tags in the data group 40 are the <DATA-GROUP></DATA-GROUP>
markup tags. These <DATA-GROUP></DATA-GROUP> markup tags establish the outermost containment of the groups) of data to be displayed. As is described below, when a GUI
according to the present invention is requested, the <DATA-GROUP></DATA-GROUP> markup tags for a selected data group are matched (i.e., a relationship is established) with the <LAYOUT></LAYOUT> markup tags of a selected display layout.
Hierarchically ordered groups within a data group are identified by <GROUP></GROUP> markup tags. Groups may be independent of each other or may be nested within other groups. Each group within a data group contains specific XML data items in hierarchical order. Each data item is declared using <DATA-TYPE></DATA-TYPE> markup tags as illustrated in Fig. 9. Exemplary data item types, including elementary, compound, and complex data items that may be declared, are listed below in Table 1.
Table 1 Data Item Types String A string is a collection of characters.
Number A number is any valid numeric expression of the form "characteristic.fraction".
Boolean A Boolean data item contains either a true value or a false value.
Date Any valid data expression in a subset of ISO 8601 format (yyyy-mm-dd).
Time Any valid data expression in a subset of ISO 8601 format (hh-mm-ss).
TCP-IP Address A compound data type that stores a TCP-IP
formatted numeric address.
Network-Name A compound data type that can be resolved by host name or DNS to a TCP-IP address.
Telephone A compound data type that can be used to address a device on Number PSTN.
Rich Text A compound data type that contains text, text formatting and special embedded tags to do linking.
Image A complex data type that stores a bit stream that is rendered as a visual image.
Audio A complex data type that stores a bit stream that is rendered as a sound.
Video A complex data type that stores a bit stream that is rendered as a video sequence.
Bit-Stream A complex data type that stores a contiguous stream of binary data.
Mandatory and optional attributes and sub-tags may be utilized to further define and initialize a data item. Data item attributes are listed below in Table 2 and data item sub-tags are listed below in Table 3.
Table 2 Data Item Attributes Mandatory When this attribute is specified with a TRUE value, then the value of the data item must be entered when this data item is displayed in a user query.
Enabled If a data item is enabled, then it is in a state which allows the data item to be re-valued by a user interface action. If the data item is disabled, then the user interface may not change the value of the data item.
Shown Data items may be initially defined as visible (SHOWN="TRUE") or invisible (SHOWN="FALSE").
Precision Specifies the numeric precision of a <NUMBER>
data item.
Validate- When Validate data item's value when this event is invoked.
Selected When a data item is selected, it is rendered with selected emphasis.
Table 3 Data Item Sub-Tags <CAPTION> Specifies a caption for a data item. This sub-tag is a container tag which may contain the following sub-tags to specify the caption information: <STRING>, <IMAGE>, <AUDIO> and <VIDEO>.
<STRING> Specifies a text string to use in captioning a data item.
<IMAGE> Specifies an image to use in captioning a data item.
<AUDIO> Specifies an audio clip to use in captioning a data item.
<VIDEO> Specifies a video clip to use in captioning a data item.
<VALUE> Specifies an initial value for a data item.
<TIP> Provides a more complete description of a data item or additional help information related to a data item.
<HINT> Provides a short phrase description of a data item.
According to a preferred embodiment of the present invention, conditional information can be used to alter the presentation of data items of a data group. For example, a data group specification becomes interactive with the addition of <WHEN></WHEN> markup tags. The data group illustrated in Fig. l0, when matched with a wizard presentation layout, can produce a two page wizard which prompts a user for a name and address. When this data group is displayed and the user enters "USA" for the country name, a county field will then be dynamically presented to the user.
<WHEN></WHEN> markup tags may be utilized with any data item. If the condition-attribute expression within <WHEN></WHEN> markup tags evaluates to true, then the sub-tags nested within the <WHEN></WHEN> markup tags are available for processing. If the condition is false, the included sub-tags are not available for processing.
Matching Data Groups and Display Layouts Referring now to Fig.11A, operations for building and displaying a dynamic GUI
according to the present invention are illustrated. When a request is made to display a specified GUI (Block 120), a data group and a display layout are selected (Block 122) using specified attributes "DATA
GROUP-ID" and "LAYOUT-ID", respectively, that are contained within the request. As described above, the selected display layout contains one or more areas within which data items from the selected data group are displayed.
At display time, the selected data group is matched with the selected display layout (Block 124) and established correspondence rules are utilized to dynamically construct a GUI by combining the selected data group with the selected display layout (Block 126). The constructed GUI can then be displayed via a computer display device (Block 128).
Preferably, the renderer that displays the constructed GUI within a computer display device creates the proper GUI controls for each area of a display layout. GUI
controls may be selected based on the data type of a data item. In addition, GUI controls may be selected from a class of GUI
controls or may be referenced by a specific data item. In addition, it is preferable that a renderer is sensitive to the location of a display device and is configured to choose the appropriate language and display format for the displayed GUI based on the location of the display device. Renderers are well 2o known by those of skill in the art and need not be described further herein.
Referring now to Fig. 11B, the step of utilizing established correspondence rules to dynamically construct a GUI (Block 126) is illustrated in greater detail. A
<DATA-GROUP>
markup tag associated with a selected data group is matched with the <LAYOUT>
markup tag associated with the selected display layout (Block 130). As described above, the data group contains one or more hierarchically ordered groups. The <GROUP> markup tag associated with each hierarchically ordered group within the data group is matched with an <AREA>
markup tag that is associated with an area having the same hierarchical order within the display layout as the group does within the data group (Block 132).
If there are more groups specified within a data group than there are areas specified within a display layout, the <GROUP> markup tag for a group is matched with an <AREA>
markup tag associated with a default area that is logically inserted into the display layout. <GROUP> tags associated with groups nested within other groups are matched with <AREA> tags associated with areas that are similarly nested within other area definitions.
Fig. 12A illustrates matching a selected display layout with a selected data group. The <DATA-GROUP> markup tag 50 is matched with the <LAYOUT> markup tag 51. The <GROUP>
markup tag 52 is matched with the <AREA> markup tag 53 and the nested <GROUP>
markup tag 54 is matched with a correspondingly nested <AREA> markup tag 54.
In Fig. 12B, the illustrated data group contains more groups than there are areas within the display layout. The <GROUP> markup tag 58 does not have a corresponding <AREA>
markup tag.
As illustrated in Fig. 12C, a default area (indicated by <DEFAULT AREA> markup tag 60 is logically inserted within the display layout so as to be matched with the additional group defined by the that the <GROUP> markup tag 58.
Referring now to Fig.13A, an XML data group 72 and an XML display layout 74 have XML
markup tags that are matched to produce the dynamic GUI 70 illustrated in Fig.13B. The illustrated data group 72 includes a single group. The <GROUP> markup tag within the data group 72 is matched with the <AREA> markup tag within the display layout 74 as illustrated by arrow 73. Data items hierarchically ordered within the group include data entry fields and respective captions for the following: "Title", "First Name", "Initial", and "Last Name". These data items are displayed in 2o the hierarchical order of the data group within the area defined by the display layout 74, as illustrated in Fig. 13B.
According to another embodiment of the present invention, data items can be displayed in an order different from their hierarchical order within a data group. As illustrated in Fig.14, an area within a display layout can be modified to change the display order of data items contained within a data group. In Fig. 14, the XML markup tags <COMPONENT ID="LastName"/> and <COMPONENT ID="FirstName"/> are inserted between the <AREA></AREA> markup tags as illustrated. This will cause the data entry fields and respective captions for "FirstName" and "LastName" to be reversed when displayed within the dynamic GUI 70 of Fig.
13A.
Fig. 15 illustrates a data processing system in which the present invention may be utilized.
As seen in Fig.15, a data processor 200 may have an operating system (such as UNIX~, Windows 95~, Windows NT~, and the like) 201 resident therein. An application program 202 may be running on the operating system 201. The processor 200 displays information on a display device 203. The display device 203 has a plurality of picture elements (collectively referred to as a screen) which may define the appearance of a GUI displayed on the display device 203. The contents of the screen 203 and, therefore, the appearance of the GUI, may be controlled or altered by the application program 202 or the operating system 201, either individually or in combination. For obtaining input from a user, the operating system 201, the application program 202, or both, may utilize user input devices to 204. User input devices 204 may include a pointing device 205 and a keyboard 206 or other input devices known to those of skill in the art.
Exemplary data processing systems in which the present invention may be utilized include, but are not limited to, Sun Microsystems~, Apple~, IBM~, and IBM~-compatible personal computers and workstations. However, it is to be understood that various computing devices and processors may be utilized to carry out the present invention without being limited to those enumerated herein. Exemplary operating systems within which the present invention may be utilized include, but are not limited to, UNIX~, Windows 95~, Windows 95~, and Windows NT~.
The foregoing is illustrative of the present invention and is not to be construed as limiting thereof. Although a few exemplary embodiments of this invention have been described, those skilled 2o in the art will readily appreciate that many modifications are possible in the exemplary embodiments without materially departing from the novel teachings and advantages of this invention. Accordingly, all such modifications are intended to be included within the scope of this invention as defined in the claims. In the claims, means-plus-function clause are intended to cover the structures described herein as performing the recited function and not only structural equivalents but also equivalent structures. Therefore, it is to be understood that the foregoing is illustrative of the present invention and is not to be construed as limited to the specific embodiments disclosed, and that modifications to the disclosed embodiments, as well as other embodiments, are intended to be included within the scope of the appended claims. The invention is defined by the following claims, with equivalents of the claims to be included therein.
Claims (45)
1. A method of displaying a requested graphical user interface (GUI) via a computer display, the method comprising the steps of:
selecting an Extensible Markup Language (XML) data group, wherein the selected XML data group includes a first aggregation of data, and at least one XML data item hierarchically ordered within the first aggregation of data;
selecting an XML display layout, wherein the selected XML display layout contains a first area that defines a respective first GUI display space within which XML data items from the first aggregation of data can be displayed;
matching an XML markup tag associated with the first aggregation of data within the selected data group with an XML markup tag associated with the first area within the selected XML display layout; and rendering, via a computer display, the at least one XML data item from the first aggregation of data within the first GUI display space.
selecting an Extensible Markup Language (XML) data group, wherein the selected XML data group includes a first aggregation of data, and at least one XML data item hierarchically ordered within the first aggregation of data;
selecting an XML display layout, wherein the selected XML display layout contains a first area that defines a respective first GUI display space within which XML data items from the first aggregation of data can be displayed;
matching an XML markup tag associated with the first aggregation of data within the selected data group with an XML markup tag associated with the first area within the selected XML display layout; and rendering, via a computer display, the at least one XML data item from the first aggregation of data within the first GUI display space.
2. A method according to Claim 1 wherein the at least one XML data item comprises a plurality of hierarchically ordered XML data items and wherein the step of rendering the at least one XML data item comprises rendering each XML data item within the first GUI display space on a computer display.
3. A method according to Claim 1 wherein the at least one XML data item comprises a plurality of hierarchically ordered XML data items, wherein the first area contains display order information for the plurality of XML data items, and wherein the step of rendering the at least one XML data item comprises rendering each XML data item within the first GUI display space according to the display order information.
4. A method according to Claim 1 wherein the at least one XML data item comprises a plurality of hierarchically ordered XML data items, wherein the first area contains display format information that defines a format within which the plurality of XML data items are displayed, and wherein the step of rendering the at least one XML
data item comprises rendering each XML data item within the first GUI display space according to the display format information.
data item comprises rendering each XML data item within the first GUI display space according to the display format information.
5. A method according to Claim 1 further comprising the step of rendering a GUI control within the computer display, wherein the GUI control is associated with an XML data item displayed within the first GUI display space.
6. A method according to Claim 5 wherein the step of rendering a GUI control comprises selecting the GUI control based on XML data item type.
7. A method of displaying a requested graphical user interface (GUI) via a computer display, the method comprising the steps of:
selecting an Extensible Markup Language (XML) data group from a plurality of XML data groups, wherein the selected XML data group includes first and second aggregations of data hierarchically ordered within the selected XML data group, a plurality of XML
data items hierarchically ordered within the first aggregation of data, and a plurality of XML data items hierarchically ordered within the second aggregation of data;
selecting an XML display layout, wherein the selected XML display layout contains first and second areas, wherein the first area defines a respective first GUI display space within which XML
data items from the first aggregation of data can be displayed, and wherein the second area defines a respective second GUI display space within which XML data items from the second aggregation of data can be displayed;
matching XML markup tags associated with the first and second aggregations of data within the selected XML data group with respective XML markup tags associated with the first and second areas contained within the selected display layout; and rendering, via a computer display, the plurality of XML data items from the first aggregation of data in hierarchical order within the first GUI display space and the plurality of XML data items from the second aggregation of data in hierarchical order within the second GUI display space.
selecting an Extensible Markup Language (XML) data group from a plurality of XML data groups, wherein the selected XML data group includes first and second aggregations of data hierarchically ordered within the selected XML data group, a plurality of XML
data items hierarchically ordered within the first aggregation of data, and a plurality of XML data items hierarchically ordered within the second aggregation of data;
selecting an XML display layout, wherein the selected XML display layout contains first and second areas, wherein the first area defines a respective first GUI display space within which XML
data items from the first aggregation of data can be displayed, and wherein the second area defines a respective second GUI display space within which XML data items from the second aggregation of data can be displayed;
matching XML markup tags associated with the first and second aggregations of data within the selected XML data group with respective XML markup tags associated with the first and second areas contained within the selected display layout; and rendering, via a computer display, the plurality of XML data items from the first aggregation of data in hierarchical order within the first GUI display space and the plurality of XML data items from the second aggregation of data in hierarchical order within the second GUI display space.
8. A method according to Claim 7 wherein the first area contains display order information for the plurality of XML data items contained within the first aggregation of data, and wherein the step of rendering the plurality of XML data items from the first aggregation of data comprises rendering the plurality of XML data items from the first aggregation of data within the first GUI display space according to the display order information.
9. A method according to Claim 7 wherein the second area contains display order information for the plurality of XML data items contained within the second aggregation of data, and wherein the step of rendering the plurality of XML data items from the second aggregation of data comprises rendering the plurality of XML data items from the second aggregation of data within the second GUI display space according to the display order information.
10. A method according to Claim 7 wherein the first area contains display format information that defines a format within which the plurality of XML data items from the first aggregation of data are displayed, and wherein the step of rendering the plurality of XML data items from the first aggregation of data within the first GUI display space comprises rendering the plurality of XML data items from the first aggregation of data within the first GUI display space according to the display format information.
11. A method according to Claim 7 wherein the second area contains display format information that defines a format within which the plurality of XML data items from the second aggregation of data are displayed, and wherein the step of rendering the plurality of XML
data items from the second aggregation of data within the second GUI display space comprises rendering the plurality of XML data items from the second aggregation of data within the second GUI
display space according to the display format information.
data items from the second aggregation of data within the second GUI display space comprises rendering the plurality of XML data items from the second aggregation of data within the second GUI
display space according to the display format information.
12. A method according to Claim 7 further comprising the step of rendering a GUI control within the computer display, wherein the GUI control is associated with an XML
data item displayed within the first GUI display space.
data item displayed within the first GUI display space.
13. A method according to Claim 12 wherein the step of rendering a GUI control comprises selecting the GUI control based on XML data item type.
14. A method according to Claim 7 further comprising the step of rendering a GUI control within the computer display, wherein the GUI control is associated with an XML data item displayed within the second GUI display space.
15. A method according to Claim 7 wherein a third aggregation of data containing at least one XML data item is nested within one of the first and second aggregations of data and wherein a third area that defines a respective third GUI display space is nested within one of the first and second areas, further comprising the steps of:
matching an XML markup tag associated with the third aggregation of data with the third area; and rendering the at least one XML data item from the third aggregation of data within the third GUI display space.
matching an XML markup tag associated with the third aggregation of data with the third area; and rendering the at least one XML data item from the third aggregation of data within the third GUI display space.
16. A system for displaying a requested graphical user interface (GUI) via a computer display, comprising:
means for selecting an Extensible Markup Language (XML) data group, wherein the selected XML data group includes a first aggregation of data, and at least one XML data item hierarchically ordered within the first aggregation of data;
means for selecting an XML display layout, wherein the selected XML display layout contains a first area that defines a respective first GUI display space within which XML data items from the first aggregation of data can be displayed;
means for matching an XML markup tag associated with the first aggregation of data within
means for selecting an Extensible Markup Language (XML) data group, wherein the selected XML data group includes a first aggregation of data, and at least one XML data item hierarchically ordered within the first aggregation of data;
means for selecting an XML display layout, wherein the selected XML display layout contains a first area that defines a respective first GUI display space within which XML data items from the first aggregation of data can be displayed;
means for matching an XML markup tag associated with the first aggregation of data within
17 the selected data group with an XML markup tag associated with the first area within the selected XML display layout; and means for rendering, via a computer display, the at least one XML data item from the first aggregation of data within the first GUI display space.
17. A system according to Claim 16 wherein the at least one XML data item comprises a plurality of hierarchically ordered XML data items and wherein the means for rendering the at least one XML data item comprises means for rendering each XML data item within the first GUI display space on a computer display.
17. A system according to Claim 16 wherein the at least one XML data item comprises a plurality of hierarchically ordered XML data items and wherein the means for rendering the at least one XML data item comprises means for rendering each XML data item within the first GUI display space on a computer display.
18. A system according to Claim 16 wherein the at least one XML data item comprises a plurality of hierarchically ordered XML data items, wherein the first area contains display order information for the plurality of XML data items, and wherein the means for rendering the at least one XML data item comprises means for rendering each XML data item within the first GUI
display space according to the display order information.
display space according to the display order information.
19. A system according to Claim 16 wherein the at least one XML data item comprises a plurality of hierarchically ordered XML data items, wherein the first area contains display format information that defines a format within which the plurality of XML data items are displayed, and wherein the means for rendering the at least one XML data item comprises means for rendering each XML data item within the first GUI display space according to the display format information.
20. A system according to Claim 16 further comprising means for rendering a GUI control within the computer display, wherein the GUI control is associated with an XML data item displayed within the first GUI display space.
21. A system according to Claim 20 wherein the means for rendering a GUI
control comprises means for selecting the GUI control based on XML data item type.
control comprises means for selecting the GUI control based on XML data item type.
22. A system for displaying a requested graphical user interface (GUI) via a computer display, comprising:
means for selecting an Extensible Markup Language (XML) data group from a plurality of XML data groups, wherein the selected XML data group includes first and second aggregations of data hierarchically ordered within the selected XML data group, a plurality of XML data items hierarchically ordered within the first aggregation of data, and a plurality of XML data items hierarchically ordered within the second aggregation of data;
means for selecting an XML display layout, wherein the selected XML display layout contains first and second areas, wherein the first area defines a respective first GUI display space within which XML data items from the first aggregation of data can be displayed, and wherein the second area defines a respective second GUI display space within which XML
data items from the second aggregation of data can be displayed;
means for matching XML markup tags associated with the first and second aggregations of data within the selected XML data group with respective XML markup tags associated with the first and second areas contained within the selected display layout; and means for rendering, via a computer display, the plurality of XML data items from the first aggregation of data in hierarchical order within the first GUI display space and the plurality of XML
data items from the second aggregation of data in hierarchical order within the second GUI display space.
means for selecting an Extensible Markup Language (XML) data group from a plurality of XML data groups, wherein the selected XML data group includes first and second aggregations of data hierarchically ordered within the selected XML data group, a plurality of XML data items hierarchically ordered within the first aggregation of data, and a plurality of XML data items hierarchically ordered within the second aggregation of data;
means for selecting an XML display layout, wherein the selected XML display layout contains first and second areas, wherein the first area defines a respective first GUI display space within which XML data items from the first aggregation of data can be displayed, and wherein the second area defines a respective second GUI display space within which XML
data items from the second aggregation of data can be displayed;
means for matching XML markup tags associated with the first and second aggregations of data within the selected XML data group with respective XML markup tags associated with the first and second areas contained within the selected display layout; and means for rendering, via a computer display, the plurality of XML data items from the first aggregation of data in hierarchical order within the first GUI display space and the plurality of XML
data items from the second aggregation of data in hierarchical order within the second GUI display space.
23. A system according to Claim 22 wherein the first area contains display order information for the plurality of XML data items contained within the first aggregation of data, and wherein the means for rendering the plurality of XML data items from the first aggregation of data comprises means for rendering the plurality of XML data items from the first aggregation of data within the first GUI display space according to the display order information.
24. A system according to Claim 22 wherein the second area contains display order information for the plurality of XML data items contained within the second aggregation of data, and wherein the means for rendering the plurality of XML data items from the second aggregation of data comprises means for rendering the plurality of XML data items from the second aggregation of data within the second GUI display space according to the display order information
25. A system according to Claim 22 wherein the first area contains display format information that defines a format within which the plurality of XML data items from the first aggregation of data are displayed, and wherein the means for rendering the plurality of XML data items from the first aggregation of data within the first GUI display space comprises means for rendering the plurality of XML data items from the first aggregation of data within the first GUI
display space according to the display format information.
display space according to the display format information.
26. A system according to Claim 22 wherein the second area contains display format information that defines a format within which the plurality of XML data items from the second aggregation of data are displayed, and wherein the means for rendering the plurality of XML
data items from the second aggregation of data within the second GUI display space comprises means for rendering the plurality of XML data items from the second aggregation of data within the second GUI display space according to the display format information.
data items from the second aggregation of data within the second GUI display space comprises means for rendering the plurality of XML data items from the second aggregation of data within the second GUI display space according to the display format information.
27. A system according to Claim 22 further comprising means for rendering a GUI control within the computer display, wherein the GUI control is associated with an XML data item displayed within the first GUI display space.
28. A system according to Claim 27 wherein the means for rendering a GUI
control comprises means for selecting the GUI control based on XML data item type.
control comprises means for selecting the GUI control based on XML data item type.
29. A system according to Claim 22 further comprising means for rendering a GUI control within the computer display, wherein the GUI control is associated with an XML data item displayed within the second GUI display space.
30. A system according to Claim 22 wherein a third aggregation of data containing at least one XML data item is nested within one of the first and second aggregations of data and wherein a third area that defines a respective third GUI display space is nested within one of the first and second areas, further comprising:
means for matching an XML markup tag associated with the third aggregation of data with the third area; and means for rendering the at least one XML data item from the third aggregation of data within the third GUI display space.
means for matching an XML markup tag associated with the third aggregation of data with the third area; and means for rendering the at least one XML data item from the third aggregation of data within the third GUI display space.
31. A computer program product for displaying a requested graphical user interface (GUI) via a computer display, the computer program product comprising a computer usable storage medium having computer readable program code means embodied in the medium, the computer readable program code means comprising:
computer readable program code means for selecting an Extensible Markup Language (XML) data group, wherein the selected XML data group includes a first aggregation of data, and at least one XML data item hierarchically ordered within the first aggregation of data;
computer readable program code means for selecting an XML display layout, wherein the selected XML display layout contains a first area that defines a respective first GUI display space within which XML data items from the first aggregation of data can be displayed;
computer readable program code means for matching an XML markup tag associated with the first aggregation of data within the selected data group with an XML
markup tag associated with the first area within the selected XML display layout; and computer readable program code means for rendering, via a computer display, the at least one XML data item from the first aggregation of data within the first GUI display space.
computer readable program code means for selecting an Extensible Markup Language (XML) data group, wherein the selected XML data group includes a first aggregation of data, and at least one XML data item hierarchically ordered within the first aggregation of data;
computer readable program code means for selecting an XML display layout, wherein the selected XML display layout contains a first area that defines a respective first GUI display space within which XML data items from the first aggregation of data can be displayed;
computer readable program code means for matching an XML markup tag associated with the first aggregation of data within the selected data group with an XML
markup tag associated with the first area within the selected XML display layout; and computer readable program code means for rendering, via a computer display, the at least one XML data item from the first aggregation of data within the first GUI display space.
32. A computer program product according to Claim 31 wherein the at least one XML data item comprises a plurality of hierarchically ordered XML data items and wherein the computer readable program code means for rendering the at least one XML data item comprises computer readable program code means for rendering each XML data item within the first GUI
display space on a computer display.
display space on a computer display.
33. A computer program product according to Claim 31 wherein the at least one XML data item comprises a plurality of hierarchically ordered XML data items, wherein the first area contains display order information for the plurality of XML data items, and wherein the computer readable program code means for rendering the at least one XML data item comprises computer readable program code means for rendering each XML data item within the first GUI
display space according to the display order information.
display space according to the display order information.
34. A computer program product according to Claim 31 wherein the at least one XML data item comprises a plurality of hierarchically ordered XML data items, wherein the first area contains display format information that defines a format within which the plurality of XML data items are displayed, and wherein the computer readable program code means for rendering the at least one XML data item comprises computer readable program code means for rendering each XML data item within the first GUI display space according to the display format information.
35. A computer program product according to Claim 31 further comprising computer readable program code means for rendering a GUI control within the computer display, wherein the GUI
control is associated with an XML data item displayed within the first GUI
display space.
control is associated with an XML data item displayed within the first GUI
display space.
36. A computer program product according to Claim 35 wherein the computer readable program code means for rendering a GUI control comprises computer readable program code means for selecting the GUI control based on XML data item type.
37. A computer program product for displaying a requested graphical user interface (GUI) via a computer display, the computer program product comprising a computer usable storage medium having computer readable program code means embodied in the medium, the computer readable program code means comprising:
computer readable program code means for selecting an Extensible Markup Language (XML) data group from a plurality of XML data groups, wherein the selected XML data group includes first and second aggregations of data hierarchically ordered within the selected XML
data group, a plurality of XML data items hierarchically ordered within the first aggregation of data, and a plurality of XML data items hierarchically ordered within the second aggregation of data;
computer readable program code means for selecting an XML display layout, wherein the selected XML display layout contains first and second areas, wherein the first area defines a respective first GUI display space within which XML data items from the first aggregation of data can be displayed, and wherein the second area defines a respective second GUI
display space within which XML data items from the second aggregation of data can be displayed;
computer readable program code means for matching XML markup tags associated with the first and second aggregations of data within the selected XML data group with respective XML
markup tags associated with the first and second areas contained within the selected display layout;
and computer readable program code means for rendering, via a computer display, the plurality of XML data items from the first aggregation of data in hierarchical order within the first GUI
display space and the plurality of XML data items from the second aggregation of data in hierarchical order within the second GUI display space.
computer readable program code means for selecting an Extensible Markup Language (XML) data group from a plurality of XML data groups, wherein the selected XML data group includes first and second aggregations of data hierarchically ordered within the selected XML
data group, a plurality of XML data items hierarchically ordered within the first aggregation of data, and a plurality of XML data items hierarchically ordered within the second aggregation of data;
computer readable program code means for selecting an XML display layout, wherein the selected XML display layout contains first and second areas, wherein the first area defines a respective first GUI display space within which XML data items from the first aggregation of data can be displayed, and wherein the second area defines a respective second GUI
display space within which XML data items from the second aggregation of data can be displayed;
computer readable program code means for matching XML markup tags associated with the first and second aggregations of data within the selected XML data group with respective XML
markup tags associated with the first and second areas contained within the selected display layout;
and computer readable program code means for rendering, via a computer display, the plurality of XML data items from the first aggregation of data in hierarchical order within the first GUI
display space and the plurality of XML data items from the second aggregation of data in hierarchical order within the second GUI display space.
38. A computer program product according to Claim 37 wherein the first area contains display order information for the plurality of XML data items contained within the first aggregation of data, and wherein the computer readable program code means for rendering the plurality of XML data items from the first aggregation of data comprises computer readable program code means for rendering the plurality of XML data items from the first aggregation of data within the first GUI
display space according to the display order information.
display space according to the display order information.
39. A computer program product according to Claim 37 wherein the second area contains display order information for the plurality of XML data items contained within the second aggregation of data, and wherein the computer readable program code means for rendering the plurality of XML
data items from the second aggregation of data comprises computer readable program code means for rendering the plurality of XML data items from the second aggregation of data within the second GUI display space according to the display order information.
data items from the second aggregation of data comprises computer readable program code means for rendering the plurality of XML data items from the second aggregation of data within the second GUI display space according to the display order information.
40. A computer program product according to Claim 37 wherein the first area contains display format information that defines a format within which the plurality of XML
data items from the first aggregation of data are displayed, and wherein the computer readable program code means for rendering the plurality of XML data items from the first aggregation of data within the first GUI
display space comprises computer readable program code means for rendering the plurality of XML
data items from the first aggregation of data within the first GUI display space according to the display format information.
data items from the first aggregation of data are displayed, and wherein the computer readable program code means for rendering the plurality of XML data items from the first aggregation of data within the first GUI
display space comprises computer readable program code means for rendering the plurality of XML
data items from the first aggregation of data within the first GUI display space according to the display format information.
41. A computer program product according to Claim 37 wherein the second area contains display format information that defines a format within which the plurality of XML
data items from the second aggregation of data are displayed, and wherein the computer readable program code means for rendering the plurality of XML data items from the second aggregation of data within the second GUI display space comprises computer readable program code means for rendering the plurality of XML data items from the second aggregation of data within the second GUI
display space according to the display format information.
data items from the second aggregation of data are displayed, and wherein the computer readable program code means for rendering the plurality of XML data items from the second aggregation of data within the second GUI display space comprises computer readable program code means for rendering the plurality of XML data items from the second aggregation of data within the second GUI
display space according to the display format information.
42. A computer program product according to Claim 37 further comprising computer readable program code means for rendering a GUI control within the computer display, wherein the GUI
control is associated with an XML data item displayed within the first GUI
display space.
control is associated with an XML data item displayed within the first GUI
display space.
43. A computer program product according to Claim 42 wherein the computer readable program code means for rendering a GUI control comprises computer readable program code means for selecting the GUI control based on XML data item type.
44. A computer program product according to Claim 37 further comprising computer readable program code means for rendering a GUI control within the computer display, wherein the GUI
control is associated with an XML data item displayed within the second GUI
display space.
control is associated with an XML data item displayed within the second GUI
display space.
45. A computer program product according to Claim 37 wherein a third aggregation of data containing at least one XML data item is nested within one of the first and second aggregations of data and wherein a third area that defines a respective third GUI display space is nested within one of the first and second areas, further comprising:
computer readable program code means for matching an XML markup tag associated with the third aggregation of data with the third area; and computer readable program code means for rendering the at least one XML data item from the third aggregation of data within the third GUI display space.
computer readable program code means for matching an XML markup tag associated with the third aggregation of data with the third area; and computer readable program code means for rendering the at least one XML data item from the third aggregation of data within the third GUI display space.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/321,700 | 1999-05-28 | ||
US09/321,700 US6476828B1 (en) | 1999-05-28 | 1999-05-28 | Systems, methods and computer program products for building and displaying dynamic graphical user interfaces |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2303725A1 CA2303725A1 (en) | 2000-11-28 |
CA2303725C true CA2303725C (en) | 2010-08-17 |
Family
ID=23251666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2303725A Expired - Lifetime CA2303725C (en) | 1999-05-28 | 2000-04-05 | Systems, methods and computer program products for building and displaying dynamic graphical user interfaces |
Country Status (2)
Country | Link |
---|---|
US (1) | US6476828B1 (en) |
CA (1) | CA2303725C (en) |
Families Citing this family (170)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090077020A9 (en) * | 1998-12-04 | 2009-03-19 | Toong Hoo-Min | Systems and methods of searching databases |
EP1129417A4 (en) * | 1998-12-04 | 2004-06-30 | Technology Enabling Company Ll | Systems and methods for organizing data |
US6880129B1 (en) * | 1999-04-29 | 2005-04-12 | Silverstream Software, Llc | Method and apparatus for using name spaces in a graphical user interface |
US7043693B2 (en) * | 1999-08-19 | 2006-05-09 | National Instruments Corporation | System and method for programmatically generating a second graphical program based on a first graphical program |
US7159183B1 (en) * | 1999-08-19 | 2007-01-02 | National Instruments Corporation | System and method for programmatically creating a graphical program |
US6996771B1 (en) * | 1999-11-05 | 2006-02-07 | International Business Machines Corporation | Dynamic parameter modification |
US7017143B1 (en) * | 1999-12-01 | 2006-03-21 | Microsoft Corporation | External resource files for application development and management |
US6675355B1 (en) * | 2000-03-16 | 2004-01-06 | Autodesk, Inc. | Redline extensible markup language (XML) schema |
GB2360429A (en) * | 2000-03-16 | 2001-09-19 | Ibm | Navigation manager for navigating a hierarchical user interface represenation |
US7725812B1 (en) * | 2000-03-31 | 2010-05-25 | Avid Technology, Inc. | Authoring system for combining temporal and nontemporal digital media |
US7555557B2 (en) | 2000-04-07 | 2009-06-30 | Avid Technology, Inc. | Review and approval system |
US6964017B1 (en) * | 2000-04-26 | 2005-11-08 | Adobe Systems Incorporated | System and method of creating interactive visual content |
US6781609B1 (en) * | 2000-05-09 | 2004-08-24 | International Business Machines Corporation | Technique for flexible inclusion of information items and various media types in a user interface |
DE10028842A1 (en) * | 2000-06-15 | 2002-01-03 | Ralf Mimoun | Operation surface generating method involves converting position and function of individual components on operation surface into standard code so that browser will return inputs of user in demanded format |
US7155667B1 (en) | 2000-06-21 | 2006-12-26 | Microsoft Corporation | User interface for integrated spreadsheets and word processing tables |
US7346848B1 (en) | 2000-06-21 | 2008-03-18 | Microsoft Corporation | Single window navigation methods and systems |
US7000230B1 (en) | 2000-06-21 | 2006-02-14 | Microsoft Corporation | Network-based software extensions |
US7117435B1 (en) | 2000-06-21 | 2006-10-03 | Microsoft Corporation | Spreadsheet fields in text |
US7624356B1 (en) | 2000-06-21 | 2009-11-24 | Microsoft Corporation | Task-sensitive methods and systems for displaying command sets |
US6883168B1 (en) | 2000-06-21 | 2005-04-19 | Microsoft Corporation | Methods, systems, architectures and data structures for delivering software via a network |
US7191394B1 (en) | 2000-06-21 | 2007-03-13 | Microsoft Corporation | Authoring arbitrary XML documents using DHTML and XSLT |
US6948135B1 (en) | 2000-06-21 | 2005-09-20 | Microsoft Corporation | Method and systems of providing information to computer users |
WO2002012997A1 (en) * | 2000-08-08 | 2002-02-14 | Fineground Networks | Method and system for parameterized web documents |
US7047281B1 (en) | 2000-08-08 | 2006-05-16 | Fineground Networks | Method and system for accelerating the delivery of content in a networked environment |
AU2001294555A1 (en) * | 2000-09-14 | 2002-03-26 | Bea Systems Inc. | Xml-based graphical user interface application development toolkit |
US7065742B1 (en) * | 2000-10-30 | 2006-06-20 | Microsoft Corporation | System and method for dynamically processing declarative language instance data |
US7032015B1 (en) * | 2000-10-31 | 2006-04-18 | General Electric Company | System and method for integrating a power system over a network |
US20020163535A1 (en) * | 2000-12-11 | 2002-11-07 | Mitchell Kathryn L. | System and method for generating a graphical user interface from a template |
US7200838B2 (en) * | 2000-12-20 | 2007-04-03 | National Instruments Corporation | System and method for automatically generating a graphical program in response to a state diagram |
US20020085033A1 (en) * | 2000-12-27 | 2002-07-04 | G.E. Information Services, Inc. | Process for generating a user interface in a data processing system |
US20020149619A1 (en) * | 2001-02-12 | 2002-10-17 | Perot Systems Corporation | System and method for constructing a graphical user interface |
US6915486B2 (en) * | 2001-02-13 | 2005-07-05 | International Business Machines Corporation | Customizing a graphical user interface of a host application |
US7310687B2 (en) * | 2001-03-23 | 2007-12-18 | Cisco Technology, Inc. | Methods and systems for managing class-based condensation |
US7930624B2 (en) | 2001-04-20 | 2011-04-19 | Avid Technology, Inc. | Editing time-based media with enhanced content |
US20020188628A1 (en) * | 2001-04-20 | 2002-12-12 | Brian Cooper | Editing interactive content with time-based media |
US7246326B2 (en) * | 2001-06-25 | 2007-07-17 | Siemens Medical Solutions Health Services Corporation | System and procedure for providing a user interface display |
EP2375320A3 (en) * | 2001-06-30 | 2012-07-11 | Cokinetics Systems | An internet interface and integration language system and method |
US7093198B1 (en) | 2001-08-16 | 2006-08-15 | Nokia Corporation | Skins for mobile communication devices |
KR100452343B1 (en) * | 2001-12-28 | 2004-10-12 | 에스케이텔레텍주식회사 | Memory medium storing file for Mobile Communication Device including Machine-Language-Code Execution Section and File Execution Method using the same |
US7725560B2 (en) * | 2002-05-01 | 2010-05-25 | Bea Systems Inc. | Web service-enabled portlet wizard |
US20040010598A1 (en) * | 2002-05-01 | 2004-01-15 | Bea Systems, Inc. | Portal setup wizard |
US7496687B2 (en) * | 2002-05-01 | 2009-02-24 | Bea Systems, Inc. | Enterprise application platform |
US20050149847A1 (en) * | 2002-05-03 | 2005-07-07 | Chandler Richard M. | Monitoring system for general-purpose computers |
GB2388214B (en) * | 2002-05-03 | 2005-09-28 | Monactive Ltd | Monitoring system for general-purpose computers |
US7213212B2 (en) * | 2002-06-03 | 2007-05-01 | Microsoft Corporation | XGL and multi-platform user interface engine |
US7240295B2 (en) * | 2002-06-03 | 2007-07-03 | Microsoft Corporation | XGL and dynamic accessibility system and method |
US7290215B2 (en) * | 2002-06-03 | 2007-10-30 | Microsoft Corporation | Dynamic wizard interface system and method |
US20030227481A1 (en) * | 2002-06-05 | 2003-12-11 | Udo Arend | Creating user interfaces using generic tasks |
US7444302B2 (en) * | 2002-06-14 | 2008-10-28 | Ellie Mae, Inc. | Online system for fulfilling loan applications from loan originators |
KR100472458B1 (en) * | 2002-06-26 | 2005-03-10 | 삼성전자주식회사 | Apparatus method for XML parsing utilizing exterior XML validator |
US20060224977A1 (en) * | 2005-04-01 | 2006-10-05 | Paul Albrecht | Graphical application interface |
US20060225000A1 (en) * | 2005-04-01 | 2006-10-05 | Paul Albrecht | Graphical application interface using browser |
US20060224972A1 (en) * | 2005-04-01 | 2006-10-05 | Paul Albrecht | Graphical application interface with a browser |
US20060224978A1 (en) * | 2005-04-01 | 2006-10-05 | Paul Albrecht | System for creating a graphical application interface |
US20060224980A1 (en) * | 2005-04-01 | 2006-10-05 | Paul Albrecht | Method of creating graphical visualizations of data with a browser |
US20060224976A1 (en) * | 2005-04-01 | 2006-10-05 | Paul Albrecht | Graphical application interface product |
US20060224973A1 (en) * | 2005-04-01 | 2006-10-05 | Paul Albrecht | Method of using a browser |
US8316001B1 (en) | 2002-07-22 | 2012-11-20 | Ipvision, Inc. | Apparatus and method for performing analyses on data derived from a web-based search engine |
US20060224975A1 (en) * | 2005-04-01 | 2006-10-05 | Paul Albrecht | System for creating a graphical application interface with a browser |
US20060224983A1 (en) * | 2005-04-01 | 2006-10-05 | Paul Albrecht | Graphical visualization of data using browser |
US20040027377A1 (en) * | 2002-08-06 | 2004-02-12 | Grace Hays | User interface design and validation including dynamic data |
US20040027378A1 (en) * | 2002-08-06 | 2004-02-12 | Hays Grace L. | Creation of user interfaces for multiple devices |
US7603332B2 (en) * | 2002-08-06 | 2009-10-13 | Siemens Energy & Automation, Inc. | Devices, systems, and methods for mediated rule-based translation system configuration information |
US7472089B2 (en) | 2002-08-15 | 2008-12-30 | Ellie Mae, Inc. | Loan origination system interface for online loan application processing |
US7412658B2 (en) | 2002-11-14 | 2008-08-12 | Sap Ag | Modeling system for graphic user interface |
US20040098246A1 (en) * | 2002-11-19 | 2004-05-20 | Welch Donald J. | System and method for displaying documents in a language specified by a user |
US7761787B2 (en) * | 2002-12-02 | 2010-07-20 | Siemens Medical Solutions Usa, Inc. | Document generation system and user interface for producing a user desired document |
US7366991B1 (en) * | 2002-12-12 | 2008-04-29 | Microsoft Corporation | Method and system for providing an extensible user interface |
JP2004206550A (en) * | 2002-12-26 | 2004-07-22 | Fanuc Ltd | Numerical control apparatus |
US7506273B2 (en) * | 2003-03-19 | 2009-03-17 | International Business Machines Corporation | Method and system for modifying properties of graphical user interface components |
US7370066B1 (en) | 2003-03-24 | 2008-05-06 | Microsoft Corporation | System and method for offline editing of data files |
US7415672B1 (en) | 2003-03-24 | 2008-08-19 | Microsoft Corporation | System and method for designing electronic forms |
US7275216B2 (en) * | 2003-03-24 | 2007-09-25 | Microsoft Corporation | System and method for designing electronic forms and hierarchical schemas |
US7913159B2 (en) | 2003-03-28 | 2011-03-22 | Microsoft Corporation | System and method for real-time validation of structured data files |
US7296017B2 (en) | 2003-03-28 | 2007-11-13 | Microsoft Corporation | Validation of XML data files |
US20050038868A1 (en) * | 2003-05-19 | 2005-02-17 | Spicer Jeffrey J. | Web form host |
US7516412B1 (en) * | 2003-05-23 | 2009-04-07 | Nvidia Corporation | Method and apparatus for content-based rendering of user interfaces |
US7451392B1 (en) | 2003-06-30 | 2008-11-11 | Microsoft Corporation | Rendering an HTML electronic form by applying XSLT to XML using a solution |
US7707255B2 (en) | 2003-07-01 | 2010-04-27 | Microsoft Corporation | Automatic grouping of electronic mail |
US7765523B2 (en) * | 2003-07-10 | 2010-07-27 | Computer Associates Think, Inc. | System and method for generating a web-enabled graphical user interface plug-in |
US20050010877A1 (en) * | 2003-07-11 | 2005-01-13 | Arthur Udler | System and method for dynamic generation of a graphical user interface |
US7761842B2 (en) * | 2003-07-11 | 2010-07-20 | Computer Associates Think, Inc. | System and method for generating a graphical user interface (GUI) element |
US7406660B1 (en) | 2003-08-01 | 2008-07-29 | Microsoft Corporation | Mapping between structured data and a visual surface |
US7581177B1 (en) * | 2003-08-01 | 2009-08-25 | Microsoft Corporation | Conversion of structured documents |
US7334187B1 (en) | 2003-08-06 | 2008-02-19 | Microsoft Corporation | Electronic form aggregation |
JP4476594B2 (en) * | 2003-10-17 | 2010-06-09 | 淳二 城戸 | Organic electroluminescent device |
DE10351351B4 (en) * | 2003-11-04 | 2007-03-22 | Siemens Ag | Method and system for the dynamic generation of user interfaces |
US7475351B1 (en) | 2003-12-02 | 2009-01-06 | Sun Microsystems, Inc. | Interactive drag and snap connection tool |
US8028239B1 (en) * | 2003-12-19 | 2011-09-27 | Microsoft Corporation | Context-based management user interface supporting extensible subtractive filtering |
US8819072B1 (en) | 2004-02-02 | 2014-08-26 | Microsoft Corporation | Promoting data from structured data files |
US7584420B2 (en) * | 2004-02-12 | 2009-09-01 | Lockheed Martin Corporation | Graphical authoring and editing of mark-up language sequences |
US7801702B2 (en) * | 2004-02-12 | 2010-09-21 | Lockheed Martin Corporation | Enhanced diagnostic fault detection and isolation |
US7856596B2 (en) * | 2004-02-17 | 2010-12-21 | Microsoft Corporation | Method and system for separation of content and layout definitions in a display description |
US20050216834A1 (en) * | 2004-03-29 | 2005-09-29 | Microsoft Corporation | Method, apparatus, and computer-readable medium for dynamically rendering a user interface menu |
US7426713B2 (en) * | 2004-03-31 | 2008-09-16 | International Business Machines Corporation | Controlling a GUI display for a plug-in |
US9734222B1 (en) | 2004-04-06 | 2017-08-15 | Jpmorgan Chase Bank, N.A. | Methods and systems for using script files to obtain, format and transport data |
US7496837B1 (en) | 2004-04-29 | 2009-02-24 | Microsoft Corporation | Structural editing with schema awareness |
US7849412B2 (en) * | 2004-05-21 | 2010-12-07 | Computer Associates Think, Inc. | System and method for generating a web control in a Windows development environment |
US7281018B1 (en) | 2004-05-26 | 2007-10-09 | Microsoft Corporation | Form template data source change |
US7774620B1 (en) | 2004-05-27 | 2010-08-10 | Microsoft Corporation | Executing applications at appropriate trust levels |
US7519908B2 (en) * | 2004-05-28 | 2009-04-14 | Sap Ag | Application server configuration tool |
US20060069753A1 (en) * | 2004-06-18 | 2006-03-30 | Limin Hu | Automatic web-based client-server application program update system |
US8990254B2 (en) | 2004-07-02 | 2015-03-24 | Ellie Mae, Inc. | Loan origination software system for processing mortgage loans over a distributed network |
US8255828B2 (en) | 2004-08-16 | 2012-08-28 | Microsoft Corporation | Command user interface for displaying selectable software functionality controls |
US9015621B2 (en) | 2004-08-16 | 2015-04-21 | Microsoft Technology Licensing, Llc | Command user interface for displaying multiple sections of software functionality controls |
US7703036B2 (en) | 2004-08-16 | 2010-04-20 | Microsoft Corporation | User interface for displaying selectable software functionality controls that are relevant to a selected object |
US8146016B2 (en) | 2004-08-16 | 2012-03-27 | Microsoft Corporation | User interface for displaying a gallery of formatting options applicable to a selected object |
US20060059422A1 (en) * | 2004-09-16 | 2006-03-16 | Ting-Hu Wu | Desktop application implemented with web paradigm |
US7692636B2 (en) | 2004-09-30 | 2010-04-06 | Microsoft Corporation | Systems and methods for handwriting to a screen |
US8302074B1 (en) * | 2004-10-15 | 2012-10-30 | Oracle America, Inc. | “If” and “switch” as drag and drop objects |
US8487879B2 (en) | 2004-10-29 | 2013-07-16 | Microsoft Corporation | Systems and methods for interacting with a computer through handwriting to a screen |
US20060101023A1 (en) * | 2004-11-05 | 2006-05-11 | Ellie Mae, Inc. | Universal computing paradigm with single-code base utilizing a flexible distributed computing architecture |
US20060106682A1 (en) * | 2004-11-12 | 2006-05-18 | Van Dyck Jeffery J | Web based configuration tool |
US7712022B2 (en) | 2004-11-15 | 2010-05-04 | Microsoft Corporation | Mutually exclusive options in electronic forms |
US7721190B2 (en) | 2004-11-16 | 2010-05-18 | Microsoft Corporation | Methods and systems for server side form processing |
US20060112073A1 (en) * | 2004-11-22 | 2006-05-25 | Jensen David L | Interface building/design tool for generating nested interface systems and displays |
US7904801B2 (en) | 2004-12-15 | 2011-03-08 | Microsoft Corporation | Recursive sections in electronic forms |
US20080052281A1 (en) | 2006-08-23 | 2008-02-28 | Lockheed Martin Corporation | Database insertion and retrieval system and method |
US7937651B2 (en) | 2005-01-14 | 2011-05-03 | Microsoft Corporation | Structural editing operations for network forms |
US7725834B2 (en) | 2005-03-04 | 2010-05-25 | Microsoft Corporation | Designer-created aspect for an electronic form template |
US7673228B2 (en) | 2005-03-30 | 2010-03-02 | Microsoft Corporation | Data-driven actions for network forms |
US8010515B2 (en) | 2005-04-15 | 2011-08-30 | Microsoft Corporation | Query to an electronic form |
US8200975B2 (en) | 2005-06-29 | 2012-06-12 | Microsoft Corporation | Digital signatures for network forms |
US20070055685A1 (en) * | 2005-08-18 | 2007-03-08 | Avaya Technology Corp. | Telecommunications terminal with multiple display modes |
US8627222B2 (en) | 2005-09-12 | 2014-01-07 | Microsoft Corporation | Expanded search and find user interface |
US8001459B2 (en) | 2005-12-05 | 2011-08-16 | Microsoft Corporation | Enabling electronic documents for limited-capability computing devices |
US7757204B2 (en) * | 2005-12-29 | 2010-07-13 | Sap Ag | Limiting extensibility of a visual modeling language |
US7774745B2 (en) * | 2005-12-29 | 2010-08-10 | Sap Ag | Mapping of designtime to runtime in a visual modeling language environment |
US7840935B2 (en) * | 2005-12-29 | 2010-11-23 | Sap Ag | Restrictive visualization of a stereotype construct for entities in a visual modeling environment |
US7779343B2 (en) | 2006-01-30 | 2010-08-17 | Microsoft Corporation | Opening network-enabled electronic documents |
US9317302B2 (en) * | 2006-01-30 | 2016-04-19 | International Business Machines Corporation | Method and algorithm for content layout across diverse and dynamic displays |
US9727989B2 (en) | 2006-06-01 | 2017-08-08 | Microsoft Technology Licensing, Llc | Modifying and formatting a chart using pictorially provided chart elements |
US7681138B2 (en) * | 2006-07-11 | 2010-03-16 | Siemens Aktiengesellschaft | Use of a reusable control software whose user interface and communication connection are established via an external description-based configuration at run time |
US7681135B2 (en) * | 2006-08-10 | 2010-03-16 | Kabushiki Kaisha Toshiba | System and method for generating a composite source user interface |
US20080109714A1 (en) * | 2006-11-03 | 2008-05-08 | Sap Ag | Capturing screen information |
US9411903B2 (en) * | 2007-03-05 | 2016-08-09 | Oracle International Corporation | Generalized faceted browser decision support tool |
US20080270469A1 (en) * | 2007-04-26 | 2008-10-30 | Microsoft Corporation | Business metrics aggregated by custom hierarchy |
US20080270919A1 (en) * | 2007-04-27 | 2008-10-30 | Kulp Richard L | Context Based Software Layer |
US8756512B2 (en) * | 2007-05-09 | 2014-06-17 | International Business Machines Corporation | Dynamic GUI rendering by aggregation of device capabilities |
US8484578B2 (en) | 2007-06-29 | 2013-07-09 | Microsoft Corporation | Communication between a document editor in-space user interface and a document editor out-space user interface |
US8762880B2 (en) | 2007-06-29 | 2014-06-24 | Microsoft Corporation | Exposing non-authoring features through document status information in an out-space user interface |
US8600798B1 (en) | 2007-09-21 | 2013-12-03 | Ellie Mae, Inc. | Loan screening |
US9588781B2 (en) | 2008-03-31 | 2017-03-07 | Microsoft Technology Licensing, Llc | Associating command surfaces with multiple active components |
US8504929B2 (en) * | 2008-04-11 | 2013-08-06 | Oracle International Corporation | Editing user interface components |
KR20090110202A (en) | 2008-04-17 | 2009-10-21 | 삼성전자주식회사 | Method and apparatus for displaying personalized user interface |
KR101545137B1 (en) | 2008-04-17 | 2015-08-19 | 삼성전자주식회사 | Method and apparatus for generating user interface |
KR101560183B1 (en) * | 2008-04-17 | 2015-10-15 | 삼성전자주식회사 | / Method and apparatus for providing/receiving user interface |
US9665850B2 (en) | 2008-06-20 | 2017-05-30 | Microsoft Technology Licensing, Llc | Synchronized conversation-centric message list and message reading pane |
US8255869B2 (en) * | 2008-06-30 | 2012-08-28 | Rockwell Automation Technologies, Inc. | Industry template customization and transclusion for use in industrial automation and information solutions |
US8677310B2 (en) * | 2008-06-30 | 2014-03-18 | Rockwell Automation Technologies, Inc. | Industry template abstracting and creation for use in industrial automation and information solutions |
US8832579B2 (en) * | 2008-08-12 | 2014-09-09 | Rockwell Automation Technologies, Inc. | System for creation and management of industrial automation and information solutions and services |
US7966523B2 (en) * | 2008-08-21 | 2011-06-21 | Rockwell Automation Technologies, Inc. | Industrial automation and information solutions having industry specific modalities |
US8265606B2 (en) * | 2008-10-09 | 2012-09-11 | Microsoft Corporation | Targeted advertisements to social contacts |
US9009661B2 (en) * | 2008-12-18 | 2015-04-14 | Adobe Systems Incorporated | Platform sensitive application characteristics |
US9009662B2 (en) * | 2008-12-18 | 2015-04-14 | Adobe Systems Incorporated | Platform sensitive application characteristics |
US9047106B1 (en) * | 2010-06-29 | 2015-06-02 | Emc Corporation | Managing application features |
US10210160B2 (en) | 2010-09-07 | 2019-02-19 | Opentv, Inc. | Collecting data from different sources |
US9699503B2 (en) | 2010-09-07 | 2017-07-04 | Opentv, Inc. | Smart playlist |
US8949871B2 (en) | 2010-09-08 | 2015-02-03 | Opentv, Inc. | Smart media selection based on viewer user presence |
US8559793B2 (en) | 2011-05-26 | 2013-10-15 | Avid Technology, Inc. | Synchronous data tracks in a media editing system |
CN102830957A (en) * | 2011-06-15 | 2012-12-19 | 康佳集团股份有限公司 | Method for generating interface code and application software of television |
US9407443B2 (en) | 2012-06-05 | 2016-08-02 | Lookout, Inc. | Component analysis of software applications on computing devices |
US10403403B2 (en) | 2012-09-28 | 2019-09-03 | Cerner Innovation, Inc. | Adaptive medical documentation system |
US9208215B2 (en) * | 2012-12-27 | 2015-12-08 | Lookout, Inc. | User classification based on data gathered from a computing device |
US10424403B2 (en) | 2013-01-28 | 2019-09-24 | Siemens Aktiengesellschaft | Adaptive medical documentation system |
US20140282000A1 (en) * | 2013-03-15 | 2014-09-18 | Tawfiq AlMaghlouth | Animated character conversation generator |
WO2016178816A1 (en) | 2015-05-01 | 2016-11-10 | Lookout, Inc. | Determining source of side-loaded software |
US10466863B1 (en) | 2016-06-01 | 2019-11-05 | Google Llc | Predictive insertion of graphical objects in a development environment |
US10218697B2 (en) | 2017-06-09 | 2019-02-26 | Lookout, Inc. | Use of device risk evaluation to manage access to services |
US10664245B2 (en) * | 2018-02-01 | 2020-05-26 | Ricoh Company, Ltd. | Guided web-application generation |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4860291A (en) | 1987-12-28 | 1989-08-22 | Tektronix, Inc. | Test vector definition system employing template concept |
US5121477A (en) | 1988-04-08 | 1992-06-09 | International Business Machines Inc. | System for interactively creating action bar pull-down windows of a user interface for use at program run time |
JPH0812596B2 (en) | 1991-08-19 | 1996-02-07 | インターナショナル・ビジネス・マシーンズ・コーポレイション | Method and system for generating multiple panel versions from a single panel definition file |
JPH0721754B2 (en) | 1991-11-08 | 1995-03-08 | インターナショナル・ビジネス・マシーンズ・コーポレイション | Graphical user interface |
JPH064277A (en) | 1992-06-23 | 1994-01-14 | Hitachi Ltd | Method and device for automatically generating gui control program |
FR2694105B1 (en) | 1992-07-22 | 1994-11-25 | Bull Sa | Use of an on-board interpreter language for the creation of an interactive user interface definition tool. |
US5487145A (en) | 1993-07-09 | 1996-01-23 | Taligent, Inc. | Method and apparatus for compositing display items which minimizes locked drawing areas |
US5418941A (en) | 1994-01-28 | 1995-05-23 | International Business Machines Corporation | Method and apparatus for a dynamic application test facility |
US5548704A (en) | 1994-11-08 | 1996-08-20 | The Consulting Team, Inc. | Method for windowing using mainframe hosted CICS |
JPH08166865A (en) | 1994-12-12 | 1996-06-25 | Ricoh Co Ltd | Method and device for screen generation |
JPH09198348A (en) | 1996-01-23 | 1997-07-31 | Hitachi Ltd | Cui/gui picture frame conversion processing system |
JPH10187512A (en) | 1996-12-27 | 1998-07-21 | Hitachi Ltd | Method for generating program for database structuring and database operation |
US6003047A (en) * | 1996-12-30 | 1999-12-14 | Emc Corporation | Non-hierarchical application interface for HTML-based network storage management programs |
US5781739A (en) | 1996-12-31 | 1998-07-14 | International Business Machines Corp. | IMS/WWW mapping system |
US6330659B1 (en) * | 1997-11-06 | 2001-12-11 | Iready Corporation | Hardware accelerator for an object-oriented programming language |
US5878418A (en) | 1997-08-12 | 1999-03-02 | Intervoice Limited Partnership | Auto definition of data sets and provisioning interfaces for call automation |
US5877766A (en) | 1997-08-15 | 1999-03-02 | International Business Machines Corporation | Multi-node user interface component and method thereof for use in accessing a plurality of linked records |
US5848410A (en) | 1997-10-08 | 1998-12-08 | Hewlett Packard Company | System and method for selective and continuous index generation |
US6272537B1 (en) * | 1997-11-17 | 2001-08-07 | Fujitsu Limited | Method for building element manager for a computer network element using a visual element manager builder process |
JPH11296541A (en) * | 1998-04-14 | 1999-10-29 | Fujitsu Ltd | Structured data management system, and computer-readable recording medium recorded with structured data managing program |
JP3912895B2 (en) * | 1998-04-15 | 2007-05-09 | 富士通株式会社 | Structured data management system, computer-readable recording medium on which structured data management program is recorded, and structured data management method |
US6167448A (en) * | 1998-06-11 | 2000-12-26 | Compaq Computer Corporation | Management event notification system using event notification messages written using a markup language |
US6307544B1 (en) * | 1998-07-23 | 2001-10-23 | International Business Machines Corporation | Method and apparatus for delivering a dynamic context sensitive integrated user assistance solution |
US6125391A (en) * | 1998-10-16 | 2000-09-26 | Commerce One, Inc. | Market makers using documents for commerce in trading partner networks |
US6249844B1 (en) * | 1998-11-13 | 2001-06-19 | International Business Machines Corporation | Identifying, processing and caching object fragments in a web environment |
-
1999
- 1999-05-28 US US09/321,700 patent/US6476828B1/en not_active Expired - Lifetime
-
2000
- 2000-04-05 CA CA2303725A patent/CA2303725C/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CA2303725A1 (en) | 2000-11-28 |
US6476828B1 (en) | 2002-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2303725C (en) | Systems, methods and computer program products for building and displaying dynamic graphical user interfaces | |
US6275227B1 (en) | Computer system and method for controlling the same utilizing a user interface control integrated with multiple sets of instructional material therefor | |
US6342907B1 (en) | Specification language for defining user interface panels that are platform-independent | |
US8365203B2 (en) | Method for creating a native application for mobile communications device in real-time | |
KR100863125B1 (en) | User interface element representation with simplified view | |
US7600046B2 (en) | Event notification | |
US7395500B2 (en) | Space-optimizing content display | |
US6920607B1 (en) | Methods and systems for dynamically creating user interfaces | |
KR100380586B1 (en) | Method, apparatus and article of manufacture for customizing a document interface for display on a computer monitor and apparatus thereof | |
US6636246B1 (en) | Three dimensional spatial user interface | |
US6442574B1 (en) | Structured document browser | |
US7325204B2 (en) | Slideout windows | |
US6278448B1 (en) | Composite Web page built from any web content | |
US20050050301A1 (en) | Extensible user interface | |
US20050091672A1 (en) | Facilitating presentation functionality through a programming interface media namespace | |
US20050246653A1 (en) | Providing accessibility compliance within advanced componentry | |
CA2481590A1 (en) | Programming interface for a computer platform | |
US20060090139A1 (en) | Collection view objects for displaying data collection items in user interface elements | |
MXPA06007053A (en) | Method and system for creating and providing a multi-tier networked service. | |
EP1006440A2 (en) | Display widget interaction in embedded systems using child graphics contexts | |
KR20060061733A (en) | Declarative mechanism for defining a hierarchy of objects | |
WO2005022337A2 (en) | Extensible user interface | |
Yiling | Data structure animation tutorial | |
Steinmetz et al. | Documents, Hypertext, and Hypermedia | |
Bazzi | Cross platofrm issues in software design and development: a case study of Athena/Muse 2 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKEX | Expiry |
Effective date: 20200405 |
|
MKEX | Expiry |
Effective date: 20200405 |