throbber
SFDC 1005
`SFDC 1005
`
`
`
`
`
`
`
`
`
`

`
`United States Patent [19J
`Haverstock et al.
`
`111111
`
`1111111111111111111111111111111111111111111111111111111111111
`US006064977 A
`[11] Patent Number:
`[45] Date of Patent:
`
`6,064,977
`May 16,2000
`
`[54] WEB SERVER WITH INTEGRATED
`SCHEDULING AND CALENDARING
`
`"Fulcrum's Surfboard-Search Technology for Internet",
`Newsbytes Inc., Mar. 23, 1995.
`
`[75]
`
`Inventors: Paul Haverstock, Acton, Mass.;
`Miguel Estrada, Nashua, N.H.; Julio
`Estrada, Carlisle, Mass.
`
`[73] Assignee: International Business Machine
`Corporation, Armonk, N.Y.
`
`[21] Appl. No.: 09/100,119
`
`[22] Filed:
`
`Jun. 19, 1998
`
`Related U.S. Application Data
`[ 60] Provisional application No. 60/050,153, Jun. 19, 1997, and
`provisional application No. 60/050,155, Jun. 19, 1997.
`Int. Cl? ...................................................... G06F 17/60
`[51]
`[52] U.S. Cl . ................................... 705/9; 705/8; 345/963;
`707/513
`[58] Field of Search ....................... 705/9, 8, 1; 345/963,
`345/334; 707/513
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,299,304
`5,513,323
`5,530,852
`5,745,360
`5,842,177
`5,867,822
`
`3/1994 Williams et al. ....................... 707/523
`4/1996 Williams et al. ....................... 709/246
`6/1996 Meske, Jr. et al. ..................... 709/206
`4/1998 Leone et al. ............................ 707/513
`11/1998 Haynes et al. .............................. 705/8
`2/1999 Sankar ........................................ 705/8
`
`OTHER PUBLICATIONS
`
`Oski, Jonathan A., "Lotus Notes 4.5 Branches into Internet,
`Intranets", MacWeek, vol. 11, No. 8, Feb. 24, 1997.
`Balderston, Jim, "Fulcrum Boosts Middleware Links to
`Web", InfoWorld, vol. 18, No. 25, Jun. 17, 1996.
`
`Kramer, Matt, "Tests Find Notes Client Will Ease Wander(cid:173)
`ing, Database Access", PC Week, vol. 14, No. 21, May 26,
`1997.
`
`Gage, Deborah, ''Fulcrum Technologies Tries to Stay Ahead
`of Microsoft", Computer Reseller News, 1996.
`
`Nadile, Lisa, "PC Expo To Get Software Infusion", PC
`Week, vol. 13, No. 24, Jun. 17, 1996.
`
`Gustavson, Ron, ''Compact Disc and Portable Webs", E
`Media Professional, vol. 9, No. 12, Dec., 1996.
`
`Primary Examiner-Stephen R. Tkacs
`Assistant Examiner--George D. Morgan
`Attorne}\ Agent, or Firm---Hunton & Williams
`
`[57]
`
`ABSTRACT
`
`A system for enabling access to non-HTML objects from a
`web browser. The system includes a database for storing
`non-HTML objects. A system user requests a non-HTML
`object from a database using a web browser. The web
`browser transmits the request to a server via a HTTP server
`and module. The server locates and retrieves the document
`requested. The module translates the document to a format
`supported by the web browser. The HTTP server commu(cid:173)
`nicates the translated object to the web browser over a
`network. The web browser then presents the translated
`object to the system user. The server also includes a schedule
`and calendar application which provides electronic sched(cid:173)
`uling and calendaring capabilities directly from the browser
`without having to open another application or display win(cid:173)
`dow.
`
`20 Claims, 3 Drawing Sheets
`
`r- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ,
`
`'
`
`SERVER
`14
`
`'
`'
`
`NON-HTML
`SERVER
`MODULE
`24
`
`'
`'
`'
`' ' '
`' '
`'
`'
`
`'
`
`L--- --- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -----'
`
`CLIENT
`12
`
`NEWvORK
`54
`
`TERMINAL
`26
`
`NON-HTML
`DATABASE
`16
`18a-18n
`I 62a-62n I
`
`B
`\
`
`10
`
`HTML
`OBJECTS
`50a-50n
`
`SFDC 1005
`
`

