WO2002046878A2 - Layout generator system and method - Google Patents

Layout generator system and method Download PDF

Info

Publication number
WO2002046878A2
WO2002046878A2 PCT/US2001/047339 US0147339W WO0246878A2 WO 2002046878 A2 WO2002046878 A2 WO 2002046878A2 US 0147339 W US0147339 W US 0147339W WO 0246878 A2 WO0246878 A2 WO 0246878A2
Authority
WO
WIPO (PCT)
Prior art keywords
layout
container
document
document layout
area
Prior art date
Application number
PCT/US2001/047339
Other languages
French (fr)
Other versions
WO2002046878A3 (en
Inventor
Alka A. Lachhwani
Andrea Bimson
Biswajit A. Sarkar
Meena Gopakumar
Kaustubh Kunte
Laxmikant Dash
Original Assignee
American Express Travel Related Services Company, 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 American Express Travel Related Services Company, Inc. filed Critical American Express Travel Related Services Company, Inc.
Priority to AU2002233991A priority Critical patent/AU2002233991A1/en
Publication of WO2002046878A2 publication Critical patent/WO2002046878A2/en
Publication of WO2002046878A3 publication Critical patent/WO2002046878A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting

Definitions

  • the invention generally relates to information systems, and more particularly to systems and methods for providing electronic page layouts to designers via digital networks.
  • a corporate web site may include multiple pages, for example, for multiple departments within the business, for multiple products or services and the like.
  • a business often finds it beneficial to maintain a uniform "look and feel," throughout its site, to improve consistency and ease of use.
  • businesses typically develop guidelines for their employees to follow when developing web pages. These guidelines typically define certain aspects of look and feel, content and procedures for creating and making changes to a web page.
  • One aspect of these guidelines is often directed to the overall layout of given web page. For example, one business may specify that each of its web pages include an identical company banner at the top of the page, similar margins at the sides and bottom of the page, a similar color scheme for the background and lettering on the page and the like.
  • Some of these employees may have limited, if any, knowledge of computer programming and may not understand how to create a web page layout, how to provide their suggestions for a web page in efficient ways or how to achieve the uniform look and feel for a given web page that their business hopes to achieve.
  • the combination, described above, of rapidly changing technology, the desire of businesses to keep their web sites current as well as relatively uniform in appearance, and the input of suggestions for web pages from many different employees may create a drain on an information technology ("IT") department in a large corporation. For example, such a department may spend a large amount of time and resources manually developing new web page layouts and either inputting content into those layouts or creating content that matches those layouts.
  • IT information technology
  • Some currently available systems such as the Microsoft Frontpage software, available from Microsoft Corporation of Redmond, Washington, which is hereby incorporated by reference, provide web page creation tools.
  • Current systems do not provide a method for web page layout creation that is accessible by multiple employees in a corporation, via a network, that maintains a uniform look and feel for web pages created within a corporation, and that enables employees with little or no technical background to create, change and enter content into web page layouts.
  • An exemplary system for creating a document layout suitably includes a layout editor configured to place one or more containers onto a document template in response to inputs from a user; a layout manager configured to validate properties of the document layout and to generate the document layout; and a data storage system configured to store the document layout.
  • An exemplary method for creating a document layout suitably includes displaying a document template; placing at least one container on the document template to create the document layout, the container comprising a software object representing a visual element; and storing the document layout in a data storage system.
  • a further exemplary system for creating a document layout via a digital network suitably includes a layout server system and a database.
  • the layout server system suitably includes a network interface configured to receive a request for a connection from a chent computer and an application server module configured to provide a layout manager application to the chent computer, wherein the layout manager appUcation is configured to create the document layout based upon inputs received at the chent computer, and wherein the application server module is further configured to receive the document layout from the layout manager appUcation.
  • the database is configured to receive the document layout from the appUcation server and store the document layout.
  • Figure 1 is a block diagram of an exemplary system for providing a web page layout generator to one or more chent systems.
  • Figure 2a is a block diagram showing exemplary components of a chent appUcation.
  • Figure 2b is a block diagram showing exemplary components of a server appUcation.
  • Figure 3 a is a flowchart of an exemplary process for creating a web page layout.
  • Figure 3b is a flow diagram for an exemplary process for approving a document template.
  • Figure 4 is a block diagram of an exemplary set of objects usable for creating a web page.
  • Figure 5 is a screen shot showing an exemplary layout editor appUcation and an exemplary layout according to one embodiment.
  • a layout generator system allows a user to develop new web page layouts by "drawing" the layouts and specifying basic features. The system then facilitates the generation of the equivalent technical code for the design. The technical code may then be utilized by a content management utility.
  • the present system may be used in conjunction with a content management utility or any other hardware or software mechanism which allows users to create web content with minimal technical expertise, such as the system in, for example, the "Content Management Application For An Interactive Environment" which is the subject of U.S. Patent Application Serial No.
  • the output of the system may be in generic XML language or any other format and may be utilized by the "Content Management Application for an Interactive Environment," running on a Vignette Story Server platform, for example.
  • the systems and processes described herein may be described with reference to functional block components, screen shots, optional selections and various processing steps. It should be appreciated that such functional blocks may be reahzed by any number of hardware and/or software components configured to perform the specified functions.
  • the systems described herein may employ various client and server computers, including conventional hardware components, such as memory elements, processing elements, logic elements, look-up tables, and the Uke, which may carry out a variety of functions under the control of one or more microprocessors or other control devices.
  • the software elements described herein may be implemented with any programming or scripting language such as C, C++, Visual C++ (available from the Microsoft Corporation of Redmond, Washington), PASCAL, Java, any database programming language or the like, with the various algorithms being implemented with any combination of data structures, objects, processes, routines or other programming elements.
  • the invention may employ any number of conventional techniques for data transmission, signaling, data processing, network control, and the Uke.
  • a network may include any system for exchanging data or transacting business, such as the Internet, an intranet, an extranet, WAN, LAN, sateUite communications, and/or the like.
  • various embodiments could be used in conjunction with any type of personal computer, network computer, workstation, minicomputer, mainframe, or other computer running any operating system such as any version of Windows, Windows NT, Windows2000, Windows 98, Windows 95, MacOS, OS/2, BeOS, Linux, UNIX, or any other operating system.
  • the invention could also be implemented using IPX, Appletalk, IP3, IP-6, NetBIOS, OSI or any number of existing or future protocols. AdditionaUy, the system contemplates the use, sale or distribution of any goods, services or information over any network having similar functionality described herein.
  • aspects of the present invention may be embodied as methods, data processing systems, devices for data processing, computer program products and the like.
  • Various aspects may take the form of a computer program product, embodied as computer- readable program code on a computer-readable storage medium. Any suitable computer- readable storage medium may be utilized, including hard disks, CD-ROM, optical storage devices, magnetic storage devices, SRAM, DRAM and/or the Uke.
  • any databases, systems, or components of the present invention may consist of any combination of databases or components at a single location or at multiple locations, wherein each database or system includes any of various suitable security features, such as firewaUs, access codes, encryption, de-encryption, compression, decompression, and/or the like.
  • 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 instructions that 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.
  • FIG. 1 is a block diagram of one embodiment of a layout generator system 100 for providing electronic layouts via digital networks.
  • layout generator system 100 suitably includes a layout server 104, a content management utility 110, a database 102, a network 106 and one or more user interfaces 108.
  • a "layout" includes any template, format or the Uke that is used to position, organize or arrange content within a document.
  • Documents may be, for example, web pages, word processing files, electronic files associated with billboards, scoreboards, advertisements or displays, or any other type of electronic document.
  • Layout server 104 is configured to administer the processes of creating, maintaining and distributing electronic layouts.
  • layout server 104 provides applets to the various client computers 108 to facilitate the creation of layouts that may be eventuaUy used as templates or other raw material for the creation of web pages.
  • Layout server is further operable to receive created templates from the chent computers 108 and to store the templates in database 102.
  • Layout server may also facilitate review and approval processes for the templates, as set forth more fully below.
  • Layout server 104 is suitably implemented with any type of personal computer, workstation or the like which typically includes at least one processor, digital memory and some form of mass storage such as a hard drive or optical disk.
  • Software stored in mass storage and/or in memory includes an operating system (such as any version of WINDOWS, UNIX, LINUX, MacOS, or the like) and an application program configured to administer the layout processes as described above and as defined more fully below.
  • This application program typically includes a internet web server capable of receiving connections from various client systems 108, as well as functionaUty for interacting with client system 108 and database 102.
  • Content management utility 110 is configured to receive one or more electronic layouts from database 102 and to blend those layouts with content input by one or more users and/or designers.
  • content management utility 110 is configured as a server system, similar to layout server 104 described above.
  • Content management utility 110 may also be configured to communicate with one or more components of layout generator system 100 via a network.
  • a content management utility is described in much greater detail in U.S. Patent AppUcation Serial No. 09/769,924, filed on January 25, 2001, previously incorporated by reference.
  • Database 102 is configured to store electronic layouts and to retrieve layouts for access by various other components of layout generator system 100.
  • database 102 may be any type of database, such as relational, hierarchical, object-oriented, and/or the like. Common database products that may be used to implement database include DB2 by IBM (White Plains, NY), any of the database products available from Oracle Corporation (Redwood Shores, CA), Microsoft SQL Server by Microsoft Corporation (Redmond, Washington), or any other database product. Database may be organized in any suitable manner, and may physically reside on any platform that is in communication with layout server 104. Database 102 may be maintained in mass storage associated with layout server 104, for example, or on a separate database server computer.
  • templates may be stored within the file system of layout server 104.
  • Network 106 is any suitable medium for providing communication between various other elements of layout generator system 100. Any computing units utihzed by layout generator system 100 according to one embodiment of the present invention may be connected with each other via network 106.
  • Network 106 may include a public network, such as the Internet, or may include one or more private networks such as an intranet, an extranet, WAN, LAN and/or the Uke.
  • the computers may not be connected to the Internet at all times. For instance, one user's computer may employ a modem to occasionally connect to the Internet, whereas a layout designer's computer system might maintain a permanent connection to the Internet.
  • layout generator system 100 namely layout server 104, content management utility 110, database 102 and user interfaces 108, may be suitably coupled to network 106 via data Unks.
  • a variety of conventional communications media and protocols may be used for data Unks, such as a connection to an Internet Service Provider (ISP) over the local loop as is typically used in connection with standard modem communication, cable modem, dish networks, ISDN, Digital Subscriber Line (DSL), or various wireless communication methods.
  • ISP Internet Service Provider
  • One or more computer systems might also reside within a local area network (LAN) which interfaces to network 106 via a leased line (TI, D3, etc.).
  • LAN local area network
  • TI leased line
  • CUent computers 108a-b are any computer systems capable of communicating with layout server 104 via network 106 such as, for example, a personal digital assistant (PDA), personal computer, workstation, cellular phone or any other device.
  • PDA personal digital assistant
  • chent computers 108 include a personal computer having a processor, memory and operating system such as any conventional PC running any version of the WINDOWS operating system.
  • Client systems 108 suitably communicate with the layout generator system 100 through any technique, such as through a conventional browser (e.g. Internet Explorer or Netscape browsers).
  • chent systems 108 typically include a user interface for displaying information to the user and for receiving inputs from the user via a keyboard, mouse, touchpad or the Uke.
  • CUent system 108 may be physically located in any home or business environment with access to network 106.
  • an exemplary system 100 for creating layouts suitably includes a user of a cUent computer 108 opening a browser or other appropriate application and contacting layout server 104.
  • contact is made by entering a uniform resource locator (URL) into a browser window, or by selecting an appropriate bookmark or Unk to server 104.
  • server 104 suitably provides an applet, ActiveX control or other program to cUent computer 108 that aUows the user to create the layout as appropriate.
  • Completed layouts are then transmitted from client computer 108 to layout server 104 in any format (e.g. XML format) for storage within database 102.
  • Server 104 may further provide for review and approval of templates by senior designers, management, chents or others before the templates become available for use in actual documents.
  • layouts stored in database 102 are retrieved by one or more document designers who insert content into the layouts to create documents such as web pages. This process may be facilitated using a content management utility 110 that retrieves layouts from database 102 and provides the layouts to document designers as appropriate.
  • Document designers may coincide with client systems 108 in various embodiments, although in other embodiments document designers use different systems entirely.
  • FIGs 2a and 2b are block diagrams showing exemplary software configurations for layout server 104 and cUent module 204, respectively.
  • layout server 104 includes an appUcation server 208, a web server 216 and a network interface 218.
  • Network interface 218 suitably provides input and output functionality between server 104 and network 106 ( Figure 1).
  • Web server 216 is any conventional web server (such as Microsoft Internet Information Server, Apache Web Server, or the like) that is capable of receiving requests for hypertext transport protocol (HTTP), secure HTTP (HTTPS) or other appropriate connections.
  • Web server 216 is further operable to exchange data between appUcation server 208 and client computers 108 using network interface 218 to network 106.
  • Application server 208 includes any hardware and/or software program or module configured to provide an electronic layout generation application to one or more cUent systems 108 via web server 216.
  • the electronic layout generation appUcation may be, for example, a Java applet, ActiveX control or other appUcation as described below.
  • Application server 208 may also provide for user authentication via a userid/password or other credential, as weU as an interface for communications between client system 108 and database 102 ( Figure 1). Additional detail about application server 208 is described below.
  • client module 204 suitably includes a layout manager 210, a layout editor 212 and an input/output module 214.
  • layout editor 212 module enables users of client systems 108 to create and/or modify document layouts, as described in further detail below.
  • layouts are created by the user manipulating a keyboard, mouse, touchpad or other interface device on client system 108 to draw or otherwise form a document layout on a display.
  • Layouts may be formed by placing various components (such as areas, spacers and containers, described below) onto a layout page. Further, various parameters (size, border type, style, etc.) may be entered into dialog boxes associated with one or more of the layout components, and components may be moved, resized or otherwise modified using the mouse or touchpad, as appropriate.
  • Layout manager 210 includes a programming module configured to vaUdate electronic layouts 108 by ensuring that the various parameters defined or entered by the user are logicaUy 'consistent.
  • Input/output module 214 accepts inputs relating to electronic layouts, content and the Uke from user interfaces 108 and provides for transmission of electronic layouts to database 102.
  • the interaction between the server module 104 and the cUent module 204 includes a user at a cUent system 108 that suitably establishes an HTTP connection to layout server 104 via network 106.
  • Server 104 receives the connection via network interface 218 to network 106, and establishes a session with the cUent using web server 216.
  • the user is authenticated with a userid/password or other appropriate credential (e.g. digital signature, smartcard, biometric imprint, etc.) and a client module 204 is provided to cUent system 108 via the web connection established through interface 218.
  • the chent module which may be implemented with a Java applet or similar appUcation, includes routines for creating and editing the document layout (i.e. layout editor 212), for vahdating the layout (i.e. layout manager 210), and for communicating with layout server 104 (i.e. I/O module 214).
  • Figure 3 a is a flow diagram showing an exemplary method for creating an electronic layout using layout generator system 100.
  • a user initializes cUent system 108 (step 304) by initiating a browser session on client system 108. After the browser is activated, the user suitably estabUshes a connection 306 between client system 108 and layout server 104, as appropriate. This connection may be established according to any conventional technique such as entering a URL into an appropriate browser window or cUcking on an appropriate link or bookmark to create an HTTP session between client system 108 and layout server 104.
  • connection 306 the user suitably provides identification/authorization information such as a userid/password combination or other credential to layout server 104.
  • Layout server 104 appropriately processes the credential to verify that the user is authorized to use the layout creation system by checking the credential against information maintained in database 102, or elsewhere as appropriate. If the credential is not approved, the layout server 104 denies the user further access to the system. If the credential is approved, layout server 104 suitably registers the client with the system and allows the session to proceed.
  • layout server 104 suitably sends a Java applet or other appropriate software tool 204 for electronic layout creation to cUent computer 108 (step 310).
  • client appUcation 108 receives the tool, the user is permitted to create and/or modify an electronic layout by executing the software tool within the browser session previously established (step 312).
  • the user creates/modifies layouts by interacting with graphical user interface provided by the software tool that aUows the user to "draw" elements such as areas, spacers and containers into the layout.
  • the software tool further aUows users to modify various parameters of the layout elements, as described more fully below in conjunction with Figure 5.
  • the completed layout may be formatted and stored in any appropriate format, such as extensible markup language (XML) or any other format.
  • XML extensible markup language
  • the layout manager portion of software tool 204 typically converts the data input by the user to an XML format that may be appropriately read and modified by another software tool 204 or other editing program. Layouts are appropriately stored in database 102 ( Figure 1) through interaction of the software tool executing on cUent system 108 with layout server 104. Accordingly, the software tool provides edited layouts to layout server 104 via network 106 (step 314), which stores the layout as appropriate (step 316).
  • FIG. 3 b is a flow diagram for an exemplary process for approving a document template.
  • an exemplary process 350 suitably includes receiving a draft layout (step 352), obtaining an approval list for the particular user (step 354), notifying approvers as appropriate (steps 356 and 358) and awaiting approval of the layout (step 360).
  • a draft layout step 352
  • step 354 step 354
  • step 356 and 358 step 356 and 358
  • awaiting approval of the layout step 360.
  • customized approval processes may be created for particular users or for groups of users. For example, a web designer may seek approval for a particular layout from a department manager, business client, trademark or branding representative, or the like before the template is made available to other users.
  • approval Usts may be associated with groups of users (each of which has an identical approval chain) by associating user objects with workgroup objects, and then further associating the workgroup objects with a particular Ust of approvers.
  • layout server 104 appropriately retrieves an approval Ust (step 354) from database 102 (or elsewhere as appropriate) to determine the personnel to review and approve the layout created by a particular user. Each approver is then notified that a draft layout is available for review and approval (steps 356, 358). Notification may take place automatically via electronic mail, instant message, or the like.
  • the notification steps may be omitted in alternate embodiments, and approval personnel may simply poU the layout server 104 at periodic or other intervals to check if any layouts are awaiting approval.
  • the approval is noted in database 102 (for example, in metadata associated with the layout). Approvers may be reminded at later times if they fail to review the layout within a certain time, or approval may be determined to be automatically granted if no objections are logged within a particular time.
  • approvers may modify layouts online (using the software tool 204 as described above), may provide comments to the layout developer (via email, instant message, or the like), or may store comments with metadata associated with the layout in database 102.
  • the approval process shown in Figure 3b is an exemplary process; other practical processes may of course be formulated without departing from the scope of the invention.
  • the layout After the layout is properly approved by any and all required approvers, the layout becomes available for use in documents.
  • the layout may be distributed or otherwise made available via any technique, such as publication through a content management utility as described above.
  • the approved layout is stored in database 102 where it is available for retrieval by content management system users as described in U.S. Patent AppUcation Serial No. 09/769,924, filed on January 25, 2001, previously incorporated by reference.
  • Figure 4 is an object diagram of an exemplary software tool 204.
  • an exemplary client module 204 suitably includes layout editor 212, layout manager 210 and a layout 402, which includes one or more containers 410, areas 414, spacers 416 and other elements described further below.
  • the various components shown in Figure 4 are described herein as software objects that inter-relate to form a software tool 204; alternate embodiments, however, may use radically different object structures, or may be created without using objects at all. As such, the various objects may be thought of as logical modules that provide various functionalities; different embodiments of the invention may alter, ehininate or enhance any of the functionalities described herein or implement them in radically different ways.
  • An exemplary embodiment of layout editor 212 includes a layout panel 404, a toolbar 406 and a property sheet 408.
  • Layout editor 212 is generally configured to aUow a user interface 108 to create or edit layout 402.
  • Layout panel 404 is configured to display layout 402 on user interface 108 as layout is being generated or edited.
  • layout panel 404 may include toolbar 406 and property sheet 408.
  • Toolbar may be configured to provide user interface 108 with a Ust of elements to place on layout 402. Examples of elements listed on toolbar 406 may include "containers,” "areas" and “spacers.”
  • Property sheet 408 aUows user interface 108 to choose properties for container 410.
  • Containers include software objects (or modules) that have various user-definable characteristics and that represent sections of a layout.
  • container 410 is a section of a document layout configured to enable user interface 108 to arrange additional containers 412, areas 414 and/or spacers 416 in a particular manner to create layout 402.
  • container 410 may contain one or more other containers 410, one or more areas 414 and/or one or more spacers 416.
  • Areas 414 may include regions of the layout that are relatively static and that exhibit particular attributes such as a foreground or background color, border type, border thickness, font type, text color and style, or the Uke.
  • Spacers 416 include objects that provide gaps between various areas
  • container 410 may contain one or more areas 414 and/or spacers
  • areas 414 may be configured to contain various basic elements 422.
  • Basic elements 422 may include text elements 418, image elements 420 or any other suitable elements which may be included 1 in areas 414, such as programming elements, links and the like.
  • Text elements 418 and/or image elements 420 may be chosen for inclusion in an area 414 and then converted into basic elements 422, which may be XML strings.
  • Text elements 418 and/or image elements 420 may include the content of the document which is being formed via document layout 402.
  • areas 414 may be configured in relation to other areas 414 and/or spacers 416, and to exhibit certain attributes represented by basic elements 422 such as text 418 and images 420.
  • Spacers 416 may be configured create spaces between adjacent containers 410, adjacent areas 414 or a container 410 adjacent to an area 414.
  • spacers 416 may be configured not to contain other elements, such as other spacers 416, areas 414 or basic elements 422.
  • areas 414 may be configured to contain containers 410
  • spacers 416 may be configured to contain areas 414 or basic elements 422, and the Uke.
  • any combination of containers 410, areas 414 and spacers 416 suitable for generating layouts 402 may be used as part of the present invention and, therefore, faUs within the scope of the invention.
  • Figure 5 is a screen display, showing an exemplary embodiment of a display 500 created by layout generator system 100.
  • Display 500 suitably includes layout panel 404, toolbar 406 and a layout 402 created by a user.
  • Layout 402 includes a vertical container 510, which contains a top area 512, a vertical spacer 514, a middle area 516, and a horizontal container 518.
  • Horizontal container 518 includes a left area 524, a right area 520 and a horizontal spacer 522. Areas and spacers in Figure 5 are empty, though middle area 516 is shaded, relative to the other areas and spacers.
  • Each of the regions shown in the layout may be represented as conventional XML code or in any other format.
  • a user may first select "container" from toolbar 406 using the mouse. At that point, a first container 510 will be placed on layout panel 404 and the user will be provided with a property sheet 408 for that container.
  • the user may use property sheet 408 to select property characteristics for container 510 such as, but not Umited to, orientation, width, height, ahgnment, background color, border size and color, font name, font size, font color and the like. Additionally, user may position container 510 by dragging and dropping container to various locations on layout panel 404.
  • a user may further define container 510 by cUcking on container 510 and selecting "container,” "area,” or “spacer” from toolbar 406. This process adds an additional container 518, an area 512, 516, 520, 524, or a spacer 514, 522, within the original container 510.
  • layout editor 210 may display property sheet 408, aUowing the user to select properties for that container, area or spacer.
  • Property sheets 408 for containers, areas and spacers may contain the same properties or may contain different ones. Additionally, once containers, areas and/or spacers are placed, they may be moved to other locations within layout panel 404, by dragging and dropping or by any other suitable method.
  • toolbar 406 may contain many attributes or actions for use creating and/or modifying containers, areas and spacers.
  • layout manager 212 may be configured to monitor the properties of layout 402 and either approve or reject one or more aspects of layout 402. For example, if a user selects properties for one area, one container and one spacer, which are all to fit within an original container, and those properties would not aUow those three components to fit within the original container, layout manager 212 might inform the user that that particular layout 402 is not possible. For example, with reference again to Figure 5, if a user chose dimensions for left area 524, right area 520 and horizontal spacer 522 that were too large to aUow those elements to fit within vertical container 510, layout manager 212 would inform the user that those dimensions would not work and/or that different dimensions should be chosen. Thus, layout manager 212 is configured in such a way that it can monitor and vaUdate the overall layout 402 as weU as properties of each component of that layout 402.
  • layout 402 may be sent to layout server 104.
  • Layout server 104 may store layout 402 or send it to database 102 for storage. That particular layout 402 may then be accessed and edited or used to create electronic documents or other electronic media by authorized user interfaces 108.

Abstract

The present invention provides systems and methods for creating and editing electronic layouts, such as layouts used to create web pages, via digital networks (106). An exemplary system for creating an electronic layout suitably includes a server (104), a network (106), a database (102) and one or more user interfaces (108). The server (104) may suitably provide a layout editor configured to place one or more containers, areas and/or spacers onto a layout panel in response to inputs from a user and a layout manager configured to validate properties of the layout and to generate the layout. An exemplary method for creating a document layout suitably includes displaying a layout panel; placing at least one container on the layout panel to create the layout, the container comprising a software object representing a visual element; and storing the layout in a database (102) for future use and/or editing.

Description

LAYOUT GENERATOR SYSTEM AND METHOD
Cross Reference to Related Applications
This application claims priority to United States Provisional Patent Application Serial No. 60/251,633, entitled "Layout Generator System," filed December 6, 2000, which is incorporated herein by reference.
Field of Invention
The invention generally relates to information systems, and more particularly to systems and methods for providing electronic page layouts to designers via digital networks.
Background of the Invention
With increased use of digital networks such as the Internet, many businesses and other entities have found it beneficial to have their own web sites. Typically, a corporate web site may include multiple pages, for example, for multiple departments within the business, for multiple products or services and the like. In creating such sites, a business often finds it beneficial to maintain a uniform "look and feel," throughout its site, to improve consistency and ease of use. To achieve that uniform look and feel, businesses typically develop guidelines for their employees to follow when developing web pages. These guidelines typically define certain aspects of look and feel, content and procedures for creating and making changes to a web page. One aspect of these guidelines is often directed to the overall layout of given web page. For example, one business may specify that each of its web pages include an identical company banner at the top of the page, similar margins at the sides and bottom of the page, a similar color scheme for the background and lettering on the page and the like.
Due to rapid technological changes and the need to frequently update electronic layouts, guidelines for creating and changing those layouts may themselves change very rapidly as well. For example, in the context of corporate web sites, described above, web site content and format may be updated very frequently. Other examples of electronic layouts provided via digital networks may include any type of electronic layout used on television, electronic message boards, billboards, scoreboard displays, airport displays, cell phones, personal digital assistants ("PDAs"), digital pagers and the like. In the context of a large corporation, many employees may typically provide or suggest new web page layouts and content for the business. Some of these employees may have limited, if any, knowledge of computer programming and may not understand how to create a web page layout, how to provide their suggestions for a web page in efficient ways or how to achieve the uniform look and feel for a given web page that their business hopes to achieve. The combination, described above, of rapidly changing technology, the desire of businesses to keep their web sites current as well as relatively uniform in appearance, and the input of suggestions for web pages from many different employees may create a drain on an information technology ("IT") department in a large corporation. For example, such a department may spend a large amount of time and resources manually developing new web page layouts and either inputting content into those layouts or creating content that matches those layouts. Some currently available systems, such as the Microsoft Frontpage software, available from Microsoft Corporation of Redmond, Washington, which is hereby incorporated by reference, provide web page creation tools. Current systems, however, do not provide a method for web page layout creation that is accessible by multiple employees in a corporation, via a network, that maintains a uniform look and feel for web pages created within a corporation, and that enables employees with little or no technical background to create, change and enter content into web page layouts.
A need therefore exists for systems and methods for efficiently creating web page layouts within a business setting. A need also exists for systems for creating web page layouts with a uniform look and feel. Ideally, such systems would be accessible by employees of a business via a network and would enable employees with little or no knowledge of computer programming to create and change web page layouts and to use those layouts as templates for creating web pages.
Brief Description of Exemplary Embodiments
An exemplary system for creating a document layout suitably includes a layout editor configured to place one or more containers onto a document template in response to inputs from a user; a layout manager configured to validate properties of the document layout and to generate the document layout; and a data storage system configured to store the document layout. An exemplary method for creating a document layout suitably includes displaying a document template; placing at least one container on the document template to create the document layout, the container comprising a software object representing a visual element; and storing the document layout in a data storage system.
A further exemplary system for creating a document layout via a digital network suitably includes a layout server system and a database. The layout server system suitably includes a network interface configured to receive a request for a connection from a chent computer and an application server module configured to provide a layout manager application to the chent computer, wherein the layout manager appUcation is configured to create the document layout based upon inputs received at the chent computer, and wherein the application server module is further configured to receive the document layout from the layout manager appUcation. The database is configured to receive the document layout from the appUcation server and store the document layout.
Brief Description of the Drawings
The above and other features and advantages are hereinafter described in the following detailed description of illustrative embodiments to be read in conjunction with the accompanying drawing figures, wherein like reference numerals are used to identify the same or similar parts in the similar views, and:
Figure 1 is a block diagram of an exemplary system for providing a web page layout generator to one or more chent systems. Figure 2a is a block diagram showing exemplary components of a chent appUcation.
Figure 2b is a block diagram showing exemplary components of a server appUcation.
Figure 3 a is a flowchart of an exemplary process for creating a web page layout.
Figure 3b is a flow diagram for an exemplary process for approving a document template. Figure 4 is a block diagram of an exemplary set of objects usable for creating a web page.
Figure 5 is a screen shot showing an exemplary layout editor appUcation and an exemplary layout according to one embodiment.
Detailed Description of Exemplary Embodiments
Various systems as described herein facilitate the generation of web page layouts. In this regard, the description that foUows sets forth various exemplary embodiments of the invention only, and is not intended to Umit the scope, apphcabiUty, or configuration of the invention in any way. Rather, the foUowing description is intended to provide convenient illustrations for implementing different embodiments of the invention. As will become apparent, various changes may be made in the function and arrangement of the elements described in these embodiments without departing from the scope of the invention. For example, changes may be made in the design and arrangement of the software components or architecture described in the exemplary embodiments without departing from the scope of the invention as set forth in the appended claims.
Various embodiments of the invention provide a web page layout generator, which enables users to efficiently create and manage web page layouts and web pages, with Uttle or no knowledge of computer programming. In one embodiment, a layout generator system allows a user to develop new web page layouts by "drawing" the layouts and specifying basic features. The system then facilitates the generation of the equivalent technical code for the design. The technical code may then be utilized by a content management utility. The present system may be used in conjunction with a content management utility or any other hardware or software mechanism which allows users to create web content with minimal technical expertise, such as the system in, for example, the "Content Management Application For An Interactive Environment" which is the subject of U.S. Patent Application Serial No. 09/769,924, filed on January 25, 2001, which is hereby incorporated by reference. The output of the system may be in generic XML language or any other format and may be utilized by the "Content Management Application for an Interactive Environment," running on a Vignette Story Server platform, for example.
The systems and processes described herein may be described with reference to functional block components, screen shots, optional selections and various processing steps. It should be appreciated that such functional blocks may be reahzed by any number of hardware and/or software components configured to perform the specified functions. For example, the systems described herein may employ various client and server computers, including conventional hardware components, such as memory elements, processing elements, logic elements, look-up tables, and the Uke, which may carry out a variety of functions under the control of one or more microprocessors or other control devices. Similarly, the software elements described herein may be implemented with any programming or scripting language such as C, C++, Visual C++ (available from the Microsoft Corporation of Redmond, Washington), PASCAL, Java, any database programming language or the like, with the various algorithms being implemented with any combination of data structures, objects, processes, routines or other programming elements. Further, it should be noted that the invention may employ any number of conventional techniques for data transmission, signaling, data processing, network control, and the Uke.
Many different embodiments of the invention may be formulated. For example, in one embodiment, a network may include any system for exchanging data or transacting business, such as the Internet, an intranet, an extranet, WAN, LAN, sateUite communications, and/or the like. Similarly, various embodiments could be used in conjunction with any type of personal computer, network computer, workstation, minicomputer, mainframe, or other computer running any operating system such as any version of Windows, Windows NT, Windows2000, Windows 98, Windows 95, MacOS, OS/2, BeOS, Linux, UNIX, or any other operating system. Moreover, it will be readily understood that the invention could also be implemented using IPX, Appletalk, IP3, IP-6, NetBIOS, OSI or any number of existing or future protocols. AdditionaUy, the system contemplates the use, sale or distribution of any goods, services or information over any network having similar functionality described herein.
Various aspects of the present invention may be embodied as methods, data processing systems, devices for data processing, computer program products and the like. Various aspects may take the form of a computer program product, embodied as computer- readable program code on a computer-readable storage medium. Any suitable computer- readable storage medium may be utilized, including hard disks, CD-ROM, optical storage devices, magnetic storage devices, SRAM, DRAM and/or the Uke.
Communication between users and the system of the invention may be accomplished through any suitable communication medium, such as, for example, a local or wide-area network, a telephone network, intranet, Internet, point of interaction device (point of sale device, personal digital assistant, ceUular phone, kiosk, etc.), online communications, offline communications, wireless communications, and/or the like. For security reasons, any databases, systems, or components of the present invention may consist of any combination of databases or components at a single location or at multiple locations, wherein each database or system includes any of various suitable security features, such as firewaUs, access codes, encryption, de-encryption, compression, decompression, and/or the like.
Various embodiments of the invention are described on the attached documents with reference to block diagrams and flowchart iUustrations of methods, apparatus (e.g., systems), and computer program products according to various aspects of the invention. It will be understood that each functional block of the block diagrams and the flowchart illustrations, and combinations of functional blocks in the block diagrams and flowchart illustrations, respectively, can be implemented by computer program instructions. These computer program instructions may be loaded onto a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions which execute on the computer or other programmable data processing apparatus implement 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 instructions that 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.
Accordingly, functional blocks of the block diagrams and flowchart iUustrations support combinations of means for performing the specified functions, combinations of steps for performing the specified functions, and program instruction means for performing the specified functions. It will also be understood that each functional block of the block diagrams and flowchart illustrations, and combinations of functional blocks in the block diagrams and flowchart illustrations, can be implemented by either special purpose hardware-based computer systems which perform the specified functions or steps, or suitable combinations of special purpose hardware and computer instructions.
The particular implementations shown and described herein are illustrative of exemplary embodiments only and are not intended to otherwise Umit the scope of the invention in any way. Indeed, for the sake of brevity, conventional data networking, appUcation development and other functional aspects of the systems (and components of the individual operating components of the systems) may not be described in detail herein. Furthermore, the connecting lines shown in the various figures contained herein are intended to represent exemplary functional relationships and/or physical couplings between the various elements. It should be noted that many alternative or additional functional relationships or physical connections may be present in a practical system.
Figure 1 is a block diagram of one embodiment of a layout generator system 100 for providing electronic layouts via digital networks. With reference to Figure 1, layout generator system 100 suitably includes a layout server 104, a content management utility 110, a database 102, a network 106 and one or more user interfaces 108. For purposes of this document, a "layout" includes any template, format or the Uke that is used to position, organize or arrange content within a document. Documents may be, for example, web pages, word processing files, electronic files associated with billboards, scoreboards, advertisements or displays, or any other type of electronic document.
Layout server 104 is configured to administer the processes of creating, maintaining and distributing electronic layouts. In a broad embodiment, layout server 104 provides applets to the various client computers 108 to facilitate the creation of layouts that may be eventuaUy used as templates or other raw material for the creation of web pages. Layout server is further operable to receive created templates from the chent computers 108 and to store the templates in database 102. Layout server may also facilitate review and approval processes for the templates, as set forth more fully below.
Layout server 104 is suitably implemented with any type of personal computer, workstation or the like which typically includes at least one processor, digital memory and some form of mass storage such as a hard drive or optical disk. Software stored in mass storage and/or in memory includes an operating system (such as any version of WINDOWS, UNIX, LINUX, MacOS, or the like) and an application program configured to administer the layout processes as described above and as defined more fully below. This application program typically includes a internet web server capable of receiving connections from various client systems 108, as well as functionaUty for interacting with client system 108 and database 102.
Content management utility 110 is configured to receive one or more electronic layouts from database 102 and to blend those layouts with content input by one or more users and/or designers. In one embodiment, content management utility 110 is configured as a server system, similar to layout server 104 described above. Content management utility 110 may also be configured to communicate with one or more components of layout generator system 100 via a network. A content management utility is described in much greater detail in U.S. Patent AppUcation Serial No. 09/769,924, filed on January 25, 2001, previously incorporated by reference.
Database 102 is configured to store electronic layouts and to retrieve layouts for access by various other components of layout generator system 100. In various embodiments, database 102 may be any type of database, such as relational, hierarchical, object-oriented, and/or the like. Common database products that may be used to implement database include DB2 by IBM (White Plains, NY), any of the database products available from Oracle Corporation (Redwood Shores, CA), Microsoft SQL Server by Microsoft Corporation (Redmond, Washington), or any other database product. Database may be organized in any suitable manner, and may physically reside on any platform that is in communication with layout server 104. Database 102 may be maintained in mass storage associated with layout server 104, for example, or on a separate database server computer. In one exemplary embodiment, templates may be stored within the file system of layout server 104. Network 106 is any suitable medium for providing communication between various other elements of layout generator system 100. Any computing units utihzed by layout generator system 100 according to one embodiment of the present invention may be connected with each other via network 106. Network 106 may include a public network, such as the Internet, or may include one or more private networks such as an intranet, an extranet, WAN, LAN and/or the Uke. In one embodiment, where network 106 is the Internet, the computers may not be connected to the Internet at all times. For instance, one user's computer may employ a modem to occasionally connect to the Internet, whereas a layout designer's computer system might maintain a permanent connection to the Internet. Specific information related to the protocols, standards, and application software utilized in connection with the Internet are not being discussed herein. For further information regarding such details, see, for example, DΓLIP NAΓ , INTERNET STANDARDS AND PROTOCOLS (1998); JAVA 2 COMPLETE, various authors, (Sybex 1999); DEBORAH RAY AND ERIC RAY, MASTERING HTML 4.0 (1997). LOSHIN, TCP/IP CLEARLY EXPLAINED (1997). AU of these texts are hereby incorporated by reference. The various elements of layout generator system 100, namely layout server 104, content management utility 110, database 102 and user interfaces 108, may be suitably coupled to network 106 via data Unks. A variety of conventional communications media and protocols may be used for data Unks, such as a connection to an Internet Service Provider (ISP) over the local loop as is typically used in connection with standard modem communication, cable modem, dish networks, ISDN, Digital Subscriber Line (DSL), or various wireless communication methods. One or more computer systems might also reside within a local area network (LAN) which interfaces to network 106 via a leased line (TI, D3, etc.). Such communication methods are well known in the art, and are covered in a variety of standard texts. See, e.g., GILBERT HELD, UNDERSTANDING DATA COMMΠNICATIONS (1996), hereby incorporated by reference.
CUent computers 108a-b are any computer systems capable of communicating with layout server 104 via network 106 such as, for example, a personal digital assistant (PDA), personal computer, workstation, cellular phone or any other device. In an exemplary embodiment, chent computers 108 include a personal computer having a processor, memory and operating system such as any conventional PC running any version of the WINDOWS operating system. Client systems 108 suitably communicate with the layout generator system 100 through any technique, such as through a conventional browser (e.g. Internet Explorer or Netscape browsers). Accordingly, chent systems 108 typically include a user interface for displaying information to the user and for receiving inputs from the user via a keyboard, mouse, touchpad or the Uke. CUent system 108 may be physically located in any home or business environment with access to network 106.
' With continued reference to Figure 1, an exemplary system 100 for creating layouts suitably includes a user of a cUent computer 108 opening a browser or other appropriate application and contacting layout server 104. In an exemplary embodiment, contact is made by entering a uniform resource locator (URL) into a browser window, or by selecting an appropriate bookmark or Unk to server 104. After a connection between cUent computer 108 and server 104 is established, server 104 suitably provides an applet, ActiveX control or other program to cUent computer 108 that aUows the user to create the layout as appropriate. Completed layouts are then transmitted from client computer 108 to layout server 104 in any format (e.g. XML format) for storage within database 102. Server 104 may further provide for review and approval of templates by senior designers, management, chents or others before the templates become available for use in actual documents. In various embodiments, layouts stored in database 102 are retrieved by one or more document designers who insert content into the layouts to create documents such as web pages. This process may be facilitated using a content management utility 110 that retrieves layouts from database 102 and provides the layouts to document designers as appropriate. Document designers may coincide with client systems 108 in various embodiments, although in other embodiments document designers use different systems entirely.
Figures 2a and 2b are block diagrams showing exemplary software configurations for layout server 104 and cUent module 204, respectively. With reference to Figure 2a, in one embodiment, layout server 104 includes an appUcation server 208, a web server 216 and a network interface 218. Network interface 218 suitably provides input and output functionality between server 104 and network 106 (Figure 1). Web server 216 is any conventional web server (such as Microsoft Internet Information Server, Apache Web Server, or the like) that is capable of receiving requests for hypertext transport protocol (HTTP), secure HTTP (HTTPS) or other appropriate connections. Web server 216 is further operable to exchange data between appUcation server 208 and client computers 108 using network interface 218 to network 106.
Application server 208 includes any hardware and/or software program or module configured to provide an electronic layout generation application to one or more cUent systems 108 via web server 216. The electronic layout generation appUcation may be, for example, a Java applet, ActiveX control or other appUcation as described below. Application server 208 may also provide for user authentication via a userid/password or other credential, as weU as an interface for communications between client system 108 and database 102 (Figure 1). Additional detail about application server 208 is described below. With reference to Figure 2b, in one embodiment, client module 204 suitably includes a layout manager 210, a layout editor 212 and an input/output module 214. The layout editor 212 module enables users of client systems 108 to create and/or modify document layouts, as described in further detail below. In an exemplary embodiment, layouts are created by the user manipulating a keyboard, mouse, touchpad or other interface device on client system 108 to draw or otherwise form a document layout on a display. Layouts may be formed by placing various components (such as areas, spacers and containers, described below) onto a layout page. Further, various parameters (size, border type, style, etc.) may be entered into dialog boxes associated with one or more of the layout components, and components may be moved, resized or otherwise modified using the mouse or touchpad, as appropriate.
Layout manager 210 includes a programming module configured to vaUdate electronic layouts 108 by ensuring that the various parameters defined or entered by the user are logicaUy 'consistent. Input/output module 214 accepts inputs relating to electronic layouts, content and the Uke from user interfaces 108 and provides for transmission of electronic layouts to database 102.
Briefly, the interaction between the server module 104 and the cUent module 204 includes a user at a cUent system 108 that suitably establishes an HTTP connection to layout server 104 via network 106. Server 104 receives the connection via network interface 218 to network 106, and establishes a session with the cUent using web server 216. The user is authenticated with a userid/password or other appropriate credential (e.g. digital signature, smartcard, biometric imprint, etc.) and a client module 204 is provided to cUent system 108 via the web connection established through interface 218. The chent module, which may be implemented with a Java applet or similar appUcation, includes routines for creating and editing the document layout (i.e. layout editor 212), for vahdating the layout (i.e. layout manager 210), and for communicating with layout server 104 (i.e. I/O module 214).
Figure 3 a is a flow diagram showing an exemplary method for creating an electronic layout using layout generator system 100. A user initializes cUent system 108 (step 304) by initiating a browser session on client system 108. After the browser is activated, the user suitably estabUshes a connection 306 between client system 108 and layout server 104, as appropriate. This connection may be established according to any conventional technique such as entering a URL into an appropriate browser window or cUcking on an appropriate link or bookmark to create an HTTP session between client system 108 and layout server 104. When connection 306 is established, the user suitably provides identification/authorization information such as a userid/password combination or other credential to layout server 104. Layout server 104 appropriately processes the credential to verify that the user is authorized to use the layout creation system by checking the credential against information maintained in database 102, or elsewhere as appropriate. If the credential is not approved, the layout server 104 denies the user further access to the system. If the credential is approved, layout server 104 suitably registers the client with the system and allows the session to proceed.
After registering the user, layout server 104 suitably sends a Java applet or other appropriate software tool 204 for electronic layout creation to cUent computer 108 (step 310). When client appUcation 108 receives the tool, the user is permitted to create and/or modify an electronic layout by executing the software tool within the browser session previously established (step 312). The user creates/modifies layouts by interacting with graphical user interface provided by the software tool that aUows the user to "draw" elements such as areas, spacers and containers into the layout. The software tool further aUows users to modify various parameters of the layout elements, as described more fully below in conjunction with Figure 5. The completed layout may be formatted and stored in any appropriate format, such as extensible markup language (XML) or any other format. The layout manager portion of software tool 204 typically converts the data input by the user to an XML format that may be appropriately read and modified by another software tool 204 or other editing program. Layouts are appropriately stored in database 102 (Figure 1) through interaction of the software tool executing on cUent system 108 with layout server 104. Accordingly, the software tool provides edited layouts to layout server 104 via network 106 (step 314), which stores the layout as appropriate (step 316).
Figure 3 b is a flow diagram for an exemplary process for approving a document template. With reference now to Figure 3B, an exemplary process 350 suitably includes receiving a draft layout (step 352), obtaining an approval list for the particular user (step 354), notifying approvers as appropriate (steps 356 and 358) and awaiting approval of the layout (step 360). Because users of the system are authorized and authenticated using a userid/password or other credential, customized approval processes may be created for particular users or for groups of users. For example, a web designer may seek approval for a particular layout from a department manager, business client, trademark or branding representative, or the like before the template is made available to other users. One way to accomplish custom approvals is to associate a list of approvers with an object representing the user in database 102, or elsewhere as appropriate. Alternatively, approval Usts may be associated with groups of users (each of which has an identical approval chain) by associating user objects with workgroup objects, and then further associating the workgroup objects with a particular Ust of approvers. In an exemplary embodiment, layout server 104 appropriately retrieves an approval Ust (step 354) from database 102 (or elsewhere as appropriate) to determine the personnel to review and approve the layout created by a particular user. Each approver is then notified that a draft layout is available for review and approval (steps 356, 358). Notification may take place automatically via electronic mail, instant message, or the like. Alternatively, the notification steps may be omitted in alternate embodiments, and approval personnel may simply poU the layout server 104 at periodic or other intervals to check if any layouts are awaiting approval. As each approver reviews and approves the layout, the approval is noted in database 102 (for example, in metadata associated with the layout). Approvers may be reminded at later times if they fail to review the layout within a certain time, or approval may be determined to be automatically granted if no objections are logged within a particular time. In various embodiments, approvers may modify layouts online (using the software tool 204 as described above), may provide comments to the layout developer (via email, instant message, or the like), or may store comments with metadata associated with the layout in database 102. The approval process shown in Figure 3b is an exemplary process; other practical processes may of course be formulated without departing from the scope of the invention.
After the layout is properly approved by any and all required approvers, the layout becomes available for use in documents. The layout may be distributed or otherwise made available via any technique, such as publication through a content management utility as described above. In an exemplary embodiment (and with momentary reference again to Figure 1), the approved layout is stored in database 102 where it is available for retrieval by content management system users as described in U.S. Patent AppUcation Serial No. 09/769,924, filed on January 25, 2001, previously incorporated by reference. Figure 4 is an object diagram of an exemplary software tool 204. With reference to
Figure 4, an exemplary client module 204 suitably includes layout editor 212, layout manager 210 and a layout 402, which includes one or more containers 410, areas 414, spacers 416 and other elements described further below. The various components shown in Figure 4 are described herein as software objects that inter-relate to form a software tool 204; alternate embodiments, however, may use radically different object structures, or may be created without using objects at all. As such, the various objects may be thought of as logical modules that provide various functionalities; different embodiments of the invention may alter, ehininate or enhance any of the functionalities described herein or implement them in radically different ways. An exemplary embodiment of layout editor 212 includes a layout panel 404, a toolbar 406 and a property sheet 408. Layout editor 212 is generally configured to aUow a user interface 108 to create or edit layout 402. Layout panel 404 is configured to display layout 402 on user interface 108 as layout is being generated or edited. In one embodiment, layout panel 404 may include toolbar 406 and property sheet 408. Toolbar may be configured to provide user interface 108 with a Ust of elements to place on layout 402. Examples of elements listed on toolbar 406 may include "containers," "areas" and "spacers." When user interface 108 chooses "container" from toolbar 406, typically by clicking or otherwise selecting "container," property sheet 408 is displayed as appropriate. Property sheet 408 aUows user interface 108 to choose properties for container 410. Other examples of elements which may be Usted on toolbar 406 include, but are not limited to, area 414 and spacer 416. An exemplary method for placing containers 410, areas 414 and spacers 416 on layout 402 and choosing their properties via property sheets 408 is described further below. Containers include software objects (or modules) that have various user-definable characteristics and that represent sections of a layout. With continued reference to Figure 4, container 410 is a section of a document layout configured to enable user interface 108 to arrange additional containers 412, areas 414 and/or spacers 416 in a particular manner to create layout 402. Thus, in one embodiment, container 410 may contain one or more other containers 410, one or more areas 414 and/or one or more spacers 416. Areas 414 may include regions of the layout that are relatively static and that exhibit particular attributes such as a foreground or background color, border type, border thickness, font type, text color and style, or the Uke. Spacers 416 include objects that provide gaps between various areas
I of the layout. In one embodiment, container 410 may contain one or more areas 414 and/or spacers
416, as well as other containers 410. Additionally, areas 414 may be configured to contain various basic elements 422. Basic elements 422 may include text elements 418, image elements 420 or any other suitable elements which may be included1 in areas 414, such as programming elements, links and the like. Text elements 418 and/or image elements 420 may be chosen for inclusion in an area 414 and then converted into basic elements 422, which may be XML strings. Text elements 418 and/or image elements 420 may include the content of the document which is being formed via document layout 402. Thus, in one embodiment, areas 414 may be configured in relation to other areas 414 and/or spacers 416, and to exhibit certain attributes represented by basic elements 422 such as text 418 and images 420.
Spacers 416 may be configured create spaces between adjacent containers 410, adjacent areas 414 or a container 410 adjacent to an area 414. In one embodiment, spacers 416 may be configured not to contain other elements, such as other spacers 416, areas 414 or basic elements 422. Despite the foregoing description of one exemplary embodiment of containers 410, areas 414 and spacers 416, many other suitable embodiments and combinations are contemplated within the scope of the present invention. For example, areas 414 may be configured to contain containers 410, spacers 416 may be configured to contain areas 414 or basic elements 422, and the Uke. In fact, any combination of containers 410, areas 414 and spacers 416 suitable for generating layouts 402 may be used as part of the present invention and, therefore, faUs within the scope of the invention.
Figure 5 is a screen display, showing an exemplary embodiment of a display 500 created by layout generator system 100. Display 500 suitably includes layout panel 404, toolbar 406 and a layout 402 created by a user. Layout 402 includes a vertical container 510, which contains a top area 512, a vertical spacer 514, a middle area 516, and a horizontal container 518. Horizontal container 518 includes a left area 524, a right area 520 and a horizontal spacer 522. Areas and spacers in Figure 5 are empty, though middle area 516 is shaded, relative to the other areas and spacers. Each of the regions shown in the layout may be represented as conventional XML code or in any other format.
In accordance one embodiment of a method for using layout generator system 100, and with reference to Figures 4 and 5, upon being provided with layout panel 404, a user may first select "container" from toolbar 406 using the mouse. At that point, a first container 510 will be placed on layout panel 404 and the user will be provided with a property sheet 408 for that container. The user may use property sheet 408 to select property characteristics for container 510 such as, but not Umited to, orientation, width, height, ahgnment, background color, border size and color, font name, font size, font color and the like. Additionally, user may position container 510 by dragging and dropping container to various locations on layout panel 404.
Next, a user may further define container 510 by cUcking on container 510 and selecting "container," "area," or "spacer" from toolbar 406. This process adds an additional container 518, an area 512, 516, 520, 524, or a spacer 514, 522, within the original container 510. Each time a user adds a container, area or spacer, layout editor 210 may display property sheet 408, aUowing the user to select properties for that container, area or spacer. Property sheets 408 for containers, areas and spacers may contain the same properties or may contain different ones. Additionally, once containers, areas and/or spacers are placed, they may be moved to other locations within layout panel 404, by dragging and dropping or by any other suitable method. As described briefly above, once a user places one container on layout 402, the user can make various changes to layout 402 by selecting that container and using selections from toolbar 406. Aside from adding other containers, areas and/or spacers, user may delete containers, areas and/or spacers by selecting those elements within the original container and cUcking on a "delete" button on toolbar 406. Or a user may move a container, area or spacer up, down, right or left on the document layout by selecting the component to be moved and selecting an "up," "down," "right," or "left" button on toolbar 406. Thus, toolbar 406 may contain many attributes or actions for use creating and/or modifying containers, areas and spacers.
As a user creates layout 402, by the method described in part above, layout manager 212 may be configured to monitor the properties of layout 402 and either approve or reject one or more aspects of layout 402. For example, if a user selects properties for one area, one container and one spacer, which are all to fit within an original container, and those properties would not aUow those three components to fit within the original container, layout manager 212 might inform the user that that particular layout 402 is not possible. For example, with reference again to Figure 5, if a user chose dimensions for left area 524, right area 520 and horizontal spacer 522 that were too large to aUow those elements to fit within vertical container 510, layout manager 212 would inform the user that those dimensions would not work and/or that different dimensions should be chosen. Thus, layout manager 212 is configured in such a way that it can monitor and vaUdate the overall layout 402 as weU as properties of each component of that layout 402.
As described above, with reference to Figures 1 and 3, after a user has created and/or edited layout 402, layout 402 may be sent to layout server 104. Layout server 104 may store layout 402 or send it to database 102 for storage. That particular layout 402 may then be accessed and edited or used to create electronic documents or other electronic media by authorized user interfaces 108.
The corresponding structures, materials acts and equivalents of all elements in the claims below are intended to include any structure, material or acts for performing the functions in combination with other claimed elements as specificaUy claimed. Any steps recited in any method claim may be practiced in the order recited or in any other temporal or logical sequence. The scope of the invention should be determined by the appended claims and their legal equivalents, rather than by the examples given above. No element described herein should be interpreted as essential to the practice of the invention unless expressly described herein as "necessary" or "required."

Claims

ClaimsWhat is claimed is:
1. A system for faciUtating the creation of a document layout, the system comprising: a layout editor configured to place at least one container onto a document template in response to inputs from a user; a layout manager configured to vaUdate properties of said document layout and to generate said document layout; and a data storage system configured to store said document layout.
2. The system of claim 1, wherein said at least one container comprises a software object configured to contain at least one visual element.
3. The system of claim 2, wherein said at least one visual element comprises a second container.
4. The system of claim 2, wherein said at least one visual element comprises an area.
5. The system of claim 2, wherein said at least one visual element comprises a spacer.
6. The system of claim 5, wherein said spacer is a section of the document layout that defines the properties of a region between a second container and an area, both placed within said at least one containers.
7. The system of claim 1, wherein said layout editor is further configured to place a second container within said at least one container.
8. The system of claim 1, wherein said layout editor is further configured to place at least one area within said at least one container.
9. The system of claim 8, wherein said layout editor is further configured to place a second area within said at least one area.
10. The system of claim 8, wherein said at least one area is a section of the document layout that contains at least one content element.
11. The system of claim 10, wherein said at least one content element comprises text.
12. The system of claim 10, wherein said at least one content element comprises one or more images.
13. The system of claim 1, wherein said layout editor is further configured to move said at least one container from one position to another within said document template.
14. The system of claim 1, wherein said layout editor is further configured to delete said at least one container from said document template.
15. The system of claim 1, wherein said layout editor is further configured to change the size and/or proportions of said at least one container.
16. The system of claim 1, wherein one of said properties comprises an orientation for aUgnment said at least one visual element in said at least one container.
17. The system of claim 1, wherein one of said properties comprises a width of said at least one container.
18. The system of claim 1, wherein one of said properties comprises a height of said at least one container.
19. The system of claim 1, wherein one of said properties comprises a background color for said at least one container.
20. The system of claim 1, wherein one of said properties comprises a width of a border for said at least one container.
21. The system of claim 1, wherein one of said properties comprises font characteristics for text placed within said at least one container.
22. The system of claim 1, wherein said layout manager is further configured to generate said document layout in a format suitable for an external application.
23. The system of claim 22, wherein said format is XML code.
24. The system of claim 1, wherein said layout manager is further configured to aUow access to said document layout only by input of an identifier by said user.
25. The system of claim 1, wherein the document layout is represented as XML code generated by said layout manager.
26. The system of claim 1, wherein said data storage device is further configured to aUow access to said document layout only by input of an identifier by said user.
27. A method for facilitating creation of a document layout, the method comprising: displaying a document template; placing at least one container on said document template to create the document layout, said at least one container comprising a software object configured to contain a visual element; and storing the document layout in a data storage system.
28. The method of claim 27, wherein said displaying includes displaying said document template on a computer screen.
29. The method of claim 27, further including choosing a size for said at least one container.
30. The method of claim 27, further including moving said at least one container to a position on said document layout.
31. The method of claim 27, further including placing a second container within said at least one container on said document template.
32. The method of claim 27, further including placing a second container on said document template and placing a spacer between said at least one container and said second container.
33. The method of claim 32, further including choosing a size for said spacer.
34. The method of claim 27, further comprising placing at least one area within said at least one container.
35. The method of claim 34, further comprising placing at least one content component in said at least one area, said content component being chosen from a Ust of possible content components.
36. The method of claim 27, wherein said storing further comprises storing the document layout in a data storage device that allows access to users upon input of an identifier.
37. A system for faciUtating the creation of a document layout via a digital network, the system comprising: a layout server system comprising: a network interface configured to receive a request for a connection from a cUent computer; an application server module configured to provide a layout manager appUcation to said cUent computer, wherein said layout manager appUcation is configured to create the document layout based upon inputs received at said chent computer, and wherein said appUcation server module is further configured to receive said document layout from said layout manager application; and a database configured to receive the document layout from said appUcation server and store the document layout.
38. A method for facilitating the creation of a document layout via a digital network, the method comprising: receiving a request for a connection from a cUent computer; providing a layout manager application to said client computer; receiving inputs from said client computer by said layout manager appUcation; creating the document layout based upon said inputs from said chent computer; receiving the document layout from said layout manager by a database; and storing the document layout in said database.
39. A method for facilitating the creation of a document layout via a digital network, the method comprising: logging onto a layout manager application; requesting to create said document layout; adding a first container to said document layout; placing at least one second container or at least one area within said first container; selecting a scope for said document layout, said scope defining one or more groups which may access said document layout; and saving said document layout.
40. The method of claim 39, wherein said logging onto said layout manager application further includes inputting a user name and password.
41. The method of claim 39, further including placing a spacer between two or more of said at least one second containers, between said at least one second container and said at least one area or between two or more of said at least one area.
42. The method of claim 39, further including specifying properties for said first container, said at least one second container and/or said at least one area.
43. The method of claim 39, further including adding a third container to said document layout, wherein said third container is not located within said first container.
44. The method of claim 43, further including placing a spacer between said first container and said third container.
PCT/US2001/047339 2000-12-06 2001-12-03 Layout generator system and method WO2002046878A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2002233991A AU2002233991A1 (en) 2000-12-06 2001-12-03 Layout generator system and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US25163300P 2000-12-06 2000-12-06
US60/251,633 2000-12-06

Publications (2)

Publication Number Publication Date
WO2002046878A2 true WO2002046878A2 (en) 2002-06-13
WO2002046878A3 WO2002046878A3 (en) 2002-09-06

Family

ID=22952786

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/047339 WO2002046878A2 (en) 2000-12-06 2001-12-03 Layout generator system and method

Country Status (3)

Country Link
US (1) US7401289B2 (en)
AU (1) AU2002233991A1 (en)
WO (1) WO2002046878A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100359511C (en) * 2004-01-30 2008-01-02 佳能株式会社 Document processing device and method

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020087286A1 (en) * 2000-12-30 2002-07-04 Mitchell Bradley W. Method for generation of electronic reports
DE10065323C2 (en) * 2000-12-31 2003-10-30 Siemens Ag Method for controlling the arrangement of graphic elements
US7120917B2 (en) * 2001-02-21 2006-10-10 Vega Grieshaber Kg Process for adjusting an operating interface belonging to process devices with an internet capability, along with an arrangement exhibiting such an operating interface
JP3835193B2 (en) * 2001-03-30 2006-10-18 セイコーエプソン株式会社 Digital content creation system and digital content creation program
JP2003085091A (en) * 2001-09-10 2003-03-20 Hibiya Kadan:Kk Web page management support system
US7885996B2 (en) * 2001-09-29 2011-02-08 Siebel Systems, Inc. Method, apparatus, and system for implementing notifications in a framework to support web-based applications
US8359335B2 (en) 2001-09-29 2013-01-22 Siebel Systems, Inc. Computing system and method to implicitly commit unsaved data for a world wide web application
US7461119B2 (en) * 2001-09-29 2008-12-02 Siebel Systems, Inc. Method, apparatus, and system for managing status of requests in a client server environment
US7146617B2 (en) * 2001-09-29 2006-12-05 Siebel Systems, Inc. Method, apparatus, and system for implementing view caching in a framework to support web-based applications
US6907451B1 (en) 2001-09-29 2005-06-14 Siebel Systems, Inc. Method, apparatus, and system for immediate posting of changes in a client server environment
US7203948B2 (en) * 2001-09-29 2007-04-10 Siebel Systems, Inc. Method, apparatus, and system for implementing caching of view custom options in a framework to support web-based applications
US7870492B2 (en) 2001-10-02 2011-01-11 Siebel Systems, Inc. Method, apparatus, and system for managing commands in a client server environment
US20040205572A1 (en) * 2002-02-19 2004-10-14 Wendell Fields Systems and methods for providing information in a computer network
GB2392744A (en) * 2002-09-05 2004-03-10 Hewlett Packard Co Alternative web content provision
US20060112333A1 (en) * 2002-09-27 2006-05-25 Brother Kogyo Kabushiki Kaisha Text edition device and program
FR2846118A1 (en) 2002-10-22 2004-04-23 I 1 System Method for setting up a publishing mock-up, comprises automatic selection of elements intended for mock-up from a data base, definition of a model, selection of emplacement order and display
JP4235441B2 (en) * 2002-12-20 2009-03-11 キヤノン株式会社 Document processing program, document processing method and apparatus
US7000184B2 (en) * 2003-01-24 2006-02-14 The Cobalt Group, Inc. Remote web site editing in a standard web browser without external software
JP4082351B2 (en) * 2003-03-12 2008-04-30 セイコーエプソン株式会社 Layout system, layout program, and layout method
US7356332B2 (en) * 2003-06-09 2008-04-08 Microsoft Corporation Mobile information system for presenting information to mobile devices
JP2005284985A (en) * 2004-03-30 2005-10-13 Ricoh Co Ltd Network compatible device, maintenance method for maintaining network compatible device, program, medium storing program thereon, and maintenance system thereof
CA2466253A1 (en) * 2004-05-04 2005-11-04 Ibm Canada Limited - Ibm Canada Limitee Display of enlarged visual container graphical user interface (gui) components during gui layout or design
US7409635B2 (en) * 2004-11-16 2008-08-05 Zalag Corporation Display/layout methods and apparatuses including content items and display containers
US7890881B1 (en) * 2005-07-29 2011-02-15 Adobe Systems Incorporated Systems and methods for a fold preview
US7676744B2 (en) * 2005-08-19 2010-03-09 Vistaprint Technologies Limited Automated markup language layout
US7584424B2 (en) * 2005-08-19 2009-09-01 Vista Print Technologies Limited Automated product layout
US8150847B2 (en) * 2005-08-31 2012-04-03 Ebay Inc. System and method to transform results of client requests using client uploaded presentation formats
US7877729B2 (en) * 2005-09-16 2011-01-25 Ricoh Company, Limited Method and apparatus for editing and viewing device layout, and computer program product
CN100395751C (en) * 2005-10-14 2008-06-18 华为技术有限公司 Device and method for page smart configuration
US20070204013A1 (en) * 2006-01-12 2007-08-30 Castrucci David P Method and apparatus for creating a website
US9317302B2 (en) * 2006-01-30 2016-04-19 International Business Machines Corporation Method and algorithm for content layout across diverse and dynamic displays
US20070204220A1 (en) * 2006-02-27 2007-08-30 Microsoft Corporation Re-layout of network content
US7756333B2 (en) * 2006-04-26 2010-07-13 Microsoft Corporation Document layout verification
US7692658B2 (en) * 2006-11-17 2010-04-06 Microsoft Corporation Model for layout animations
JP4956202B2 (en) * 2007-01-16 2012-06-20 キヤノン株式会社 Information processing apparatus, information processing method, and program
US8108763B2 (en) * 2007-01-19 2012-01-31 Constant Contact, Inc. Visual editor for electronic mail
US20090006433A1 (en) * 2007-06-29 2009-01-01 Microsoft Corporation Extensible category and property grouping for object editing
US7987428B2 (en) * 2007-10-23 2011-07-26 Microsoft Corporation Dashboard editor
US8095417B2 (en) * 2007-10-23 2012-01-10 Microsoft Corporation Key performance indicator scorecard editor
US9552356B1 (en) * 2007-12-21 2017-01-24 Amazon Technologies, Inc. Merging client-side and server-side logs
JP5084613B2 (en) * 2008-05-30 2012-11-28 任天堂株式会社 Image transmission apparatus and image transmission program
US9176953B2 (en) * 2008-06-04 2015-11-03 Tianjin Sursen Investment Co., Ltd. Method and system of web-based document service
JP2010039938A (en) * 2008-08-07 2010-02-18 Fuji Xerox Co Ltd Document processing device and document processing program
US8717383B2 (en) * 2008-08-27 2014-05-06 International Business Machines Corporation Automatic management of diagram elements
US20100058162A1 (en) * 2008-08-27 2010-03-04 International Business Machines Corporation Automatic customization of diagram elements
US20100053215A1 (en) * 2008-08-27 2010-03-04 International Business Machines Corporation Creation and application of patterns to diagram elements
US9684736B2 (en) 2009-01-29 2017-06-20 Oracle International Corporation Communication handler for flex integration with a secure application
US9760381B2 (en) * 2009-01-30 2017-09-12 Oracle International Corporation Configurable toolbar
US9396279B1 (en) 2009-02-17 2016-07-19 Jpmorgan Chase Bank, Na Collaborative virtual markup
US9691050B2 (en) * 2009-03-20 2017-06-27 Oracle International Corporation Real-time page and flow compositions
US20140033024A1 (en) * 2009-04-07 2014-01-30 Adobe Systems Incorporated Multi-item page layout modifications by gap editing
US8479092B1 (en) 2009-04-30 2013-07-02 Adobe Systems Incorporated Content layout for an electronic document
US8392828B2 (en) * 2009-05-20 2013-03-05 Yahoo! Inc. Open theme builder and API
US8635317B2 (en) * 2009-06-23 2014-01-21 Nokia Corporation Method and apparatus for providing uniform content management
US20120204100A1 (en) * 2009-10-20 2012-08-09 Niranjan Damera-Venkata Probabilistic Methods and Systems for Preparing Mixed-Content Document Layouts
US9911141B2 (en) * 2010-08-01 2018-03-06 Hewlett-Packard Development Company, L.P. Contextual advertisements within mixed-content page layout model
US10482475B2 (en) 2011-02-10 2019-11-19 Adp Dealer Services, Inc. Systems and methods for providing targeted advertising
US9152616B2 (en) * 2011-04-28 2015-10-06 Flipboard, Inc. Template-based page layout for web content
US20150212670A1 (en) * 2012-02-01 2015-07-30 Google Inc. Highly Customizable New Tab Page
US10789412B2 (en) * 2012-02-20 2020-09-29 Wix.Com Ltd. System and method for extended dynamic layout
US9367524B1 (en) 2012-06-06 2016-06-14 Google, Inc. Systems and methods for selecting web page layouts including content slots for displaying content items based on predicted click likelihood
US20140026039A1 (en) * 2012-07-19 2014-01-23 Jostens, Inc. Foundational tool for template creation
WO2014055492A2 (en) * 2012-10-02 2014-04-10 Percussion Software, Inc. Lossless application of new information architecture to existing websites, web pages, and online content
US11080734B2 (en) 2013-03-15 2021-08-03 Cdk Global, Llc Pricing system for identifying prices for vehicles offered by vehicle dealerships and other entities
US9229627B2 (en) * 2013-06-05 2016-01-05 General Electric Company System and method for graphical rights indication
US9672276B2 (en) 2013-09-30 2017-06-06 Microsoft Technology Licensing, Llc Multi-act creation user interface element
US20150222691A1 (en) * 2014-02-06 2015-08-06 Google Inc. Hub Application Automation Widget
CN104881298A (en) 2014-02-27 2015-09-02 国际商业机器公司 Method and device for displaying documents on line
US20150293889A1 (en) * 2014-04-09 2015-10-15 Google Inc. Perception of page download time by optimized resource scheduling
US20160004783A1 (en) * 2014-07-01 2016-01-07 EveryMundo, LLC Automated generation of web site entry pages
US10565293B2 (en) * 2014-08-26 2020-02-18 Adobe Inc. Synchronizing DOM element references
US10310699B1 (en) * 2014-12-08 2019-06-04 Amazon Technologies, Inc. Dynamic modification of browser and content presentation
US10445391B2 (en) 2015-03-27 2019-10-15 Jostens, Inc. Yearbook publishing system
US20160357364A1 (en) * 2015-06-07 2016-12-08 Apple Inc. Graphical User Interface for a Document Viewing Application
US11334643B2 (en) 2015-07-27 2022-05-17 WP Company, LLC Contextual editing in a page rendering system
US9940320B2 (en) * 2015-12-01 2018-04-10 International Business Machines Corporation Plugin tool for collecting user generated document segmentation feedback
US10332068B2 (en) 2016-04-21 2019-06-25 Cdk Global, Llc Systems and methods for stocking an automobile
US10853769B2 (en) 2016-04-21 2020-12-01 Cdk Global Llc Scheduling an automobile service appointment in a dealer service bay based on diagnostic trouble codes and service bay attributes
US10867285B2 (en) 2016-04-21 2020-12-15 Cdk Global, Llc Automatic automobile repair service scheduling based on diagnostic trouble codes and service center attributes
JP6812170B2 (en) * 2016-08-29 2021-01-13 キヤノン株式会社 Information processing device, its control method, and control program
US10326858B2 (en) 2017-05-23 2019-06-18 Cdk Global, Llc System and method for dynamically generating personalized websites
US20190205370A1 (en) * 2018-01-02 2019-07-04 Go Daddy Operating Company, LLC Creating an email or electronic document layout based on visual input
US10437914B2 (en) 2018-01-02 2019-10-08 Go Daddy Operating Company, LLC Creating HTML layouts based on client input and processing
US11190608B2 (en) 2018-03-21 2021-11-30 Cdk Global Llc Systems and methods for an automotive commerce exchange
US11501351B2 (en) 2018-03-21 2022-11-15 Cdk Global, Llc Servers, systems, and methods for single sign-on of an automotive commerce exchange
CN110909280A (en) * 2019-11-20 2020-03-24 杭州端点网络科技有限公司 Internet software web application page decoration system
US11080105B1 (en) 2020-11-18 2021-08-03 Cdk Global, Llc Systems, methods, and apparatuses for routing API calls
US11514021B2 (en) 2021-01-22 2022-11-29 Cdk Global, Llc Systems, methods, and apparatuses for scanning a legacy database
US11803535B2 (en) 2021-05-24 2023-10-31 Cdk Global, Llc Systems, methods, and apparatuses for simultaneously running parallel databases

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835919A (en) * 1993-05-10 1998-11-10 Apple Computer, Inc. Computer-human interface system which manipulates parts between a desktop and a document
US5860073A (en) * 1995-07-17 1999-01-12 Microsoft Corporation Style sheets for publishing system
US5999948A (en) * 1997-09-03 1999-12-07 3Com Corporation Dynamic configuration forms in network management software
US6031989A (en) * 1997-02-27 2000-02-29 Microsoft Corporation Method of formatting and displaying nested documents

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5504891A (en) 1991-10-17 1996-04-02 Ricoh Company, Ltd. Method and apparatus for format conversion of a hierarchically structured page description language document
JPH08227415A (en) 1995-02-21 1996-09-03 Fuji Xerox Co Ltd Document editing device
US5953733A (en) * 1995-06-22 1999-09-14 Cybergraphic Systems Ltd. Electronic publishing system
US5781914A (en) 1995-06-30 1998-07-14 Ricoh Company, Ltd. Converting documents, with links to other electronic information, between hardcopy and electronic formats
US5745360A (en) 1995-08-14 1998-04-28 International Business Machines Corp. Dynamic hypertext link converter system and process
US6055522A (en) 1996-01-29 2000-04-25 Futuretense, Inc. Automatic page converter for dynamic content distributed publishing system
US5745908A (en) 1996-03-29 1998-04-28 Systems Focus International Method for converting a word processing file containing markup language tags and conventional computer code
US5804803A (en) 1996-04-02 1998-09-08 International Business Machines Corporation Mechanism for retrieving information using data encoded on an object
US6003046A (en) 1996-04-15 1999-12-14 Sun Microsystems, Inc. Automatic development and display of context information in structured documents on the world wide web
US5848386A (en) 1996-05-28 1998-12-08 Ricoh Company, Ltd. Method and system for translating documents using different translation resources for different portions of the documents
EP0810533B1 (en) 1996-05-29 2002-04-10 Matsushita Electric Industrial Co., Ltd. Document conversion apparatus
US5845299A (en) 1996-07-29 1998-12-01 Rae Technology Llc Draw-based editor for web pages
US5911145A (en) 1996-07-29 1999-06-08 Rae Technology, Inc. Hierarchical structure editor for web sites
US5973696A (en) 1996-08-08 1999-10-26 Agranat Systems, Inc. Embedded web server
SG70025A1 (en) 1996-08-14 2000-01-25 Nippon Telegraph & Telephone Method and system for preparing and registering homepages interactive input apparatus for multimedia informations and recording medium including interactive input programs of the multimedia informations
US5956737A (en) 1996-09-09 1999-09-21 Design Intelligence, Inc. Design engine for fitting content to a medium
US5845067A (en) * 1996-09-09 1998-12-01 Porter; Jack Edward Method and apparatus for document management utilizing a messaging system
US5895477A (en) 1996-09-09 1999-04-20 Design Intelligence, Inc. Design engine for automatic layout of content
US6061697A (en) 1996-09-11 2000-05-09 Fujitsu Limited SGML type document managing apparatus and managing method
US5956736A (en) 1996-09-27 1999-09-21 Apple Computer, Inc. Object-oriented editor for creating world wide web documents
US5909214A (en) 1996-11-04 1999-06-01 International Business Machines Corp. Method and system for drop guides for visual layout in Java layout managers
US5893127A (en) 1996-11-18 1999-04-06 Canon Information Systems, Inc. Generator for document with HTML tagged table having data elements which preserve layout relationships of information in bitmap image of original document
US6144974A (en) 1996-12-13 2000-11-07 Adobe Systems Incorporated Automated layout of content in a page framework
US5940834A (en) 1997-03-13 1999-08-17 Mitel Corporation Automatic web page generator
US5953731A (en) 1997-03-31 1999-09-14 International Business Machines Coporation HTML integration utility for a program development environment
US6023714A (en) 1997-04-24 2000-02-08 Microsoft Corporation Method and system for dynamically adapting the layout of a document to an output device
US6026417A (en) 1997-05-02 2000-02-15 Microsoft Corporation Desktop publishing software for automatically changing the layout of content-filled documents
US6308188B1 (en) * 1997-06-19 2001-10-23 International Business Machines Corporation System and method for building a web site with automated workflow
US6016697A (en) * 1997-09-09 2000-01-25 American Magnetics, Inc. Capacitive level sensor and control system
US6002874A (en) 1997-12-22 1999-12-14 International Business Machines Corporation Method and system for translating goto-oriented procedural languages into goto-free object oriented languages
US6072486A (en) 1998-01-13 2000-06-06 Microsoft Corporation System and method for creating and customizing a deskbar
US6157943A (en) 1998-11-12 2000-12-05 Johnson Controls Technology Company Internet access to a facility management system
US6714928B1 (en) * 1999-03-19 2004-03-30 Sybase, Inc. Development system providing HTML database control object
US6981214B1 (en) * 1999-06-07 2005-12-27 Hewlett-Packard Development Company, L.P. Virtual editor and related methods for dynamically generating personalized publications
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US6466944B1 (en) * 1999-12-02 2002-10-15 Novell, Inc. Method for creation, management, and use of files containing multiple virtual data streams using standard file system APIs
US7117260B2 (en) * 2000-01-27 2006-10-03 American Express Travel Related Services Company, Inc. Content management application for an interactive environment
US7293230B2 (en) * 2000-01-27 2007-11-06 American Express Travel Related Services Company, Inc. Information architecture for the interactive environment
US6912719B2 (en) * 2000-08-08 2005-06-28 International Business Machines Corporation Type descriptor metamodel

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835919A (en) * 1993-05-10 1998-11-10 Apple Computer, Inc. Computer-human interface system which manipulates parts between a desktop and a document
US5860073A (en) * 1995-07-17 1999-01-12 Microsoft Corporation Style sheets for publishing system
US6031989A (en) * 1997-02-27 2000-02-29 Microsoft Corporation Method of formatting and displaying nested documents
US5999948A (en) * 1997-09-03 1999-12-07 3Com Corporation Dynamic configuration forms in network management software

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: 'Softquad hotmetal pro 3.0 for microsoft windows', June 1996, SOFTQUAD INC. XP002950898 second edition, pages 6-10, 41-45, 66-77, 157-169 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100359511C (en) * 2004-01-30 2008-01-02 佳能株式会社 Document processing device and method

Also Published As

Publication number Publication date
WO2002046878A3 (en) 2002-09-06
US20020116418A1 (en) 2002-08-22
AU2002233991A1 (en) 2002-06-18
US7401289B2 (en) 2008-07-15

Similar Documents

Publication Publication Date Title
US7401289B2 (en) Layout generator system and method
US6360236B1 (en) Computer product for integrated document development
US9015232B2 (en) Content management application for an interactive environment
US6332150B1 (en) Integrated document development method
US6381579B1 (en) System and method to provide secure navigation to resources on the internet
US8904342B2 (en) System and method for rapid development of software applications
US7472170B2 (en) System and method for managing content on a network interface
US20070239726A1 (en) Systems and methods of transforming data for web communities and web applications
US7082475B2 (en) Web server with automated workflow
US20040167989A1 (en) Method and system for creating and managing a website
US7318191B2 (en) Automated system and method for dynamically generating customized typeset question-based documents
US6819965B2 (en) Electronic work instruction object oriented system and method
US20040111387A1 (en) Methods and systems for organizing information stored within a computer network-based system
US20030126140A1 (en) Method, system, and computer program product for generating custom databases
US20020087523A1 (en) Custom domain generator method and system
WO2000020945A9 (en) Generalized multi-interfaced extensible content management and delivery system, and on-line calendar
Mathews et al. Electronic management of the peer review process
Bradenbaugh JavaScript application cookbook
WO2001059626A1 (en) Comprehensive web site management system and processes therefore
Fadilah et al. Design of Cadets Administration System for Nusantara Cilacap Maritime Academy Based On Website
Kueppers et al. Getting our act together: human and technological factors in establishing an on-line knowledge base
Diyasa et al. Design and Build Bali Tourism Information System in The Pandemic Time Based on Website
EP1256077A1 (en) Dissemination of data
ZHANG et al. NetTest: an integrated web-based test tool
Sharma et al. Some basic aspects for creation of website

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

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

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

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP