EP1012737A1 - World wide web bar code access system - Google PatentsWorld wide web bar code access system
- Publication number
- EP1012737A1 EP1012737A1 EP97931276A EP97931276A EP1012737A1 EP 1012737 A1 EP1012737 A1 EP 1012737A1 EP 97931276 A EP97931276 A EP 97931276A EP 97931276 A EP97931276 A EP 97931276A EP 1012737 A1 EP1012737 A1 EP 1012737A1
- European Patent Office
- Prior art keywords
- bar code
- 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.)
- 239000000463 materials Substances 0 abstract claims description 28
- 230000004044 response Effects 0 claims description 56
- 238000000034 methods Methods 0 claims description 16
- 238000003860 storage Methods 0 claims description 14
- 230000000694 effects Effects 0 claims description 11
- 238000004891 communication Methods 0 claims description 10
- 238000004590 computer program Methods 0 abstract description 9
- 230000014616 translation Effects 0 claims description 5
- 230000000875 corresponding Effects 0 claims description 4
- 239000000047 products Substances 0 claims description 3
- 230000006399 behavior Effects 0 description 2
- 239000000872 buffers Substances 0 description 2
- 239000000284 extracts Substances 0 description 2
- 230000015654 memory Effects 0 description 2
- 230000004048 modification Effects 0 description 2
- 238000006011 modification Methods 0 description 2
- 210000001072 Colon Anatomy 0 description 1
- 241001521739 Colon Species 0 description 1
- 238000004458 analytical methods Methods 0 description 1
- 230000003935 attention Effects 0 description 1
- 238000005516 engineering processes Methods 0 description 1
- 230000036545 exercise Effects 0 description 1
- 239000002360 explosive Substances 0 description 1
- 230000035611 feeding Effects 0 description 1
- 230000014509 gene expression Effects 0 description 1
- 230000012010 growth Effects 0 description 1
- 230000002452 interceptive Effects 0 description 1
- 239000010410 layers Substances 0 description 1
- 239000000203 mixtures Substances 0 description 1
- 230000003287 optical Effects 0 description 1
- 230000003068 static Effects 0 description 1
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L29/00—Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00
- H04L29/12—Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00 characterised by the data terminal
- H04L29/12009—Arrangements for addressing and naming in data networks
- H04L29/12594—Arrangements for managing names, e.g. use of aliases or nicknames
- G06—COMPUTING; CALCULATING; 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]
- G06—COMPUTING; CALCULATING; 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]
- G06F16/9554—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL] by using bar codes
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B5/00—Electrically-operated educational appliances
- G09B5/06—Electrically-operated educational appliances with both visual and audible presentation of the material to be studied
- G09B5/062—Combinations of audio and printed presentations, e.g. magnetically striped cards, talking books, magnetic tapes with printed texts thereon
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements or network protocols for addressing or naming
- H04L61/30—Arrangements for managing names, e.g. use of aliases or nicknames
- H04L61/301—Name conversion
WORLD WIDE WEB BAR CODE ACCESS SYSTEM
This application claims the benefit of U.S. Provisional Application No. 60/016, 101 , filed
July 21 , 1996, entitled "Analog Digital Bridge Software".
Field of the Invention
This invention relates generally to user interfaces for accessing information in distributed computer systems and more specifically to using a bar code scanner as a user interface for accessing information over the World Wide Web (WWW) of the Internet.
Background of the Invention
For hundreds of years the printed page has served as a standard means of communication between people. However, static printed materials inherently have a fundamental disadvantage in that in order to update the information contained therein, the materials must be reprinted. Often, printed materials such as books, newspapers, magazines, catalogs, and encyclopedias are out of date very soon after they are printed. Updating these materials frequently is an expensive and time-consuming endeavor. Additionally, it is difficult to link information contained in printed materials to other information in a dynamic and efficient manner.
These disadvantages can be overcome by accessing and using digitally stored information. Information stored digitally in a computer system can be frequently and economically updated to reflect changes in that information. The information can be easily linked to other relevant information. Such information must be readily and easily available to many users in order to be valuable as a tool for widespread dissemination of knowledge. With the explosive growth in usage of the Internet, the dissemination of up-to-date information to large numbers of people is now commonplace.
The Internet is a global network of connected computers. The World Wide Web (WWW) is the universe of accessible information available on a portion of the Internet. The WWW has a body of software, a set of protocols and a set of defined conventions for getting information over the WWW. The WWW uses hypertext and multimedia techniques to make it easy for users to gain access to this information. Typically, a user operates browser software on a personal computer (PC) to access information stored at a specified location on the WWW. One protocol by which the browser software specifies what information to obtain and display to the user and how to retrieve the information is known as the HyperText Transfer Protocol (HTTP). HTTP is used by a computer system known as a WWW server and a browser executing on a client computer system to communicate over the computer network. The information may consist of text, graphics, sound, motion pictures, and other data. This information is digitally stored in one or more files on the WWW server, which is connected to the Internet. A specific location of a file on the Internet is designated by a Uniform Resource Locator
(URL). A URL is a string expression that can represent any resource on the Internet or on a local Transmission Control Protocol/Internet Protocol (TCP/IP) computer system. TCP/IP is a networking protocol that provides communication across interconnected networks, and between computers with diverse hardware architectures and various operating systems. The resource pointed to by the URL may be any type of file, including text files, executable files, image files, etc. The most common form of a URL is an HTTP address. Hence, if a user knows the URL of a piece of information available on the WWW or a local system, the user can type in the URL on the keyboard of the user's PC (in response to a prompt from the browser software) to obtain the desired information. The user inputs the URL to the browser software to select the location of the desired information to be fetched over the WWW and displayed on the PC's display.
Many URLs are long and complex character strings, which usually include special characters and delimiters such as colons and slashes. Often the user is confused and frustrated when typing in long URLs into the browser because any errors in keying in the URL result in incorrect HTTP addresses. The browser then reports the error without displaying the desired information and the user must again attempt to enter in the correct URL. This effort is especially problematic for younger children, the elderly, or anyone who has little experience operating computers. However, even experienced users often make mistakes typing in long URLs, thereby wasting valuable time.
An interface for entering URLs which is easy to use and largely free of user errors would help promote the widespread use of the WWW as a source of information to the general public, rather than let the WWW continue to be a tool only for those who are computer-literate. Such an interface should combine the advantages of printed materials and computer networks to provide easy access to a wide range of computerized, up-to-date information. This interface would allow printed materials to contains links to dynamic information stored electronically. The present invention creates a system which capitalizes on the widespread use of printed material (and its attendant low cost) with the dynamics of information storage and retrieval of the Internet and other distributed computer systems.
Summary of the Invention An embodiment of the present invention includes a bar code scanner that is coupled to a computer program executing on a computer system that has access to the Internet. When a user desires to obtain additional information available on the WWW relating to information printed, for example, in a newspaper, book, magazine, catalog or other printed material, the user swipes the bar code scanner over a bar code printed on the printed material. The bar code contains a unique identifier called a resource link code. The resource link code scanned by the bar code scanner is received by the computer program and sent in a data packet over the Internet to a computer system called a resolution server. The resolution server translates the resource link code into a URL. The URL is then passed back to the computer program executing in the user's PC. The computer program passes the URL to a WWW browser program, which obtains the selected information over the WWW in the conventional manner. The communication details between the bar code scanner, the user's PC, and the resolution server are transparent to the user. The user merely scans the bar code and the selected information is fetched over the WWW is displayed on the user's PC display. Furthermore, the present invention allows WWW content providers to move content between servers in a way that is transparent to the user.
Additional advantages and novel features of the invention will be set forth in part in the description which follows, and will become apparent to those skilled in the art upon examination of the following or may be learned by practice of the invention.
According to one embodiment of the present invention, the foregoing and other advantages are attained by a system for obtaining a uniform resource locator addressing an information resource available on the World Wide Web (WWW) of the Internet. The system includes a bar code scanner for scanning a bar code printed on a printed material to produce bar code data. The system accepts the bar code data identifying an information resource on the WWW and translates it into a uniform resource locator addressing the information resource.
In another embodiment of the present invention, a method of accessing an information resource over the World Wide Web portion of the Internet includes the steps of scanning a bar code printed on a printed material to produce bar code data, the bar code identifying an information resource on the World Wide Web, translating the bar code data into a uniform resource locator of the information resource, and obtaining the information resource identified by the uniform resource locator.
In another embodiment of the present invention, a client/server system for accessing an information resource available on the WWW of the Internet includes a client system coupled to the Internet for scanning a bar code printed on a printed material to produce bar code data, the bar code identifying an information resource accessible over the Internet, for sending a command packet including the bar code data, and for receiving a response packet including a uniform resource locator of the information resource. The system includes a server system coupled to the Internet for receiving the command packet, for translating the bar code data of the command packet into the uniform resource locator, and for sending the response packet including the uniform resource locator to the client system, and a browser operating on the client system for accessing the information resource identified by the uniform resource locator. Still other advantages of the present invention will become readily apparent to those skilled in the art from the following detailed description, wherein is shown and described only the preferred embodiment of the invention, simply by way of illustration of the best mode contemplated for carrying out the invention. As will be realized, the invention is capable of other and different embodiments, and its several details are capable of modifications in various obvious respects, all without departing from the invention. Accordingly, the drawings and description are to be regarded as illustrative in nature, and not as restrictive.
Brief Description of the Drawings
FIG. 1 is a block diagram of one embodiment of the present invention.
FIG. 2 is a block diagram of an alternate embodiment of the server of the present invention. FIG. 3 is a flow chart of the steps to initialize the WEB WAND system.
FIG. 4 is a flow chart of the steps to initialize the WEB WAND application on the Client System.
FIG. 5 is a flow chart of the processing steps for the WEB WAND application on the Client System. FIG. 6 is a flow chart of the processing steps for the Resolution Server of FIG. 1.
FIG. 7 is a diagram of the message commands communicated in the command and response packets between WEB WAND and the Resolution Server.
Detailed Description of the Preferred Embodiment The present invention is a system and method that provides a simple, easy-to-use interface for accessing information on the World Wide Web (WWW) of the Internet.
FIG. 1 is a block diagram of one embodiment of the present invention. A Client System 10 executing on a computer system local to a user forwards all requests to a remote file Server System 12. The Server System 12 accepts the Client's request, performs its associated operation, and returns a response to the Client System 10. Client System 10 may comprise a user's personal computer (PC), an engineering workstation, a large mainframe computer, or any other computer system capable of supporting client functions. Client System 10 may also be an Internet Appliance. An Internet Appliance is a low cost machine specially designed for Internet browsing that is not necessarily based on standard PC technology, Intel or Motorola microprocessors, or the WINDOWS operating system. This device, also called an Internet Terminal, would have a minimum amount of random access memory (RAM) and flash memory, a processor, a monitor, a keyboard, and a mouse (not shown). The Server System 12 is typically a general purpose computer system specifically configured to provide server functions. In the preferred embodiment, the Client System 10 and the Server System 12 communicate via the Internet 14, using a protocol called the Web Wand
Resolution Protocol (WWRP). The WWRP is similar in design to the well-known Simple Mail Transfer Protocol (SMTP), but incorporates as different functionality and syntax. As discussed above, the Internet is a global network of connected computers which uses the Transmission Control Protocol/Internet Protocol (TCP/IP). SMTP is a TCP IP protocol that operates at layers 5 through 7 of the Open Systems Interconnection (OSI) model. SMTP is widely used to govern electronic mail transmissions and receptions on the Internet.
Client System 10 includes various application programs. World Wide Web (WWW) Browser software 16 executes on the Client computer system. WWW Browser software retrieves documents called information resources from servers on the World Wide Web to the Client for display to the user. It allows the user to "move" easily from one WWW site to another. Every time a user requests a display of a specific information resource such as a WWW "page" or file, WWW Browser 16 obtains a copy of the requested file from a storage location of a server on the WWW for the Client. WWW Browser uses HyperText Transfer Protocol (HTTP) as a protocol for communicating over the Internet 14 to one of a plurality of HTTP Servers 18. The Client's connection to the Internet may be via a local area network (LAN) or via a modem and a telephone line. WWW Browser program 16 is resident on the Client System and requests a file containing information resources from a selected HTTP Server 18 and the HTTP Server forwards the file to the WWW Browser program on the Client. The address of the file must conform to the specified HTTP syntax (for example,"http://www.somebody.com/public/files/hello.htmr'). Examples of well known browsers include NAVIGATOR, commercially available from
Netscape, and INTERNET EXPLORER, commercially available from Microsoft Corporation.
WEBWAND 20 is an application program executing on Client System 10 that communicates with Resolution Server 22 resident in Server System 12. WEBWAND accepts scanned bar code data over Line 24 from optical Scanner 26. Scanner 26 is operated by a user 25 to scan a bar code 27 appearing on a printed material 29 such as a newspaper, book, catalog, etc. The bar code 27 may be in the Universal Product Code (UPC) format or any other bar code format capable of being reliably scanned by Scanner 26. Multiple bar code formats are simultaneously supported by WEBWAND 20. The bar code 27 represents a unique identifier of an information resource available on the WWW. In the preferred embodiment, the Scanner is a KEY WAND brand scanner commercially available from Hewlett-Packard Corporation, although other bar code readers are also available and equally suitable.
Scanner 26 is attached to or in-line with the keyboard (not shown) of the Client System 10. The keyboard is typically attached to the Client System via a serial port. The Scanner sends keyboard scan codes (the data format used to represent key strokes) to the Client System, which presents it to WEBWAND 20 as American Standard Code for Information Interchange (ASCII) format data. The data is prepended with a special character to denote an input from Scanner 26.
In the preferred embodiment, the special character is Function Key 12 (F12) although other character codes could also be used.
Alternatively, Scanner 26 is attached directly to a standard serial port (not shown) of the Client System. Either method of attachment works equally well. There are two types of scanners that can be attached to a serial port, decoding and non-decoding. A decoding scanner converts the bar code data into ASCII data, which is then transmitted via the serial port. A non-decoding scanner sends a digital representation of the bar code according to light-to-dark state transitions. A special scanner driver computer program executed by the Client System is then required to convert those transitions into ASCII data. If a decoding scanner is used, WEBWAND 20 directly reads the ASCII data from the serial port. If a non-decoding scanner is used, the data is read from the scanner driver software. In either case, the data is presented to WEBWAND 20 in the form of ASCII data.
The user 25 may also type in the bar code number via the keyboard (not shown) of the Client System 10 if the bar code is disfigured or if the Scanner is not able to scan the bar code without errors occurring.
WEBWAND 20 formats the scanned bar code data received from Scanner 26 into a Resource Link Code (RLC) by stripping off any unnecessary header or trailer information, inserts the RLC into a command packet and sends the command packet through the Internet 14 to Resolution Server 22 over Lines 28 and 30. The command packet also contains a unique Identifier (ID) of the Client, which is obtained from a Client ID Data file 32 on Client 10. Client ID Data file 32 also contains information regarding user preferences, such as whether to look for RLC translations locally or over the Internet, a list of Resolution Servers to communicate with, and which Resolution Server from the list is to be contacted first when a translation is needed. There may be multiple Client ID Data files on Client 10, one for each user of the Client system. Resolution Server 22 receives the command packet, extracts the RLC and accesses
RLC/URL Database 34. RLC/URL Database 34 stores a mapping of a RLC to a URL. That is, given a RLC, a corresponding URL may be obtained from the RLC/URL Database. In the preferred embodiment, the RLC URL Database is structured as a hash table, although other data structures or database management systems, such as relational databases, may also be used. After the RLC to URL translation is made, the URL is inserted into a response packet. The response packet is sent from Resolution Server 22 through the Internet 14 over Lines 36 and 38 to WEBWAND 20 in Client 10. WEBWAND 20 decodes the response packet received from Resolution Server 22 and extracts the URL. The URL is then passed as an input to WWW Browser 16. WEBWAND transfers the URL to WWW Browser 16 using an inter-application communication standard such as Object Linking and Embedding (OLE) or Dynamic Data Exchange (DDE). WWW Browser 16 uses the URL to access the desired information resource on the WWW by contacting a HTTP Server 18 in the usual manner. Upon receipt of the information from the HTTP Server 18, WWW Browser 16 displays the information to the user. The operations performed by WEBWAND and the Resolution Server are transparent to the user.
The present invention also allows the Resolution Server to authenticate and monitor individual requests for RLC/URL translations. For example, if access to the WWW site specified by the desired URL is restricted due to membership requirements or content ratings, Resolution Server 22 queries User Database 40 to verify authorization and validate access. The user can subscribe as a member to a particular WWW site by using WWW Browser 16 to communicate with one or more HTTP Servers 42. HTTP Server 42 then updates the User Database 40 to add the user to the list of valid users for the selected WWW site. Access restrictions based on a site's content rating can also be easily accomplished. If each user of a Client has an individualized Client ID Data file 32 which is accessed when the user initializes the system, then a unique Client ID will be included in the command packets sent to the Resolution Server. For example, if the user is a child, then the record in the User Database 40 for this user reflects this fact and allows the Resolution Server to refuse to process requests to sites which are deemed to have objectionable content for children.
One skilled in the art can readily see that because WEBWAND 20 interactively communicates with Resolution Server 22 to translate RLCs into URLs, WWW access requests initiated by Scanner 26 allow Server 12 to specifically tailor the presentation of information to the user based on user preferences. The User Database 40 can be used to store user preferences for each user of Client 10. For instance, one user preference might be a selected language for presentation of information. In this case, if the user preference for User No. 1 of Client 10 is English, but the user preference for User No. 2 of Client 10 is Spanish, this difference is handled by Resolution Server 22 when translating the RLC into a URL. That is, given a particular RLC from WEBWAND 20, Resolution Server 22 will translate the RLC into one URL if the user's language preference is English, but another URL if the preference is Spanish. Resolution Server 22 knows which user is operating the Client based on the individual Client ID selected by each user during system initialization. Of course, user selection of a Client ID can be password- protected to provide security against one user logging on as another user. Other user preferences include geographic location, age, education level, hobbies and interests, and so on. Resolution Server 22 also collects and stores information relating to requests for RLC/URL translations in a database called the Activity Log 44. Demographic information and statistics concerning user activity from the Activity Log 44 can be used by publishers and other content providers for real-time monitoring of usage of particular WWW sites. This information can be used to manage the performance of the WWW sites. Other information about the user and his or her equipment can also be collected using the present invention. For example, the technical capability of the user's computer system can be monitored. Such features as bandwidth, speed of transmission, display capability, and browser environment capability (e.g., support for Java or Active X technologies) can be transmitted to the Resolution Server 22 along with the scanned data and stored for later analysis. Demonstrated user behavior can also be stored to help content providers or advertisers tailor the presentation of the data for maximum effect. Such factors as attention span, response to various advertising formats, and degree of interactive behavior to selected content can be received with the scanned data and stored in the Activity Log 44.
FIG. 2 is a block diagram of an alternate embodiment of the Server of the present invention. In this embodiment, Server System 12' includes functions interactively supporting publishers or other providers of information. The Bar Code Assignment and Management function 46 assigns and manages the Resource Link Code (RLC) to Uniform Resource Locator (URL) mapping. Bar Code Assignment and Management 46 creates a link between one or more URLs and a RLC according to available user preference criteria. It creates the entries in the RLC/URL Database mapping the RLC to one or more URLs. Bar Code Assignment and Management 46 is accessed by a publisher or content provider via HTTP Server 42 and a publisher's WWW Browser 45. The publisher requests a RLC to map to one or more of the publisher's WWW sites denoted by the URLs. The Bar Code Assignment and Management function enters the mapping in the RLC/URL Database 34 and returns a graphic representation of a bar code representing the RLC in a file such as an Encapsulated Postscript (.eps) or Tagged Image File Format (.tiff) file. The publisher then uses the graphic representation of the bar code in the publisher's printed materials. The publisher may also request that the URL have an associated expiration date after which the RLC/URL mapping will not be effective. The publisher requests the update of the RLC/URL Database 34 as required.
The Publisher Registration function 48 handles the registration of a publisher as a participant in the system. It accepts registration information such as company name, address, administrative contact, and the like. The publisher interacts with the Publisher Registration function 48 through the publisher's WWW Browser 45 via HTTP Server 42. Information regarding the publisher and the publisher's business is stored in User Database 40. The Publisher Authentication function 50 provides security for subsequent attempts by the publisher to change information regarding the publisher's registration in the User Database 40. Before a publisher can modify the User Database, an authentication procedure must be carried out to ensure that the publisher requesting the change has proper authority to do so. Reporting Module 52 receives requests from publishers via HTTP Server 42 to generate activity reports from the Activity Log 44. Reports are compiled and forwarded to the requesting publisher after the publisher has been authenticated as discussed above. With the above-described components, the present invention provides the infrastructure for publishers to disseminate printed materials with bar codes signifying WWW resources, monitor the activity resulting from those printed materials, dynamically update the RLC/URL linkage, and receive reports which the publishers can use as part of a decision support system to further their business goals.
FIG. 3 is a flow chart of the steps to initialize the WEBWAND system. During the startup or system initialization process of the Client System 10, a background task must be initiated to handle inputs for the WEBWAND system. After Start Step 100, WEBWAND 20 at Step 102 is launched as a Client application program as a background process or daemon that registers itself with the operating system of the Client to receive specific keyboard or serial port events (i.e., F12 or other special characters). Once this background task is executing, any specified keyboard or serial port event is reported by the operating system to this task so WEBWAND 20 can process the input data. System initialization processing related to WEBWAND ends at End step 104. FIG. 4 is a flow chart of the steps to initialize the WEBWAND 20 application on the
Client System 10. This initialization sequence is started as a result of the user selecting WEBWAND as an application program on the Client to run by double-clicking the Client's mouse on the WEBWAND program icon, or by any other means well known in the art for commencing execution of an application program. After Start Step 110, the WEBWAND program at Step 112 is registered to receive a specific keyboard or serial port event if it has not already been registered during the system initialization processing described in FIG. 3. Next, at Step 114, the Client ID Data file 32 is read by WEBWAND 20 to obtain the Client ID of the user currently using the program and the identifier of the Client for purposes of communication with the Server System 12. Other user preference information such as desired language, presentation format, and the like, may also be read from the Client ID Data file. At Step 116, the WEBWAND application program waits for input from the user. Application initialization processing ends at End Step 118.
FIG. 5 is a flow chart of the processing steps for the WEBWAND application on the Client System. After Start Step 150, the WEBWAND process 20 waits for user input from the Scanner 26 at Step 152. When the user swipes the Scanner across a bar code, the Scanner sends the scanned data through a specified serial port of the Client and the Client's operating system reports the event to WEBWAND 20. The data scanned may be included in the event notification or stored in a selected memory location by the Client's operating system for retrieval by the WEBWAND process. When a user input is received, WEBWAND processing continues with Step 154 by opening a communications channel with a selected Server System 12. Once a communications channel is open, the Client System 10 running WEBWAND is identified to the
Server System 12 at Step 156. Next, at Step 158 a command packet requesting translation of a Resource Location Code (RLC)(which includes the scanned user input data) to a URL is built. The command packet is then sent to an available server at Step 160. A response packet is received from the server at Step 162. The response packet contains either a URL or an error indicator. If an error occurs, the command packet is sent to the next available server until a valid URL address is received or all available servers fail to return valid data (Step 164). The communications channel is closed at Step 166. The URL received in the response packet is sent to the WWW Browser 16 at Step 168. If the WWW Browser is not currently active in the Client, the WWW Browser is activated as an application process. The WWW Browser uses the URL to obtain the desired information. After WEBWAND passes the URL to the WWW Browser, processing continues with Step 152, wherein WEBWAND waits for the next user input from the Scanner.
FIG. 6 is a flow chart of the processing steps for the Resolution Server 22 of FIG. 1. After Start Step 200, the Resolution Server starts a parent process to detect communication requests from clients on a specific input/output (I/O) port of Server 12 at Step 202. At Step 204, when the
Resolution Server receives a command packet from a client, the Resolution Server spawns a new process to handle the command packet, or assigns the command packet to a running, available process. At Step 206, this child process executing on the Resolution Server validates the Client ID received in the command packet. It ensures that the Client ID is valid by checking the User Database 40. If the Client ID is valid at Test Step 208, then Yes path 210 is followed to Step 212. The Resolution Server then searches the RLC/URL Database 34 for the RLC included in the command packet. If the RLC is found in the RLC/URL Database (Test Step 212), then Yes path 214 is taken to Step 216. At this step the URL corresponding to the RLC from the command packet is obtained from the RLC/URL Database. At Step 218 the URL is inserted into a response packet intended for the client who sent the command packet.
If the Client ID is not found to be valid at Test Step 208, then No path 220 is taken to Step 222. At Step 222 the URL of a client registration WWW site is returned in the response packet instead of the desired URL. Since the Client ID is not registered in the User Database 40 for the desired site, the user is directed to a registration site so the user can register the Client ID in a controlled manner. The User Database 40 is subsequently updated with the new client registration information.
If the RLC is not found in the RLC/URL Database at Test Step 212, then No path 224 is taken to Step 226. At this step an error indicator is inserted into the response packet. Processing in all cases continues at Step 228, wherein the response packet is sent to the WEBWAND application in the Client System. After the response packet is sent, processing in the Resolution Server continues with Step 204 and the next received command packet.
Communication between the Client System and the Server System in the present invention is accomplished according to a Web Wand Resolution Protocol (WWRP). The objective of the WWRP is to support the reliable and efficient translation of RLCs into URLs. The WWRP is independent of any particular transmission subsystem and requires only a reliable ordered data stream channel. An important feature of the WWRP is its capability to transfer lists of available servers to the Client System. This allows the Server System to provide updates to the services it provides in a manner similar to that of the Internet Domain Naming System.
The WWRP design is based on the following model of communication. After receiving bar code data from the Scanner, WEBWAND 20 (sender) on the Client System 10 establishes a two-way communications channel with a Resolution Server 22 (receiver) on a Server System
12. WWRP commands are generated by WEBWAND as command packets and sent to the Resolution Server. WWRP replies are sent as response packets from the Resolution Server to WEBWAND. Commands and responses are composed of characters from the ASCII character set. WWRP command packets and response packets have a fixed syntax. Response packets include a numeric status code. In the preferred embodiment, command packets and response packets are not case sensitive. Generally, a command or response may be in upper case, lower case, or any combination of upper and lower case. However, the case of RLCs and Client IDs must be preserved.
Initially, WEBWAND sends an OPEN command packet to open the communications channel (called a socket in the preferred embodiment) and to identify the sender of a request. If the Resolution Server can accept the request, it responds with a positive acknowledgment in an OPEN response packet. WEBWAND then sends a TRNS command packet identifying a RLC to translate. If the Resolution Server accepts this packet and successfully processes the RLC in the TRNS command packet, it responds with a URL as a positive acknowledgment in a TRNS response packet; otherwise it responds with a negative acknowledgment rejecting the RLC (but not the whole transaction).
WEBWAND 20 initiates all messages between WEBWAND and the Resolution Server. Resolution Server 22 always responds with exactly one response packet for each command packet it receives. WEBWAND does not send another command packet until it receives a response packet from the Resolution Server in response to a previous command packet. Hence, the dialogue between WEBWAND and the Resolution Server is purposely lock-step, one command packet/response packet pair processed at a time for a given communications channel (socket). However, the Client System may establish multiple socket connections. All packets have a single "message command" token that identifies the packet's intended function. WEBWAND sets up this token as the first portion of all packets. The Resolution Server inserts a numeric status completion code immediately preceding a response token. WEBWAND may optionally append a list of parameters following the "message command" token in the command packet sent to the Resolution Server. Similarly, the Resolution Server may append a list of parameters following the numeric status code in the response packet sent to WEBWAND. All packets end with an "end of message" token after zero or more parameters. In the preferred embodiment of the present invention, a parameter consists of a "parameter identifier tag" and a "parameter data" token. The parameter identifier tag is a string of four characters. The parameter data is either a signed decimal number or a quoted string. A quoted string may contain any 8-bit value. Printable bytes are sent as ASCII codes, while non-printable bytes are sent as two hexadecimal characters preceded by a backslash character (e.g., "\0C"). This allows the communications system components of WEBWAND and the Resolution Server to provide for the transfer of arbitrary data as quoted strings. There must be exactly two hexadecimal characters following the backslash. The communications system components include procedures to handle all encoding and decoding of packets, thereby hiding these details from higher level processing of WEBWAND and the Resolution Server. Both message commands and the parameter identifier tags are single tokens of four bytes each. The tokens are case insensitive and are separated by delimiters including spaces, tabs, carriage returns, line feeds, and new lines. The quoted strings may contain both upper and lower case letters as well as other characters and binary information. Hence, case is preserved within quoted strings. In the preferred embodiment, no single packet can exceed 1023 bytes in length. This includes all separator characters, double quotes, and the end of message sequence. No single quoted string can contain more than 51 1 bytes of data, exclusive of the beginning and the ending double quote characters. All numbers sent as parameters, including client ID numbers, must be within the limits imposed by a 32-bit signed number.
After establishing a socket connection, the socket may be kept open by both WEBWAND and the Resolution Server, or simultaneously closed at the end of a given packet. The message command in the packet determines whether the socket remains open or automatically closes. The socket may be opened, a single packet sent in each direction between WEBWAND and the Resolution Server, and then immediately closed. This enables the Resolution Server to unload unnecessarily open socket connections. FIG. 7 is a diagram of the message commands communicated in the command and response packets between WEBWAND and the Resolution Server. The message commands include Open Socket (OPEN) 300, Register User (REGU) 302, Servers (SVRS) 304, Translate (TRNS) 306, and Close Socket (CLOS) 308. The OPEN message 300 tells the Resolution Server to open a socket and leave it open for communication of subsequent commands. WEBWAND sends the Client ID to the Resolution Server and asks if the Client ID is valid. The Resolution Server responds with a status code of "OK" or "Invalid Client ID." This information is encoded in the numeric status code returned to WEBWAND in the OPEN response packet.
The REGU message 302 is sent to the Resolution Server if the Invalid Client ID status is received. The REGU message asks the Resolution Server to register the current user's Client ID. The Client ID is also sent in this message. The Resolution Server responds with a Client ID number that the user should use for all further communications, and a quoted string that contains the URL of a customer registration HyperText Markup Language (HTML) forms document. WEBWAND stores the new Client ID in the Client ID Data file 32 and gives the customer registration URL to the WWW Browser 16. The user then uses the WWW Browser to register the Client ID with the User Database 40 through HTTP Server 42. The SVRS message 304 is sent to the Resolution Server to request a list of server Internet
Protocol (IP) addresses that it should use. This message may be sent once during WEBWAND initialization, but may also be sent less frequently. The Resolution Server sends back a prioritized list of IP addresses in a single quoted string parameter. This string, when decoded back to a binary format, is a buffer with one or more null terminated ASCII strings. Each string is an individual IP address and the end of the buffer is indicated by the first zero length string (e.g., two "\0x00" in a row). Each of these strings are in a format that is acceptable to the standard C language sockets library.
The TRNS message 306 is sent to request the Resolution Server to translate a Resource Link Code (RLC) into a Uniform Resource Locator (URL). The RLC is included in the command packet as a quoted string. The RLC is an exact copy of the data read from the Scanner 26, minus any unnecessary header and trailer information. The Resolution Server responds with a URL, in the form of a quoted string, in the TRNS response packet. The URL is then passed to the WWW Browser. The data within the quoted string includes all information required to completely specify the HTML document, including command line extensions for Common Gateway Interface (CGI) applications. The URL string is passed to the WWW Browser exactly as if the user had typed it (via the Client's keyboard) into the "Go to URL:" specification window in the browser. No assumption is made regarding the document currently displayed by the WWW Browser, thus there is no "base directory" for relative addressing as there are in embedded HTML links. The TRNS message can be sent without previously sending an OPEN message. If sent in this way, the socket connection is closed immediately after the Resolution Server sends the TRNS response packet. The Resolution Server manages the closing of the socket in the following manner. Upon socket initialization, a flag called "LEAVE OPEN" is set to false. After receiving an OPEN message, this flag is set to true. After receiving a CLOS message, this flag is set to false. After sending a response, the socket is closed if the LEAVE OPEN flag is false. The Resolution Server responds to TRNS command packets even if the LEAVE OPEN flag is false.
Most command packets are of this type. The only packets sent to a socket immediately after opening are the OPEN and TRNS command packets. Other packets are sent only after an OPEN command packet.
The CLOS message 308 is sent by WEBWAND to inform the Resolution Server that no further command packets will be sent through the open socket connection. No parameters are sent with a CLOS command packet. The Resolution Server acknowledges the CLOS command packet with an "OK" status in a CLOS response packet and closes the socket connection.
Parameter identifier tags used in message commands for parameters include USID, RLCQ, URLQ, and SVRQ. Only one of each type of parameter is sent in any given packet. The USID parameter identifier tag denotes the Client ID number the Client is maintaining for the current user when this tag is sent by WEBWAND, or a new Client ID number (allocated by the Resolution Server) that WEBWAND should maintain from now on. The USID parameter is sent by both WEBWAND and the Resolution Server. The RLCQ parameter identifier tag denotes a quoted string containing an exact copy of the bar code data read by the Scanner. The RLCQ parameter is sent by WEBWAND. The URLQ parameter identifier tag denotes a quoted string containing the URL to give to the WWW Browser. The URLQ parameter is sent by the Resolution Server. The SVRQ parameter identifier tag denotes a quoted string containing a prioritized list of IP addresses. WEBWAND sends its current list of IP addresses that it uses to contact servers on the WWW. This list can be modified by the Resolution Server and returned to WEBWAND, where it is saved. The list is ordered by preference (i.e., the first server on the list is the first one tried when WEBWAND is invoked). The SVRQ parameter is sent by WEBWAND and the Resolution Server.
Table I shows an example of a translation request and response between WEBWAND and the Resolution Server.
WEBWAND: TRNS 68723 "ar\02ΛET\0C."
RESOLUTION SERVER: 100 "<http:\\ www.maui.com\something.html'
~ both sides close the socket connection — In the example of Table I, WEBWAND sends a TRNS command packet to the Resolution Server with a USID of 68723 and RLC data that was obtained from the Scanner. The Resolution Server responds with a response packet having a status code of 100 and the URL corresponding to the scanned bar code data.
Table II shows an example of a client sign-on sequence.
WEBWAND: OPEN 68723.
WEBWAND: SVRS 68723 "22.214.171.124\00126.96.36.199\00maui.com\00\00"
WEBWAND: CLOS. RESOLUTION
— both sides close socket connection —
In the example of Table II, WEBWAND opens up a socket connection with the Resolution
Server by sending the OPEN command packet. The Resolution Server accepts the request and responds with a status code in a response packet. WEBWAND then sends a SVRS command packet containing a list of servers to the Resolution Server. The Resolution Server responds with an updated server list in a response packet. WEBWAND then sends a CLOS command packet and the Resolution Server responds with a response packet.
Table III shows an example of a client sign-on sequence with a new client ID.
WEBWAND: OPEN -3.
SERVER: 101. - status code flags bad client ID
WEBWAND: REGU -3.
RESOLUTION SERVER: 100 68723 "www.dancingbear.com\newuser.html"
— both sides close the socket connection -- ~ then later ~
WEBWAND: OPEN 68723.
WEBWAND: SVRS 68723 "188.8.131.52\00184.108.40.206\00maui.com\00\00"
SERVER: 100. -- server list is OK -
RESOLUTION SERVER: 100.
— both sides close the socket connection —
In the example of Table III, WEBWAND begins by sending an OPEN command packet with an invalid client ID. The Resolution Server detects this error and sends back a bad status in a response packet. WEBWAND then sends a REGU command packet to register the new user. The Resolution Server responds by returning a new Client ID and a URL of a WWW page where the user can complete the registration process. WEBWAND sends a CLOS command packet to end this transaction and the Resolution Server replies with a response packet. At a later point in time, WEBWAND sends an OPEN command packet with the new Client ID in it. The Resolution Server validates this new Client ID and returns a good status in a response packet. WEBWAND sends list of servers for this Client ID to the Resolution Server in a SVRS command packet. The Resolution Server validates the server list and passes back a good status in a response packet. Finally, WEBWAND sends a CLOS command packet and the Resolution Server responds with a response packet.
The invention has been described in its presently contemplated best mode, and it is clear that it is susceptible to various modifications, modes of operation and embodiments, all within the ability and skill of those skilled in the art and without the exercise of further inventive activity. Accordingly, what is intended to be protected by Letters Patent is set forth in the appended claims.
Priority Applications (5)
|Application Number||Priority Date||Filing Date||Title|
|PCT/US1997/010689 WO1998003923A1 (en)||1996-07-21||1997-06-20||World wide web bar code access system|
|Publication Number||Publication Date|
|EP1012737A1 true EP1012737A1 (en)||2000-06-28|
Family Applications (1)
|Application Number||Title||Priority Date||Filing Date|
|EP97931276A Withdrawn EP1012737A1 (en)||1996-07-21||1997-06-20||World wide web bar code access system|
Country Status (3)
|EP (1)||EP1012737A1 (en)|
|AU (1)||AU3495097A (en)|
|WO (1)||WO1998003923A1 (en)|
Families Citing this family (155)
|Publication number||Priority date||Publication date||Assignee||Title|
|US6942150B2 (en)||1993-11-24||2005-09-13||Metrologic Instruments, Inc.||Web-based mobile information access terminal|
|US6375078B1 (en)||1990-09-11||2002-04-23||Metrologic Instruments, Inc.||Universal transaction machine for carrying out information-related transactions using html-encoded documents embodying transaction-enabling java-applets automatically launched and executed in response to reading code symbols|
|US5905251A (en)||1993-11-24||1999-05-18||Metrologic Instruments, Inc.||Hand-held portable WWW access terminal with visual display panel and GUI-based WWW browser program integrated with bar code symbol reader in a hand-supportable housing|
|US6076733A (en)||1993-11-24||2000-06-20||Metrologic Instruments, Inc.||Web-based system and method for enabling a viewer to access and display HTML-encoded documents located on the world wide web (WWW) by reading URL-encoded bar code symbols printed on a web-based information resource guide|
|US5992752A (en)||1993-11-24||1999-11-30||Metrologic Instruments, Inc.||Internet-based system for enabling information-related transactions over the internet using Java-enabled internet terminals provided with bar code symbol readers for reading Java-Applet encoded bar code symbols|
|US6068188A (en)||1993-11-24||2000-05-30||Metrologic Instruments, Inc.||System and method for composing menus of URL-encoded bar code symbols while using internet browser program|
|US6505776B1 (en)||1995-06-07||2003-01-14||Metrologic Instruments, Inc.||System for storing, accessing and displaying html-encoded documents relating to an object being worked upon in a work environment by a human operator wearing a wireless http-enabled client system equipped with a code symbol reader programmed to read a url-encoded symbol on the object, access said html-encoded documents from http-enabled information servers connected to an information network, and display same for review while working said object|
|US6386453B1 (en)||1996-11-25||2002-05-14||Metrologic Instruments, Inc.||System and method for carrying out information-related transactions|
|WO1998024036A1 (en)||1996-11-25||1998-06-04||Metrologic Instruments, Inc.||Bar code symbol driven systems for accessing information resources on the internet|
|US6988662B2 (en)||1997-06-04||2006-01-24||Metrologic Instruments, Inc.||System and method for carrying out information-related transactions using web documents embodying transaction-enabling applets automatically launched and executed in response to reading url-encoded symbols pointing thereto|
|US8073695B1 (en)||1992-12-09||2011-12-06||Adrea, LLC||Electronic book with voice emulation features|
|US9053640B1 (en)||1993-12-02||2015-06-09||Adrea, LLC||Interactive electronic book|
|US6505160B1 (en)||1995-07-27||2003-01-07||Digimarc Corporation||Connected audio and other media objects|
|US6345104B1 (en)||1994-03-17||2002-02-05||Digimarc Corporation||Digital watermarks and methods for security documents|
|US6311214B1 (en)||1995-07-27||2001-10-30||Digimarc Corporation||Linking of computers based on optical sensing of digital data|
|US6560349B1 (en)||1994-10-21||2003-05-06||Digimarc Corporation||Audio monitoring using steganographic information|
|US6321992B1 (en)||1997-03-19||2001-11-27||Metrologic Instruments, Inc.||Internet-based system and method for tracking objects bearing URL-encoded bar code symbols|
|US8910876B2 (en)||1994-05-25||2014-12-16||Marshall Feature Recognition, Llc||Method and apparatus for accessing electronic data via a familiar printed medium|
|US6866196B1 (en) *||1994-05-25||2005-03-15||Spencer A. Rathus||Method and apparatus for accessing electronic data via a familiar printed medium|
|US5978773A (en) *||1995-06-20||1999-11-02||Neomedia Technologies, Inc.||System and method for using an ordinary article of commerce to access a remote computer|
|US20070055884A1 (en)||1999-05-19||2007-03-08||Rhoads Geoffrey B||User control and activation of watermark enabled objects|
|US7565294B2 (en)||1999-05-19||2009-07-21||Digimarc Corporation||Methods and systems employing digital content|
|US8447067B2 (en)||1999-05-19||2013-05-21||Digimarc Corporation||Location-based arrangements employing mobile devices|
|US6650761B1 (en)||1999-05-19||2003-11-18||Digimarc Corporation||Watermarked business cards and methods|
|US7111170B2 (en)||1999-05-19||2006-09-19||Digimarc Corporation||Distributed system for responding to watermarked documents|
|US6940486B2 (en)||1995-08-03||2005-09-06||Vulcan Patents Llc||Computerized interactor systems and methods for providing same|
|AU6646096A (en)||1995-08-03||1997-03-05||Interval Research Corporation||Computerized interactor systems and methods for providing same|
|US6189030B1 (en) *||1996-02-21||2001-02-13||Infoseek Corporation||Method and apparatus for redirection of server external hyper-link references|
|US7058726B1 (en)||1996-07-08||2006-06-06||Internet Number Corporation||Method and systems for accessing information on a network using message aliasing functions having shadow callback functions|
|CA2346231A1 (en) *||2000-05-08||2001-11-08||Internet Number Corporation||Method and system for accessing information on a network using message aliasing functions having shadow callback functions|
|US6138151A (en) *||1996-09-23||2000-10-24||Motorola, Inc.||Network navigation method for printed articles by using embedded codes for article-associated links|
|EA199900411A1 (en)||1996-10-25||2000-02-28||Айпиэф, Инк.||System and method of service and distribution through the internet information relating to consumer goods|
|US7089199B2 (en)||1997-10-27||2006-08-08||Metrologic Instruments, Inc.||System for and method of managing and delivering manufacturer-specified consumer product information to consumers in the marketplace|
|US6959286B2 (en)||1997-10-27||2005-10-25||Ipf, Inc.||Method and system for searching a dynamically updated database of UPN/TM/PD and URL data links|
|US6002946A (en)||1997-04-14||1999-12-14||Motorola, Inc.||Handheld device having an optical data reader|
|US6137654A (en) *||1997-06-23||2000-10-24||Motorola, Inc.||Device having a diskette-like housing and a wireless transceiver and methods therefor|
|WO1999019823A2 (en) *||1997-10-10||1999-04-22||Interval Research Corporation||Methods and systems for providing human/computer interfaces|
|US6411994B2 (en) *||1997-10-07||2002-06-25||Interval Research Corporation||Interface system for providing content using context hotspots|
|US6518950B1 (en)||1997-10-07||2003-02-11||Interval Research Corporation||Methods and systems for providing human/computer interfaces|
|US6446871B1 (en)||1997-12-19||2002-09-10||A.T. Cross Company||Method and apparatus for storing reference codes in a writing instrument and for retrieving information identifed by the reference codes|
|US6038597A (en) *||1998-01-20||2000-03-14||Dell U.S.A., L.P.||Method and apparatus for providing and accessing data at an internet site|
|EP0936567A3 (en) *||1998-02-10||2001-04-04||Texas Instruments Incorporated||Method and device for automated transfer and maintenance of internet based information|
|US6256638B1 (en)||1998-04-14||2001-07-03||Interval Research Corporation||Printable interfaces and digital linkmarks|
|GB9908554D0 (en) *||1998-06-03||1999-06-09||Kaplan Robert||Method and apparatus for addressing a computer network|
|US6131813A (en) *||1998-06-04||2000-10-17||Motorola, Inc.||Optical code reader and methods and articles therefor|
|US6119938A (en) *||1998-06-17||2000-09-19||Motorola, Inc.||Optical code reader having a controllable amplifier and methods therefor|
|US6112992A (en) *||1998-06-17||2000-09-05||Motorola, Inc.||Optical code reader and methods and articles therefor|
|US6315204B1 (en)||1998-06-17||2001-11-13||Motorola, Inc.||Optical code reader and methods and articles therefor|
|US6260760B1 (en)||1998-06-17||2001-07-17||Motorola, Inc.||Optical code reader including circuitry for processing the symbology|
|CN1311883A (en) *||1998-06-19||2001-09-05||A·T·X·国际公司||Method and apparatus for storing reference codes in a writing instrument and for retrieving information identified by the reference codes|
|US6032195A (en) *||1998-07-31||2000-02-29||Motorola, Inc.||Method, system, and article for navigating an electronic network and performing a task using a destination-specific software agent|
|JP2000057079A (en) *||1998-08-10||2000-02-25||Yoshihiko Matsumoto||Internet access system|
|WO2001086435A2 (en) *||2000-05-10||2001-11-15||Digital:Convergence Corporation||Automatic configuration of equipment and software|
|US6845388B1 (en) *||1998-09-11||2005-01-18||L. V. Partners, L.P.||Web site access manual of a character string into a software interface|
|PL347312A1 (en) *||1998-09-11||2002-03-25||Digital Convergence Corp||Method for interfacing scanned product information with a source for the product over a global network|
|US6708208B1 (en) *||1998-09-11||2004-03-16||L.V. Partners, L.P.||Unique bar code for indicating a link between a product and a remote location on a web network|
|US6622165B1 (en) *||1998-09-11||2003-09-16||Lv Partners, L.P.||Method and apparatus for allowing a remote site to interact with an intermediate database to facilitate access to the remote site|
|US7191247B1 (en)||1998-09-11||2007-03-13||Lv Partners, Lp||Method for connecting a wireless device to a remote location on a network|
|US6704864B1 (en)||1999-08-19||2004-03-09||L.V. Partners, L.P.||Automatic configuration of equipment software|
|US6868433B1 (en) *||1998-09-11||2005-03-15||L.V. Partners, L.P.||Input device having positional and scanning capabilities|
|WO2001015020A2 (en) *||1999-08-24||2001-03-01||Digitalconvergence.:Com Inc.||A combined product code and insignia for signifying an internal interactive code|
|US8028036B1 (en)||1998-09-11||2011-09-27||Rpx-Lv Acquisition Llc||Launching a web site using a passive transponder|
|US6791588B1 (en)||1998-09-11||2004-09-14||L.V. Partners, L.P.||Method for conducting a contest using a network|
|US7970792B2 (en)||1998-10-01||2011-06-28||Onepin, Inc.||Phone to phone data exchange|
|US7813725B2 (en)||1998-10-01||2010-10-12||Onepin, Llc||Wireless data exchange|
|US7509349B2 (en)||1998-10-01||2009-03-24||Onepin, Inc.||Method and apparatus for storing and retrieving business contact information in a computer system|
|US7349907B2 (en)||1998-10-01||2008-03-25||Onepin, Inc.||Method and apparatus for storing and retrieving business contact information in a computer system|
|US6374259B1 (en)||1998-10-01||2002-04-16||Onepin, Llc||Method and apparatus for storing and retreiving business contact information in computer system|
|WO2000027086A2 (en) *||1998-10-30||2000-05-11||Science Applications International Corporation||Network protocol for secure communications|
|US6564254B1 (en) *||1998-11-04||2003-05-13||Dream Technologies Corporation||System and a process for specifying a location on a network|
|US6845370B2 (en)||1998-11-12||2005-01-18||Accenture Llp||Advanced information gathering for targeted activities|
|US6134548A (en) *||1998-11-19||2000-10-17||Ac Properties B.V.||System, method and article of manufacture for advanced mobile bargain shopping|
|AU4063599A (en) *||1998-12-30||2000-07-24||Eftim Cesmedziev||The elimination of a language barrier|
|US6122648A (en) *||1999-01-11||2000-09-19||Gohome Networks, Inc.||Method apparatus and system for improved content management and delivery|
|US7441706B1 (en)||1999-01-29||2008-10-28||Symbol Technologies, Inc.||Method and system for processing and using information|
|AU785350B2 (en) *||2001-04-06||2007-02-01||Symbol Technologies, Llc.||Method and system for processing and using information|
|AU3215000A (en) *||1999-02-01||2000-08-18||Barpoint.Com, Inc.||Interactive system for investing products on a network|
|EP1030255A1 (en) *||1999-02-19||2000-08-23||Knapp Logistik Automation GmbH||Database system with barcode reader|
|EP1030259A1 (en) *||1999-02-19||2000-08-23||Knapp Logistik Automation Gesellschaft MBH||Database system with barcode reader|
|US6199099B1 (en)||1999-03-05||2001-03-06||Ac Properties B.V.||System, method and article of manufacture for a mobile communication network utilizing a distributed communication network|
|US6401085B1 (en)||1999-03-05||2002-06-04||Accenture Llp||Mobile communication and computing system and method|
|US6356905B1 (en)||1999-03-05||2002-03-12||Accenture Llp||System, method and article of manufacture for mobile communication utilizing an interface support framework|
|US6674993B1 (en)||1999-04-30||2004-01-06||Microvision, Inc.||Method and system for identifying data locations associated with real world observations|
|US7261612B1 (en)||1999-08-30||2007-08-28||Digimarc Corporation||Methods and systems for read-aloud books|
|US7055739B1 (en)||1999-05-25||2006-06-06||Silverbrook Research Pty Ltd||Identity-coded surface with reference points|
|US6789194B1 (en)||1999-05-25||2004-09-07||Silverbrook Research Pty Ltd||Network publishing authorization protocol|
|US6418325B1 (en)||1999-07-12||2002-07-09||Motorola, Inc.||Handheld device having an optical data reader|
|DE19935792A1 (en) *||1999-07-29||2001-02-01||Intershop Software Entwicklung||Networked computer system for information exchange by address data field or uniform resource locator (URL), has server computer provided with an URL having address information for clear identification of server computer|
|US6973475B2 (en)||1999-09-18||2005-12-06||Wildtangent||Dynamic scalable multi-media content streaming|
|EP1085432B1 (en)||1999-09-20||2008-12-03||NCR International, Inc.||Information retrieval and display|
|GB9922214D0 (en)||1999-09-20||1999-11-17||Ncr Int Inc||Creation transmission and retrieval of information|
|DE19951881A1 (en) *||1999-10-28||2001-05-03||Friendlyway Ag Fuer Anwenderfr||Apparatus and method for displaying information|
|DE19955699A1 (en) *||1999-11-18||2001-05-31||Popnet Crossmedia Gmbh||Process for simplified access to an internet site uses a short character code|
|AUPQ439299A0 (en) *||1999-12-01||1999-12-23||Silverbrook Research Pty Ltd||Interface system|
|DE10005528A1 (en) *||1999-12-07||2001-07-12||Martin Schmid||Unified resource location address calling-up method involves coding URL address information to be read with wand only when identification individualizing print product is read in previously|
|JP2001175528A (en) *||1999-12-21||2001-06-29||Tokyo Kikai Seisakusho Ltd||System and method for providing information|
|US20030173405A1 (en)||2000-01-12||2003-09-18||Metrologic Instruments, Inc.||Bar code symbol driven systems for accessing information resources on the internet|
|AU4108301A (en) *||2000-03-09||2001-09-17||Kitagawa Yoshiko||Information processing apparatus with optical data reader, servers, and electronic commerce method|
|EP1146701B1 (en)||2000-03-24||2005-11-09||AllisBlue s.a.||Method of transferring data being stored in a database|
|US7143949B1 (en) *||2000-04-05||2006-12-05||Digimarc Corporation||Internet-linking scanner|
|GB0009004D0 (en) *||2000-04-13||2000-05-31||Lavin Dan||Navigation control unit for a wireless web access device|
|WO2001080513A2 (en) †||2000-04-17||2001-10-25||Surfid.Com Ag||Communications system, central computer and method for transmitting a url or an electronic mailing address|
|SE522970C2 (en) *||2000-05-05||2004-03-23||Ericsson Telefon Ab L M||Method, system, barcode readers and computer program product for linking a barcode to a web page|
|FR2810430B1 (en) *||2000-06-14||2002-12-20||Philippe Paget||System and method for electronic information management|
|DE10029651A1 (en) *||2000-06-16||2001-12-20||Florian Koehler||Automatically establishing data communications connection involves associating connection information with code read from data medium, passing to processor, processor dialing address|
|US7565541B1 (en)||2000-06-21||2009-07-21||Microvision, Inc.||Digital fingerprint identification system|
|JP2004514225A (en) *||2000-11-17||2004-05-13||ウエイトマン、ヤコブ||Application for mobile digital cameras to distinguish text and image information in images|
|FR2813680A1 (en) *||2000-09-06||2002-03-08||Gemplus Card Int||Accelerated search for information on a product via the Internet, uses data store to translate bar code information taken from product to URL giving more information on the product|
|AU2097102A (en) *||2000-12-20||2002-07-01||Koninkl Philips Electronics Nv||Apparatus and method for reading data from a data carrier and data carrier for use in the apparatus and method|
|KR20020072453A (en)||2001-03-10||2002-09-16||삼성전자 주식회사||Reproducing apparatus and additional information providing server system therefor|
|US7072974B2 (en)||2001-03-27||2006-07-04||The Code Corporation||Extensible application interface using machine-readable graphical codes|
|US7185824B2 (en)||2001-04-13||2007-03-06||The Code Corporation||System and method for associating pre-printed machine-readable graphical codes with electronically-accessible data|
|US6978038B2 (en)||2001-04-13||2005-12-20||The Code Corporation||Systems and methods for pixel gain compensation in machine-readable graphical codes|
|AU2002256206A1 (en)||2001-04-13||2002-10-28||The Code Coproration||System and method for encoding and decoding data and references to data in machine-readable graphical codes|
|FR2832238A1 (en) *||2001-11-14||2003-05-16||Jean Louis Menard||Method for accessing information, especially for accessing information stored under a URL, whereby the URL is input using a reader device and transmitted to a PC or similar so that the information can be searched for and located|
|WO2003069364A2 (en) *||2002-02-14||2003-08-21||Avaya Technology Corp.||Presence tracking and name space interconnection techniques|
|US6978930B2 (en)||2002-06-21||2005-12-27||A.T.X. International, Inc.||Optical bar code scanner and system for retrieving bar code data|
|US7621453B2 (en)||2002-07-29||2009-11-24||The Code Corporation||System and method for controlling the distribution of data translation components to portable data collection devices|
|US7070091B2 (en)||2002-07-29||2006-07-04||The Code Corporation||Systems and methods for interfacing object identifier readers to multiple types of applications|
|US7392933B2 (en)||2002-07-29||2008-07-01||The Code Corporation||Systems and methods for interfacing multiple types of object identifiers and object identifier readers to multiple types of applications|
|US7097099B2 (en)||2002-07-29||2006-08-29||The Code Corporation||Data collection device with integrated data translation|
|JP3673779B2 (en) *||2002-08-05||2005-07-20||キヤノン株式会社||Image supply apparatus, control method therefor, and print system|
|US8102558B2 (en)||2002-08-05||2012-01-24||Canon Kabushiki Kaisha||Image supply apparatus, control method therefor, and printing system|
|EP1589445A4 (en) *||2003-01-17||2006-05-31||Fujitsu Ltd||Purchase motivation analysis support apparatus, method, and program|
|WO2004090798A1 (en)||2003-04-07||2004-10-21||Silverbrook Research Pty Ltd||Sensing device for coded data|
|EP1631897A4 (en) *||2003-06-06||2007-06-27||Neomedia Tech Inc||Automatic access of internet content with a camera-enabled cell phone|
|US7240831B2 (en)||2004-01-21||2007-07-10||The Code Corporation||Systems and methods for establishing communication between an identification tag reader and a computing device|
|US8620083B2 (en)||2004-12-03||2013-12-31||Google Inc.||Method and system for character recognition|
|US7707039B2 (en) *||2004-02-15||2010-04-27||Exbiblio B.V.||Automatic modification of web pages|
|US7990556B2 (en)||2004-12-03||2011-08-02||Google Inc.||Association of a portable scanner with input/output and storage devices|
|US9143638B2 (en)||2004-04-01||2015-09-22||Google Inc.||Data capture from rendered documents using handheld device|
|US20080313172A1 (en)||2004-12-03||2008-12-18||King Martin T||Determining actions involving captured information and electronic content associated with rendered documents|
|US9116890B2 (en)||2004-04-01||2015-08-25||Google Inc.||Triggering actions in response to optically or acoustically capturing keywords from a rendered document|
|US8346620B2 (en)||2004-07-19||2013-01-01||Google Inc.||Automatic modification of web pages|
|US8874504B2 (en)||2004-12-03||2014-10-28||Google Inc.||Processing techniques for visual capture data from a rendered document|
|US8447066B2 (en)||2009-03-12||2013-05-21||Google Inc.||Performing actions based on capturing information from rendered documents, such as documents under copyright|
|US20120041941A1 (en) *||2004-02-15||2012-02-16||Google Inc.||Search Engines and Systems with Handheld Document Data Capture Devices|
|US9398152B2 (en)||2004-02-25||2016-07-19||Avaya Inc.||Using business rules for determining presence|
|US8001550B2 (en)||2004-03-22||2011-08-16||The Code Corporation||Object identifier readers that are configured to automatically send and/or store data read from an object identifier|
|US7204417B2 (en)||2004-11-03||2007-04-17||The Code Corporation||Graphical code reader that is configured for efficient decoder management|
|NL1027431C2 (en) *||2004-11-05||2006-05-09||Fleijsman & Van Dijk Holding B||Connecting program which when uploaded renders computer suitable for selection, input or activation of supplier code, input of article number and initiation of browser to communicate with intermediate station|
|DE102005001723B4 (en) *||2005-01-13||2009-06-18||Infineon Technologies Ag||Data processing device, method for controlling a data processing device using a graphic code, data carrier, on which a machine-readable computer program is stored, and computer program element|
|GB2424106B (en) *||2005-03-08||2011-03-09||Ranger Computers Ltd||Data recording equipment|
|CN101470761B (en)||2006-07-03||2011-03-23||北京华旗资讯数码科技有限公司;北京华旗数码技术实验室有限责任公司||Method for acquiring network audio/video files|
|US7447510B2 (en)||2006-10-22||2008-11-04||Onepin, Inc.||Short message service network plug-in|
|RU2457631C2 (en) *||2007-02-28||2012-07-27||Ноулинк||Method of transmitting data stored in data base|
|DE102007060095A1 (en) *||2007-12-14||2009-06-18||Vodafone Holding Gmbh||Method for establishing local connections between electronic terminals|
|EP2406767A4 (en)||2009-03-12||2016-03-16||Google Inc||Automatically providing content associated with captured information, such as information captured in real-time|
|US9081799B2 (en)||2009-12-04||2015-07-14||Google Inc.||Using gestalt information to identify locations in printed information|
|US9323784B2 (en)||2009-12-09||2016-04-26||Google Inc.||Image search using text-based elements within the contents of images|
|US9646100B2 (en) *||2011-03-14||2017-05-09||Verisign, Inc.||Methods and systems for providing content provider-specified URL keyword navigation|
|US9811599B2 (en)||2011-03-14||2017-11-07||Verisign, Inc.||Methods and systems for providing content provider-specified URL keyword navigation|
|US10057207B2 (en)||2013-04-07||2018-08-21||Verisign, Inc.||Smart navigation for shortened URLs|
|US9781091B2 (en)||2011-03-14||2017-10-03||Verisign, Inc.||Provisioning for smart navigation services|
|US10269457B2 (en)||2013-04-12||2019-04-23||Steven F. Palter||Methods and systems for providing an interactive discussion platform for scientific research|
Family Cites Families (6)
|Publication number||Priority date||Publication date||Assignee||Title|
|US5047614A (en) *||1989-01-23||1991-09-10||Bianco James S||Method and apparatus for computer-aided shopping|
|US5221838A (en) *||1990-12-24||1993-06-22||Motorola, Inc.||Electronic wallet|
|US5581479A (en) *||1993-10-15||1996-12-03||Image Telecommunications Corp.||Information service control point, which uses different types of storage devices, which retrieves information as blocks of data, and which uses a trunk processor for transmitting information|
|US5640193A (en) *||1994-08-15||1997-06-17||Lucent Technologies Inc.||Multimedia service access by reading marks on an object|
|US5491820A (en) *||1994-11-10||1996-02-13||At&T Corporation||Distributed, intermittently connected, object-oriented database and management system|
|US5572643A (en) *||1995-10-19||1996-11-05||Judson; David H.||Web browser with dynamic display of information objects during linking|
Non-Patent Citations (1)
|See references of WO9803923A1 *|
Also Published As
|Publication number||Publication date|
|US7747782B2 (en)||System and method for providing and displaying information content|
|US6397264B1 (en)||Multi-browser client architecture for managing multiple applications having a history list|
|DE69912317T2 (en)||Device and method for determining a program neighborhood for a customer node in a customer operator network|
|US6892206B2 (en)||Reduction of meta data in a network|
|US6742161B1 (en)||Distributed computing document recognition and processing|
|US6662218B2 (en)||Method of transcoding documents in a network environment using a proxy server|
|US6981210B2 (en)||Self-maintaining web browser bookmarks|
|US6253208B1 (en)||Information access|
|US7861174B2 (en)||Method and system for assembling concurrently-generated content|
|US8386924B2 (en)||Apparatus, method and system for transforming data|
|US6499052B1 (en)||Electronic commerce system for referencing remote commerce sites at a local commerce site|
|US5966705A (en)||Tracking a user across both secure and non-secure areas on the Internet, wherein the users is initially tracked using a globally unique identifier|
|US5875296A (en)||Distributed file system web server user authentication with cookies|
|US7962594B2 (en)||Delivering content on a network using differential caching system and method|
|JP3807961B2 (en)||Session management method, session management system and program|
|US7035828B2 (en)||Method and system for modifying and transmitting data between a portable computer and a network|
|US7257614B2 (en)||Digital ID for selecting web browser and use preferences of a user during use of a web application|
|US6138149A (en)||System for tracking information copied from a web page and sent via electronic mail|
|US5790793A (en)||Method and system to create, transmit, receive and process information, including an address to further information|
|CN100530179C (en)||Techniques for inline searching in an instant messenger environment|
|US6460079B1 (en)||Method and system for the discovery of cookies and other client information|
|US6253325B1 (en)||Apparatus and method for securing documents posted from a web resource|
|US7287057B2 (en)||Accessing information using an instant messaging system|
|ES2523100T3 (en)||A direct multimedia communication system linked to the http protocol|
|US20020194219A1 (en)||Method and system for cross-platform form creation and deployment|
|AK||Designated contracting states:||
Kind code of ref document: A1
Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE
|17P||Request for examination filed||
Effective date: 19990617
Withdrawal date: 20020610