`
`CLIENT
`12
`
`J
`
`NETWORK,
`54
`
`TERMINAL
`26
`BROWSER
`28
`
`-
`
`----------- --
`---------- ~~-----------------~
`SERVER
`14
`
`r - -
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`Cj
`•
`\J'J. •
`
`8::
`I'--
`
`~
`::::::--
`NON-HTML
`DATABASE
`16
`18a-18n
`
`8
`8
`
`20
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`
`.....
`
`HTIP
`SERVER
`MODULE
`30
`
`URL
`INTERFACE
`46
`INTERFACE
`MODULE
`32
`HTML
`TRANSLATOR
`44
`
`NON-HTML
`SERVER
`MODULE
`24
`
`L------
`
`•
`------------------ ---
`
`----------------
`
`!
`
`~.___---~ 10
`
`HTML DATABASE LINK
`INDEX 48
`66n
`~.------=-=-son 1~ HTML
`64
`l SOa
`!'-OBJECTS
`rs21
`50 50
`r-
`-r-
`a- n
`t..::.:.J
`
`0
`
`~
`50n
`g
`soa-
`o ~-~{~
`~
`LINK
`66a
`
`FIG. 1
`
`I
`
`

`
`---------------------------
`
`--------------------
`
`----------------
`
`-------1
`
`Cj
`•
`\J'J. •
`
`SERVER
`14
`
`HTTP
`SERVER
`30
`
`MAIL
`MODULE
`34
`
`SCHEDULE
`AND
`CALENDAR
`MODULE
`36
`
`INTERFACE
`MODULE
`32
`
`WORKFLOW
`MODULE
`38
`
`SECURITY
`MODULE
`40
`
`COMMAND
`CACHE
`42
`
`NON-HTML
`SERVER
`MODULE
`24
`
`I
`I
`I
`I
`I
`I
`
`_____________________________________________________________________ :
`FIG. 2
`
`I
`
`L
`
`

