Abstract
The Personal Web arose to empower end users with the ability to drive and integrate the Web by themselves, according to their own interests. This is usually achieved through Web Augmentation, Mashups or Personal Information Managers (PIM), but despite the diversity of approaches, there are still scenarios that require to be solved through the combination of their features, which implies the end user knowing diverse tools and being able to coordinate them. This paper presents WOA, a platform conceived under the foundations of the Personal Web for supporting the harvesting and materialization of information objects from existing Web content, and their enhancement through the addition of specialized behaviour. This makes it possible to conceive multiple Web information objects coexisting in a same space of information and offering the end user with different modes of interaction, therefore, with multiple kinds of personal Web experiences.
You have full access to this open access chapter, Download conference paper PDF
Similar content being viewed by others
Keywords
1 Introduction
Web contents are daily growing in size and diversity, and it is increasingly likely that much of the information we need for achieving any of our daily activities is already available somewhere on the Web, although not always part of the same information source. Several approaches have addressed the need of consuming and offering the user with content or services from different sources in order to achieve their personal goals; Mashups [2] can integrate both of them in a new application that reuses existing information for accomplishing a new purpose that the original context did not contemplate; Personal Information Management (PIM) systems [3] allow the user to collect information objects for further making them available in a personal information space for performing specific operations; Web Augmentation [1] enhances existing Web pages according to the user’s requirements, by adding or adapting specialized behaviour, styles or content. Each of the mentioned applications and techniques empower users with the capability of interacting with existing content, but they work isolated, thus making it difficult to have a complete Personal Web experience. Even worst, a concrete application might lack some desirable feature that makes it possible the integration with another application. E.g. it could be designed to consume just static or dynamic, structured or unstructured data; to empower the end users or just to support developers; to provide sharing mechanisms for individual information objects or the whole information space; to conceive the stored data as application independent, or making it hard to externally consume it in a straightforward way (often inconceivable for end users); to consider Reactive Web [5] capabilities; to consume content from multiple sources; to augment a Web page with such information.
The Personal Web, as explained in [4], is intended to “empower ME, as a common internet user of generally limited technical skills, the autonomy and ease of control in assembling and aggregating integrate-able web elements across the web for a particular sphere of context of my concern”. This promises to completely change the user experience in the WWW, because it claims him as the axis of such extensive space.
In this light, we present Web Objects Ambient (WOA), a platform for achieving full interactive Personal Web experiences by reusing existing Web content and improving them with specialized behaviour artefacts, enabling diverse modes and contexts of interaction with such information objects under a common environment.
2 The Web Objects Ambient
In order to guarantee complete Personal Web experiences, it is not only desirable that the multiple features of the aforementioned applications to be provided by a single integrated platform, but also that the created information objects could be reusable in diverse contexts and consumed from an application-independent storage. We implemented our platform by extending the Firefox browser capabilities, which provided us high-level permissions to access the file system, to create custom browser user interfaces, to clone objects into diverse contexts and to manipulate the Web with almost no restrictions (e.g. no same-origin policy). But despite technical issues, it is mainly required that the experience could be produced by the same person who knows, in detail, the business logic and data needs to meet; the end user himself. To do so, we empowered him with the capability of composing his own information space, a common environment where personal information objects “live” and can be enhanced with specialized behaviour. We refer such objects as Concepts, and they are instantiated from Concept Templates (CT). To define a CT, the user should navigate to the Web page containing the content of his interest and enable the WOA Collectors by clicking a toolbar button. When this option is enabled, all the behaviour of the opened documents in the browser are prevented, the DOM elements matching the mouse pointer position are highlighted, and a special context menu is added to the UI description of the browser, where diverse mechanisms for content extraction will be displayed. Then, as shown in step (1) of Fig. 1, he can collect Web content into the WOA by right clicking the highlighted DOM element. This event makes WOA to ask a set of specialized data Collectors to analyse the DOM element, to look for properties of their interest and to render an item in the context menu, if applicable. Such properties depends on the type of data such extractor supports; the aim is to provide the user with some auto-completed data in the materialization process. E.g. processing the itemtype attribute of a microformatted element, to suggest the user certain tag for his template; this facilitates him the cognitive process of abstracting the representations and choosing a proper tag matching a semantic class of our ontology. Once the user clicks on a context menu item, a form opens in the sidebar for defining the values for the template, as shown in step (2). Some of them are transparent to the user (as the URL or the XPath), other are automatically filled by the Collector in charge (as the tag), and the remaining ones should be filled by the user himself. Once the template is saved, the user can see its thumbnail in the sidebar and, by right clicking on its configuration icon (the gear at top-right), he can access a contextual menu with some options for accessing the template edition, the concept instances view, some general purpose template (class) messages, and the template removal, as seen in step (3).
Once a concept template has been created, it could happen that the retrieved instances are not presented in a single DOM, because there is a navigation bar or a search engine in the original site. As shown in marker (a) of Fig. 1, the end user can configure a WOA search engine, so he can browse and interact with all the instances provided by the site. Back to structuration, the user should also collect and materialize Properties in the same way he did with Concepts; the only difference is he should click the second menu item in step (1) of Fig. 1, and he will see an extra combo in step (2) for associating the Property Template to any existing CT. When the user define all the templates he requires, their instances are available in the ambient but he might not be able to interact with them yet. When a CT is created, it is automatically associated with a Decorator [6], which will wrap and provide every one of its concept instances with specialized behaviour for meeting a concrete purpose. Decorators have defined a set of keywords and a set of semantic classes, and their values are used for matching a Concept with the most specific available Decorator. If there is no specific decorator for a certain tag, it applies the one devoted to general purposes. Every Decorator has a set of selectable and configurable messages, and such configuration consists in a series of parameters matching a property. If their names do not match, it is necessary that the user links them from the Decorator configuration. Decorators can be changed, and so their messages and parameters. This could be accessed by the CT’s context menu, by choosing “Functionality” as shown in marker (b) of the figure. Finally, when templates are created and decorators are configured for properly working with such templates, it is possible to interact with the concept instance’s messages through the WOA Viewer (c), in-situ augmentations (d) (provided by specialized decorators), or domain-specific WOA applications; by importing a regular Web application that uses the WOA API for accessing the collected concepts and decorators (e).
WOA also considers a second user role; a developer, in charge of extending and providing end users with new Collectors, Decorators and Applications. But for the sake of simplicity and space, in this work we just addressed end-user support details.
3 Conclusion and Further Work
In this paper we introduced WOA, a platform supporting a novel approach for enabling end users to create a diverse range of Personal Web experiences, by abstracting, structuring and enhancing existing Web content. We fully implemented such common ambient and a set of specialized artefacts to demonstrate the feasibility of the approach. Now, we are extending the platform in order to support new extraction mechanisms and to provide the end users with a broader spectrum of specific functionality for their objects. We are also working on the implementation of an end user tool for empowering them with the capability of producing their own applications, and we are designing the first experiment of the approach, focused on end users. For more details about WOA and demo videos, please visit the Web site of our project.
References
Díaz, O., Arellano, C.: The augmented web: rationales, opportunities, and challenges on browser-side transcoding. ACM Trans. Web 9(2), 8 (2015)
Ennals, R., Garofalakis, M.: Mashmaker: Mashups for the masses (demo paper). In: Proceedings of the 2007 ACM SIGMOD International Conference on Management of Data (2007)
Karger, D.R., Bakshi, K., Huynh, D., Quan, D., Sinha, V.: Haystack: a customizable general-purpose information management tool for end users of semistructured data. In: Proceedings of the CIDR Conference, January 2005
Ng, J.: The personal web: smart internet for me. In: Proceedings of the 2010 Conference of the Center for Advanced Studies on Collaborative Research, pp. 330–344, November 2010
Van Kleek, M., Moore, B., Karger, D.R., André, P.: Atomate it! End-user context-sensitive automation using heterogeneous information sources on the web. In: Proceedings of the 19th International Conference on World Wide Web, pp. 951–960. ACM, April 2010
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Pearson Education, India (1994)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Bosetti, G., Firmenich, S., Rossi, G., Winckler, M., Barbieri, T. (2016). Web Objects Ambient: An Integrated Platform Supporting New Kinds of Personal Web Experiences. In: Bozzon, A., Cudre-Maroux, P., Pautasso, C. (eds) Web Engineering. ICWE 2016. Lecture Notes in Computer Science(), vol 9671. Springer, Cham. https://doi.org/10.1007/978-3-319-38791-8_49
Download citation
DOI: https://doi.org/10.1007/978-3-319-38791-8_49
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-38790-1
Online ISBN: 978-3-319-38791-8
eBook Packages: Computer ScienceComputer Science (R0)