The Active Shopping Cart (ASC) is an ActiveX based commerce technology based on Microsoft’s ActiveX and Active Server Pages (ASP) technologies. Using the ASC, web developers can build sites capable of providing users with the ability to add items to a virtual "shopping cart", view the contents of the cart, remove items from the cart, and purchasing those items in the cart.

The ASC is extensible in that custom information can be stored for each item. This allows the developer complete flexibility over the data associated with each item that can be added to the cart. Such data is referred to as custom properties.

The ASC is based on the Microsoft ActiveX Component Object Model (COM). These ActiveX components are server, not client centric. This allows for faster access by the client, as there is no need to download any additional software. This is not to be confused with ActiveX controls, which are downloaded to the client. Instead, these components are located and manipulated on the server using Microsoft’s Active Server Pages.

By using these components on the server, clients are not limited to using Microsoft’s Internet Explorer browser or any other browsers that support ActiveX technology. This allows us to reach a much larger target audience than if we had focused on client side technologies such as ActiveX controls, Java, VBScript, and/or JavaScript. Instead, any number of browser’s including Netscape Navigator and/or Communicator can use the resulting web sites that are based on ASC.

The second technology required is Microsoft’s Active Server Pages. Active Server Pages (ASP) is Microsoft’s server side scripting technology, which replaces standard CGI-programming. ASP’s generate dynamic content, which can be returned to the client as pure HTML. ASP’s have the ability to communicate the Active Shopping Cart, thus providing complete flexibility in the way the ASC is used and presented to the consumer. ASP’s are faster than CGI and can retain "state" information during a client’s visit to the enabled site. This allows the shopping cart to retain the items that are contained within the client’s individual cart throughout the visit.

The Active Shopping Cart objects are COM (ActiveX) components (objects) that reside on Windows NT Server. The same NT Server will also be running Microsoft Internet Information Server (IIS) and the Microsoft Active Server Pages engine.

The Active Shopping Cart objects are implemented in Microsoft Visual C++ 5.0 using Microsoft’s Active Template Library (ATL). These COM objects can then be instantiated and manipulated by Visual Basic Script code, which is embedded in the Active Server Pages (ASP’s). These pages are requested by the browser via a URL.

Active Server Pages are a combination of VBScript or JavaScript and HTML. Both VB and JavaScript are very "thin" languages in that they do not have much functionality built in to them. However, they have the ability to dynamically create and manipulate server side COM objects as well as several built in COM objects, which are maintained by the Active Server Pages engine. Since the shopping cart is implemented as a set of COM components (objects), the scripting languages can create, delete, and modify the contents of the shopping cart and the items in the cart.

The advantages of this approach are many. To the consumers (those that visit the site), the shopping cart is transparent in its functionality. All requests are made via URL from the client to the server. The server on the other hand has code, which is executed to satisfy the requests of the user. In other words, the browser talks to the web server through URL requests. The web server acts on those requests, and returns pure HTML to the client. This opens the web site up to any number of browser and computer types, including Windows 3.x, Windows 95, Apple Macintosh, and all flavors of Unix.

Another advantage of this approach is that the shopping cart and each cart item are stored in memory and not in some persistent type of storage such as a database or disk file. The reason this is so important is that there are no maintenance issues in regard to cleaning up old data. Many solutions store shopping cart data in a database such as in a Microsoft Access MDB file. This is most common in IDC/MDB based solutions. Instead, our technology is "clean" in that it does not require persistent storage maintenance (i.e. remove old shopping cart data at periodic intervals).

The Active Shopping Cart is based on solid object oriented design principals and ActiveX. There is a clear and easy to use object hierarchy that the scripting languages use to create and maintain shopping carts. The shopping cart itself is a collection (similar to an array) of shopping cart items. For each item the user wants to add to the shopping cart, a shopping cart item is created and added to the collection. At any time, the user can opt to remove such items (objects) from the cart (collection), add new items, or view all items.

Another feature of the Active Shopping Cart is the flexibility inherent to the shopping cart items themselves. Since any individual item can have any number of special attributes associated with it (size, color, style, etc.) it is difficult to create a universal "catch all" type of cart item object. To accommodate this type of flexibility we added a collection of custom properties to the cart item object along with its standard set of stock properties (e.g. price, quantity, description, etc.). This allows for the storing of special information regarding each item in the cart.

The following diagram displays the object hierarchy. This hierarchy is replicated for each consumer throughout the shopping experience. The consumer specific objects are destroyed when the consumer terminates his or visit to the site.

The above diagram represents the one to many relationships between the cart on the items and the items and their associated custom properties.

The level of programmer required to work with the ACE will depend on the functionality required of the web site. A standard set of pages is provided for adding, removing, and displaying items in the cart. However, these standard pages do not support the flexibility of the custom properties, as this feature is too advanced (specific) for generic use. To utilize the custom property capabilities, the developer can customize the script code that works with the objects.

To access the shopping cart functionality from individual web pages (e.g. some type of HTML based catalogue), the web designer can create hyperlinks to the Active Server Pages which work with the shopping cart objects. The following is an example URL that would add an item to the shopping cart.

<a href="addcartitem.asp?ID =10&Desc=Harachi Sandals&Quantity=1&Price=9.99">
    Harachi Sandals

Optionally, an HTML form can be used to pass data to a CGI (possibly an Active Server Page) which can format the request into a URL and redirect the request the appropriate action page.

As you can see, the Active Shopping Cart is a very flexible, yet powerful technology for creating robust shopping carts quickly and easily. It is based on solid technology provided by Microsoft, the world leader in software development.

ProductsDevelopment PhilosophyActive Shopping CartActive Catalogue EngineActive Commerce Solution

Phone: 949.487.9175 E-mail:
© Copyright 1999 to Fulcrum Point Technologies