As web-based services (such as on-line banking, on-line auction, eCommerce, etc.) become more prevalent, the web-sites which offer them are also becoming more complex. For users with special needs (for example, blind users, users with hand-held devices, etc), the majority of these sites pose barriers that limit accessibility to important data [1,2]. To address this problem, this poster presents a system that delivers web-based services to users through customizable and stream-lined web interfaces. The system uses a semantic-approach to web-content transcoding which identifies and facilitates multi-step, goal-oriented transactions. Through a web intermediary (WBI) [3], the system uses XML-transcoding technologies (PatML) [4] to extract from web-content and present for user interaction only the data relevant to execute these transactions. Furthermore, it presents this data to users according to specific needs and preferences.
Consider a woman, who is blind, who wants to make a bid on an auction site (such as eBay, Yahoo! Auctions or OnSale) using a voice-browser. If she accesses any of these sites directly, she must navigate through many obstacles (such as site maps, banners, etc.). Instead, she accesses the site through Aurora. In response, the system presents her with a text-only HTML page that contains only a search-box. After she enters a query, the system returns another text-only HTML that contains only the item-list (extracted from the data of the auction-site page). As she proceeds through the transaction, the system continues to transform each web page, presenting her with the relevant data through this specialized interface. Moreover, it presents any of the auction sites through this same interface.
As discussed below, the system architecture makes it easily extensible to many different web-services. Moreover, by targeting the data for semantic transcoding, it allows it to be rendered according to specific needs.
The system models user interactions with web-sites as multi-step, goal-oriented transactions. For example, a user searches for an item by (1) entering a query, and (2) browsing an item-list. To formalize these transactions, the system uses XML schemas which describe each transaction step (order and associated data) as an XML element type—for example, search-element followed by item-list element. Through a web intermediary (WBI), the system dynamically constructs these XML elements as the user proceeds from one step of the transaction to the next. For the system to provide access to any new service, it requires only the addition of a new set of XML schemas that describe the transactions which define it.
In order to extract web data from specific web pages, the system uses an XML transcoding tool (PatML) through a web intermediary (WBI). For each transaction step, it keeps an XML transformation rule specific to the web-page type. (For example, for the "item-list" step, a PatML rule specifies how to target and extract the HTML item-list from an eBay results page). Through WBI, it retrieves the web page and applies the rule in order to construct the new XML element. Hence, to implement a transaction for a web-site, the system keeps a set of transcoding rules specific to the site (one rule per transaction step).
After constructing each XML element, the system invokes a specialized renderer which transforms the element for presentation to the user. For rendering through a voice-browser, like IBM Homepage Reader[5], for example, a renderer converts the XML data into text-only HTML. Alternatively, for rendering through a hand-held device, the renderer converts the XML data data into WML.
This poster presents a model for adapting web content to specific user needs by focusing on multi-step, service-oriented transactions. It presents a semantic framework that enables the system to build and manage sets of transcoding rules for numerous web sites. This transaction model offers a new approach to web-content transcoding for accessibility and multi-modal rendering. The current prototype implements XML schemas and transcoding rules for a number of different on-line auction sites and search-engines. To add new transactions to the system by developing new XML schemas so far has posed no major challenges. The reason is that, to execute the same transaction on any service-instance (for example, to make a bid on any auction site), a user normally proceeds through well-defined transaction steps common to each instance. To write stable XML-transcoding rules for each web-site instance, however, has been more problematic for two reasons: (1) HTML page formats change often, and (2) HTML data provides no semantic clues to identify the target data. As a result, each rule must be robust enough to withstand changes yet precise enough to target the data. Perhaps, in this context, the use of XHTML[6], at the source, to annotate web data with transaction semantics has the potential to significantly alleviate these problems. To address the problem at the system, however, future work will focus on the design and implementation of both a tool to aid PatML authoring and a tool to monitor significant changes in rule-associated web pages in order to update rules automatically.