`
`~
`
`78
`;-----'
`
`Cj
`•
`\J'J. •
`
`~ = ~
`"""' ="
`"'
`N =
`= =
`
`('!;)
`
`'JJ. =-('!;)
`.....
`~
`Q
`""+=
`~
`
`PULL-DOWN MENUS
`72
`
`TOOL BAR
`74
`URL
`76
`
`[][]
`
`a
`
`18
`
`0
`0
`0
`
`n
`
`[][]
`ATIACHMENT 00
`ATIACHMENT 00
`
`a
`0
`0
`0
`
`n
`
`82a
`0
`0
`0
`
`82n
`
`I
`
`FIG. 3
`
`1 NAVIGATOR
`BOa
`
`0
`
`0
`
`0
`
`NAVIGATOR
`BOn
`
`I
`
`

`
`6,064,977
`
`1
`WEB SERVER WITH INTEGRATED
`SCHEDULING AND CALENDARING
`
`RELATED APPLICATIONS
`
`This application claims priority based on U.S. Provisional
`Patent Application Serial No. 60/050,153, entitled "Web
`Server Application" and U.S. Provisional Application Serial
`No. 60/050,155, entitled "Electronic Calendar With Group
`Scheduling," each filed Jun. 19, 1997. This application is
`also related to co-pending U.S. Patent Applications entitled, 10
`"Web Server Enabling Browser Access to H1ML and Non(cid:173)
`HTML Document<;," Ser. No. 09/100,131, filed herewith,
`''Web Server With Direct Mail Capability," Ser. No. 09/100,
`130, filed herewith, "Web Server With Automated
`Workflow," Ser. No. 09/100,129, filed herewith, "Web 15
`Server Providing Role-Based Multi-level Security," Ser. No.
`09/100,128, filed herewith, "Web Server With Unique Iden(cid:173)
`tification of Linked Objects," Ser. No. 09/100,118, filed
`herewith, "Web Server With Ability To Process URL With
`Action Commands," Ser. No. 09/100,117, filed herewith, 20
`"Web Server Providing HTML Pages Embedded With Non(cid:173)
`HTML Views," Ser. No. 09/100,120, filed herewith, and
`"Web Server Enabling Attachment of HTML and Non(cid:173)
`H1ML Files To Web Pages," Ser. No. 09/100,121, filed
`herewith.
`
`FIELD OF THE INVENTION
`
`The invention relates to a web server providing direct
`integrated scheduling and calendaring functions.
`
`BACKGROUND OF THE INVENTION
`
`2
`requires using HTML to edit the original web page or link.
`One significant problem with HTML links is that if a web
`page (or other object is linked to it) is moved or deleted any
`links to that page or object needs to be manually changed or
`s a "file not found" message will appear when a user click<; on
`the link.
`One limitation of web browsers and web servers is that
`they were designed primarily to access H1ML documents.
`Browsers typically cannot cause a web server to retrieve and
`return non-H1ML documents. This inhibits a user from
`accessing non-HTMLdocuments, objects or databases from
`a web browser. Non-HTML objects, for example, may
`include non-H1ML documents, stored views for documents
`in a database, identification files stored in a user directorv
`and many other types of objects. Views provide a conveniedt
`way to index a plurality of documents. Identification files
`may comprise information about a system user (e.g., elec(cid:173)
`tronic mail address, role, profile, etc.).
`One example of a non-HTML database is Lotus Notes.
`Lotus Notes is a popular software system, rich with a
`number of well-knmvn functions. These functions, however,
`are typically accessed via a client terminal (loaded \vith
`Lotus Notes client software) communicating with a server
`(loaded with Lotus Notes server software). Because Notes is
`25 not an HTML-based application, it has not been practical to
`access objects in a Notes database via a standard web
`browser.
`Standard web servers typically do not provide scheduling
`and calendaring functions. Browsers/web servers with
`scheduling and calendaring capabilities generally provide
`these functions through an application supporting these
`functions. Standard browsers/web servers do not provide
`integrated scheduling and calendaring functions. This is a
`drawback.
`Other drawbacks exist.
`
`30
`
`Web browsers such as Netscape Navigator and Microsoft
`Internet Explorer are well known. Web browsers are soft(cid:173)
`ware residing on a client (e.g., a personal computer). Via the 35
`browser, the client can communicate with a web server to
`enable access to and viewing of Hypertext Markup Lan(cid:173)
`guage (H1ML) documents. A web server typically includes
`a server (e.g., a UNIX- or Windows NT-based computer)
`connected to a network (e.g., the Internet, an intranet or 40
`other network), web server software configured with the
`host name of the server and the location of HTML objects
`on the servers and the HTML objects stored by that server.
`In general operation, to access a web page, a user enters
`a request by specifying a uniform resource locator (URL) 45
`via the browser and hitting "Submit" (or another function
`key) and the URL is sent to the web server using HTTP. The
`web server responds by locating the requested HTML docu(cid:173)
`ment and returning it to the browser. The browser receives
`the HTML document, interprets the HTML codes, translates 50
`them into a web page, and displays the web page. In this
`way, web browsers enable access to the vast number of
`H1ML documents via the World Wide Web, the Internet or
`intranets. HTML generally is well known. A primary pur(cid:173)
`pose of H1ML is to describe how to format the text (and 55
`other content) of a web page. HTML uses tags to indicate
`how text of a web page should be displayed and to specify
`the URL of objects to which a page is linked. HTML objects
`are commonly stored on a web server as standard text files
`with a H1M or H1ML extension. Linking is a powerful 60
`feature of HTML. One drawback with HTML links is that
`link<; are created by coding a page with H1ML tags to link
`it to other objects (e.g., another document or a specific
`location within a document). Therefore creating web pages
`and links requires a working knowledge of H1ML and the
`time required to write H1ML code a create a page and any
`desired links. Editing an H1ML page or a link typically
`
`SUMMARY OF THE INVENTION
`An object of the invention is to overcome these and other
`drawbacks in existing systems.
`Another object of the invention is to provide a web server
`that can respond to requests from a web browser for either
`HTML or non-H1ML documents and return the requested
`documents to the web browser.
`Another object of the invention is to enable a web server
`to provide direct scheduling and calendaring capabilities
`from a web browser.
`Another object of the invention is to enable a web server
`to provide direct scheduling and calendaring capabilities
`from a web browser without having to open another sched(cid:173)
`uling and calendaring application or viewer window.
`According to one embodiment of the invention, the sys-
`tem comprises a novel web server for a client/server
`network, where the client side is equipped with a standard
`browser. The server comprises standard web server func(cid:173)
`tionality (e.g., HTTP server), an HTML translator, a server
`side software (e.g., Lotus Notes server software) and a
`database (e.g. a Lotus Notes database). Significantly, the
`database does not need HTMLobjects. Preferably, the server
`receives a URL-based request from a browser via HTTP, the
`HTTP server and HTML translator determine the object
`(e.g., documents or databases) specified by the URL,
`retrieves that object, translates that object to HTML format
`and sends the HTML downloaded object to the client side
`65 browser for display.
`According to another aspect of the invention, the server
`comprises an integrated scheduling and calendaring appli-
`
`

`
`6,064,977
`
`3
`cation which provides a web browser \vith direct scheduling
`and calendaring capabilities. The system enables the server
`to provide scheduling and calendaring capabilities directly
`within a browser window without having to open another
`scheduling and calendaring application or display window.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram illustrating an overall system in
`accordance with one embodiment of the invention.
`FIG. 2 is a block diagram illustrating an interface module
`in accordance \vith one embodiment of the invention.
`FIG. 3 is a view of a display in accordance with one
`embodiment of the invention.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`
`15
`
`4
`resources available in non-HTML databases 16 to a web
`browser 28 according to one embodiment of the invention.
`Preferably, the invention comprises a Lotus Notes server.
`Advantageously, even with this embodiment a standard
`s browser-based client may be used. A<> detailed below, Lotus
`Notes provides the non-HTML server module 24 a rich set
`of services that has made it a leading messaging and
`groupware platform. By expressing Notes capabilities to the
`Web (using a browser) via the present invention, Web
`10 developers can take advantage of an architecture that inte(cid:173)
`grates database, security, directory, messaging, workflow,
`replication, and application development technology in a
`single platform heretofore lacking in browser based systems
`using HTML objects.
`Lotus Notes, for example, is a robust system offering
`many features (e.g., forms, views, navigators, agents,
`folders, etc.). These resources in general are known,
`however, the ability to expose the features to a web browser
`is accomplished according to one aspect of the invention.
`20 Because Lotus Notes provides these and other features,
`Notes will be used to illustrate how features of a non-HTML
`database may be exposed to a web browser using the
`invention. Although Lotus Notes is used by way of example,
`the invention may be used with other non-HTML databases.
`One advantage of the invention is that it enables browser
`28 access to non-HTMLobjects (e.g., user objects 22a-22n)
`via a non-HTML server module 24. Through communica(cid:173)
`tion with the non-HTML server module 24, browser 28 is
`provided with additional functionality (i.e., functions sup-
`30 ported by non-HTML server module). For example, non(cid:173)
`HTML server module may comprise a security module.
`Because browser 28 retrieves non-HTML objects using
`non-HTML server module 24, the security module controls
`access to the non-HTML objects based on predetermined
`35 criteria. Therefore, this function is exposed to browsers.
`For example, system 10 retrieves non-HTML objects
`18a-18n via non-HTML server module 24. By communi(cid:173)
`cating with non-HTML server module 24, system 10 permits
`web browser 28 to utilize functions of non-HTML server
`module 24. For example, a system user may acce&<> non(cid:173)
`HTML objects 18 from non-HTML database 16 (e.g., a
`Lotus Notes database). When non-HTML object 18a is
`retrieved using non-HTML server module 24, functions
`associated with non-HTML object 18a become available to
`the system user. For example, non-HTML object 18a may
`comprise an agent which transmits a message or facsimile
`notifying another system user that non-HTML object 18a
`has been accessed. The invention exposes this and other
`functions provided by non-HTML server modules 24 to
`browsers 28.
`The system may use a bi-directional replication process to
`ensure that all system users are accessing the most recent
`versions of HTML objects 50a-50n. The replication process
`used is efficient because it is selective, can be scheduled, and
`55 can perform at the field-level. Selective replication enables
`administrators to replicate only a subset of data within the
`HTML database (for example, specific databases or HTML
`objects). Replication may be scheduled to run when net(cid:173)
`working costs are minimized. With field level replication,
`60 only those fields \vithin HTML object<> that are new or have
`been changed on either side of the replication process need
`to be replicated. With these sophisticated replication capa(cid:173)
`bilities as a part of the infrastructure, developers can focus
`on creating Web applications which enable business pro-
`65 cesses within and across lines of business and corporate
`boundaries. The benefit to the user is easier manageability of
`databases and data integrity in all sites.
`
`As schematically illustrated in the block diagram of FIG.
`1, one aspect of the invention relates to a client/server
`network system 10 enabling access to both HTML objects
`50a-50n (e.g., HTML documents) and non-HTML objects
`18a-18n using a web browser 28 residing on a terminal 26.
`Preferably, web browser 28 supports Internet and Web
`protocols (e.g., HyperText Transfer Protocol (HTTP) and
`TCP/IP). The system may further comprise a client 12 to 25
`enable a non-browser client access to non-HTML server
`module 24 to retrieve non-HTML objects 18a-18n from
`non-HTML database 16.
`A server 14 preferably comprises a HTTP server module
`30, interface module 32 and non-HTML server module 24.
`As further illustrated in FIG. 1, the server side of system 10
`may comprise a non-HTML database 16 in communication
`with server 14. Preferably, non-HTML database 16 stores
`one or more non-HTML objects 18a-18n, each at least some
`of which having one or more non-HTML fields 62a-62n,
`and a user directory 20. User directory 20 includes one or
`more user objects 22a-22n. User objects 22a-22n may
`include information about a user (e.g., electronic mail
`address, role, profile, etc.). Terminal26 and server 14 can be
`in communication via a network 54 (e.g., Internet, Intranet
`or other network).
`According to one aspect of the invention, a user submits
`a URL-based request for an object via browser 28. The
`request is passed to server 14 using HTTP (or other 45
`protocol). Server 14 receives the request via HTTP server
`module 30 and passes object location information to inter(cid:173)
`face module 32 via URL interface 46. URL interface 46
`transmits that information to non-HTML server module 24.
`Non-HTML server module 24 retrieves the requested object 50
`and passes it to interface module 32. A HTML translator
`portion 44 of interface module 32 translates the non-HTML
`object to a HTML representation of the requested object and
`the HTML representation is returned to browser 28 via
`HTTP server module 30.
`Svstem 10 also enables browser 28 to access HTML
`obj;cts 50a-50n using HTTP server 30 or a conventional
`web server 56 in a known manner. A conventional editor
`may be used to edit HTML objects within the system. A
`conventional technique (e.g., a computer gateway interface
`(CGI)) may be used to store the edited HTML objects in the
`HTML database.
`Thus, one advantage of the invention is that server 14
`enables a browser 28 to request both HTML objects
`50a-50n and non-HTML objects 18a-18n. Additional
`advantages derive from this capability. For example, one
`significant advantage is that the invention exposes powerful
`
`40
`
`

`
`6,064,977
`
`35
`
`6
`5
`During replication, directory changes are also replicated,
`processes for managing customer issues. Issue status
`because the directory is simply another database in the
`requests may be routed to the appropriate Company A
`invention, with the same structure and properties as a Web
`service representative based on a combination of parameters
`page library. Therefore, for example, discussion forums can
`including the inquirer's company, his or her service level
`be replicated, because discussions are simply another 5
`agreement, and the priority of the inquiry. The invention can
`instance of a database.
`efficiently handle non-routine occurrences such as re-routing
`messages destined for absent service representatives by
`In addition to the above features, system 10 also provides
`examining their schedules. Also, issue status requests that
`other functions. For example, system 10 provides integrated
`exceed a specific time threshold can automatically trigger
`mail application module 34 and scheduling and calendaring
`escalation to managers via e-mail or pager.
`application module 36. System 10 uses web browser 28 to 10
`permit reading, creating, editing, etc. of electronic mail
`The system also provides role-based, multi-level security
`messages and calendaring and scheduling of events. The
`module 40 for controlling access to objects within the
`calendaring and scheduling application module 36 permits
`system. The system enables an authorized individual to
`the system user to invite other invitees to the event (e.g.,
`assign users a defined role. Each role may have various
`privileges based on the priority level of the role. Priority
`system users, conference rooms, audio/visual equipment,
`etc.). For example, using the calendaring and scheduling 15
`levels may comprise a read only privilege, read and edit
`privileges, read public information only privileges, etc. For
`feature, a system user schedules an event. The system user
`example, a system administrator may have complete privi(cid:173)
`may then retrieve a form which serves as a template for
`leges to all objects within the system. A law level employee
`creating an electronic mail message (e-mail). The e-mail is
`user, however, may have read only privileges for some
`composed in cooperation with the scheduling application
`and therefore identifies information concerning the event 20
`objects an/or no access to others. These security features
`may extend to fields within a document. For example, a
`(e.g., date, time, location, etc.). The system user addresses
`document containing a person's sales records may include a
`the e-mail to the invitees using electronic mail addresses
`buyer field. A system user accessing the document may be
`stored in a user directory. The user directory may include
`required to have a certain priority level to view the buyer
`additional information (e.g., user role, profile, etc.). The
`e-mail may be provided with a view inquiring whether the 25
`field. If the system user does not have this priority level, the
`system user will not be permitted access to that information
`invitee accepts, declines, etc. If an invitee accepts, the
`(e.g., the buyer field may not be displayed). This permits
`system will automatically schedule the event in the invitee's
`system user's access to be unrestricted controlled on a
`calendar. The system user may also input additional infor(cid:173)
`field-by-field bases whereas prior browser-based systems
`mation (e.g., textual information, attachments, etc.).
`The messaging, calendaring and scheduling function are 30
`typically either deny or grant access to a web page or site
`area.
`performed directly through the web browser. A separate
`Additionally, the system provides for high-level security
`window or application does not need to be opened. Prior
`authentication. Before a system user is granted access to an
`browser-based systems require separate mail, schedule and
`object within the system, the system may authenticate the
`calendar applications to be opened in a separate "windows."
`system user. This may be done by assigning an identification
`One advantage of the server 14 of the present invention as
`and password to the system user. A system user attempting
`compared with other Web servers is that it exploits the Web
`to enter the system must first enter the user identification and
`to handle the activity that is driven by the information that
`password. If the identification and password do not match
`is posted on the Web site. Two core services of the invention
`the identification and password stored in the system, the
`that make this possible are messaging and workflow.
`40 system user is not authenticated and access is denied.
`The server supports major industry messaging protocols
`Another feature is dynamic generation of content based
`and Application Programmer's Interfaces (APis). The inven(cid:173)
`on a who the system user is. Dynamic generation occurs
`tion provides a backbone messaging platform with robust
`because each time a user requests a non-HTML object, that
`message transfer agents (MTAs) for SMTP, X.400, cc:Mail,
`object is translated (even if the object has been requested and
`and Notes Mail. Messaging services support e-mail clients 45
`translated previously). For example, a non-HTML object
`using industry standards, including Post Office Protocol v3
`may contain a date field. Therefore, to update the field, the
`(POP3) and Internet Mail Access Protocol v4 (IMAP4). The
`system translates the non-HTML object each time it is
`invention also supports other broadly deployed protocols,
`requested.
`including Vendor Independent Mail (VIM), and Messaging
`Dynamic generation may also apply to security. For
`API (MAPI).
`example, a document may contain certain fields that are
`The invention also includes group calendaring and sched(cid:173)
`access controlled, whereby, depending on who the user is
`uling functionality, and will support standard calendar and
`(e.g., based on the user's role) one or another field may be
`schedule protocols as they emerge.
`displayed. If a user's role changes (e.g., access privileges
`The combination of messaging with calendaring and
`scheduling functionality provides developers with the tools 55 revoked), dynamic generation allows the system to update a
`user's role with the current privileges and restrict access as
`to create Web applications incorporating workflow. Business
`required.
`processes that have time-sensitive actions and tasks associ(cid:173)
`There are at least three different ways to describe security,
`ated with multiple users can be rapidly enabled. For
`each having its own access methods and protocol. One
`example, a Web application can intelligently route messages
`embodiment of the invention provides a solution for each of
`and forms to users based on a variety of business relevant 60
`these different security levels. These are:
`conditions (for example, user, schedule, time, priority).
`Authentication: Confirming who a user is with user names
`Also, a Web application can be designed to examine a group
`and passwords via a directory;
`of users' calendars, determine the optimal schedule to ensure
`business processes are completed, and notify each user of
`Authorization: Allowing you to do certain things through
`Access Control Lists ("ACL"); and
`impending work.
`Company A can take advantage of this messaging and
`Encryption: Protecting what you do through Secure Sock(cid:173)
`workflow functionality to enable a sophisticated set of
`ets Layer ("SSL").
`
`50
`
`65
`
`

`
`6,064,977
`
`5
`
`10
`
`7
`Building upon such standard Web security as Secure
`Sockets Layer, the invention has the ability to granularly
`control a Web application's delivery of content based on
`how a user will participate with the application: this is
`referred to as roles-based access. This feature provides great
`value to organizations that require secure Web application
`functionality to enable sensitive business processes. The
`invention supports SSL which complements ACL. Using its
`integrated ACL, web server 14 (e.g., a Lotus Domino
`Server) can control the access and authorization to sensitive
`HTML objects to only those with the appropriate privileges.
`For even greater access control granularity, specific fields in
`a page can be secured and delivered only to specified users.
`Access to a page or a field is only part of the security
`model of the invention. ACL technology also controls the 15
`level of functionality each user has. That is, some users are
`able to modify or update information on an existing Web
`page directly from a browser. Depending on the page or field
`that a user is reading, the invention determines the appro(cid:173)
`priate role:
`No Access: A user at this level has no access to the
`database on the Web site or its associated views and
`HTML objects. This allows Web developers to easily
`hide sensitive information as a default function of the
`Web site. Developers can also hide functionality (for
`example, buttons, menu items).
`Depositor: A depositor can only write to a database. This
`level is useful for Web-based anonymous ballot boxes
`or surveys.
`Reader: A reader has read-only access to pages on the Web
`site.
`Author: In addition to reading pages, authors can create
`and post new pages to the Web site. Typically, authors
`can also edit and delete those Web pages they them(cid:173)
`selves created.
`Editor: Editors can read, write, update and delete pages
`created by others.
`Through tight integration of security and directory
`services, developers can easily apply access controls by an
`individual user or group of users. This role-dependent con(cid:173)
`tent delivery is transparent to the user.
`The value of roles-based access functionality can be
`illustrated with an application common to most organiza(cid:173)
`tions. A Human Resources department wishes to develop a
`Web application to post job opportunities. Most employees
`\vill have reader access to these pages. In addition, hiring
`managers will have author access so that they can also post
`new jobs to the database, as well as go back and modify
`postings that they themselves have authored. Human
`Resource staff might enjoy editor access, which gives them
`the ability to make changes to any posting on the site. And
`perhaps, Finance Department staff might have reader access
`to all pages, but also have editor access to the salary field,
`giving them the ability to make changes to just one part of
`each page. The invention exposes this and other functions
`provided by non-HTML server modules 24 to browsers 28.
`The system also allows system users to design features
`(e.g., databases, forms, views, etc.) in a visual integrated
`development environment (IDE) using a browser. For
`example, a system user may create an employment appli(cid:173)
`cation form. The form comprises various fields requiring
`system user input. To facilitate the creation of this form,
`another form having similar fields (e.g., work history form)
`may be used. For example, the system user may display both
`forms using Web browser 28. The work history form may
`have a field which the system user requires in the employ-
`
`8
`ment application form. To input the field from the work
`history form into the employment application form, the
`system user may simply select and "drag" the field (e.g., by
`using a conventional computer mouse) into the location in
`the employment application form and "drop" the field into
`the employment application form. Other known features of
`an integrated development environment may also be per(cid:173)
`formed from a web browser due to the present invention.
`For example, the Lotus Notes IDE provides developers
`with a forms-based metaphor that exploits the inventions
`object store, directory, security, workflow, and replication
`services. That is, developers using Notes have direct, pro(cid:173)
`grammatic access to these robust services, instead of resort(cid:173)
`ing to limited interfaces between a scripting language and a
`set of services found in separate products and/or servers.
`Moreover, the Notes development metaphor lends itself
`well to the types of business applications deployed on the
`Internet or on an intranet. For example, if a Notes designer
`client employs a set of intuitive and flexible application
`design elements (for example, forms, fields and views) that
`20 have great synergy with the page and link paradigms of the
`Web. Specifically, developers create forms and populate
`them with a variety of fields which interact with the user
`through agents, scripting language, and formulas. The layout
`and content of the form is automatically translated to HTML
`25 and delivered by the invention to the user for vie\ving in his
`or her Web browser. Once a form has been populated and
`saved, it is stored and processed as a page in the database,
`which can then be linked to other pages using the same
`hypertext linking mechanism so successfully exploited by
`the HTTP/HTML protocol set. The use of forms and fields
`lends itself to rapid application prototyping and develop-
`ment in at least three specific ways.
`First, new views can be created on the fly. Because forms
`consist of fields, developers can sort pages based on the
`values of those fields on each page. For example, a Human
`35 Resources intranet app

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket