high level display screens in j2me pricelist

The focus on programming wireless devices is growing these years. New devices arrive every day, having a huge set of functions - you just want to play a game or get some music on these small gadgets. You could really use a pocket database or another type of application.Trouble is that these devices are all different. There are at least two different major operating systems on the PDA"s and what the OS-situation is for the mobile phones can be difficult to tell. Even having the same operating system is not enough as the hardware platforms are different. This can certainly complicate the life of a developer. Choose your platform, mate!Unless JAVA is used, of course! The promised land of Code Once, Run Everywhere cannot completely be fullfilled (we know!), but in the world of small devices there now exist a set of standards. These have acronyms such as CLDC and MIDP and are found within the Micro Edition of the JAVA environment (J2ME).This book describes at a good level the J2ME-platform. The focus is placed mostly on the MIDP libraries which is natural as it is here that the most functions are found. The book covers the available API calls in a good way: Not too detailed, but clear and with a lot of example code. The authors remember to include proper warnings against misuse of some of the library routines - do not overdo the vibrator or flashing background, remember to add commands so that the user can navigate: That sort of advice. And trivial as this may seem, it is still needed, because programming an embedded or wireless device is something completely different than coding a PC-based application.Between the release of the first edition of the book and this there has been a rapid development within the J2ME area, especially when it comes to the MIDP-platform. A host of new API"s has been added to MIDP and this is clearly marked in the book. This is of course helpfull if you have older books and wants to compare. Or if you want to promote the new stuff - else I find it unnecessary.The book is mostly concerned with the MIDP API and as such does not cover much outside of this scope. You will look in vain for a description of the JSR-82 BlueTooth specifications or the WiFi-protocols. This, I feel, is a weakness because of the growing impact of such network technologies.The book itself is platform-independent: While it shows many examples it does not show how to compile and deploy an application to a specific wireless device, much less discuss existing platforms. It is an introduction to the CLDC and MIDP API"s, not to the development process itself. But the book is important for a good introduction to programming in the "small world" and is a must for the developer. The starting chapters also give a good overview of the position of the J2ME environment and its components and should be required reading for any JAVA evangelist and architect.

high level display screens in j2me pricelist

Preface; Audience; Contents of This Book; Comments and Questions; Acknowledgments;Introducing Java 2 Platform, Micro Edition (J2ME); Chapter 1: Overview of J2ME; 1.1 What Is J2ME?; 1.2 Downloading the J2ME Wireless Toolkit; 1.3 A Simple Example; Chapter 2: The Connected Limited Device Configuration (CLDC); 2.1 Examining the CLDC in Detail; 2.2 Using the Standalone CLDC and KVM; 2.3 CLDC Next Generation; Chapter 3: The Mobile InformationDevice Profile (MIDP); 3.1 Mobile Information Devices; 3.2 More About MIDlets;Programming with the CLDCand the MIDP; Chapter 4: Working with MIDlets; 4.1 The Application Manager; 4.2 Creating MIDlets; Chapter 5: MIDP GUI Programming; 5.1 Why Not Reuse the AWT?; 5.2 The MIDP GUI APIs; 5.3 The High-Level MIDP APIs; 5.4 Creating Low-Level GUI Components; Chapter 6: MIDP Events; 6.1 Screen Navigation; 6.2 Handling Low-Level Events; Chapter 7: Networking; 7.1 Generic Connections; 7.2 MIDP Connectivity; 7.3 The HTTP Programming Model; 7.4 Invoking Remote Applications from MIDlets; 7.5 Wireless Session Tracking; 7.6 MIDlet Networking Security; Chapter 8: Database Programming; 8.1 The Record Management System; 8.2 Programming with the RMS; Chapter 9: The MIDP for Palm OS; 9.1 Installing the MIDP for Palm OSon the Windows Platform; 9.2 Developing New Applications; 9.3 PRC Command-Line Conversion; 9.4 Advanced Java Applications; 9.5 A Final Thought;API Quick Reference; The java.io Package; The java.lang Package; The java.util Package; The javax.microedition.io Package; The javax.microedition.lcdui Package; The javax.microedition.midlet Package; The javax.microedition.rms Package; Resources; Additional Resources;Colophon;

high level display screens in j2me pricelist

Sun announced JDK 1.2.2, a maintenance release of the Java 2 SDK and Java 2 Runtime Environment (J2RE) that contains performance enhancements and bug fixes.

The size of the download bundle for the Win32 J2RE has been decreased by more than a third by compacting JAR files, removing line numbers and debug data from runtime class files, including only one font (LucidaSansRegular), and removing the color-management profile (PYCC.pf).

The Win32 runtime environment comes with version 1.2.2 of the Java Plugin, which offers enhancements for enabling the HTTPS protocol and support for RSA digital signature verification (on Windows 9x and NT 4.0 with Service Pack 3).

Swing components have been enhanced in this version so that buttons, labels, and menu items can now contain HTML text. The JViewport class also scrolls more quickly.

This release does contain the following bugs, which may break compatibility with existing 1.2-based code:The value of public static fields TREE_MODEL_PROPERTY and INVOKES_STOP_CELL_EDITING_PROPERTY in class JTree have changed since version 1.2

The value of public static field FOCUS_ACCELERATOR_KEY in class javax.swing.tree.JTextComponent has changed from focusAcceleratorKey to focusAccelerator since version 1.2

A bug in the lightweight component support for Swing on both Win32 and Solaris can cause a spurious NullPointerException to be thrown when making a selection in a JComboBox object

A segmentation-fault crash, caused by a fault in the multithreading mechanism, can occur on Solaris after Swing components have been used for a short time and are then disposed of, as is the case with dialogs

With the Java Plugin or the SDK appletviewer, multiple applets launched from the same codebase now share an AWT EventQueue and EventDispatchedThread instance

Java 2D functionality has been improved by performance enhancements to the constructive area geometry methods (add, subtract, intersect, and exculsiveOr) of class java.awt.geom.Area and to the hit-testing methods (intersects and contains) of classes java.awt.geom.Area, java.awt.Polygon, and java.awt.geom.GeneralPath. Also, many of the PCL and PostScript printer problems have been ironed out.

There are several Java 2D bugs that are related to image-rendering problems under GDI mode on Windows 95:Some display drivers will cause monitor images, including windows, to appear to resync or jump when DirectDraw is accessed

LG Semicon plans to release the MJ501, second-generation embedded Java chip, by the end of 1999. Company officials say they have working samples of the MJ501 (MJ stands for Media Java), and that they"ve "made a reference board and it"s working. It"s targeted at Web phones and set-top boxes."

The MJ501 is a 0.25-micron CMOS chip based on Sun"s picoJava-II core; LG Semicon officials declined to disclose its clock speed, but the target is thought to be 100 MHz. Some Java chip advocates say that a truly marketable Java chip was not possible until the release of the picoJava-II core, in which Sun corrected many of the flaws of the original picoJava-I core.

Sun has also changed its chip marketing strategy by retargeting the picoJava-II core away from the desktop market and toward the embedded device arena, as well as by not requiring companies to pay an up-front license fee under Sun"s Community Source License program for a rendering of the picoJava-II core.

According to Jordan Sohn, a senior researcher at ETRI (the Electronics and Telecommunications Research Institute), ETRI will first release the LG Semicon MJ501 chip in a set-top product.

The picoJava-II core seems ideal for embedded environments. It is centered around the central CPU, which executes the Java bytecodes; that CPU is surrounded by on-chip peripherals customized for consumer-electronics applications, including a 2D graphics engine, NTSC encoder, audio and CRT controllers, cable input, and PCI connection.

Sun Senior Product Manager Onno Kluyt noted that JFC/Swing 1.1.1 (FCS) will be the last JDK 1.1-related release for JFC. At JavaOne, it was announced that Swing 1.1.1 beta 2 would be the last release of Swing that would be backported to the JDK 1.1.x.

This could mean that bug fixes, enhancements, and other improvements won"t be available for the Macintosh and other platforms until those platforms have a stable Java 2.

IBM announced TSpaces 2.0.3, which consists of a set of network communication buffers called Tuplespaces and a set of APIs (and the classes that implement them) for accessing those buffers. TSpaces allows heterogeneous, Java-enabled devices to exchange data with little effort by programmers. This version is designed to help palm devices access networks better, delivering network-device control to these palmtops.

The small-footprint TSpaces includes server software that implements the communication buffers and client software for accessing the buffers. It provides group communication services, database services, URL-based file-transfer services, and event notification services.

Version 2.0.3 contains:Additional support for TupleID, so that the update command that now maintains the original TupleID can be updated without invalidating other tuples that may point to it via the TupleID

Version 2.0.2 clients can communicate with version 2.0.3 servers, but version 2.0.3 clients cannot talk to a version 2.0.2 server. Also, if you"re running a previous version of the server, you will need to use the -b or -B option for a fresh restart.

Both are prereleases and bear a warning that use is at the developer"s risk. The SDK doesn"t contain MacOS Runtime Java. The latter is Apple"s implementation of the Java Virtual Machine and runtime environment that includes support for Swing and Symantec"s just-in-time compiler, and also helps developers link Java applications to such Apple technologies as QuickTime and AppleScript.

Sun introduced Java 2 Micro Edition (J2ME) at the recent JavaOne show, a version of Java designed for PDAs, smart cellular phones, and two-way pagers, giving these devices access to corporate data.

J2ME is just one of the three branches of Java technology that comprise Sun"s reorganized strategy -- J2ME for devices, Java 2 Standard Edition (J2SE) for desktops and small networks, and Java 2 Enterprise Edition (J2EE) for enterprise-level systems. Each includes JVMs that can fit onto a range of consumer devices, a library of APIs designed for each type of device, tools for deployment and device configuration, a profile of the minimum set of APIs necessary for each type of device, and a JVM spec of functions required to support the APIs.

J2ME was introduced at JavaOne by demonstrating a host of Java applications running on a 3Com Palm III and a Motorola PageWriter 2000 two-way pager. J2ME"s 40KB JVM, called the KVM (for Kilobytes Virtual Machine), is what allows the JVM to run atop PalmOS; it is designed to use less than 128KB of memory. (For more on the KVM, see "The core of Micro Java, the KVM," below.)

In the demonstration, the PageWriter 2000 two-way pager connected to, queried, and updated a corporate database. Both devices were running the same version of J2ME; this feature will save companies time and development effort by allowing them to reuse the code written for one device on another device.

J2ME gives up and alters certain Java features that are unnecessary (or unusable in current form) on a handheld, including the standard error-handling classes. Error recovery will likely be handled differently on the different devices; for instance, disconnect and redial are probably the best way to recover from a communications error on a smart phone. Alterations include:Host system calls are implemented as part of the KVM (instead of the JNI)

Neoware announced a free upgrade to its Java-based thin-client Navigator 4.5 browser, which comes standard on the company"s Neoware"s Windows-based Terminal 4.0 software and on its Unix-oriented netOS 3.3 for intranets.

The Neoware Netscape Navigator offers support for JavaScript, file download (via Netscape File Transfer), a Java Virtual Machine, and integrated RSA security.

Sedona announced a thin, browser-based version of its e-commerce intelligence software SpatialVision, called SpatialVision Lite. It also announced Sedona Link, a new component for SpatialVision that offers realtime data access to users of the Acxiom Data Network.

SpatialVision Lite -- a Java 2-compliant, component-based version -- is designed to offer Web-based client access. Lite is a downloadable applet smaller than 20 KB that offers full data visualization and manipulation capabilities for business intelligence scenarios. It can drill down through the data that results from visualization. It delivers realtime, concurrent database access.

Sedona Link lets users combine up-to-date information from the Acxiom Data Network with the data already residing in the user"s data warehouse, allowing the user to specify precise definitions and selection of customer records for content enhancement, as well as employ automatic geocoding and a spatial data definition for each customer.

SpatialVision puts enterprise data on maps that allow users to quickly analyze information driving business results. Java technology gives SpatialVision the ability to provide direct query, access, and visualization for Oracle databases. It sports an easy-to-use interface that lets users assemble and execute simple to complex queries. Integrated mapping and imaging tools let users customize geospatial data for display, analysis, and output requirements.

During the recent 99 China International Intelligence Card Expo, Sun Microsystems and the First Research Institute (operating under the Chinese Ministry of Public Security) announced that they have jointly established the Java Intelligence Card Resource Center.

The goal of the center is to import, digest, and develop technologies based on Java, focusing on Java Card technology. The center will also try to help developers craft Java technologies that meet the conditions and limitations of China and the Chinese economy.

Just in case you missed the fireworks on the 4th of July (or even if you caught them but wanted to identify the different types of bursts), this Java-driven site is just what you need.

For the less ambitious, you can just watch the fireworks display. There"s even a Fireworks on Demand applet where you create the style of star burst you want.

Osvaldo Doederlein and JavaPro magazine offer "Testing Java 2 Performance," an article in which Doederlein presents a group of tests he devised to measure the performance of Java 2.

In fact, Doederlein continues to advise Java developers not to "rely too much on journalists or vendors. Tests produced by you [Java developers] are the most valuable." He concedes, though, that it is "useful to have some standard reference tests that are both accredited and easy to reproduce."

In the article, the author also discusses the two methods chosen to increase Java speed -- native compilers and advanced VMs. And he has benchmark results for two of the latest entries in both categories -- NaturalBridge"s BulletTrain 1.0.3 native compiler and Sun"s HotSpot 1.0 VM.

The Java Developer Connection and Steve Meloan offer an in-depth look at the Java HotSpot VM, which promises to deliver at least twice the performance for server-side Java applications.

Java 2"s pluggable architecture allows HotSpot to be dropped into the platform, replacing the need for the virtual machine and the just-in-time compiler. Any application or applet processed with the Java 2 runtime environment (application launcher, plugin, or applet viewer) will by default use HotSpot.

Along with an intimate look at the technology, this article delivers SPECjvm98 results for HotSpot on NT at 350 MHz and VolanoMark results on Windows NT and Solaris/SPARC.

The article looks at such basics as on-the-fly adaptive compilation, method inlining, the improved and redesigned object layout, garbage collection, and fast thread synchronization. It determines that the performance of a Java application depends on four factors:The overall design of the application

It also explains method inlining, the new and improved object layout (the replacement of a three-machine-word object header with a two-word one), the elimination of handles, and the introduction of direct-memory references.

HotSpot also provides built-in, nonconservative garbage collection that guarantees that all inaccessible object memory can be reliably reclaimed, and that all objects can be relocated. This allows memory compaction, which eliminates object memory fragmentation and increases memory locality. The article goes on to explains other features of collection, including generational copying collection, mark-compact collection, and incremental train collection.

It covers thread synchronization boosts, including fully preemptive threads that use the host operating system"s thread model, so that every Java thread corresponds to a native OS thread.

The company says that information from this Java Developer Connection survey will be used to direct future Sun developer offerings. Sun is looking for developers from around the world, familiar with various markets and technologies, for several research projects.

Sun announced the Kilobytes Virtual Machine (KVM), the core of the Java 2 Micro Edition (J2ME), and a new Java runtime environment rebuilt from the ground up to offer a lean implementation of the JVM for limited-memory devices.

The KVM is implemented in native code for extra performance, but it still maintains a portable architecture that keeps system dependencies to a minimum. Multithreading and garbage collection have been implemented in a system-independent manner, making it a fast port to any host platform.

Parasoft has upgraded its jtest Java testing tool to version 3.0. It includes the following new features:White-box testing: Ensures that Java classes won"t crash if they receive unexpected input data.

Static analysis: Lets developers analyze Java source code by automatically enforcing more than 50 Java coding standards, reducing the number of errors in code early in the development process.

Instantiations announced the JOVE Super Optimizing Deployment Environment (JSODE), a group of products that lets developers create and deploy Java applications via a combination of whole-program and object-oriented optimization technologies, native compilation, and a scalable runtime architecture and deployment environment.

JSODE products are designed to simplify the deployment of the back-end server applications used to drive e-commerce. The system includes the multithreaded generational garbage collection, native multithreading, and low overhead polymorphism features needed to build and deploy large, complex Java applications. It takes standard Java class files (the output of any Java IDE), aggressively optimizes them, packs them with high-performance runtime support, reduces them to native machine code, and builds an executable that can be deployed on a server or standalone system.

The system includes a software optimization engine, a native Java compiler, and a runtime platform. JSODE comes with the JOVE Developer Environment and the JOVE Enterprise Deployment Platform (both run on Windows 9x/NT Workstation/NT Server 4.0 with a Java Runtime Environment).

The starter kit (both the developer and deployment environments) starts at ,495. The developer environment alone costs ,495 for the first copy, 95 for each additional copy. The deployment platform alone ranges from 95 (for single-processor server) to ,995 (8-processor server). Before August 20, 1999, you get 30 percent off the list price.

Object Insight announced the beta release of JVision 1.1, a new release that offers two add-ons to the tool designed for visualizing and communicating the architecture of Java code.

JVision allows developers to reverse-engineer Java code to produce UML (unified modeling language) static class object model diagrams. The two add-on products available in version 1.1 are:Integration with Visual Cafe

The integration with Visual Cafe is a two-way connection. A JVision diagram can be generated automatically by selecting classes in the Visual Cafe project window that will then appear in the new diagram. Also, by double-clicking on a class in a JVision diagram, the source code for that class will appear in a Visual Cafe editor. This offers users the ability to visualize code architecture by seeing the relationships between classes.

The Documentor feature lets developers build an instant documentation Web site that, when integrated with Sun"s JavaDoc technology, can be viewed by anyone with a browser. It offers a project diagram manager to help organize diagrams.

Upgrades from version 1.0 are free. The basic version of JVision costs 9. With VisualCafe integration, it costs 29. With the Documentor, it runs 99. With both, it"s 28.

Kasten Chase announced that its VersaPath Web-to-host connectivity product, which integrates desktop and browser clients into a single solution, will support Linux and Java.

VersaPath offers centralized client configuration and software management that lets sysadmins easily install, configure, and control host session access for hundreds of desktop and mobile users. Configurations are downloaded transparently upon user authentication. The desktop- and browser-client versions are supported via the same centralized infrastructure and centralized configuration database.

Support for Java clients joins VersaPath"s existing support for ActiveX. All client types are supported concurrently on the same system, and remote users have concurrent access to the multiple-supported client types.

NewMonics announced Embedded PERC 2.0, a suite of clean-room Java implementation development and integration software tools and a runtime environment.

PERC features memory-management capabilities for realtime embedded systems. It comes with a VM, compilers, tools, and libraries. The PERC VM supports accurate realtime garbage collection and deterministic realtime tasking.

The Theory Center announced the EJB component-based JumpStart 1.5, a member of its eBusiness Smart Components line, designed to help developers quickly build Web-enabled applications.

JumpStart is built from pure EJBs into a plug-and-play development environment designed to rapidly create mission-critical e-commerce applications and systems.

The JumpStart kit includes:80 components that comprise Session and Entity EJBs (for example, eBusiness.Customer, eBusiness.ShoppingAdvisor, eBusiness.Session, eBusiness.Product, eBusiness.Inventory, eBusiness.TroubleTicket EJBs)

eShare Technologies announced that it will team up with the Digital Club Festival to offer concert lovers an online chat space they can access in realtime, open 24/7.

The five-year-old Digital Club Festival (formerly known as the Intel New York Music Festival) is using eShare"s Expressions 4.0 to add chat to its high-traffic site, just in time for its July 20-23 festival that will feature 300 bands performing in 20 clubs in Manhattan. Expressions is a turnkey system for adding chat, threaded discussion forums, and online presentations to Web sites.

Expressions 4.0 gives the festival-site users the ability to discuss music in realtime without the need for plugins or downloads. Expressions is built on an open architecture that offers client interfaces for Java, Java Light, HTML, and Active X.

The software provides a communications log and online tracking, plus full HTTP support for operation through firewalls. It consists of five components:Chat: server-based software for live, realtime interaction

Expressions runs on Windows NT 4.0 with Service Pack 4; a Solaris 2.6 version is upcoming. There is a free trial download. Check with company for pricing.

high level display screens in j2me pricelist

FIELD OF THE INVENTION The present invention relates generally to automating tasks on the World Wide Web (the "Web") and more particularly to automating tasks for an online buyer or user such as comparison shopping or interacting with the multilingual vendors on the World Wide Web through a single interface to increase communication efficiencies and to provide a personalized buying experience in particular through a mobile implementation.

DESCRIPTION OF THE BACKGROUND Since the creation of the World Wide Web in the mid 1990"s,,- the size of the Internet has exploded a thousand-fold. People are now A , inter-connected, not by means of direct face-to-face interaction, but through virtual communication channels. This new revolution of technology has fundamentally changed the way people live.

A parallel development with the World Wide Web is the "Information Technology Age" that presents a stunning variety of online information resources ranging from product information to academic papers. These elements have enabled the exponential growth of Electronic Commerce that capitalizes on the convenience and low cost which the Internet delivers.

There are several million or more online vendors on the World Wide Web. Although current comparison shopping or price comparison search engines can retrieve from different online competitors, according to an online buyer"s or user"s query, somewhat relevant search results pertinent to any desired products requested and their desired prices, the buyer or user can be confronted with an endless sea of information. Sometimes, the buyer or user receives a "failure page" of search results because the search engines have missed other Websites of online multilingual vendors existing in the rest of the Internet-connected countries (currently numbering 245) selling exactly what was requested. Furthermore, although information about products and vendors is easily accessible on the Web, buyers or users are still in the loop in all stages of the buying process.

The potential of the Internet for transforming the present mode of e-commerce into a truly global ensemble marketplace is largely unrealized today, and electronic purchases are still non-automated. Buying on the Internet is far from being simple, efficient, or enjoyable. Search engines and centralized directory services are insufficient for locating products the online buyer wants and the merchants willing to sell such products or services. Furthermore, the typical online purchase procedure is mostly manually driven and requires the buyer to enter all terms and keywords for which he or she wants to search. Therefore, a prospective buyer is faced with a daunting task, with responsibility for collecting and interpreting information about merchants and products, making decisions about them, and ultimately entering purchase and payment information. The scenario is that the user or buyer is easily overloaded with information without sufficient time and expertise.

In order of complexity, there are two imperfect strategies presently adopted and implemented to partially automate an online catalog price comparison process as follows:

The non real-time approach is the simplest way to implement a price comparison agent. Its implementation involves manually collecting all necessary information from the Web, and then writing a separate HTML file for each item of the search results in order to visually display the search results.

The benefits of the above are obvious — easy implementation and short searching time. Notwithstanding those benefits, there are three main undesirable drawbacks. Firstly, as the price comparison is done manually, maintaining a large wrapper repository becomes very costly, particularly in view of the continuing growth of the Internet. Secondly, great effort must be invested to keep the price and other information up-to-date. Lastly, the size of the database required to store and coordinate all of the above information is extremely large.

The real-time hard-coded wrappers approach is an alternative to the non real-time approach. Instead of fetching the items directly as in the non real-time approach, the real-time approach tries to generalize the HTML page into a specific format. To perform this extraction task, a customized wrapper procedure named pcwrapHLRT — programming acronym — is invoked. Figure 1 provides an example of the pertinent portion of the program that has one "while" loop. In this example, the algorithm behind the creation of a wrapper is to confine the target data on the HTML page by a pair of delimiters. The pcwrapHLRT procedure works because the site exhibits a uniform formatting convention. Product items are rendered in bold whereas prices are in italics. PcwrapHLRT operates by scanning the HTML document for particular strings {", ", "," ""} that identify the text fragments to be extracted. These strings are identified by pcwrapHLRT as l\, r lp and rp, respectively. The notation k (k<≡ {i, p}) indicates that the string delimits the left-hand edge of an attribute to be extracted whereas rk indicates a right delimiter. Other possible attributes to be extracted by a wrapper are product names, graphics, terms and conditions, etc.

checks whether there are additional model numbers and/or price pairs to extract by searching for delimiter "" on the non-scanned portion of the page. As long as the beginning of a model number is found, the inner loop is invoked to extract the appropriate page sub-strings. Few Websites publish their formatting conventions. Thus, the designer of an information-gathering system using pcwrapHLRT would manually construct such a wrapper for each resource. Unfortunately, this hard-coding process is tedious and error-prone, as a common HTML page may consist of several thousand lines of code. Moreover, most sites periodically change their formatting conventions that usually will break a wrapper.

Another disadvantage of pcwrapHLRT is that the speed of search time is moderate, as the agents have to contact the vendor Website upon receiving a request from the user. Because this kind of wrapper is partially automated, extra administrative work must be performed to manually analyze the format of the HTML page in order to determine the wrapper.

SUMMARY OF THE INVENTION In view of such commonly encountered afore-mentioned problems, an alternative to manual and partially automated manipulation, based upon a new Internet strategy, is automatic manipulation — online intelligent price comparison agents that can relieve the price comparison process of online catalog buying or shopping, (auctioning, etc.), and can meanwhile provide a better navigational environment with an Internet-friendly interactive-agent- character graphical user interface (IACGUI). This will be particularly useful when the so-called 4th Generation Global Ensemble Marketplace Framework — agent-mediated B-to-C, C-to-C, B-to-B e- procurement and auction, G-to-B/C (Governmβnt-to- Business/Consumer) tendering e-commerce and m-commerce (mobile commerce) — becomes widely implemented. Thus, the system of the present invention provides a better environment for consumer-to- business transactions.

To put it simply, online intelligent price comparison agents are automated online buying or shopping assistants that scour global online multilingual stores and ferret out deals on every product. They also deliver value-added (customer rated) Business-Web services to the online buyer / user. Such agents are attractive because they can relieve users of the tedium of manually carrying out every operation in the Consumer Buying Behavior model.

Conventionally, a buyer / user communicates with a Web server of an online service through the interface at the front-end, which presents a form completed by the buyer / user for entering the terms to be searched. Once the buyer / user submits the search request, the online service"s Web server queries its database for matches, and presents the results to the user"s Web browser.

In the present invention, user agents (online intelligent price comparison agents acting on behalf of the human buyer / user) in the online catalog price comparison process carry the terms and keywords to be searched for, and communicate with numerous multilingual Web servers of any of the 246 Internet-connected countries over interconnected computer networks on the World Wide Web for the buyer"s / user"s best interests. The user agent then ranks the online vendor sites it finds and presents a summary of search results via the Web browser to the online human user.

The advantages of applying the system of the present invention to multiple e-commerce segments are very significant. Communication efficiency and effectiveness can be increased considerably, and time and cost-savings for online vendors as well as online buyers can be maximized. Most importantly, the user / buyer will have access to an unprecedented and countless number of sources of information and a myriad of products sources on a global scale, as well as an immeasurable number of business opportunities. The system and method of the present invention will also help to collapse time and languages barriers, demographic boundaries, and truly enable the globalization of e-commerce. Besides, the personalized, continuously running, autonomous nature of the user

agents makes them well suited for mediating buyer / consumer behaviors. It is believed that the present invention will help to optimize the whole buying experience and revolutionize current e-commerce.

Reference is made to US Patent Application Number 09/967,233, filed on September 27, 2001 , which is incorporated herein by reference in its entirety, and portions of which are reproduced herein.

Described in the referenced US Patent Application Number 09/967,233 is a method and system which provides a worldwide online shopping portal that enables online users to buy/shop across national boundaries and in multiple languages. It has been found that a Java implementation of the system is particularly advantageous, in part because such implementation has increased compatibility with user and infrastructure systems, as well as decreases the vulnerability of the system to unauthorized intrusions. An implementation of the system for mobile users has been created and is described herein. The mobile implementation preferably uses the J2ME and kXML platforms, and features a simplified set of steps which have been adapted to the more limited resources available in mobile equipment. Also described is an enhanced information extraction methodology that permits more precise identification of the information being sought by the system.

It is yet another object of the present invention to provide an interface for a system administrator to add, modify and delete vendors supported by the system.

It is yet another object of the present invention to provide filtering and sorting of desired products / services. It is yet another object of the present invention to provide a single interface to compare prices of different online multilingual vendors and different domains on the Internet or World Wide Web.

It is still another object of the present invention to provide a mobile user implementation of the system and methods, and in particular to provide an interface accessible by mobile users to compare prices of different online multilingual vendors and different domains on the Internet or World Wide Web.

The mobile user implementation of the present invention provides a simplified interface preferably using the J2ME and kXML platforms to communicate with the underlying search system as described herein.

A first user agent is embodied in the system of the present invention, and is implemented in the form of a Semantics Recognition Learner Agent (SRLA). It conducts a real-time autonomous wrapper induction using an inductive learning method to learn the URL of a vendor"s site and its domain description, and generalized rules about the organization of the vendor"s site based upon previously compiled or prepared training examples provided by the system administrator. (In one embodiment, the SRLA connects a Microsoft brand back-end SQL-

compliant server or Microsoft Access database to produce a vendor and products description only once per online store.) The wrapper induction is done by constructing in real-time a wrapper of examples that is extracted from vendor and products descriptions stored in the offline database. Then with the examples, the SRLA autonomously zaps through the Internet in real-time to the remote host of the vendor site to access the Web pages exhibiting the specified examples according to the URL provided, then intelligently fills-in a relevant search form with the domain or product information, and then virtually "presses enter" to thereby submit a search request to the site. Result pages that are returned in response to the search criteria are either a successful page containing accurate information or a failure page. These result pages, having vendor and products descriptions that are unique to a particular vendor (either a registered or non-registered vendor with the system), are consequently stored in a vendor description list in the offline database (such as in an SQL-compliant server or Microsoft Access database) maintained by the system administrator. Vendor URLs, vendor descriptions and other information, are preferably automatically updated once daily on schedule.

A second user agent embodied in the system of the present invention is referred to as a Semantics Recognition Buyer Agent (SRBA). The SRBA uses the vendor descriptions previously "learned" by the Semantics Recognition Learner Agent to search for a match while accessing simultaneously various online multilingual vendor sites on the World Wide Web. The SRBA intelligently fills-in a vendor"s search form with the product information provided by an online buyer or user and virtually "presses enter." The vendor then returns search result pages to the SRBA through the World Wide Web in such a manner that result pages arrive at about the same time as other ones being returned from other vendors. (The Semantics Recognition Buyer Agent stores these returned pages in a separate memory or cache location as hits for later use by other SRBAs.) The SRBA analyzes the returned pages according to the corresponding vendor descriptions,

extracts from them relevant information and data, sorts prices and model numbers, and displays them in a formatted summary on the screen of a client-machine via a Web browser to the online buyer/ user. In accordance with the present invention, a method is provided for a computer-implemented Semantics Recognition Learner Agent to perform an inductive learning. The method comprises retrieving training data specific to an online vendor to generate a corresponding vendor description from inter-connected computer networks. The method comprises collecting training pages using the given training pages using the given training data stored in the vendor list. Using the training data as well as the retrieved training pages, the method comprises an inductive learning method to generate a vendor-specific vendor description from information that is extracted from the training data and retrieved training pages.

A method is provided for storing the retrieved and/or extracted vendor descriptions in an offline database that will be later used by a Semantics Recognition Buyer Agent (SRBA).

A method is provided in accordance with the present invention for price comparison of products or services from online vendors. The method comprises an online user initializing a request for a specific product or sen/ice, then a Semantics Recognition Buyer Agent constructs parameters of a search request using pre-defined vendor descriptions. The method comprises posting requests to different online vendors, preferably at the same time, extracting data from result pages returned from the online vendors using a parser that comprises the vendor descriptions. The method comprises constructing/composing sorted and filtered data by a Semantics Recognition Buyer Agent in a HTML format for presenting the data to the online buyer / user.

A method is provided and implemented through the Semantics Recognition Buyer Agent for parsing returned pages from online vendors to retrieve useful data. The method comprises retrieving vendor descriptions from an offline database, parsing the returned

page from online vendors for any of the (currently 246) Internet- connected countries on the World Wide Web, and collecting useful data using information from the returned vendor descriptions.

In one embodiment of the invention, the above functionality is only available on member Web pages after an online buyer signs up as a registered temporary trial or life member.

In accordance with the present invention, a method is provided for real-time online search processing of selected types of information over inter-connected computer networks. The method comprises a number of steps: assembling site descriptions for a plurality of sites in the inter-connected computer networks including for each of the plurality of sites (a) a URL for the site; a search form URL for the site; (b) generalized rules of how the selected types of information on the site is organized; (c) sample data retrieved from the site corresponding to the selected types of information; and (d) descriptions of domains found on the site; receiving a request for specified types of information from an online user; identifying from the site descriptions, sites which may have the specified types of information; constructing search requests for the specified types of information using the site descriptions for each identified site; submitting the constructed search requests to the identified sites; receiving search results from the identified sites, and upon locating accurate matches in the received search results, extracting information corresponding to the specified types of information in a native language of the site, and displaying the extracted information to the user.

More generally, the present invention involves a method for realtime online search processing over the inter-connected computer networks. The method comprises the steps of: (a) maintaining in an offline database information for a plurality of vendor sites from the inter- connected computer networks; the information includes URLs, search form URLs, description of domains, and vendor descriptions, wherein the vendor descriptions include generalized rules about how product information is organized on each of the vendor sites; (b) processing parameters for a price comparison request for a desired product using

the information maintained in the offline database, while the price comparison request is received from an online user and/or the Semantics Recognition Buyer Agent; (c) extracting real-time price and product information from identified ones of the plurality of vendor sites, wherein the extracted price and product information are in a native language of the site; and (d) displaying the extracted price and product information to the user.

DESCRIPTION OF THE DRAWINGS Figure 1 is an example of the pertinent portion of the pcwrapHLRT program used in a prior real-time hard-coded wrappers approach for retrieving information from a vendor"s Website.

Figure 2 is a generalized diagram illustrating the interaction between a preferred embodiment of the present invention, user agents of the present invention, a user / buyer, and online vendors, by way of the World Wide Web / Internet.

Figure 3 is a simplified flowchart 100 of an overview of how the Semantics Recognition Learner Agent (SRLA) works with training data to generate a vendor description.

Figure 6 is a flowchart 200 of an overview of how the Semantics Recognition Learner Agent (SRLA) performs inductive learning and generates a generalized cross-page valid vendor description.

Figure 7 provides an example of an alignment"s portion of a page from a Website as it would appear to a person browsing that page on the Internet, and the corresponding HTML codes that are used to generate or define such alignment.

Figure 8 provides an example of the labels that, in accordance with the present invention, are used to identify the locations of item description and price information in a training page.

Figure 11 is a simplified depiction of a Web page"s screenshot having Navigational Regularity with a searchable index.and product domain fields for easy access to a specific inquired database in accordance with the present invention.

Figure 12 provides a simplified depiction of a screenshot of a Web page that illustrates the use of Uniformity Regularity with all items typically laid out in a simple consistent format. In the page is a frame, and the frame contains the search results of the information inquired about, which results are formatted uniformly.

Figure 13 is a simplified depiction of the same screenshot, as shown in Figure 12, that illustrates the use of Vertical Separation Regularity with the search results displaying aligned catalogs of products which are positioned in the center between the head and tail. Figure 14 is a generalized illustration of the operation of the

Figure 15A is a screenshot that displays the search results for the keyword "electronics" on the vendor site "www.800.com," in which each product is summarized in a brief introduction of its features and functions (left and center of the aligned frame) and the relevant "List Price" and "Your Price" information appear on the right side of the aligned frame, and which information the intelligent price recognizer of the Semantics Recognition Learner Agent of the present invention can distinguish during the learning process of the vendor descriptions. Figure 15B is a generalized illustration of the operation of the

Semantics Recognition Buyer Agent of the present invention that accessed the vendor site "www.800.com" at a time after the learning process of vendor descriptions, as shown in Figure 14, such that

Figure 15C is a flowchart 300 of an overview of how the Semantics Recognition Buyer Agent (SRBA) 20 in Figure 2 interacting with a vendor description to respond to an online buyer"s / user"s request for price comparison for one, up to all, available online multilingual vendors.

Figure 16 is an example of an Interactive-Agent-Character Learner Interface screen that can be used to obtain training information for use in the present invention.

Figure 19 is a screenshot of the Learner Interface with the labeled tab "vendor information" through which vendor information can be entered or searched for.

Figure 22 illustrates the selection of learning options in accordance with the present invention, namely, the "Learn One" option is shown selected, and the vendor"s name, which has been filled-in, is "1cache.com."

Figure 28 illustrates how the user / buyer communicates with the server to run the in-process DLL file (NextGen.dll) on the server machine through an ASP (Active Server Page) file (NextGen.asp), in accordance with an embodiment of the present invention.

Figure 29 illustrates the manner in which the Semantics Recognition Buyer Agent facilitates communication between the user and the database server. Figure 30 provides a detailed flow chart of how to set up the

Figure 31 is an illustration of how the Semantics Recognition Buyer Agent virtually posts a search form to an online vendor site. Figure 32 is a simplified illustration of a "main menu" screen of a

GUI or Interactive-Agent-Character Shopper / Buyer Interface (IACS/BI) for use with the present invention. It is to be noted that there is a choice of "channels" (categories) of products provided for the user in the upper right hand corner of this "main menu" screen. A "Quick Search" feature is also provided in the left hand side of the screen. Right beneath it, there is a provided box in which an animated feature of self-typing instructs the online human user how to use the quick search option. The left hand screen panel also provides a set of boxes for member sign-in as a temporary trial or life member. (Note that most of the portal"s functions of the present invention are disabled until the user authentication is validated.) At the bottom left hand corner is provided a set of links to online vendors that have been registered with the portal of the present invention whereas on the right, it can be observed that a big message box labeled "feedback" is provided for the online user to enter a message with comments through e-mail to the e- mail server, preferably running the Outlook Express brand e-mail application of Microsoft Corporation.

companies are displayed in response to a "Government-to-Business" textual icon which has been clicked on the previous screen (not shown) by the online buyer / user. However, note that this very screen cannot function because these companies, or so-called Government-to- Business e-commerce service or platform providers currently restrict strictly for member"s privilege the access to their Web servers" databases by incorporating an authentication security interface in entirely closed-connected computer networked environment.

Figure 34 is a simplified illustration of a screen display of a GUI or Shopper / Buyer Interface for use with the present invention in which details are provided about a company selected by the user from among the choices provided after the user has clicked the "Advanced Search" option on the screen of Figure 33. Note that on this screen, the banner in the frame of the panel just right below the tabs for the five types of domains, the capitalized message "ADVANCED AGENTS ARE ON!" is observed. Besides, at the bottom of the screen, the user is provided with dialog boxes which can be filled-in for running a search using the Semantics Recognition Buyer Agent functionality provided by the present invention. Again, however, note that this very screen cannot function because this company, or so-called Government-to-Business e-commerce service or platform provider currently restricts strictly for member"s privilege the access to their Web server"s databases by incorporating an authentication security interface in entirely closed- connected computer networked environment. Figure 35 is a simplified illustration of a screen of a GUI or

Shopper / Buyer Interface for use with the present invention in which companies are displayed in response to "Business-to-Business" textual icon which has been clicked on a previous screen (not shown) by the online buyer / user. However, note that this very screen cannot function because these companies, or so-called Business-to-Business e-commerce service / platform providers currently restrict strictly for member"s privilege the access to their Web servers" databases by incorporating an authentication security interface in entirely closed- connected computer networked environment.

Figure 36 is a simplified illustration of a screen display of a GUI or Shopper / Buyer Interface for use with the present invention in which details are provided about companies selected by the user from among the choices provided after the user has clicked the "Advanced Search" option on the screen in Figure 35.

Figure 37 is a simplified illustration of a screen of a GUI or Shopper / Buyer Interface for use with the present invention in which selected items and their descriptions are displayed in response to the user selecting the "Domain A" tab on the screen. Figure 38 is a simplified illustration of a screen display of a GUI or Shopper / Buyer Interface for use with the present invention in which vendors that are listed sell items in Domain A in response to the user who has clicked "Advanced Search" option on the screen in Figure 37. Figure 39 is a simplified illustration of a screen display of a GUI or Shopper / Buyer Interface for use with the present invention in which details are provided of the results of a search conducted using the Semantics Recognition Buyer Agent"s feature of the present invention. The Shopper / Buyer Interface responds to the user submitting a search request through the search parameters interface as shown at the bottom of the screen in Figure 38.

Figure 40 illustrates the Main Page of the user interface as it may appear on a desktop or laptop or other display for an embodiment of the present invention.

Figure 41 illustrates the Main Page of the user interface as it may appear on a desktop or laptop or other display when the user selects a country where vendors of interest are located for an embodiment of the present invention.

Figure 42 illustrates a Results Page containing the results of a search for a keyword in an embodiment of the present invention. Figure 43 illustrates the Advanced Search page of an embodiment of the present invention.

Figure 44 provides a flowchart that depicts the detailed application logic of Shopper/Shopping Agents in accordance with and embodiment of the present invention.

Figure 46 provides information about the country information fields maintained by an embodiment of the present invention. Figure 47 illustrates the process for adding country information in accordance with an embodiment of the present invention.

Figure 48 illustrates the screen provided at the Administration Console listing Countries in the database in accordance with an embodiment of the present invention. Figure 49 illustrates the screen which appears on the

Figure 52 illustrates the process for adding vendor information in accordance with an embodiment of the present invention. Figure 53 illustrates the Administration Console screen that appears when the Vendor link is clicked in the upper right hand corner of the Console in accordance with an embodiment of the present invention.

Figure 54 illustrates an example of a screen which appears on the Administration Console following an operation to retrieve vendors for a given specific locale, in this example, the United States in accordance with an embodiment of the present invention.

Figure 55 illustrates Existing Details for a vendor that appears in a Vendor screen/page of the Administration Console in accordance with an embodiment of the present invention.

Figure 56 illustrates the screen which appears on the Administration Console in connection with editing vendor information in the database in accordance with an embodiment of the present invention.

Figure 58 illustrates the Add Training Example screen which is used for operator input for a new training example in accordance with an embodiment of the present invention.

Figure 62 illustrates the model used for the Select Country function of a mobile implementation of the present invention. Figure 63 illustrates the model used a mobile embodiment of the present invention for searching for an item.

Figures 64A, 64B, 64C, 64D, 64E, 64F, and 64G illustrate the appearance of the main screen in an emulation of a mobile handheld device screen in a mobile embodiment of the present invention. Figure 65 is an illustration of the "Learning in Progress - Please

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS Referring to Figure 2, a generalized diagram is provided illustrating the interaction between a preferred embodiment 10 of the present invention, a user / buyer 12, and online vendors 14, by way of the World Wide Web / Internet 16.

In the preferred embodiment 10 of the present invention, a Learner Agent 18 (also referred to as a Semantics Recognition Learner Agent) and a Shopper Agent 20 (also referred to as a Semantics Recognition Buyer Agent) are provided. A server 22 is employed to provide access to an offline database 24 that stores global multilingual vendor information. A system administrator 26 prepares/compiles

training data about selected vendor sites and stores them in a "vendor list" 27 in offline database 24 through server 22. The system administrator 26 can then employ the training data and the Semantics Recognition Learner Agent 18 to conduct "inductive learning" from training pages retrieved from vendor sites by way of the World Wide Web 16. The "inductive learning" results in vendor descriptions in the form of vendor description list 28 which are stored in the offline database 24.

A user / buyer 12 can use the preferred embodiment of the present invention to retrieve designated information about designated subjects by using Semantics Recognition Buyer Agent (SRBA) 20. The SRBA 20 processes a request from the user / buyer 12 by using information contained in the previously learned vendor descriptions 28. The information in the vendor descriptions 24 permits the Semantics Recognition Buyer Agent 20 to instantly prepare and issue searches on many vendor Websites substantially simultaneously by way of the World Wide Web 16. The vendor descriptions also permit the Semantics Recognition Buyer Agent 20 to instantly process received search results, and to present to the user / buyer 12 the results of the search from all vendor sites searched which have been filtered of extraneous and irrelevant information.

Referring now to Figure 3, flowchart 100 illustrates the operation of an embodiment of the present invention of the Semantics Recognition Learner Agent (SRLA) 18. In the preferred embodiment of the present invention, the Semantics Recognition Learner Agent 18 is embodied in a computer program running on a server or personal computer. In step 110, the Semantics Recognition Learner Agent 18 retrieves pre-defined or earlier-prepared training data from the "vendor lists" 27 stored in the training database 24. The training database 24 is preferably offline.

The training data includes a bundle of data pertaining to the online vendors from which information is to be learned. These data may include URLs, domain descriptions, sample products and

Figure 4 provides an example of the types and description of name labels of trained or "learned" data in accordance with the present invention. Figure 5 is the illustrated example of the table for the learned actual "data elements" which have been generated during the vendor descriptions learning process for Figure 4, and are stored in the vendor description list in the offline database, and maintained by the system administrator 26.

The "trained" data is preferably stored in an SQL-compliant or a Microsoft Access database. This adds extra extensibility to the selection of the data container from different vendors. Typically, the trained data is independent of the product domain, written characters and presentation style of the online vendor. One exception is the URL path in the trained data, which is required to uniquely identify different vendors.

Returning to Figure 3, in step 120 a check is imposed to see if more vendors are required to be learned by the Semantics Recognition Learner Agent 18. If there are vendors pending to be learned, the Semantics Recognition Learner Agent 18 will proceed to step 130; otherwise, the learning session terminates. In step 130, using the predefined training data, the Semantics Recognition Learner Agent 18 intelligently accesses specified online vendors to which the pre-defined training data corresponds. For each of the specific products specified

in the training data, the Semantics Recognition Learner Agent 18 searches the specific product via the searching feature of the vendor"s site. Typically, the Semantics Recognition Learner Agent 18 retrieves several pages of training data to be learned from the system of the present invention or from manual input of the system administrator, which are called "training pages," and which will later be used to perform inductive learning. In the preferred embodiment, control data (training data to induce error pages in the vendor sites) is also included in this phase. Next, in step 140, the computer program performs an inductive learning on the training pages obtained by the Semantics Recognition Learner Agent 18. The objective of the inductive learning is to obtain a generic description of the site and how it organizes the product data and logically presents the product data to a potential online customer. The product of this learning is called a "vendor description" 28 — this phase will be further described and explained in accordance with Figure 6.

Then, in step 150, the Semantics Recognition Learner Agent 18 stores the learned result preferably in an SQL-compliant or Microsoft Access database 24. (The vendor information or "vendor descriptions" 28 stored in offline database 24 will later be used by the online Semantic Recognition Buyer Agent 20.) Following the completion of the storing step 150, the Semantics Recognition Learner Agent 18 returns to the step 120 to see if there are more vendors to be learned. If so, steps 130 through 150 are repeated. Otherwise, the learning process terminates.

Referring now to Figure 7, the vendor descriptions learning process will be explained in further detail using is a simple model of information extraction, and a simplified training page example. The left hand side of Figure 7 shows the alignment of model and price information as it appears to a potential customer browsing a vendor site. The right hand side of Figure 7 shows the HTML coding which

generates the alignment. For example, the first three (3) lines on the right hand side identify the coding as HTML, provide the name of the alignment — "A Simple Product Catalogs," and indicate the start of the information to be displayed. Line four (4) provides the text for the title of the table — "MD PRICE." Lines six and seven (6,7) provide the text for the names of the columns, "Model Number" and "PRICE (US$)," respectively. Lines eight through eleven (8-11) provide model number and price information. The remaining lines identify such information as the end of the table, the alignment of the table, and the end of the body of the Product Catalog.

Firstly, a wrapper function generates a set of "labels" for the given training page. A label is used to identify the location of information for the training products in the training page. Figure 8 illustrates for the simple product training page of Figure 7, a set of labels generated by the Semantics Recognition Learner Agent 18. The "labels" in Figure 8 indicate that the simple product catalogue page of Figure 7 contains four (4) "tuples," where each tuple consists of an "item" value and a "price" value. A pair of integers represents each value. Consider the first pair, <174, 180>. These integers indicate that the attribute of the first tuple is the sub-string between position 174 and 180, i.e. the string ΗM381 MD" is located between position 174 and position 180. As used in this example, position means the number of characters from a designated beginning point, such as the beginning of a page, or the end of the "head" of a page. Spaces between text characters are counted as a character position. Inspection of the Figure 7 reveals that the letter "H" in the string "HM381 D" occurs 174 character positions from the "<" character in the first line; and that the "D" in th