US20020103883A1 - Web server with unique identification of linked objects - Google Patents
Web server with unique identification of linked objects Download PDFInfo
- Publication number
- US20020103883A1 US20020103883A1 US09/100,118 US10011898A US2002103883A1 US 20020103883 A1 US20020103883 A1 US 20020103883A1 US 10011898 A US10011898 A US 10011898A US 2002103883 A1 US2002103883 A1 US 2002103883A1
- Authority
- US
- United States
- Prior art keywords
- html
- objects
- unique identifier
- server
- web server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/972—Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/131—Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
- G06F40/143—Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
Definitions
- the invention relates to a web server that employs unique identification of linked objects.
- Web browsers such as Netscape Navigator and Microsoft Internet Explorer are well known.
- Web browsers are software residing on a client (e.g., a personal computer). Via the browser, the client can communicate with a web server to enable access to and viewing of Hypertext Markup Language (HTML) 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 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.
- HTML In general operation, to access a web page, a user enters a request by specifying a uniform resource locator (URL) 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 document and returning it to the browser.
- the browser receives the HTML document, interprets the HTML codes, translates them into a web page, and displays the web page.
- HTML generally is well known. A primary purpose of HTML is to describe how to format the text (and 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 HTM or HTML extension.
- Linking is a powerful feature of HTML.
- HTML links are created by coding a page with HTML 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 HTML and the time required to write HTML code a create a page and any desired links. Editing an HTML page or a link typically requires using HTML to edit the original web page or link.
- 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 a “file not found” message will appear when a user clicks on the link.
- Non-HTML objects may include non-HTML documents, stored views for documents in a database, identification files stored in a user directory and many other types of objects. Views provide a convenient way to index a plurality of documents. Identification files may comprise information about a system user (e.g., electronic mail address, role, profile, etc.).
- a common problem with HTML linked pages is that if the name or location of a page changes, the link to it must be re-coded. Otherwise an attempt to link to that page will return an error message, such as “Page Not Found.”
- Another drawback is that if a user creates an index of pages, with a link to each page, to add a new page the user must modify the HTML code.
- One object of the invention is to overcome these and other drawbacks present 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-HTML documents and return the requested documents to the web browser.
- Another object of the invention is to provide a system that enables linked documents to have a unique identifier, with the link referring to the identifier to avoid errors if a page is renamed or moved.
- Another object of the invention is to provide a system that enables automatic link updating when new documents or links are created within a system.
- the system 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 functionality (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).
- the database does not need HTML objects.
- 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 browser for display.
- the system provides a unique identifier to documents within the system. After the system assigns a unique identifier, the system refers to the document by the unique identifier. This provides several advantages, for example, link management. If a link is referred to by filename or location, and the filename or location is changed, the system will be unable to locate the object. Because the system uses a unique identifier which does not change for a given document, the links are maintained.
- 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 with one embodiment of the invention.
- FIG. 3 is a view of a display in accordance with one embodiment of the invention.
- one aspect of the invention relates to a client/server network system 10 enabling access to both HTML objects 50 a - 50 n (e.g., HTML documents) and non-HTML objects 18 a - 18 n using a web browser 28 residing on a terminal 26 .
- web browser 28 supports Internet and Web protocols (e.g., HyperText Transfer Protocol (HTTP) and TCP/IP).
- HTTP HyperText Transfer Protocol
- the system may further comprise a client 12 to enable a non-browser client access to non-HTML server module 24 to retrieve non-HTML objects 18 a - 18 n from non-HTML database 16 .
- a server 14 preferably comprises a HTTP server module 30 , interface module 32 and non-HTML server module 24 .
- the server side of system 10 may comprise a non-HTML database 16 in communication with server 14 .
- non-HTML database 16 stores one or more non-HTML objects 18 a - 18 n , each at least some of which having one or more non-HTML fields 62 a - 62 n , and a user directory 20 .
- User directory 20 includes one or more user objects 22 a - 22 n .
- User objects 22 a - 22 n may include information about a user (e.g., electronic mail address, role, profile, etc.).
- Terminal 26 and server 14 can be in communication via a network 54 (e.g., Internet, Intranet or other network).
- a user submits a URL-based request for an object via browser 28 .
- the request is passed to server 14 using HTTP (or other protocol).
- Server 14 receives the request via HTTP server module 30 and passes object location information to interface 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 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 .
- System 10 also enables browser 28 to access HTML objects 50 a - 50 n 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)
- CGI computer gateway interface
- server 14 enables a browser 28 to request both HTML objects 50 a - 50 n and non-HTML objects 18 a - 18 n . Additional advantages derive from this capability. For example, one significant advantage is that the invention exposes powerful resources available in non-HTML databases 16 to a web browser 28 according to one embodiment of the invention.
- the invention comprises a Lotus Notes server.
- a standard browser-based client may be used.
- Lotus Notes provides the non-HTML server module 24 a rich set of services that has made it a leading messaging and groupware platform.
- Web developers can take advantage of an architecture that integrates 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. 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.
- non-HTML server module 24 Through communication with the non-HTML server module 24 , browser 28 is provided with additional functionality (i.e., functions supported by non-HTML server module).
- non-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 criteria. Therefore, this function is exposed to browsers.
- system 10 retrieves non-HTML objects 18 a - 18 n via non-HTML server module 24 .
- system 10 permits web browser 28 to utilize functions of non-HTML server module 24 .
- a system user may access non-HTML objects 18 from non-HTML database 16 (e.g., a Lotus Notes database).
- non-HTML object 18 a is retrieved using non-HTML server module 24 , functions associated with non-HTML object 18 a become available to the system user.
- non-HTML object 18 a may comprise an agent which transmits a message or facsimile notifying another system user that non-HTML object 18 a 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 bidirectional replication process to ensure that all system users are accessing the most recent versions of HTML objects 50 a - 50 n .
- the replication process used is efficient because it is selective, can be scheduled, and 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 networking costs are minimized. With field level replication, only those fields within HTML objects that are new or have been changed on either side of the replication process need to be replicated. With these sophisticated replication capabilities as a part of the infrastructure, developers can focus on creating Web applications which enable business processes 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.
- a HTML system may comprise a HTML database 48 comprising HTML objects 50 a - 50 n .
- HTML objects 50 a - 50 n are stored using a user assigned filename. The system retrieves HTML objects 50 a - 50 n based on the filename.
- An index 64 identifies HTML objects 50 a - 50 n in HTML database 48 and provides links 66 a - 66 n to each HTML object 50 a - 50 n .
- HTML objects 50 a - 50 n may comprise links 66 a - 66 n to other HTML objects 50 a - 50 n.
- a non-HTML database 16 (e.g., a Lotus Notes database), however, assigns a unique identifier to non-HTML objects 18 a - 18 n and indexes and retrieves non-HTML objects based on the unique identifier.
- a system user designates a filename.
- the system assigns a unique identifier to non-HTML objects 18 a - 18 n and automatically indexes non-HTML objects 18 a - 18 n in an index 64 . This technique improves link management.
- the system uses the unique identifier to retrieve non-HTML object 18 a .
- This reduces the likelihood of receiving a error message indicating, for example, “File Not Found” produced by prior systems if a filename has changed.
- Prior systems retrieve files by filename and thus may be unable to locate a non-HTML object 18 a because a system user has input a previous filename.
- the system reduces the occurrence of such errors.
- the invention enables browser users access to functionality such as unique identification by permitting browser users access to non-HTML server modules. Once a browser accesses a non-HTML server module, many functions provided by the server module are exposed to the browser because the non-HTML server module communicates with the browser as if the browser is a non-HTML client.
- a non-HTML index records which non-HTML objects 18 a - 18 n refer to the other non-HTML objects in non-HTML database 16 .
- a user creates a new document or edits an existing non-HTML object 18 a and provides a link to non-HTML object 18 n .
- the system identifies non-HTML object 18 n with the unique identifier and automatically updates the index to reflect that non-HTML object 18 a refers to non-HTML object 18 n using a link.
- the invention exposes this and other functions provided by non-HTML server modules 24 to browsers 28 .
- system 10 In addition to identifying non-HTML actions within a URL, system 10 also permits attaching non-HTML objects to HTML objects.
- a user may attach non-HTML object 18 n to HTML object 50 a .
- Attaching files includes storing the attaching object (i.e., HTML object 50 a ) with the attachment (i.e. non-HTML object 18 a ).
- a link is provided from HTML object 50 a to non-HTML object 18 a .
- the link is provided within HTML object 50 n .
- the link identifies the location of the attachment stored with HTML object 50 n .
- HTML objects may also be attached to non-HTML objects using the above process.
- system 10 also provides other functions.
- system 10 provides integrated mail application module 34 and scheduling and calendaring application module 36 .
- System 10 uses web browser 28 to permit reading, creating, editing, etc. of electronic mail messages and calendaring and scheduling of events.
- the calendaring and scheduling application module 36 permits the system user to invite other invitees to the event (e.g., system users, conference rooms, audio/visual equipment, etc.).
- a system user schedules an event.
- the system user may then retrieve a form which serves as a template for creating an electronic mail message (e-mail).
- the e-mail is composed in cooperation with the scheduling application and therefore identifies information concerning the event (e.g., date, time, location, etc.).
- the system user addresses the e-mail to the invitees using electronic mail addresses stored in a user directory.
- the user directory may include additional information (e.g., user role, profile, etc.).
- the e-mail may be provided with a view inquiring whether the invitee accepts, declines, etc. If an invitee accepts, the system will automatically schedule the event in the invitee's calendar.
- the system user may also input additional information (e.g., textual information, attachments, etc.).
- One advantage of the server 14 of the present invention as compared with other Web servers is that it exploits the Web to handle the activity that is driven by the information that is posted on the Web site.
- Two core services of the invention that make this possible are messaging and workflow.
- the server supports major industry messaging protocols and Application Programmer's Interfaces (APIs).
- the invention provides a backbone messaging platform with robust message transfer agents (MTAs) for SMTP, X.400, cc:Mail, and Notes Mail.
- Messaging services support e-mail clients using industry standards, including Post Office Protocol v3 (POP3) and Internet Mail Access Protocol v4 (IMAP4).
- POP3 Post Office Protocol v3
- IMAP4 Internet Mail Access Protocol v4
- the invention also supports other broadly deployed protocols, including Vendor Independent Mail (VIM), and Messaging API (MAPI).
- VIP Vendor Independent Mail
- MEMI Messaging API
- the invention also includes group calendaring and scheduling functionality, and will support standard calendar and schedule protocols as they emerge.
- the combination of messaging with calendaring and scheduling functionality provides developers with the tools to create Web applications incorporating workflow.
- Business processes that have time-sensitive actions and tasks associated with multiple users can be rapidly enabled.
- a Web application can intelligently route messages and forms to users based on a variety of business relevant conditions (for example, user, schedule, time, priority).
- a Web application can be designed to examine a group of users' calendars, determine the optimal schedule to ensure business processes are completed, and notify each user of impending work.
- Company A can take advantage of this messaging and workflow functionality to enable a sophisticated set of processes for managing customer issues. Issue status requests may be routed to the appropriate Company A service representative based on a combination of parameters including the inquirer's company, his or her service level agreement, and the priority of the inquiry.
- the invention can efficiently handle non-routine occurrences such as re-routing messages destined for absent service representatives by examining their schedules. Also, issue status requests that exceed a specific time threshold can automatically trigger escalation to managers via e-mail or pager.
- Workflow is a programmed application that performs one or more tasks according to a pre-defined process (e.g., using agents or macros). Workflow operates to automate, for example, administrator and end-user tasks upon the occurrence of a predetermined event (e.g., a browser request for a particular document, modifying a particular document, etc.). For example, a system user may create an expense report for use by a company. Before the expense report may be used, however, it must be reviewed by a manager. Therefore, a process may be programmed into the server 14 in which all created expense reports are electronically mailed to a manager for review. Workflow may be applied to any document. For example, if a purchase order is created, the order may require from an accounting department.
- a pre-defined process e.g., using agents or macros.
- Workflow operates to automate, for example, administrator and end-user tasks upon the occurrence of a predetermined event (e.g., a browser request for a particular document, modifying a particular
- a process may be programmed into the server 14 to automatically mail the purchase order to personnel in the accounting department for approval.
- Other types of workflow may also be achieved, for example, transmitting an electronic mail message to a system user notifying the user that a document has been accessed, informing a manager that action is required on a particular document (e.g., a request for approval), etc.
- system 10 may also comprise a workflow module 38 .
- Workflow module 38 distributes, routes and tracks documents according to a predefined process. For example, workflow module 38 may route documents to specific system users in a predetermined order. If a document must be reviewed by specific system users, workflow module 38 routes the document to the system users according to a routing process. If a system user does not act on the document before a predetermined time, workflow engine 38 may notify the system user that action is required, forward the document to another system user, or perform another action identified in the routing process.
- Additional features of the invention include quick and easy development and deployment of documents by providing point and click extended HTML design for forms, tables, user interface controls, image maps, links and summary views, for example.
- the system also provides URL interface access to database servers, such as Lotus Notes®, for example.
- the system acts on background agents for workflow monitoring and provides templates and design replication for application update and delivery.
- 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.
- IDE visual integrated development environment
- a system user may create an employment application form.
- the form comprises various fields requiring system user input.
- another form having similar fields e.g., work history form
- 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 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 performed from a web browser due to the present invention.
- 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, programmatic access to these robust services, instead of resorting to limited interfaces between a scripting language and a set of services found in separate products and/or servers.
- Notes development metaphor lends itself well to the types of business applications deployed on the Internet or on an intranet.
- a Notes designer client employs a set of intuitive and flexible application design elements (for example, forms, fields and views) that have great synergy with the page and link paradigms of the Web.
- 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 and delivered by the invention to the user for viewing in his or her Web browser.
- a Human Resources intranet application might include the ability to look up personnel information by first name, last name, department, manager, hire date, job level, etc.
- a sales management application might include the ability to sort all pages by customer, sales region, sales person, or revenue. If users request to see the information sorted a different way (for example, to sort all pages by social security number), all the developer has to do is create a view based on that field. All the links between all the pages are preserved.
- templates serve as a rich baseline of functionality for customized applications.
- the invention includes predefined sets of templates for the most common types of Web applications: discussion forums, document libraries, project management, and review and approval applications. These templates include all of the logic and formatting required for a working application, and can be deployed with no changes. Developers can also add new fields and logic to these templates. These templates also extend basic application development capabilities to power users as well.
- IDE Another advantage of the Notes IDE is its ability to reuse application objects from other applications. Forms (or parts of forms) from one application can be reused in new applications. For example, a registration form used to collect leads over the Internet can also be used for an intranet training course application. Whereas the Internet registration form might ask for e-mail address, telephone and fax number, the training class registration form might ask for cost center information. Both forms could use the same template, and the same validation and routing logic. Furthermore, if a change is made to the original template, it is automatically inherited by all the other forms that are based on it. For example, if an employee number changes from four digits to five digits, it might require that the validation logic on the template be changed. Any other forms based on that template will automatically include the new logic as well, saving developers significant time and effort.
- Collaboration sites handle the activity that occurs among people and the information that they handle. Typical collaborative activities include discussions and brainstorming, review and approval cycles, human resource employee reviews and candidate interview processes.
- the creation of most content is a collaborative process: creating a press release, white paper, or even a job posting normally involves more than one person.
- Providing customer service after a sale has been made is also a collaborative process that involves the customer and at least one other person inside a company. That is, collaboration is an integral activity that surrounds content and commerce. There is very little, if any, Web technology in place to effectively support collaboration.
- One embodiment of the invention relates to a Web application server, its basic architecture and the integral services that lend themselves to the rapid development and deployment of collaborative applications that support content and commerce.
- server 14 may further comprise various modules as depicted in FIG. 2.
- HTTP server 30 may further comprise a mail application module 34 and a scheduling and calendaring application module 36 .
- Interface module 32 may further comprise a workflow module 38 , command cache 42 and a security module 40 .
- FIG. 2 The additional components shown in FIG. 2 enable various capabilities to be provided to enhance the advantages of the system. Each of these components and examples of the added capabilities is described below.
- the invention workflow goes beyond the publishing of customer information to allow true customer-to-business interaction in which a specific business process is supported.
- the advanced customer support system may be used to: initiate an inquiry, process the inquiry, assign the inquiry, notify the appropriate customer representative, and monitor the status of the inquiry.
- Benefits of the invention range from minimizing the time and cost required to develop and deploy interactive Web applications, to actually achieving company goals that were once virtually impossible without the widespread use of the Internet.
- the most effective Web applications extend throughout a company's supply chain, from suppliers and business partners all the way to customers.
- the present invention lets users extend applications across their entire supply chain through the use of replication and workflow.
- Cost and Development Resources are a Factor.
- Company A a bank
- Company B a consulting firm
- ACS advanced customer support
- the system allows customers to have access to issue submission and tracking information, check imaging applications, customer-support knowledge bases, and other application functionality through a Web client.
- the system includes built-in workflow capabilities that manage the assignment and notification of key personnel of company A, and automate messaging, faxing, and paging. Customer issue status and service level reporting information is accessed via the Internet.
- FIG. 3 illustrates a HTML object 50 a in accordance with one embodiment of the invention.
- System 10 permits a representation of non-HTML objects 18 a - 18 n to be embedded within HTML objects 50 a - 50 n .
- a system user may retrieve HTML object 50 a .
- the system user may request non-HTML object 18 a to be displayed within HTML object 50 a .
- System 10 retrieves non-HTML object 18 a .
- Non-HTML object 18 a is translated to a HTML representation 50 n of non-HTML object 18 a .
- System 10 uses HTML representation 50 n to embed HTML representation 50 n in HTML object 50 a .
- HTML object 50 a shows HTML object 50 a with non-HTML objects (and other objects) embedded therein (e.g., pull-down menus 72 , a tool bar 74 , a URL identifier 76 , a form 78 , navigators 80 , links 66 , attachments 82 and fields 62 ).
- HTML object 50 a may be saved as another object which includes embedded non-HTML object 18 a.
- HTML representation 50 n comprises a table tag and HTML formatting tags.
- HTML tags are codes used in a HTML object that determine the layout of a HTML object. Views may comprise links to other views. For example, an object may contain a graphical representation of a view. The representation provides a link to the view which is retrieved when a user “clicks” on the representation.
- HTTP server module 30 HTTP server module communicates the request to URL interface 46 of interface module 32 .
- URL interface 46 converts the request into a format supported by non-HTML server module 24 .
- Non-HTML server module 24 locates and retrieves the view requested and transmits the view to interface module 32 .
- HTML translator 44 translates the view into HTML and passes the translated view to HTTP server module 30 .
- HTTP server module 30 communicates the view requested to browser 28 for presenting to the system user. This process may be repeated for each additional view s requested by the system user.
- Navigators may also be embedded within HTML objects 50 a - 50 n . Navigators assist system users in moving through documents. Navigators may be graphical representations or text that identify other portions of a document, other documents, etc. For example, a non-HTML object is requested by a system user. The non-HTML document may comprise a navigator. Module 30 translates the non-HTML object and navigator into HTML object 50 a.
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 communicates the translated object to the web browser over a network. The web browser then presents the translated object to the system user. The system also provides documents with a unique identifier. Once a unique identifier is assigned to a document, the system refers to the document by the unique identifier.
Description
- This application claims priority based on U.S. Provisional Patent Application Serial No. 60/050,153, entitled “Web Server Application” filed Jun. 19, 1997. This application is also related to co-pending U.S. Patent Applications entitled, “Web Server Enabling Browser Access to HTML and Non-HTML Documents,” Attorney Docket No. 52817.000033, filed herewith, “Web Server With Direct Mail Capability,” Attorney Docket No. 52817.000034, filed herewith, “Web Server With Automated Workflow,” Attorney Docket No. 52817.000035, filed herewith, “Web Server Providing Role-Based Multi-level Security,” Attorney Docket No. 52817.000036, filed herewith, “Web Server With Ability To Process URL With Action Commands,” Attorney Docket No. 52817.000057, filed herewith, “Web Server With Integrated Scheduling and Calendaring,” Attorney Docket No. 52817.000058, filed herewith, “Web Server Providing HTML Pages Embedded With Non-HTML Views,” Attorney Docket No. 52817.000059, filed herewith, and “Web Server Enabling Attachment of HTML and Non-HTML Files To Web Pages,” Attorney Docket No. 52817.000060, filed herewith.
- The invention relates to a web server that employs unique identification of linked objects.
- Web browsers such as Netscape Navigator and Microsoft Internet Explorer are well known. Web browsers are software residing on a client (e.g., a personal computer). Via the browser, the client can communicate with a web server to enable access to and viewing of Hypertext Markup Language (HTML) 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 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) 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 document and returning it to the browser. The browser receives the HTML document, interprets the HTML codes, translates them into a web page, and displays the web page. In this way, web browsers enable access to the vast number of HTML documents via the World Wide Web, the Internet or intranets. HTML generally is well known. A primary purpose of HTML is to describe how to format the text (and 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 HTM or HTML extension. Linking is a powerful feature of HTML. One drawback with HTML links is that links are created by coding a page with HTML 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 HTML and the time required to write HTML code a create a page and any desired links. Editing an HTML page or a link typically 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 a “file not found” message will appear when a user clicks on the link.
- One limitation of web browsers and web servers is that they were designed primarily to access HTML documents. Browsers typically cannot cause a web server to retrieve and return non-HTML documents. This inhibits a user from accessing non-HTML documents, objects or databases from a web browser. Non-HTML objects, for example, may include non-HTML documents, stored views for documents in a database, identification files stored in a user directory and many other types of objects. Views provide a convenient way to index a plurality of documents. Identification files may comprise information about a system user (e.g., electronic mail address, role, profile, etc.).
- A common problem with HTML linked pages is that if the name or location of a page changes, the link to it must be re-coded. Otherwise an attempt to link to that page will return an error message, such as “Page Not Found.” Another drawback is that if a user creates an index of pages, with a link to each page, to add a new page the user must modify the HTML code.
- Other drawbacks exist.
- One object of the invention is to overcome these and other drawbacks present 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-HTML documents and return the requested documents to the web browser.
- Another object of the invention is to provide a system that enables linked documents to have a unique identifier, with the link referring to the identifier to avoid errors if a page is renamed or moved.
- Another object of the invention is to provide a system that enables automatic link updating when new documents or links are created within a system.
- According to one embodiment of the invention, the system 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 functionality (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 HTML objects. 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 browser for display.
- According to another aspect of the invention, the system provides a unique identifier to documents within the system. After the system assigns a unique identifier, the system refers to the document by the unique identifier This provides several advantages, for example, link management. If a link is referred to by filename or location, and the filename or location is changed, the system will be unable to locate the object. Because the system uses a unique identifier which does not change for a given document, the links are maintained.
- 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 with one embodiment of the invention.
- FIG. 3 is a view of a display in accordance with one embodiment of the invention.
- 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 50 a-50 n (e.g., HTML documents) and non-HTMLobjects 18 a-18 n using aweb browser 28 residing on aterminal 26. Preferably,web browser 28 supports Internet and Web protocols (e.g., HyperText Transfer Protocol (HTTP) and TCP/IP). The system may further comprise aclient 12 to enable a non-browser client access tonon-HTML server module 24 to retrievenon-HTML objects 18 a-18 n fromnon-HTML database 16. - A
server 14 preferably comprises aHTTP server module 30,interface module 32 andnon-HTML server module 24. As further illustrated in FIG. 1, the server side ofsystem 10 may comprise anon-HTML database 16 in communication withserver 14. Preferably,non-HTML database 16 stores one or morenon-HTML objects 18 a-18 n, each at least some of which having one or more non-HTML fields 62 a-62 n, and auser directory 20.User directory 20 includes one or more user objects 22 a-22 n. User objects 22 a-22 n may include information about a user (e.g., electronic mail address, role, profile, etc.).Terminal 26 andserver 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 toserver 14 using HTTP (or other protocol).Server 14 receives the request via HTTPserver module 30 and passes object location information tointerface module 32 viaURL interface 46.URL interface 46 transmits that information tonon-HTML server module 24. Non-HTMLserver module 24 retrieves the requested object and passes it to interfacemodule 32. AHTML translator portion 44 ofinterface module 32 translates the non-HTML object to a HTML representation of the requested object and the HTML representation is returned tobrowser 28 viaHTTP server module 30. -
System 10 also enablesbrowser 28 to access HTML objects 50 a-50 n usingHTTP 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 abrowser 28 to request both HTML objects 50 a-50 n andnon-HTML objects 18 a-18 n. Additional advantages derive from this capability. For example, one significant advantage is that the invention exposes powerful resources available innon-HTML databases 16 to aweb browser 28 according to one embodiment of the invention. - Preferably, the invention comprises a Lotus Notes server. Advantageously, even with this embodiment a standard browser-based client may be used. As detailed below, Lotus Notes provides the non-HTML server module24 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 developers can take advantage of an architecture that integrates 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. 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-HTML objects (e.g., user objects 22 a-22 n) via anon-HTML server module 24. Through communication with thenon-HTML server module 24,browser 28 is provided with additional functionality (i.e., functions supported by non-HTML server module). For example, non-HTML server module may comprise a security module. Becausebrowser 28 retrieves non-HTML objects usingnon-HTML server module 24, the security module controls access to the non-HTML objects based on predetermined criteria. Therefore, this function is exposed to browsers. - For example,
system 10 retrievesnon-HTML objects 18 a-18 n vianon-HTML server module 24. By communicating withnon-HTML server module 24,system 10permits web browser 28 to utilize functions ofnon-HTML server module 24. For example, a system user may accessnon-HTML objects 18 from non-HTML database 16 (e.g., a Lotus Notes database). When non-HTML object 18 a is retrieved usingnon-HTML server module 24, functions associated withnon-HTML object 18 a become available to the system user. For example,non-HTML object 18 a may comprise an agent which transmits a message or facsimile notifying another system user that non-HTML object 18 a has been accessed. The invention exposes this and other functions provided bynon-HTML server modules 24 tobrowsers 28. - The system may use a bidirectional replication process to ensure that all system users are accessing the most recent versions of HTML objects50 a-50 n. The replication process used is efficient because it is selective, can be scheduled, and 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 networking costs are minimized. With field level replication, only those fields within HTML objects that are new or have been changed on either side of the replication process need to be replicated. With these sophisticated replication capabilities as a part of the infrastructure, developers can focus on creating Web applications which enable business processes 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.
- During replication, directory changes are also replicated, because the directory is simply another database in the invention, with the same structure and properties as a Web page library. Therefore, for example, discussion forums can be replicated, because discussions are simply another instance of a database.
- As described above, links in HTML and non-HTML systems are well known. A HTML system may comprise a
HTML database 48 comprising HTML objects 50 a-50 n. HTML objects 50 a-50 n are stored using a user assigned filename. The system retrieves HTML objects 50 a-50 n based on the filename. Anindex 64 identifies HTML objects 50 a-50 n inHTML database 48 and provides links 66 a-66 n to each HTML object 50 a-50 n. HTML objects 50 a-50 n may comprise links 66 a-66 n to other HTML objects 50 a-50 n. - A non-HTML database16 (e.g., a Lotus Notes database), however, assigns a unique identifier to
non-HTML objects 18 a-18 n and indexes and retrieves non-HTML objects based on the unique identifier. When a file is created, for example, in a Notes database, a system user designates a filename. In addition to the filename, the system assigns a unique identifier tonon-HTML objects 18 a-18 n and automatically indexesnon-HTML objects 18 a-18 n in anindex 64. This technique improves link management. For example, if a user requestsnon-HTML object 18 a by filename, the system uses the unique identifier to retrievenon-HTML object 18 a. This reduces the likelihood of receiving a error message indicating, for example, “File Not Found” produced by prior systems if a filename has changed. Prior systems retrieve files by filename and thus may be unable to locate anon-HTML object 18 a because a system user has input a previous filename. By assigning a unique identifier to non-HTML objects 50 a-50 n, the system reduces the occurrence of such errors. The invention enables browser users access to functionality such as unique identification by permitting browser users access to non-HTML server modules. Once a browser accesses a non-HTML server module, many functions provided by the server module are exposed to the browser because the non-HTML server module communicates with the browser as if the browser is a non-HTML client. - Another advantage with unique identifiers is link updating. A non-HTML index records which
non-HTML objects 18 a-18 n refer to the other non-HTML objects innon-HTML database 16. For example, a user creates a new document or edits an existingnon-HTML object 18 a and provides a link tonon-HTML object 18 n. The system identifiesnon-HTML object 18 n with the unique identifier and automatically updates the index to reflect thatnon-HTML object 18 a refers tonon-HTML object 18 n using a link. The invention exposes this and other functions provided bynon-HTML server modules 24 tobrowsers 28. - In addition to identifying non-HTML actions within a URL,
system 10 also permits attaching non-HTML objects to HTML objects. For example, a user may attachnon-HTML object 18 n to HTML object 50 a. Attaching files includes storing the attaching object (i.e., HTML object 50 a) with the attachment (i.e. non-HTMLobject 18 a). Additionally, a link is provided from HTML object 50 a tonon-HTML object 18 a. The link is provided withinHTML object 50 n. The link identifies the location of the attachment stored withHTML object 50 n. HTML objects may also be attached to non-HTML objects using the above process. - In addition to the above features,
system 10 also provides other functions. For example,system 10 provides integratedmail application module 34 and scheduling andcalendaring application module 36.System 10 usesweb browser 28 to permit reading, creating, editing, etc. of electronic mail messages and calendaring and scheduling of events. The calendaring andscheduling application module 36 permits the system user to invite other invitees to the event (e.g., system users, conference rooms, audio/visual equipment, etc.). For example, using the calendaring and scheduling feature, a system user schedules an event. The system user may then retrieve a form which serves as a template for creating an electronic mail message (e-mail). The e-mail is composed in cooperation with the scheduling application and therefore identifies information concerning the event (e.g., date, time, location, etc.). The system user addresses the e-mail to the invitees using electronic mail addresses stored in a user directory. The user directory may include additional information (e.g., user role, profile, etc.). The e-mail may be provided with a view inquiring whether the invitee accepts, declines, etc. If an invitee accepts, the system will automatically schedule the event in the invitee's calendar. The system user may also input additional information (e.g., textual information, attachments, etc.). - The messaging, calendaring and scheduling function are performed directly through the web browser. A separate window or application does not need to be opened. Prior browser-based systems require separate mail, schedule and calendar applications to be opened in a separate “windows.”
- One advantage of the
server 14 of the present invention as compared with other Web servers is that it exploits the Web to handle the activity that is driven by the information that is posted on the Web site. Two core services of the invention that make this possible are messaging and workflow. - The server supports major industry messaging protocols and Application Programmer's Interfaces (APIs). The invention provides a backbone messaging platform with robust message transfer agents (MTAs) for SMTP, X.400, cc:Mail, and Notes Mail. Messaging services support e-mail clients using industry standards, including Post Office Protocol v3 (POP3) and Internet Mail Access Protocol v4 (IMAP4). The invention also supports other broadly deployed protocols, including Vendor Independent Mail (VIM), and Messaging API (MAPI).
- The invention also includes group calendaring and scheduling functionality, and will support standard calendar and schedule protocols as they emerge.
- The combination of messaging with calendaring and scheduling functionality provides developers with the tools to create Web applications incorporating workflow. Business processes that have time-sensitive actions and tasks associated with multiple users can be rapidly enabled. For example, a Web application can intelligently route messages and forms to users based on a variety of business relevant conditions (for example, user, schedule, time, priority). Also, a Web application can be designed to examine a group of users' calendars, determine the optimal schedule to ensure business processes are completed, and notify each user of impending work.
- Company A can take advantage of this messaging and workflow functionality to enable a sophisticated set of processes for managing customer issues. Issue status requests may be routed to the appropriate Company A service representative based on a combination of parameters including the inquirer's company, his or her service level agreement, and the priority of the inquiry. The invention can efficiently handle non-routine occurrences such as re-routing messages destined for absent service representatives by examining their schedules. Also, issue status requests that exceed a specific time threshold can automatically trigger escalation to managers via e-mail or pager.
- Workflow is a programmed application that performs one or more tasks according to a pre-defined process (e.g., using agents or macros). Workflow operates to automate, for example, administrator and end-user tasks upon the occurrence of a predetermined event (e.g., a browser request for a particular document, modifying a particular document, etc.). For example, a system user may create an expense report for use by a company. Before the expense report may be used, however, it must be reviewed by a manager. Therefore, a process may be programmed into the
server 14 in which all created expense reports are electronically mailed to a manager for review. Workflow may be applied to any document. For example, if a purchase order is created, the order may require from an accounting department. A process may be programmed into theserver 14 to automatically mail the purchase order to personnel in the accounting department for approval. Other types of workflow may also be achieved, for example, transmitting an electronic mail message to a system user notifying the user that a document has been accessed, informing a manager that action is required on a particular document (e.g., a request for approval), etc. - As shown in FIG. 2,
system 10 may also comprise aworkflow module 38.Workflow module 38 distributes, routes and tracks documents according to a predefined process. For example,workflow module 38 may route documents to specific system users in a predetermined order. If a document must be reviewed by specific system users,workflow module 38 routes the document to the system users according to a routing process. If a system user does not act on the document before a predetermined time,workflow engine 38 may notify the system user that action is required, forward the document to another system user, or perform another action identified in the routing process. - Additional features of the invention include quick and easy development and deployment of documents by providing point and click extended HTML design for forms, tables, user interface controls, image maps, links and summary views, for example. The system also provides URL interface access to database servers, such as Lotus Notes®, for example. The system acts on background agents for workflow monitoring and provides templates and design replication for application update and delivery.
- 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 application 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 employment 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 performed 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, programmatic access to these robust services, instead of resorting 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 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 and delivered by the invention to the user for viewing 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 development 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 Resources intranet application might include the ability to look up personnel information by first name, last name, department, manager, hire date, job level, etc. A sales management application might include the ability to sort all pages by customer, sales region, sales person, or revenue. If users request to see the information sorted a different way (for example, to sort all pages by social security number), all the developer has to do is create a view based on that field. All the links between all the pages are preserved.
- Second, a single change in a form is inherited by all pages that use that form. Because pages in the database are based on a form, any changes to that form are automatically reflected on each page. This makes it easy to make global changes to some or all of the pages in the database. For example, if a company changes the logo it uses for one of its products, the developer simply deletes the old logo from all the forms that use it and replaces it with the new logo. Even if hundreds or thousands of pages use that graphic image, only one change has to be made. This is a vast improvement over Web authoring systems that treat each page independently, so that a single change has to be repeated on every page.
- Third, forms are used to create templates, which serve as a rich baseline of functionality for customized applications. The invention includes predefined sets of templates for the most common types of Web applications: discussion forums, document libraries, project management, and review and approval applications. These templates include all of the logic and formatting required for a working application, and can be deployed with no changes. Developers can also add new fields and logic to these templates. These templates also extend basic application development capabilities to power users as well.
- Another advantage of the Notes IDE is its ability to reuse application objects from other applications. Forms (or parts of forms) from one application can be reused in new applications. For example, a registration form used to collect leads over the Internet can also be used for an intranet training course application. Whereas the Internet registration form might ask for e-mail address, telephone and fax number, the training class registration form might ask for cost center information. Both forms could use the same template, and the same validation and routing logic. Furthermore, if a change is made to the original template, it is automatically inherited by all the other forms that are based on it. For example, if an employee number changes from four digits to five digits, it might require that the validation logic on the template be changed. Any other forms based on that template will automatically include the new logic as well, saving developers significant time and effort.
- Collaboration sites handle the activity that occurs among people and the information that they handle. Typical collaborative activities include discussions and brainstorming, review and approval cycles, human resource employee reviews and candidate interview processes. The creation of most content is a collaborative process: creating a press release, white paper, or even a job posting normally involves more than one person. Providing customer service after a sale has been made is also a collaborative process that involves the customer and at least one other person inside a company. That is, collaboration is an integral activity that surrounds content and commerce. There is very little, if any, Web technology in place to effectively support collaboration.
- One embodiment of the invention relates to a Web application server, its basic architecture and the integral services that lend themselves to the rapid development and deployment of collaborative applications that support content and commerce.
- To realize these and other capabilities,
server 14 may further comprise various modules as depicted in FIG. 2. For example,HTTP server 30 may further comprise amail application module 34 and a scheduling andcalendaring application module 36.Interface module 32 may further comprise aworkflow module 38,command cache 42 and asecurity module 40. - The additional components shown in FIG. 2 enable various capabilities to be provided to enhance the advantages of the system. Each of these components and examples of the added capabilities is described below.
- Unlike basic Web-based customer service applications, the invention workflow goes beyond the publishing of customer information to allow true customer-to-business interaction in which a specific business process is supported. For example, the advanced customer support system may be used to: initiate an inquiry, process the inquiry, assign the inquiry, notify the appropriate customer representative, and monitor the status of the inquiry.
- Benefits of the invention range from minimizing the time and cost required to develop and deploy interactive Web applications, to actually achieving company goals that were once virtually impossible without the widespread use of the Internet.
- There are several requirements of companies both large and small, regarding Web applications:
- Interactivity.
- Much more than static HTML document delivery is required to enable interactive applications, especially in a supply chain management setting. The present invention provides the template forms and development tools to rapidly develop interactive applications.
- Inter-Enterprise Connectivity.
- The most effective Web applications extend throughout a company's supply chain, from suppliers and business partners all the way to customers. The present invention lets users extend applications across their entire supply chain through the use of replication and workflow.
- Multiple Layers of Security.
- Many of the Web applications that companies want to develop require multiple layers of security, from basic server access to customized/personalized pages, to page and field-level read/write authority. The present invention's access control security satisfies this requirement and enables companies to establish roles-based access to content.
- Cost and Development Resources are a Factor.
- Whereas initial Web site costs for publishing are typically small regardless of the product used, cost has become an important consideration when developing actual Web applications. The present invention helps minimize cost.
- An example will be used for convenient reference.
- Company A (a bank) desires to streamline customer service and improve existing business processes with their major commercial customers. They partnered with Company B (a consulting firm) to create an advanced customer support (“ACS”) system to address those requirements. The system allows customers to have access to issue submission and tracking information, check imaging applications, customer-support knowledge bases, and other application functionality through a Web client. The system includes built-in workflow capabilities that manage the assignment and notification of key personnel of company A, and automate messaging, faxing, and paging. Customer issue status and service level reporting information is accessed via the Internet.
- FIG. 3 illustrates a
HTML object 50 a in accordance with one embodiment of the invention.System 10 permits a representation ofnon-HTML objects 18 a-18 n to be embedded within HTML objects 50 a-50 n. For example, a system user may retrieveHTML object 50 a. The system user may requestnon-HTML object 18 a to be displayed withinHTML object 50 a.System 10 retrievesnon-HTML object 18 a.Non-HTML object 18 a is translated to aHTML representation 50 n ofnon-HTML object 18 a.System 10 usesHTML representation 50 n to embedHTML representation 50 n in HTML object 50 a. FIG. 3 shows HTML object 50 a with non-HTML objects (and other objects) embedded therein (e.g., pull-downmenus 72, atool bar 74, a URL identifier 76, aform 78, navigators 80, links 66, attachments 82 and fields 62). Afternon-HTML object 18 a is embedded withinHTML object 50 a, HTML object 50 a may be saved as another object which includes embeddednon-HTML object 18 a. - Preferably,
HTML representation 50 n comprises a table tag and HTML formatting tags. HTML tags are codes used in a HTML object that determine the layout of a HTML object. Views may comprise links to other views. For example, an object may contain a graphical representation of a view. The representation provides a link to the view which is retrieved when a user “clicks” on the representation. When a system user “clicks” on the representation, a URL request for that view is transmitted toHTTP server module 30. HTTP server module communicates the request toURL interface 46 ofinterface module 32.URL interface 46 converts the request into a format supported bynon-HTML server module 24.Non-HTML server module 24 locates and retrieves the view requested and transmits the view tointerface module 32.HTML translator 44 translates the view into HTML and passes the translated view toHTTP server module 30.HTTP server module 30 communicates the view requested tobrowser 28 for presenting to the system user. This process may be repeated for each additional view s requested by the system user. - Navigators may also be embedded within HTML objects50 a-50 n. Navigators assist system users in moving through documents. Navigators may be graphical representations or text that identify other portions of a document, other documents, etc. For example, a non-HTML object is requested by a system user. The non-HTML document may comprise a navigator.
Module 30 translates the non-HTML object and navigator intoHTML object 50 a. - Other embodiments and uses of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. For example, the invention may apply to other client side applications which are based on URLs (e.g., news readers). The invention may also translate documents to formats other than HTML. The specification and examples should be considered exemplary only. The scope of the invention is only limited by the claims appended hereto.
Claims (12)
1. A client/server system enabling browser access to non-HTML objects with automatically assigned unique identifiers comprising:
a web server;
at least one non-HTML database associated with the web server for storing at least non-HTML objects, said objects having a name;
a client comprising a browser for accessing the non-HTML objects by submitting requests to the server;
wherein said non-HTML objects are assigned a unique identifier by said server, said unique identifier being something other than the name of the object;
wherein the web server, upon receipt of a request from the browser, retrieves the requested object by its unique identifier.
2. The system of claim 1 wherein the object may be renamed, but the unique identifier does not change.
3. The system of claim 1 wherein the at least one databases comprises an index of objects within the database, said index being based on the unique identifiers.
4. The system of claim 3 wherein the index is automatically updated when an object is added, created or modified.
5. The system of claim 1 wherein a non-HTML object may be linked to another object by referencing the unique identifier rather than the object name.
6. A client/server system enabling browser access to non-HTML objects with automatically assigned unique identifiers comprising:
web server means;
at least one non-HTML database means associated with the web server means for storing at least non-HTML objects, said objects having a name;
client means comprising a browser for accessing the non-HTML objects by submitting requests to the web server means server;
wherein said non-HTML objects are assigned a unique identifier by said web server means, said unique identifier being something other than the name of the object;
wherein the web server means, upon receipt of a request from the browser, retrieves the requested object by its unique identifier.
7. The system of claim 6 wherein the object may be renamed, but the unique identifier does not change.
8. The system of claim 6 wherein the at least one database means comprises an index of objects within the database, said index being based on the unique identifiers.
9. The system of claim 8 wherein the index is automatically updated when an object is added, created or modified.
10. The system of claim 1 wherein a non-HTML object may be linked to another object by referencing the unique identifier rather than the object name.
11. In a client/server system comprising a web server, at least one non-HTML database associated with the web server for storing at least non-HTML objects, said objects having a name, and a client comprising a browser for accessing the non-HTML objects by submitting requests to the web server, a method enabling browser access to non-HTML objects with automatically assigned unique identifiers comprising the steps of:
said web server assigning a unique identifier to said object, said unique identifier being something other than the name of the object;
said web server, upon receipt of a request from the browser, retrieving the requested object by its unique identifier.
12. A computer useable medium having computer readable program code embodied therein for assigning a unique identifier to non-HTML objects, the computer readable program code in a computer useable medium comprising:
computer readable program code for causing a computer to assign a unique identifier to one or more non-HTML objects when the one or more non-HTML objects are created;
computer readable program code for causing a computer to store one or more non-HTML in one or more databases;
computer readable program code for enabling a request to be received for the one or more non-HTML objects from a browser; and
computer readable program code for causing the web server to retrieve the one or more requested non-HTML objects based on the unique identifier.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/100,118 US6449640B1 (en) | 1997-06-19 | 1998-06-19 | Web server with unique identification of linked objects |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US5015397P | 1997-06-19 | 1997-06-19 | |
US09/100,118 US6449640B1 (en) | 1997-06-19 | 1998-06-19 | Web server with unique identification of linked objects |
Publications (2)
Publication Number | Publication Date |
---|---|
US20020103883A1 true US20020103883A1 (en) | 2002-08-01 |
US6449640B1 US6449640B1 (en) | 2002-09-10 |
Family
ID=26727943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/100,118 Expired - Fee Related US6449640B1 (en) | 1997-06-19 | 1998-06-19 | Web server with unique identification of linked objects |
Country Status (1)
Country | Link |
---|---|
US (1) | US6449640B1 (en) |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020161793A1 (en) * | 2001-04-25 | 2002-10-31 | Telefonaktiebolaget L M Ericsson | Retrieving information from web pages |
US20030005057A1 (en) * | 2001-06-29 | 2003-01-02 | Lablanc Michael Robert | Computerized systems and methods for acquiring and disseminating process management information |
US6665634B2 (en) * | 2001-12-21 | 2003-12-16 | Hewlett-Packard Development Company, L.P. | Test system for testing dynamic information returned by a web server |
US20040073618A1 (en) * | 2001-04-09 | 2004-04-15 | Gakken Co., Ltd. | Information providing support system and method, and program and server for use in the system and method |
US20040205200A1 (en) * | 2003-04-08 | 2004-10-14 | Nikhil Kothari | Integrating online community and program development environments |
US20070079131A1 (en) * | 1996-12-20 | 2007-04-05 | Wistaria Trading, Inc. | Linear predictive coding implementation of digital watermarks |
US20070288572A1 (en) * | 2006-04-04 | 2007-12-13 | Anthony Busa | Management and allocation of services using remote computer connections |
US20080172637A1 (en) * | 2007-01-15 | 2008-07-17 | International Business Machines Corporation | Method and system for using image globalization in dynamic text generation and manipulation |
US7647502B2 (en) | 1996-07-02 | 2010-01-12 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digital data |
US7660700B2 (en) | 2000-09-07 | 2010-02-09 | Blue Spike, Inc. | Method and device for monitoring and analyzing signals |
US7664264B2 (en) | 1999-03-24 | 2010-02-16 | Blue Spike, Inc. | Utilizing data reduction in steganographic and cryptographic systems |
US7664263B2 (en) | 1998-03-24 | 2010-02-16 | Moskowitz Scott A | Method for combining transfer functions with predetermined key creation |
US7738659B2 (en) | 1998-04-02 | 2010-06-15 | Moskowitz Scott A | Multiple transform utilization and application for secure digital watermarking |
US7761712B2 (en) | 1995-06-07 | 2010-07-20 | Wistaria Trading, Inc. | Steganographic method and device |
US7770017B2 (en) | 1996-07-02 | 2010-08-03 | Wistaria Trading, Inc. | Method and system for digital watermarking |
US7813506B2 (en) | 1999-12-07 | 2010-10-12 | Blue Spike, Inc | System and methods for permitting open access to data objects and for securing data within the data objects |
US7844074B2 (en) | 1996-07-02 | 2010-11-30 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
US7987371B2 (en) | 1996-07-02 | 2011-07-26 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digital data |
US8104079B2 (en) | 2002-04-17 | 2012-01-24 | Moskowitz Scott A | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
US8150798B2 (en) | 2006-10-10 | 2012-04-03 | Wells Fargo Bank, N.A. | Method and system for automated coordination and organization of electronic communications in enterprises |
US8171561B2 (en) | 1999-08-04 | 2012-05-01 | Blue Spike, Inc. | Secure personal content server |
US8271795B2 (en) | 2000-09-20 | 2012-09-18 | Blue Spike, Inc. | Security based on subliminal and supraliminal channels for data objects |
US8538011B2 (en) | 1999-12-07 | 2013-09-17 | Blue Spike, Inc. | Systems, methods and devices for trusted transactions |
US9165290B2 (en) * | 2011-11-02 | 2015-10-20 | Microsoft Technology Licensing, Llc | Sharing notes in online meetings |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7299240B1 (en) | 1992-04-10 | 2007-11-20 | Intellisync Corporation | Method for translating computer data from one record structure to another |
US5684990A (en) * | 1995-01-11 | 1997-11-04 | Puma Technology, Inc. | Synchronization of disparate databases |
US6212529B1 (en) * | 1996-11-13 | 2001-04-03 | Puma Technology, Inc. | Synchronization of databases using filters |
US5943676A (en) | 1996-11-13 | 1999-08-24 | Puma Technology, Inc. | Synchronization of recurring records in incompatible databases |
US6044381A (en) * | 1997-09-11 | 2000-03-28 | Puma Technology, Inc. | Using distributed history files in synchronizing databases |
AUPQ094599A0 (en) * | 1999-06-11 | 1999-07-08 | Honeywell Limited | Method and system for remotely monitoring time-variant data |
JP4460693B2 (en) * | 1999-10-26 | 2010-05-12 | 富士通株式会社 | Network system with information retrieval function |
US7246146B1 (en) * | 1999-11-18 | 2007-07-17 | International Business Machines Corporation | Legacy host system hot link modeling and navigation |
US6826725B1 (en) * | 1999-12-16 | 2004-11-30 | Microsoft Corporation | Techniques for invoking system commands from within a mark-up language document |
US6748425B1 (en) * | 2000-01-04 | 2004-06-08 | International Business Machines Corporation | System and method for browser creation and maintenance of forms |
US20040073617A1 (en) | 2000-06-19 | 2004-04-15 | Milliken Walter Clark | Hash-based systems and methods for detecting and preventing transmission of unwanted e-mail |
US7409356B1 (en) * | 2000-06-21 | 2008-08-05 | Applied Systems Intelligence, Inc. | Method and system for intelligent supply chain collaboration |
US6782414B1 (en) * | 2000-08-03 | 2004-08-24 | International Business Machines Corporation | Method and system for determination of delivery status of email sent to multiple recipients through multiple protocols |
US6799197B1 (en) * | 2000-08-29 | 2004-09-28 | Networks Associates Technology, Inc. | Secure method and system for using a public network or email to administer to software on a plurality of client computers |
TW552502B (en) * | 2000-11-21 | 2003-09-11 | Matsushita Electric Ind Co Ltd | File management method and content recording/playback apparatus |
US7299502B2 (en) * | 2001-02-14 | 2007-11-20 | Hewlett-Packard Development Company, L.P. | System and method for providing customized secure access to shared documents |
US7359920B1 (en) * | 2001-04-18 | 2008-04-15 | Intellisync Corporation | Communication protocol for synchronization of personal information management databases |
US20030078975A1 (en) * | 2001-10-09 | 2003-04-24 | Norman Ken Ouchi | File based workflow system and methods |
US7412495B2 (en) * | 2002-04-26 | 2008-08-12 | Sun Microsystems, Inc. | Method, system, and article of manufacture for a server side application |
KR100484181B1 (en) * | 2002-12-02 | 2005-04-20 | 삼성전자주식회사 | Apparatus and method for authoring multimedia document |
US7424476B2 (en) * | 2004-04-16 | 2008-09-09 | Aol Llc | Categorized web browsing history |
US20070023507A1 (en) * | 2005-07-26 | 2007-02-01 | Microsoft Corporation | Contact data structure and management |
CN100483408C (en) * | 2005-07-29 | 2009-04-29 | 国际商业机器公司 | Method and apparatus for establishing link structure between multiple documents |
US8301589B2 (en) * | 2006-05-10 | 2012-10-30 | Sybase, Inc. | System and method for assignment of unique identifiers in a distributed environment |
US8560604B2 (en) | 2009-10-08 | 2013-10-15 | Hola Networks Ltd. | System and method for providing faster and more efficient data communication |
US8935410B2 (en) * | 2012-08-17 | 2015-01-13 | International Business Machines Corporation | Cobrowsing macros |
US9241044B2 (en) | 2013-08-28 | 2016-01-19 | Hola Networks, Ltd. | System and method for improving internet communication by using intermediate nodes |
US9239737B2 (en) | 2013-11-15 | 2016-01-19 | Sap Se | Concise resource addressing |
US11057446B2 (en) | 2015-05-14 | 2021-07-06 | Bright Data Ltd. | System and method for streaming content from multiple servers |
EP3767494B1 (en) | 2017-08-28 | 2023-02-15 | Bright Data Ltd. | Method for improving content fetching by selecting tunnel devices |
LT3780547T (en) | 2019-02-25 | 2023-03-10 | Bright Data Ltd. | System and method for url fetching retry mechanism |
EP4027618A1 (en) | 2019-04-02 | 2022-07-13 | Bright Data Ltd. | Managing a non-direct url fetching service |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5299304A (en) | 1991-04-16 | 1994-03-29 | International Business Machines Corporation | Method and apparatus for identifying multiple stage document format transformations |
US5513323A (en) | 1991-06-14 | 1996-04-30 | International Business Machines Corporation | Method and apparatus for multistage document format transformation in a data processing system |
US5627764A (en) | 1991-10-04 | 1997-05-06 | Banyan Systems, Inc. | Automatic electronic messaging system with feedback and work flow administration |
US5675507A (en) | 1995-04-28 | 1997-10-07 | Bobo, Ii; Charles R. | Message storage and delivery system |
US5530852A (en) | 1994-12-20 | 1996-06-25 | Sun Microsystems, Inc. | Method for extracting profiles and topics from a first file written in a first markup language and generating files in different markup languages containing the profiles and topics for use in accessing data described by the profiles and topics |
US5842177A (en) | 1994-12-29 | 1998-11-24 | International Business Machines Corporation | Management of calendar events in a data processing system |
US5790793A (en) * | 1995-04-04 | 1998-08-04 | Higley; Thomas | Method and system to create, transmit, receive and process information, including an address to further information |
US5745360A (en) * | 1995-08-14 | 1998-04-28 | International Business Machines Corp. | Dynamic hypertext link converter system and process |
US5774670A (en) | 1995-10-06 | 1998-06-30 | Netscape Communications Corporation | Persistent client state in a hypertext transfer protocol based client-server system |
JPH103421A (en) * | 1995-11-20 | 1998-01-06 | Matsushita Electric Ind Co Ltd | Virtual file management system |
US5956486A (en) | 1995-12-20 | 1999-09-21 | Hickman; Paul Lawrence | Method and apparatus for monitoring multiple electronic mail systems |
US5930474A (en) | 1996-01-31 | 1999-07-27 | Z Land Llc | Internet organizer for accessing geographically and topically based information |
US5862325A (en) | 1996-02-29 | 1999-01-19 | Intermind Corporation | Computer-based communication system and method using metadata defining a control structure |
US5819302A (en) | 1996-04-29 | 1998-10-06 | Sun Microsystems, Inc. | Method and apparatus for automatic generaton of documents with single-layered backgrounds from documents with multi-layered backgrounds |
US5867822A (en) | 1996-06-26 | 1999-02-02 | Sun Microsystems, Inc. | Method and apparatus for management of electronic calendars throughout an enterprise and management of events in a distributed system |
US5956483A (en) | 1996-06-28 | 1999-09-21 | Microsoft Corporation | System and method for making function calls from a web browser to a local application |
US5819263A (en) | 1996-07-19 | 1998-10-06 | American Express Financial Corporation | Financial planning system incorporating relationship and group management |
US5944791A (en) | 1996-10-04 | 1999-08-31 | Contigo Software Llc | Collaborative web browser |
US6006228A (en) | 1996-12-11 | 1999-12-21 | Ncr Corporation | Assigning security levels to particular documents on a document by document basis in a database |
US5991877A (en) | 1997-04-03 | 1999-11-23 | Lockheed Martin Corporation | Object-oriented trusted application framework |
US5987422A (en) | 1997-05-29 | 1999-11-16 | Oracle Corporation | Method for executing a procedure that requires input from a role |
US6301621B1 (en) | 1997-06-19 | 2001-10-09 | International Business Machines Corporation | Web server with direct mail capability |
US6192415B1 (en) | 1997-06-19 | 2001-02-20 | International Business Machines Corporation | Web server with ability to process URL requests for non-markup language objects and perform actions on the objects using executable instructions contained in the URL |
US5848410A (en) | 1997-10-08 | 1998-12-08 | Hewlett Packard Company | System and method for selective and continuous index generation |
US6064977A (en) | 1998-06-19 | 2000-05-16 | International Business Machine Corporation | Web server with integrated scheduling and calendaring |
-
1998
- 1998-06-19 US US09/100,118 patent/US6449640B1/en not_active Expired - Fee Related
Cited By (87)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8549305B2 (en) | 1995-06-07 | 2013-10-01 | Wistaria Trading, Inc. | Steganographic method and device |
US8238553B2 (en) | 1995-06-07 | 2012-08-07 | Wistaria Trading, Inc | Steganographic method and device |
US8046841B2 (en) | 1995-06-07 | 2011-10-25 | Wistaria Trading, Inc. | Steganographic method and device |
US7870393B2 (en) | 1995-06-07 | 2011-01-11 | Wistaria Trading, Inc. | Steganographic method and device |
US7761712B2 (en) | 1995-06-07 | 2010-07-20 | Wistaria Trading, Inc. | Steganographic method and device |
US8467525B2 (en) | 1995-06-07 | 2013-06-18 | Wistaria Trading, Inc. | Steganographic method and device |
US9021602B2 (en) | 1996-01-17 | 2015-04-28 | Scott A. Moskowitz | Data protection method and device |
US8265276B2 (en) | 1996-01-17 | 2012-09-11 | Moskowitz Scott A | Method for combining transfer functions and predetermined key creation |
US9104842B2 (en) | 1996-01-17 | 2015-08-11 | Scott A. Moskowitz | Data protection method and device |
US9191205B2 (en) | 1996-01-17 | 2015-11-17 | Wistaria Trading Ltd | Multiple transform utilization and application for secure digital watermarking |
US9191206B2 (en) | 1996-01-17 | 2015-11-17 | Wistaria Trading Ltd | Multiple transform utilization and application for secure digital watermarking |
US9171136B2 (en) | 1996-01-17 | 2015-10-27 | Wistaria Trading Ltd | Data protection method and device |
US8930719B2 (en) | 1996-01-17 | 2015-01-06 | Scott A. Moskowitz | Data protection method and device |
US7830915B2 (en) | 1996-07-02 | 2010-11-09 | Wistaria Trading, Inc. | Methods and systems for managing and exchanging digital information packages with bandwidth securitization instruments |
US8175330B2 (en) | 1996-07-02 | 2012-05-08 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
US8774216B2 (en) | 1996-07-02 | 2014-07-08 | Wistaria Trading, Inc. | Exchange mechanisms for digital information packages with bandwidth securitization, multichannel digital watermarks, and key management |
US7647502B2 (en) | 1996-07-02 | 2010-01-12 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digital data |
US8307213B2 (en) | 1996-07-02 | 2012-11-06 | Wistaria Trading, Inc. | Method and system for digital watermarking |
US8161286B2 (en) | 1996-07-02 | 2012-04-17 | Wistaria Trading, Inc. | Method and system for digital watermarking |
US7770017B2 (en) | 1996-07-02 | 2010-08-03 | Wistaria Trading, Inc. | Method and system for digital watermarking |
US7779261B2 (en) | 1996-07-02 | 2010-08-17 | Wistaria Trading, Inc. | Method and system for digital watermarking |
US8281140B2 (en) | 1996-07-02 | 2012-10-02 | Wistaria Trading, Inc | Optimization methods for the insertion, protection, and detection of digital watermarks in digital data |
US9258116B2 (en) | 1996-07-02 | 2016-02-09 | Wistaria Trading Ltd | System and methods for permitting open access to data objects and for securing data within the data objects |
US7664958B2 (en) | 1996-07-02 | 2010-02-16 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection and detection of digital watermarks in digital data |
US7647503B2 (en) | 1996-07-02 | 2010-01-12 | Wistaria Trading, Inc. | Optimization methods for the insertion, projection, and detection of digital watermarks in digital data |
US7822197B2 (en) | 1996-07-02 | 2010-10-26 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digital data |
US7877609B2 (en) | 1996-07-02 | 2011-01-25 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digital data |
US7930545B2 (en) | 1996-07-02 | 2011-04-19 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digital data |
US9070151B2 (en) | 1996-07-02 | 2015-06-30 | Blue Spike, Inc. | Systems, methods and devices for trusted transactions |
US7953981B2 (en) | 1996-07-02 | 2011-05-31 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digital data |
US7987371B2 (en) | 1996-07-02 | 2011-07-26 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digital data |
US7991188B2 (en) | 1996-07-02 | 2011-08-02 | Wisteria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digital data |
US9830600B2 (en) | 1996-07-02 | 2017-11-28 | Wistaria Trading Ltd | Systems, methods and devices for trusted transactions |
US9843445B2 (en) | 1996-07-02 | 2017-12-12 | Wistaria Trading Ltd | System and methods for permitting open access to data objects and for securing data within the data objects |
US8121343B2 (en) | 1996-07-02 | 2012-02-21 | Wistaria Trading, Inc | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
US7844074B2 (en) | 1996-07-02 | 2010-11-30 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
US8225099B2 (en) | 1996-12-20 | 2012-07-17 | Wistaria Trading, Inc. | Linear predictive coding implementation of digital watermarks |
US20070079131A1 (en) * | 1996-12-20 | 2007-04-05 | Wistaria Trading, Inc. | Linear predictive coding implementation of digital watermarks |
US7730317B2 (en) | 1996-12-20 | 2010-06-01 | Wistaria Trading, Inc. | Linear predictive coding implementation of digital watermarks |
US7664263B2 (en) | 1998-03-24 | 2010-02-16 | Moskowitz Scott A | Method for combining transfer functions with predetermined key creation |
US7738659B2 (en) | 1998-04-02 | 2010-06-15 | Moskowitz Scott A | Multiple transform utilization and application for secure digital watermarking |
US8542831B2 (en) | 1998-04-02 | 2013-09-24 | Scott A. Moskowitz | Multiple transform utilization and application for secure digital watermarking |
US8160249B2 (en) | 1999-03-24 | 2012-04-17 | Blue Spike, Inc. | Utilizing data reduction in steganographic and cryptographic system |
US8526611B2 (en) | 1999-03-24 | 2013-09-03 | Blue Spike, Inc. | Utilizing data reduction in steganographic and cryptographic systems |
US8781121B2 (en) | 1999-03-24 | 2014-07-15 | Blue Spike, Inc. | Utilizing data reduction in steganographic and cryptographic systems |
US7664264B2 (en) | 1999-03-24 | 2010-02-16 | Blue Spike, Inc. | Utilizing data reduction in steganographic and cryptographic systems |
US9270859B2 (en) | 1999-03-24 | 2016-02-23 | Wistaria Trading Ltd | Utilizing data reduction in steganographic and cryptographic systems |
US10461930B2 (en) | 1999-03-24 | 2019-10-29 | Wistaria Trading Ltd | Utilizing data reduction in steganographic and cryptographic systems |
US8789201B2 (en) | 1999-08-04 | 2014-07-22 | Blue Spike, Inc. | Secure personal content server |
US8739295B2 (en) | 1999-08-04 | 2014-05-27 | Blue Spike, Inc. | Secure personal content server |
US9934408B2 (en) | 1999-08-04 | 2018-04-03 | Wistaria Trading Ltd | Secure personal content server |
US9710669B2 (en) | 1999-08-04 | 2017-07-18 | Wistaria Trading Ltd | Secure personal content server |
US8171561B2 (en) | 1999-08-04 | 2012-05-01 | Blue Spike, Inc. | Secure personal content server |
US10110379B2 (en) | 1999-12-07 | 2018-10-23 | Wistaria Trading Ltd | System and methods for permitting open access to data objects and for securing data within the data objects |
US8538011B2 (en) | 1999-12-07 | 2013-09-17 | Blue Spike, Inc. | Systems, methods and devices for trusted transactions |
US10644884B2 (en) | 1999-12-07 | 2020-05-05 | Wistaria Trading Ltd | System and methods for permitting open access to data objects and for securing data within the data objects |
US8798268B2 (en) | 1999-12-07 | 2014-08-05 | Blue Spike, Inc. | System and methods for permitting open access to data objects and for securing data within the data objects |
US7813506B2 (en) | 1999-12-07 | 2010-10-12 | Blue Spike, Inc | System and methods for permitting open access to data objects and for securing data within the data objects |
US8767962B2 (en) | 1999-12-07 | 2014-07-01 | Blue Spike, Inc. | System and methods for permitting open access to data objects and for securing data within the data objects |
US8265278B2 (en) | 1999-12-07 | 2012-09-11 | Blue Spike, Inc. | System and methods for permitting open access to data objects and for securing data within the data objects |
US8214175B2 (en) | 2000-09-07 | 2012-07-03 | Blue Spike, Inc. | Method and device for monitoring and analyzing signals |
US8712728B2 (en) | 2000-09-07 | 2014-04-29 | Blue Spike Llc | Method and device for monitoring and analyzing signals |
US7660700B2 (en) | 2000-09-07 | 2010-02-09 | Blue Spike, Inc. | Method and device for monitoring and analyzing signals |
US7949494B2 (en) | 2000-09-07 | 2011-05-24 | Blue Spike, Inc. | Method and device for monitoring and analyzing signals |
US8612765B2 (en) | 2000-09-20 | 2013-12-17 | Blue Spike, Llc | Security based on subliminal and supraliminal channels for data objects |
US8271795B2 (en) | 2000-09-20 | 2012-09-18 | Blue Spike, Inc. | Security based on subliminal and supraliminal channels for data objects |
US7299262B2 (en) * | 2001-04-09 | 2007-11-20 | Gakken Co., Ltd. | Information providing support system and method, and program and server for use in the system and method |
US20040073618A1 (en) * | 2001-04-09 | 2004-04-15 | Gakken Co., Ltd. | Information providing support system and method, and program and server for use in the system and method |
US20020161793A1 (en) * | 2001-04-25 | 2002-10-31 | Telefonaktiebolaget L M Ericsson | Retrieving information from web pages |
US20030005057A1 (en) * | 2001-06-29 | 2003-01-02 | Lablanc Michael Robert | Computerized systems and methods for acquiring and disseminating process management information |
US6665634B2 (en) * | 2001-12-21 | 2003-12-16 | Hewlett-Packard Development Company, L.P. | Test system for testing dynamic information returned by a web server |
USRE44307E1 (en) | 2002-04-17 | 2013-06-18 | Scott Moskowitz | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
USRE44222E1 (en) | 2002-04-17 | 2013-05-14 | Scott Moskowitz | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
US8473746B2 (en) | 2002-04-17 | 2013-06-25 | Scott A. Moskowitz | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
US10735437B2 (en) | 2002-04-17 | 2020-08-04 | Wistaria Trading Ltd | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
US8224705B2 (en) | 2002-04-17 | 2012-07-17 | Moskowitz Scott A | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
US8104079B2 (en) | 2002-04-17 | 2012-01-24 | Moskowitz Scott A | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
US8706570B2 (en) | 2002-04-17 | 2014-04-22 | Scott A. Moskowitz | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
US9639717B2 (en) | 2002-04-17 | 2017-05-02 | Wistaria Trading Ltd | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
US7395312B2 (en) * | 2003-04-08 | 2008-07-01 | Microsoft Corporation | Integrating online community and program development environments |
US20040205200A1 (en) * | 2003-04-08 | 2004-10-14 | Nikhil Kothari | Integrating online community and program development environments |
US20070288572A1 (en) * | 2006-04-04 | 2007-12-13 | Anthony Busa | Management and allocation of services using remote computer connections |
US8738777B2 (en) * | 2006-04-04 | 2014-05-27 | Busa Strategic Partners, Llc | Management and allocation of services using remote computer connections |
US9208461B2 (en) | 2006-04-04 | 2015-12-08 | Busa Strategic Partners, Llc | Management and allocation of services using remote computer connections |
US8150798B2 (en) | 2006-10-10 | 2012-04-03 | Wells Fargo Bank, N.A. | Method and system for automated coordination and organization of electronic communications in enterprises |
US20080172637A1 (en) * | 2007-01-15 | 2008-07-17 | International Business Machines Corporation | Method and system for using image globalization in dynamic text generation and manipulation |
US9165290B2 (en) * | 2011-11-02 | 2015-10-20 | Microsoft Technology Licensing, Llc | Sharing notes in online meetings |
Also Published As
Publication number | Publication date |
---|---|
US6449640B1 (en) | 2002-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6449640B1 (en) | Web server with unique identification of linked objects | |
US6301621B1 (en) | Web server with direct mail capability | |
US7117271B2 (en) | Web server enabling direct scheduling and calendaring capability | |
US6064977A (en) | Web server with integrated scheduling and calendaring | |
US6434607B1 (en) | Web server providing role-based multi-level security | |
US7082475B2 (en) | Web server with automated workflow | |
US6678738B2 (en) | Web server providing html pages embedded with non-HTML views | |
US7099847B2 (en) | Apparatus, methods and articles of manufacture for construction and maintaining a calendaring interface | |
US6401131B1 (en) | Web server enabling attachment of HTML and non-HTML files to web pages | |
US6192415B1 (en) | Web server with ability to process URL requests for non-markup language objects and perform actions on the objects using executable instructions contained in the URL | |
US7222291B2 (en) | Method and system for importing HTML forms | |
US6697821B2 (en) | Content development management system and method | |
US20060259524A1 (en) | Systems and methods for document project management, conversion, and filing | |
US7493591B2 (en) | Methods and systems for animating a workflow and a project plan | |
US6505219B1 (en) | Process management system wherein process descriptions provide indices to document histories | |
US8887036B2 (en) | Automatic linking of documents | |
US7634732B1 (en) | Persona menu | |
US7770102B1 (en) | Method and system for semantically labeling strings and providing actions based on semantically labeled strings | |
US20050257158A1 (en) | Method of and system for collaboration web-based publishing | |
US20040230892A1 (en) | Systems and methods for document project management | |
CA2476595A1 (en) | System and method for enterprise-wide business process management | |
CA2365491A1 (en) | Story workflow management system and method | |
US20040117280A1 (en) | Financial document automation system and method | |
McIntosh | Content Management Using the Rational Unified Process® | |
US20080222167A1 (en) | Submission system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HAVERSTOCK, PAUL;ESTRADA, MIGUEL;ESTRADA, JULIO;REEL/FRAME:011029/0365;SIGNING DATES FROM 20000726 TO 20000727 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
REMI | Maintenance fee reminder mailed | ||
LAPS | Lapse for failure to pay maintenance fees | ||
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20140910 |