[go: up one dir, main page]

WO1998033127A1 - Langage, systeme et procede de balisage de documents, destines a produire et a afficher des documents - Google Patents

Langage, systeme et procede de balisage de documents, destines a produire et a afficher des documents Download PDF

Info

Publication number
WO1998033127A1
WO1998033127A1 PCT/US1998/001763 US9801763W WO9833127A1 WO 1998033127 A1 WO1998033127 A1 WO 1998033127A1 US 9801763 W US9801763 W US 9801763W WO 9833127 A1 WO9833127 A1 WO 9833127A1
Authority
WO
WIPO (PCT)
Prior art keywords
dde
ofthe
href
text
twk
Prior art date
Application number
PCT/US1998/001763
Other languages
English (en)
Inventor
Ronald E. Fortin
Louis R. Bershad
Brian T. Brady
Original Assignee
Mesa Systems Guild, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mesa Systems Guild, Inc. filed Critical Mesa Systems Guild, Inc.
Priority to CA002278659A priority Critical patent/CA2278659A1/fr
Priority to EP98904769A priority patent/EP0954803A1/fr
Priority to AU62566/98A priority patent/AU6256698A/en
Publication of WO1998033127A1 publication Critical patent/WO1998033127A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting

Definitions

  • the present invention is related to the generation and processing of documents in a markup language.
  • Markup languages such as the standard generalized markup language (SGML), and variants thereof, have been used previously in electronic publishing.
  • markup language elements include tags and their content, such as text, graphics, pointers to other documentary or other media.
  • Tags may include start tags, end tags, or empty tags.
  • a start tag begins a markup element.
  • An end tag ends the corresponding markup element.
  • start and end tags generally define the boundaries of an element.
  • An empty tag is understood as being both a start and an end tag with no content.
  • HTML hypertext markup language
  • HTML hypertext markup language
  • Other markup languages include the virtual reality modeling language (VRML) and HyTime, among other markup languages.
  • Markup languages generally have been used to define the structure of electronic documents. When graphics are used within these documents, they are imported into such documents by using a tag, such as the " ⁇ IMG>" tag in HTML. This tag uses a reference to a data file in some graphic file format to import the image data. Additionally, such markup languages typically have a mechanism to provide a hypertext link from a location in one document to a location in another document.
  • HTML Hypertext link
  • HTML graphics require an image file already to be created. The entire image is displayed.
  • HTML browsers generally do not allow selective viewing of only a portion of an image or otherwise allow a browser to "zoom" in and out on an image.
  • these HTML documents contain static content, and when updated, need to be reloaded from a server.
  • updated HTML documents need to be created manually and deposited in server directories, creating additional work for a document administrator.
  • the present invention uses a markup language that defines elements which improve the ability of users to view more complex documents, particularly graphical documents, such as those based on data generated by computer-aided design, computer-aided software engineering, or other data modeling tools. Further, one embodiment ofthe present invention allows a display of an electronic document to dynamically change in response to user input. Accordingly, one aspect ofthe present invention is an electronically published document containing descriptive markup defining several tags. These tags define elements which are interpreted to define a diagram containing a plurality of layers. Each layer contains several graphical objects. An object may have associated with it a menu of actions or hypertext links.
  • Another aspect ofthe invention is a computer system or computer-implemented process which processes such an electronically published document and generates on a computer display the diagram defined by the descriptive markup.
  • Elements ofthe electronic document are instantiated as objects which may be responsive to user input. These objects may be graphics objects which respond to events received from the user through the computer system. The different layers ofthe document may be displayed selectively. Also, the view of the diagram may change using a zoom function, or it may be refreshed, i.e., redisplayed, or the electronically published document may be reloaded and reprocessed.
  • One or more objects may be selected. Selection of objects may invoke a display of a menu of selectable actions which are associated with that object. These actions may include one or more hypertext links.
  • Another aspect ofthe invention is a computer system for generating and displaying electronically published documents having a plurality of markup elements, the computer system comprising a display configured to display an input electronic document to a user and a processor which processes the input electronic document and generates a first image on the display ofthe computer system on the basis ofthe plurality of markup elements, wherein the processor is responsive to an input ofthe user to generate a second image ofthe input electronic document based on the user input.
  • the processor instantiates a first object corresponding to at least one ofthe plurality of markup elements.
  • at least one ofthe plurality of markup elements is a graphics element.
  • the processor instantiates an object corresponding to the graphics element.
  • Another aspect ofthe invention is a computer system wherein the processor instantiates a parser object configured to parse the input electronic document.
  • the processor instantiates a second object having a defined relation to the first object and is adapted to change a representation of the second object when a representation ofthe first object is changed.
  • the processor instantiates a view handler object that responds to user input.
  • the processor instantiates a parser object configured to parse the input electronic document and wherein the processor instantiates a diagram object based on the plurality of markup elements.
  • the diagram object includes a plurality of shape objects which represent graphic markup elements.
  • the diagram object includes a plurality of layers with which are associated each of the plurality of shape objects.
  • the processor is adapted to a display one or more ofthe plurality of layers.
  • selection of a graphics object by a user invokes a menu of selectable actions.
  • a computer system wherein one or more ofthe selectable actions have an associated link to another input electronic document.
  • the first object is responsive to the user input and wherein the processor generates an updated display ofthe first object based on the user input.
  • Another aspect ofthe invention is a computer system wherein the first object is associated with a graphics element, and is responsive to a function and wherein the function provides the updated display is different than an original display ofthe first object.
  • Another aspect ofthe invention is computer system wherein the processor instantiates a second graphics object having a defined relation to the first graphics object and is adapted to change a representation ofthe second graphics object when the original display is updated.
  • another aspect ofthe present invention is an electronically published document comprising a computer readable medium with computer logic stored thereon and defining descriptive markup defining several tags, wherein each tag defines an element, wherein an element is interpreted to define a diagram containing a plurality of layers, wherein each layer contains several graphical objects, and wherein each object may have associated therewith a menu of actions or hypertext links.
  • Another aspect ofthe invention is a computer system or computer-implemented process which processes such an electronically published document and generates on a computer display the diagram defined by the descriptive markup, wherein the different layers ofthe document are displayed selectively.
  • another aspect ofthe invention is a computer-readable medium having computer-readable logic stored therein defining a data structure for representing an electronic document, the data structure comprising means defining the electronic document as a plurality of markup elements defining a first one ofthe plurality of markup elements wherein the one includes an attribute expressing an inheritance relation to a second element that is at a same hierarchical level as the first one.
  • Another aspect ofthe invention is a computer-readable medium wherein the one of the plurality of markup elements may be instantiated as an object by a computer process.
  • Another aspect ofthe invention is a computer-readable medium wherein the one of the plurality of markup elements is a graphics element.
  • Another aspect ofthe invention is a computer-readable medium the data structure further comprising means for defining a menu having selections associated with the one, wherein each element has an associated link.
  • Another aspect ofthe invention is a computer-readable medium wherein the first and second elements are graphical elements, and wherein an interpreted display ofthe first element depends on attributes ofthe second object.
  • Another aspect ofthe invention is an object-oriented computer system for generating and displaying an electronic document including a plurality of markup language elements, the system comprising of a parser object class wherein an instance ofthe parser object class comprises a method adapted to parse the electronic document, a diagram object class wherein an instance ofthe diagram object class is generated by the parser object class and comprises a plurality of shape objects representing graphic elements and a view handler object class wherein an instance ofthe view handler object class comprises a method for manipulating the diagram object used by the parser object class to generate an updated diagram object.
  • Another aspect ofthe invention is an object-oriented system wherein a first instance ofthe shape object class has a defined relation to a second instance ofthe shape object class and is adapted by a change in the second instance.
  • Another aspect ofthe invention is a method for generating and displaying an electronically-published document having a plurality of markup elements, the method comprising the steps of parsing an input electronic document, generating a display ofthe input electronic document, responding to a user input by generating a different display ofthe electronic document based on the user input.
  • Another aspect ofthe invention is a method wherein the parsing step includes the steps of reading a markup element ofthe input electronic document and instantiating a first object associated with the markup element.
  • another aspect ofthe invention is a method wherein the responding and generating step includes the steps of determining a change in the first object based upon the user input determining a change in a second object based on the change in the first object and generating a display ofthe changed first and second objects.
  • Another aspect ofthe invention is a method wherein the first and second objects are graphics objects and the change in the first object is a change in zoom.
  • Another aspect ofthe invention is a method wherein the input electronic document comprises a plurality of markup elements with at least one ofthe markup elements being a graphics element, and wherein the responding step includes the steps of displaying the graphics element and generating, in response to the user input, a different display ofthe graphics element.
  • Another aspect ofthe invention is a method for processing an electronically- published document having a plurality of markup elements, the method comprising the steps of parsing an input electronic document, reading a plurality of markup elements ofthe input electronic document, instantiating objects corresponding to the plurality of markup elements, and generating output and accepting inputs, by at least one object to a user.
  • Fig. 1 is a data flow diagram illustrating a computer network as an example embodiment in which the present invention may be used;
  • Fig. 2 is a module dependency diagram of a display system in accordance with one embodiment ofthe present invention;
  • Fig. 3 is a state diagram of a program for displaying a document
  • Fig. 4 is a state diagram ofthe state of servicing user interface events in Fig. 3;
  • Fig. 5 is an object model ofthe diagram object in Fig. 2;
  • Fig. 6 is an object model ofthe shape object class illustrated in Fig. 5;
  • Fig. 7 is an object model ofthe view handler shown in Fig. 2;
  • Fig. 8 is a display generated from the sample document of Appendix II;
  • Fig. 9 is a display generated from the sample document of Appendix III.
  • Fig. 10 is a display of a document generated by Appendix III
  • Fig. 11 is a display generated from the sample document of Appendix IV;
  • Fig. 12A is a diagram of an interface for allowing zooming ofthe displayed diagram
  • Fig. 12B is a diagram of an interface for allowing selection of layers ofthe diagram
  • Fig. 13 is a display generated from the sample document of Appendix V;
  • Fig. 14 is a display generated using selected layers from the display of Fig. 13;
  • Fig. 15 is a display generated with all selected layers ofthe document of Appendix
  • Figs. 16A-16F are parts of an enlarged view of Fig. 7; and Figs. 17A-17H are parts of an enlarged view of Fig. 5.
  • FIG. 1 illustrates a computer system 20 which receives as one input a data file 22 which contains a document in a markup language, such as the language ofthe document type shown in Appendix I.
  • the computer system 20 generates display data 24 and processes user requests 26.
  • a suitable computer system 20 typically includes an output device which displays information to a user.
  • the computer system includes a main unit connected to the output device and an input device, such as a keyboard.
  • the main unit generally includes a processor connected to a memory system via an interconnection mechanism.
  • the input device is also connected to the processor and memory system via the connection mechanism, as is the output device.
  • output devices include a cathode ray tube (CRT) display, liquid crystal displays (LCD), printers, communication devices such as a modem or network interface, and audio output.
  • CTR cathode ray tube
  • LCD liquid crystal displays
  • printers printers
  • communication devices such as a modem or network interface
  • audio output such as a modem or network interface
  • Example input devices include a keyboard, keypad, track ball, mouse, pen and tablet, communication device, audio input and scanner. It should be understood the invention is not limited to the particular input or output devices used in combination with the computer system or to those described herein.
  • the computer system 20 may be a general purpose computer system which is programmable using a high level computer programming language, such as the "C”, “C++”, and “Java” programming languages (Java is a trademark of Sun Microsystems, Inc.). Other programming languages are available.
  • the computer system may also be specially programmed, special purpose hardware.
  • the processor is typically a commercially available processor, of which the series x86 processors, such as the Pentium II processor with MMX technology available from Intel and similar devices from AMD and Cyrix, and the 680X0 series microprocessors available from Motorola are examples (Pentium and Intel are registered trademarks ofthe Intel Corporation, MMX is a trademark ofthe Intel Corporation, AMD is a trademark of Advanced Micro Devices, Inc., Cyrix is a registered trademark ofthe Cyrix Corporation, and Motorola is a trademark of Motorola, Inc.). Many other processors are available.
  • the series x86 processors such as the Pentium II processor with MMX technology available from Intel and similar devices from AMD and Cyrix
  • 680X0 series microprocessors available from Motorola are examples (Pentium and Intel are registered trademarks ofthe Intel Corporation, MMX is a trademark ofthe Intel Corporation, AMD is a trademark of Advanced Micro Devices, Inc., Cyrix is a registered trademark ofthe Cyrix Corporation, and Motorola is a trademark of Motorola, Inc
  • Such a microprocessor executes a program called an operating system, of which the Windows NT, Windows 95, UNIX, DOS, VMS, ULTRIX, IRIX, Solaris, VxWorks, OS/Warp, MacOS, and IntranetWare operating systems are examples (Windows, DOS, and Microsoft are registered trademarks; and
  • the operating system controls the execution of other computer programs and provides scheduling, debugging, input/output control, accounting, compilation, storage assignment, data management and memory management, and communication control and related services.
  • the processor and operating system define a computer platform for which application programs in high-level programming languages are written.
  • a memory system typically includes a computer readable and writeable nonvolatile recording medium, of which a magnetic disk, a flash memory and tape are examples.
  • the disk may be removable, such as a floppy disk or removable hard drive, or permanent, such as an internal hard drive.
  • a disk has a number of tracks in which signals are stored, typically in binary form, i.e., a form interpreted as a sequence of ones and zeros. Such signals may define an application program to be executed by the microprocessor, or information stored on the disk to be processed by the application program.
  • the processor causes data to be read from the nonvolatile recording medium into an integrated circuit memory element, which is typically a volatile, random access memory such as a dynamic random access memory (DRAM) or static memory (SRAM). Other memory types are available.
  • DRAM dynamic random access memory
  • SRAM static memory
  • the processor generally manipulates the data within the integrated circuit memory and then copies the data to the disk when processing is completed.
  • a variety of mechanisms are known for managing data movement between the disk and the integrated circuit memory element, and the invention is not limited thereto. It should also be understood that the invention is not limited to a particular memory system.
  • the invention is not limited to a particular computer platform, particular processor, or particular high-level programming language.
  • the computer system 20 may be a multiprocessor computer system or may include multiple computers connected over a computer network.
  • the present invention is also suitable for implementation in a network environment, such as the Internet or an Intranet, which connects a server 30 to a client or browser 32.
  • the server 30 maybe a hypertext transfer protocol (HTTP) server which makes files 22, and possibly computer programs such as "Java applets" 34, available to the browser 32.
  • Java applets are programs implemented in the Java programming language, which is a well-known object-oriented language in the art of programming.
  • HTTP servers There are many commercially available HTTP servers. Other file transfer protocols and servers may be used.
  • the browser 32 may be any commercially available browser that has the ability to process markup language documents. For the purposes of processing Java applets 32, the browser should be "java- enabled", that is, the browser should be capable of executing programs written in the Java programming language.
  • the Netscape Navigator browser from Netscape Communications, Inc., and the Internet Explorer browser, from Microsoft Corporation, are examples of such a browser.
  • the browser and the server generally communicate by transferring HTTP messages over the network, which typically uses the TCP/IP networking protocol. It is understood that other networking protocols may be used.
  • the "Java applet" 34 is utilized by the browser 32 to process documents in the markup language in accordance with one embodiment ofthe present invention. It should be understood that the browser 32 could also be modified to process this markup directly, similar to how other extensions to the hypertext markup language (HTML) are processed. Further, it should be understood that the HTML language may be extended to support these features.
  • HTML hypertext markup language
  • an object oriented system is implemented using a Java programming language.
  • This system has four primary object classes as shown in Fig. 2. These object classes are a view handler 40, a parser 42, a diagram 44 and a shape 46.
  • the parser 42 generates the diagram 44.
  • the view handler 40 is an object that has several methods associated with it to manipulate the diagram 44. Also, the view handler object 40 uses the parser object 42 to generate the diagram 44.
  • the diagram has several shapes 46 associated with it, one for each graphical object defined in the diagram. A shape object is instantiated or generated for each ofthe graphical objects defined.
  • the Java applet for processing this markup language is loaded by the browser in state 50.
  • the applet accesses the file containing the markup language document and parses it in state 52.
  • Parsing ofthe HGML document is done using standard markup language processing techniques using the document type definition (DTD) provided in Appendix I.
  • DTD document type definition
  • a particular DTD may be defined by one or more grammar rules as shown in Appendix I.
  • Given a set of grammar rules, a parser may be constructed that verifies the format of a document. Parser creation is well-known in the art of compiler theory.
  • the parser is instantiated as an object that parses an HGML document.
  • the graphical objects defined by the document are then laid out in the display area in state 54.
  • a diagram having a size of 2,000 pixels by 2,000 pixels is first defined.
  • Each graphical object, such as a rectangle with an identifier equal to "1," is defined as an object, as will be described below, having a given position, size, color and fill.
  • the position of each graphical object within the diagram is determined.
  • the graphical objects are then drawn on the display in state 56.
  • markup elements are instantiated as objects, the objects may be configured to respond to user events.
  • the applet is then terminated in state 60.
  • - li lt should be understood that the invention is not limited to representation of processing and display of graphical objects, but any markup element may be represented by an object that receives events. It should also be known that the generation of these objects is not limited to applets or the Java programming language, but these objects may be generated by a program written in any other object-oriented programming language. Also, the objects may be implemented in any suitable programming language, such as a sequential programming language.
  • Fig. 8 shows an organizational chart that may be generated using one embodiment of [a markup language] suitable for implementing the invention.
  • This display corresponds to the document shown in Appendix II.
  • Each ofthe displayed rectangles, such as 62, may be selected, as may names such as shown at 64.
  • the selection of an object results in the display of a menu 66 which allows the selection of one of a multiple of uniform resource locators (URL).
  • URL uniform resource locators
  • a markup language ofthe kind described herein is typically useful for viewing data developed using a model-based development environment.
  • models are used to describe function, behavior, process, system architecture, and several other aspects of a system.
  • the model diagrams describe not only the system or process, but are used as a focal point of understanding for communicating information about, designing and supporting a system or process. Having multiple models, each representing different views ofthe system or process that can be browsed and navigated to other model data or perhaps to non-model data, is particularly helpful in model-based development environments.
  • Models also describe systems in a formalized methodology. This formalism allows models developed using some software tools to be converted to a markup language in accordance with the invention to allow them to be displayed and navigated. In general, certain types of data may be mapped to tags and attributes in the markup language. In addition, information regarding relationships among data can be used to generate hypertext links between elements.
  • Figs. 9 and 10 which are based on the document in Appendix III, illustrate how semantically important information, such as data from a database, can be used to generate informative displays.
  • Figs. 9 and 10 illustrate a data flow diagram which includes primitive and non-primitive processes. A non-primitive process may be decomposed into other processes.
  • Such information may be derived from any original information used to generate such a data flow diagram, for example, a computer-aided design or computer-aided software engineering tool.
  • particular defined processes may be designated as primitive or non-primitive and have an associated shape and/or color.
  • Such information may be represented in a markup language either by an element tag or an attribute.
  • a non-primitive element will be decomposed into other elements. Typically, another drawing will exist for that decomposition.
  • a menu 70 may be displayed in which a reference to the decomposition of that element may be one ofthe possible hypertext links, as illustrated by the command "Show Child.”
  • Other information also may be available, such as a CAD drawing, a requirements document or personnel and pricing data.
  • Fig. 10 illustrates the same document but with a menu that is displayed when "empty space" on the diagram is selected. Empty space signifies the space within the diagram which is not occupied by an object.
  • Each diagram may have primitive operations associated with it, such as zooming, layering, refreshing and reloading, which can be selected using this menu.
  • a zooming window shown in Fig. 12A, is displayed to the user, from which the user can control the size ofthe image they are viewing.
  • This zooming function allows the defined documents to be redisplayed within the diagram area in a different size.
  • the layer function presents a layer window to the user, from which the user can turn on and off the display of selected layers. Layers are defined by and dependent upon the markup language and whether layers are introduced in the authoring process. An example of layering will be described in more detail below in connection with Appendix V and Figs. 13-15.
  • diagram shapes may be replaced by pictures or other graphics, such as shown at 78 and 80 in Fig. 11 , and as defined by the document in Appendix IV.
  • the document of Appendix V can be used to display a simple image in a window.
  • any particular point on this graphic may be associated with only a single action or uniform resource locator (URL).
  • URL uniform resource locator
  • the image that is loaded is one graphic file.
  • the regions ofthe image which are associated with different URLs are commonly implemented using a mapping function which maps a pair of coordinate values to a single action to be performed. It is difficult to determine where the image map actually is on an image in an HTML document.
  • the image may exist in one layer and image map areas may be implemented as another layer.
  • each region ofthe image also may be associated with a menu of possible hypertext links rather than a single link. This menu can be displayed as shown at 82.
  • the layers may be displayed or selected using the layering feature, which displays the menu 84. This capability can guide a user to different areas of interest.
  • Another aspect ofthe markup language in accordance with one embodiment ofthe invention is the attachment of objects, provided using the "attach” and "attach_type” attributes.
  • This aspect allows an object or graphic shape to be defined in relation to other objects in the diagram.
  • the position, height and width can be defined in this way.
  • This allows an object to be defined, for example, as being positioned in the center of another object and having one quarter ofthe size ofthe other object.
  • a more complex example is the relation wherein one object is centered between two other objects having the same height as the first object, but a width equal to, e.g., one third the distance between the two other objects. This feature is useful in representing one object in relation to others so that when one is changed, the others are changed in the same manner.
  • a first state is the "nothing selected” state 90.
  • Events which effect the state transitions are the user interface events such as a mouse click (either on or off) or the completion of an action or the selection of a menu item.
  • processing moves to the "one thing selected” state 92. If a click on the same object is received, the system returns to state 90.
  • a click off of an object returns to the "nothing selected” state also.
  • a shift key in combination with a mouse click on an object causes a transition to the "multiple thing selected” state 94.
  • a shift key and click on additional items will add them to a list of selected items.
  • a mouse click on one ofthe already selected items will eliminate it from the list.
  • a mouse click off any ofthe selected items will cause a transition back to the "nothing selected” state 90.
  • appropriate menus are displayed, which involves a transition to the "service selection” state 96.
  • the background menu, menu for a selected object, or menu for the group of selected objects is displayed and there is a transition to the "menu display” state 98.
  • a transition is made to state 100 where the menu is removed from the display and the action associated with the menu item is invoked. If the menu action involves exiting the diagram, the process is terminated in state 102.
  • processing returns to state 96.
  • state 98 if no menu item is selected, for example, by the receipt of a mouse click event outside the menu area, the menu is removed from the display in state 104. Processing then returns to the "service selection" state 96 which then reverts back to the "nothing selected", “one thing selected” or “multiple things selected” states 90, 92 or 94, according to the objects selected which caused display ofthe menu in the first place.
  • Figs. 5 through 7 These Figs, are drawn according to the object modeling technique (OMT) which is well-known in the art of object oriented programming and described in Object-Oriented Modeling and Design by James Rumbaugh et al., Prentice-Hall, Inc., New Jersey, 1991, which is incorporated by reference.
  • OMT object modeling technique
  • Fig. 5 shows that the diagram 44 is comprised of layers 246 and selected objects 248.
  • Each layer 246 is comprised of diagram objects 252.
  • the diagram class is the root of all layers and diagram objects and is responsible for dispatching events from the display area to the appropriate diagram objects.
  • Each diagram object has an associated shape 250.
  • the list of selected objects 248 comprises a list of diagram objects 252.
  • Each diagram object 252 is associated with actions 254.
  • An action 254 may be comprised of several action items 256.
  • An action item 256 is a uniform resource locator (URL) attached to a diagram object. It is displayed as a menu item in the display area and is executed by the navigator. If the navigator cannot handle the event, it is passed to the viewer.
  • An action item has an associated anchor 258.
  • URL uniform resource locator
  • An attachment 260 has an appearance defined by a diagram object.
  • a group object 262 is associated with a number of diagram objects, while single object 264 is defined as a single diagram object 252. These are subclasses ofthe diagram objects 252.
  • Diagram objects and diagrams may also have an attribute 266 associated therewith.
  • An attribute is comprised of one or more attribute items 268. Each attribute item may have an associated text block 270.
  • Fig. 6 shows the different types of graphical objects which may be displayed.
  • arc objects 140 there may be arc objects 140, ellipse objects 142, group objects 144, line objects 146, bit mapped images 148, polygons 150, rectangles 152, text blocks 154, and text segments 156.
  • Other object types also may be displayed.
  • Each one of these objects are subclasses ofthe shape object class 158.
  • the shape is comprised of an extent object 160 which defines the area of pixels within the diagram that is considered part ofthe object.
  • a line has associated with it a line style object 162 and a line point object 164.
  • An arrow object 166 is a subclass of a line 146 and has an arrowhead 168.
  • a regular polygon 170 is a subclass of a polygon 150.
  • Text block 154 and text segments 156 use a text attribute 172.
  • a text block 154 uses a text segment 156.
  • An anchor object 174 is also used. It is part of a text block with anchor object 176 and text segment with anchor object 178.
  • Each ofthe objects 176 and 178 respectively are subclasses of a text block 154 or text segment 156. Instances of each of these object classes are generated directly from the markup tags and associated attributes which indicate those objects.
  • the display area 180 is the part ofthe display on which the diagram is drawn. This class is responsible for displaying the diagram objects, scaling the diagram objects and dispatching mouse events.
  • the size ofthe display area is the size ofthe diagram times the scale.
  • the navigator object class 182 is the container for the scale scroller and the display area. It uses the scale scroller to handle the scrolling ofthe diagram in the display area.
  • the scale scroller class is responsible for handling the horizontal and vertical scroll bars. The scroll bars are only displayed if the display area is larger than can be displayed by the navigator.
  • An diagrams visited object 184 keeps a list of diagrams that have been viewed with the viewer. When an action item calls a URL to display a diagram, this list is checked to determine whether the diagram was already retrieved. Is so, the existing diagram object is displayed instead of retrieving the URL.
  • the viewer 40 and navigator 182 are subclasses ofthe action handler object 186.
  • the action handler is an abstract class. Any class that implements this class is allowed to service the action item request.
  • the viewer class controls all interaction between the applet and the browser. Its responsibilities include creation ofthe diagram drawing space, communication with the HTTP server for retrieving files in this markup language and invocation of action items which are URL references.
  • the navigator performs action items 188 which are elements within a menu item 190 which in turn are within a menu 192 which is displayed by a method ofthe display area object 180.
  • a menu item represents the visual component of an action item.
  • a control object 198 is an operation that can be performed by the navigator, which are included in a list maintained as an abstract class called a control list 200.
  • Navigator 182 has a navigational control object 202 which is a subclass ofthe control list 200. It is the list of available or built-in menu options that are performed by the navigator. Some global variables are stored in a global object 204, such as the base URL of a document.
  • the navigator also has a zoom control object 194 which uses a scale controller 196.
  • the zoom control displays a window to the user as shown in Fig. 12A which allows the user to change the zoom factor or scale ofthe diagram objects displayed in the display area. By changing the scale, the diagram is redisplayed in the new scale immediately.
  • a layer control object 210 is used to monitor which layers are active to be used by the navigator 182. It has a method for displaying a window which lists all the layers in the diagram. The user can select a layer to display it or deselect it in order not to display it. The display ofthe diagram is updated immediately upon a layer selection change.
  • the ExtFrameProducer 207 is an abstract class. Any class that implements this class is allowed to produce external windows, such as the zoom control and layer control classes.
  • the ExtFrame class 208 is an external window container. It is used for displaying any popup window.
  • the ExtFrame is added to an external frame list object 206. The frames are created by the class 207 or a subclass.
  • Each ofthe object classes has associated methods for creation of instances of these objects, reading and displaying these objects, updating the values describing the objects and deleting the objects.
  • the implementation of such methods can be done by one of ordinary skill in the art and following the desired display and user interface actions above.
  • URI means a CDATA attribute whose value is a Uniform Resource Identifier, as defined by
  • CDATA attributes are limited by the LITLEN capacity (1024 in the current version of html.decl), so that URIs in HGML have a bounded length.
  • the color may also be set to 'invisible' which causes the object not to be drawn yet it can still respond to events.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

La présente invention concerne un langage de balisage définissant des éléments, qui permet d'améliorer la capacité des utilisateurs de visualiser des documents complexes, en particulier des documents graphiques tels que ceux comportant des données produites par des outils de conception assistée par ordinateur, de génie logiciel assisté par ordinateur ou par d'autres outils de modélisation de données. Un document édité de façon électronique contient un balisage descriptif définissant plusieurs descripteurs. Des éléments définis par des descripteurs sont instanciés comme objets répondant à des entrées utilisateur. Ces descripteurs définissent des éléments qui sont interprétés en vue de définir un diagramme contenant plusieurs couches. Chaque couche contient plusieurs objets graphiques. Un objet peut être associé à un menu d'actions ou à des liens hypertexte. Un système informatique ou un procédé implémenté par ordinateur permet de traiter un tel document édité de façon électronique, et d'afficher sur un écran d'ordinateur le diagramme défini par le balisage descriptif. Les différentes couches du document peuvent être affichées de façon sélective. De plus, la visualisation du diagramme peut être modifiée à l'aide d'une fonction de zoom, ou régénérée, c.-à-d. affichée à nouveau, ou le document édité de façon électronique peut être rechargé et traité à nouveau. Un ou davantage d'objets peuvent être sélectionnés. La sélection d'objets peut appeler l'affichage d'un menu d'actions susceptibles d'être sélectionnées, qui sont associées à cet objet. Ces actions peuvent comporter un ou davantage de liens hypertexte.
PCT/US1998/001763 1997-01-24 1998-01-23 Langage, systeme et procede de balisage de documents, destines a produire et a afficher des documents WO1998033127A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CA002278659A CA2278659A1 (fr) 1997-01-24 1998-01-23 Langage, systeme et procede de balisage de documents, destines a produire et a afficher des documents
EP98904769A EP0954803A1 (fr) 1997-01-24 1998-01-23 Langage, systeme et procede de balisage de documents, destines a produire et a afficher des documents
AU62566/98A AU6256698A (en) 1997-01-24 1998-01-23 Document markup language and system and method for generating and displaying documents therein

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US3648497P 1997-01-24 1997-01-24
US60/036,484 1997-01-24

Publications (1)

Publication Number Publication Date
WO1998033127A1 true WO1998033127A1 (fr) 1998-07-30

Family

ID=21888843

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1998/001763 WO1998033127A1 (fr) 1997-01-24 1998-01-23 Langage, systeme et procede de balisage de documents, destines a produire et a afficher des documents

Country Status (4)

Country Link
EP (1) EP0954803A1 (fr)
AU (1) AU6256698A (fr)
CA (1) CA2278659A1 (fr)
WO (1) WO1998033127A1 (fr)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000033213A3 (fr) * 1998-11-30 2000-10-12 Nortel Networks Corp Procede et systeme d'obtention d'une vue d'ensemble de sites web
GB2353615A (en) * 1998-08-26 2001-02-28 Symtec Ltd Selecting items such as data files
WO2001082561A1 (fr) * 2000-04-20 2001-11-01 Nokia Corporation Terminal de transmission
WO2000068822A3 (fr) * 1999-05-07 2001-12-27 Autodesk Inc Integration dans une application d'objets transmis a travers un reseau
GB2372118A (en) * 2001-02-09 2002-08-14 Amino Holdings Ltd System commands carried in tags in markup language documents
EP1280073A1 (fr) * 1999-05-07 2003-01-29 Autodesk, Inc. Intégration dans une application d'objets transmis à travers un réseau
GB2445848A (en) * 2007-01-10 2008-07-23 Christine Rose Warner Data Storage System for layered components elements
US7764272B1 (en) 1999-08-26 2010-07-27 Fractal Edge Limited Methods and devices for selecting items such as data files
EP2550617A4 (fr) * 2010-03-25 2017-11-22 Microsoft Technology Licensing, LLC Générateur de disposition séquentielle
EP2550618A4 (fr) * 2010-03-25 2017-11-22 Microsoft Technology Licensing, LLC Architecture de générateur de disposition séquentielle

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0530678A2 (fr) * 1991-09-06 1993-03-10 International Business Machines Corporation Méthode pour fournir une liaison généralisée d'un point de référence dans un livre en ligne à un objet multimédias
US5572643A (en) * 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking
EP0753835A2 (fr) * 1995-07-12 1997-01-15 Sony Corporation Méthode et système de partage d'un espace à trois dimensions à réalité virtuelle

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0530678A2 (fr) * 1991-09-06 1993-03-10 International Business Machines Corporation Méthode pour fournir une liaison généralisée d'un point de référence dans un livre en ligne à un objet multimédias
EP0753835A2 (fr) * 1995-07-12 1997-01-15 Sony Corporation Méthode et système de partage d'un espace à trois dimensions à réalité virtuelle
US5572643A (en) * 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2353615A (en) * 1998-08-26 2001-02-28 Symtec Ltd Selecting items such as data files
US6344851B1 (en) 1998-11-30 2002-02-05 Northern Telecom Limited Method and system for website overview
EP2410443A1 (fr) * 1998-11-30 2012-01-25 Nortel Networks Limited Procédé et système d'obtention d'une vue d'ensemble de sites web
WO2000033213A3 (fr) * 1998-11-30 2000-10-12 Nortel Networks Corp Procede et systeme d'obtention d'une vue d'ensemble de sites web
EP1280073A1 (fr) * 1999-05-07 2003-01-29 Autodesk, Inc. Intégration dans une application d'objets transmis à travers un réseau
WO2000068822A3 (fr) * 1999-05-07 2001-12-27 Autodesk Inc Integration dans une application d'objets transmis a travers un reseau
US6931600B1 (en) 1999-05-07 2005-08-16 Autodesk, Inc. Integrating into an application objects that are provided over a network
US7764272B1 (en) 1999-08-26 2010-07-27 Fractal Edge Limited Methods and devices for selecting items such as data files
US7849415B1 (en) 2000-04-20 2010-12-07 Nokia Corporation Communication terminal
WO2001082561A1 (fr) * 2000-04-20 2001-11-01 Nokia Corporation Terminal de transmission
GB2372118A (en) * 2001-02-09 2002-08-14 Amino Holdings Ltd System commands carried in tags in markup language documents
GB2445848A (en) * 2007-01-10 2008-07-23 Christine Rose Warner Data Storage System for layered components elements
EP2550617A4 (fr) * 2010-03-25 2017-11-22 Microsoft Technology Licensing, LLC Générateur de disposition séquentielle
EP2550618A4 (fr) * 2010-03-25 2017-11-22 Microsoft Technology Licensing, LLC Architecture de générateur de disposition séquentielle

Also Published As

Publication number Publication date
CA2278659A1 (fr) 1998-07-30
AU6256698A (en) 1998-08-18
EP0954803A1 (fr) 1999-11-10

Similar Documents

Publication Publication Date Title
US20020023110A1 (en) Document markup language and system and method for generating and displaying documents therein
US6343377B1 (en) System and method for rendering content received via the internet and world wide web via delegation of rendering processes
US5781714A (en) Apparatus and methods for creating and using portable fonts
US7924285B2 (en) Exposing various levels of text granularity for animation and other effects
US7051276B1 (en) View templates for HTML source documents
US6985929B1 (en) Distributed object-oriented geospatial information distribution system and method thereof
US5860073A (en) Style sheets for publishing system
US8136109B1 (en) Delivery of data and formatting information to allow client-side manipulation
US7555706B2 (en) Human machine interface
US6496202B1 (en) Method and apparatus for generating a graphical user interface
US6337693B1 (en) Vector-based geographic data
EP1326210B1 (fr) Visualisation selon un calendrier de travail interactif
US6801224B1 (en) Method, system, and program for generating a graphical user interface window for an application program
US7426734B2 (en) Facilitating presentation functionality through a programming interface media namespace
US20020018078A1 (en) System, method, and article of manufacture for generating a customizable network user interface
CN111063010A (zh) 地图运动轨迹动画实现方法、装置、电子设备及存储介质
EP0954803A1 (fr) Langage, systeme et procede de balisage de documents, destines a produire et a afficher des documents
US5479589A (en) Object-oriented system for selecting a graphic image on a display
Herman et al. MADE: A Multimedia Application development environment
Neumann et al. Time for SVG—towards high quality interactive web-maps
US7231598B1 (en) User interface for editing documents containing markup language
Michener et al. Some major issues in the design of the core graphics system
EP1447756B1 (fr) Système basé sur un réseau pour la gestion de documents
US20010020292A1 (en) Apparatus and method for emulating terminal attributes using a web server
Polys Publishing Paradigms for X3D

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM GW HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

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

Ref document number: 2278659

Country of ref document: CA

Ref country code: CA

Ref document number: 2278659

Kind code of ref document: A

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 1998904769

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1998904769

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: JP

Ref document number: 1998532270

Format of ref document f/p: F

WWW Wipo information: withdrawn in national office

Ref document number: 1998904769

Country of ref document: EP