=Paper= {{Paper |id=Vol-485/paper-1 |storemode=property |title=A Framework for Flexible User Profile Mashups |pdfUrl=https://ceur-ws.org/Vol-485/paper1-F.pdf |volume=Vol-485 |dblpUrl=https://dblp.org/rec/conf/um/AbelHHHHKLS09 }} ==A Framework for Flexible User Profile Mashups== https://ceur-ws.org/Vol-485/paper1-F.pdf
Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, June 22-26, 2009




       A Framework for Flexible User Profile Mashups

       Fabian Abel1 , Dominikus Heckmann2 , Eelco Herder1 , Jan Hidders3 , Geert-Jan
             Houben3 , Daniel Krause1 , Erwin Leonardi3 , Kees van der Slujis4
                  1
                    L3S Research Center, Leibniz University Hannover, Germany
                                  {abel,herder,krause}@l3s.de
                    2
                        DFKI GmbH, Saarbrücken, Germany heckmann@dfki.de
                      3
                         Web Information Systems, TU Delft, The Netherlands
                   {a.j.h.hidders,g.j.p.m.houben,e.leonardi}@tudelft.nl
           4
             Department of Computer Science, Eindhoven University of Technology, The
                                 Netherlands k.a.m.sluijs@tue.nl



              Abstract. Exploiting the rich traces of users’ Web interaction promises
              to enable cross-application user modeling techniques, which is in particu-
              lar interesting for applications that have a small user population or that
              are used infrequently. In this paper we present a framework for the effec-
              tive interchange of user profiles. In addition to derivation rules for user
              profile reasoning, the framework employs flexible mash-ups of RSS-based
              user data streams for combining heterogeneous user data in a Web 2.0
              environment.


       1    Introduction
       With the increased use of search engines, e-commerce systems and social net-
       working sites – with famous examples such as Amazon, Facebook, Flickr, Deli-
       cious and Google – user modeling and Web personalization has evolved from a
       rather marginal activity to a mature technology that is exposed to the majority
       of Web users on a daily basis. Most techniques are based on collaborative filter-
       ing and social network analysis [1]. What they have in common is that they are
       rather straightforward and depend on a sufficiently large number of users that
       regularly interact with the system [2].
           Apart from the major players in the field, many systems cannot boast on
       a large user base. These systems vary from startups to well-established sites
       that serve a specialized audience. As an example, e-learning systems inherently
       have a limited audience, in particular if the system is specifically used by one
       institution. For these stakeholders, it would be beneficial to have user profile
       information from other applications. Recent research suggests that, if carefully
       designed and tested, heterogeneous types of data can be used for reliably classify-
       ing users [3, ?]. Other motivations for cross-application user modeling include the
       synchronization of recommendations and user interaction between applications
       and better support of user migration.
           Obviously, the idea of cross-application user modeling is not new. In the
       1990s several generic user modeling servers have been developed, to be used by
       a wide range of applications (for example [4]). One of the major reasons that




                                                            1
Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, June 22-26, 2009




       this approach has never been successful is that these servers were centralized,
       making use of predefined structures. By contrast, user models differ significantly
       between applications, depending on the adaptation goals, the context of use,
       privacy concerns, the design philosophy and many other factors.
           New trends from the Web 2.0 as well as the related work, as will be discussed
       in Section 2, motivate an infrastructure for cross-application user modeling. This
       infrastructure, which we introduce in Section 3, is heavily inspired by social
       networking approaches and is based on the assumption that adaptive systems (or
       rather the system administrators) themselves are the ones who know best what
       the system needs. The infrastructure relies on the brokerage of user models, with
       system administrators searching, discussing, adopting, rating and recommending
       third parties’ user models. Section 4 outlines how to use the framework to reason
       on distributed user profiles and demonstrates how user profiles can be mashed-up
       by combining RSS feeds in so-called user pipes.

       2     Background and Related Work
       As described in Tim O’Reilly’s Web 2.0 design patterns [5], small sites with
       a small user population and specific demands make up the bulk of the Web
       2.0 domain. Whereas the exchange of login credentials is already facilitated by
       initiatives such as OpenID1 , still in most cases users need to build their user
       profiles from scratch for every application. A recent trend is the combination
       of functionality from multiple Web 2.0 applications in so-called mashups. For
       mashups, the ability to share user profiles is particularly essential for a better
       integration and cooperation between the single applications.
           For the exchange and interpretation of user profile data, common semantics
       user profile statements are needed [6]. Possible formats for user profiles include
       the General User Model Ontology (GUMO) [7] or Friend of a Friend (FOAF) [8].
       However, as we have seen in the introduction of this paper, these kinds of pre-
       defined and static user profile ontologies do not sufficiently cater for the diverse
       needs of applications. Therefore, we argue that these types of shared models
       should rather be built bottom-up, starting from successful implementations in
       specific systems [9].
           As a further development, we can see a shift from author-predefined adapta-
       tion rules to collaborative filtering techniques and the use of Web 2.0 interaction
       mechanisms [10]. With a huge pool of data, many candidate user groups to com-
       pare the user with, and several methods at hand, it becomes even more important
       to experiment with and optimize the conceptual adaptation decisions [11].
           In essence, there are two ways to ensure interoperability between two adaptive
       systems and their user models. The first approach involves a lingua franca, an
       agreement between all parties on a common representation and semantics [12].
       As described in the introduction, this is the philosophy underlying the generic
       user model server approach, used by CUMULATE [13] or PersonIs [14]. Given
       the wide variety in system objectives and the associated user models, generic
       1
           http://openid.net/




                                                            2
Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, June 22-26, 2009




       user model servers have never gained wide acceptance. An alternative approach,
       which is more flexible, involves conversion between the different systems’ user
       models.
            Conversion allows for flexible and extensible user models, and for systems to
       join into a platform. Moreover, in contrast to a fixed lingua franca approach,
       conversion is suitable for ‘open-world user modeling’, which is not restricted to
       one specific set of systems [15]. This flexibility comes at a price, though. In ad-
       dition to possibly losing information in the conversion process, it might be that
       models are simple incompatible (in the sense that there is no suitable mapping)
       or that mappings are incomplete (information required in one model is not avail-
       able in the other). Given that there are suitable mappings, the observations in
       the different systems may lead to contradictions [15]. Several methods for con-
       flict detection and resolution are conceivable, among others reliability weighting
       and majority voting - again, which method to use, may be a subjective design
       decision.
            As pointed out by [16], computer-based representation of provenance data
       is crucial for users who want to analyze, reason, and decide whether or not
       they trust electronic data. In the article, the generic concept of p-statements
       is explained: each statement should contain a track record of the input data,
       the processing and a description of the output data. With this information,
       a derivation record can be built for analysis purposes. The DCMI Metadata
       Terms [17] is a collection of properties and classes together with vocabulary
       and syntax encoding schemes that can be applied to describe the provenance of
       data as well. The DCMI terms allow to describe metadata of things, such as the
       creator, time of creation, copyright and modifications.

       3    A Framework for User Modeling 2.0
       Results from the preceding section provide support for the exchange of user mod-
       els between applications. From the related work we have seen that incorporating
       user profile information from other contexts is not a straightforward process,
       though. The poor take-up of the generic user modeling servers, developed in the
       1990s, suggests that a centralized approach, with predefined ontologies, does not
       cater the needs of the multitude of adaptive systems, which are very heteroge-
       neous in nature.
           Based on the above, we designed a framework that facilitates the broker-
       age of user profile information and user model representations. This framework,
       which we call the Grapple User Modeling Framework (GUMF), is designed to
       meet the following requirements. First, various types of systems should be able
       to connect to the framework. Further, the framework should provide a flexible
       user model format that allows for new types of statements and derivation rules.
       Sufficient metadata should be given to indicate its origin, contents and valid-
       ity. The browsing and searching of user data or model extensions, provided by
       the connected systems, should be supported by rating mechanisms. As several
       systems may provide competing models of, for example, user interests, and as
       the quality of these models can vary significantly it is important that a system




                                                            3
Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, June 22-26, 2009




                           Add-On
                         Functionality                                                 Universal         Event
                                                                          Core         Reasoners        Loggers
                                                                         Ontology


                                                          e
                                                  manag                                                       UM Editors
                       Adaptive System 1

                                         UM 1                                 User Modeling Broker
                                                             lore
                                                       exp
                                                                                                              Browsing,
                                                                                       Registered Systems      Rating
                                                                                        Available UM Data




                                                               da vide
                                                                                       Ontology Extensions




                                                                  ta
                                                                   o
                                                                pr
                                                                                          User Events
                          Adaptive System 2




                                                                                  ry
                                                UM 2




                                                                              data
                                                                              que
                                                       Third-Party UM

                                                                            UM 3


          Fig. 1. Generic overview of the functionality of the User Modeling Framework.

       administrator (i.e. a user of the framework) can take a motivated decision which
       alternative is most suitable for his personalization purposes.
           The core element of the framework can be considered a broker, which provides
       the means for other systems to share and make use of their user data. In this
       section we provide an overview of the elements that are needed for setting up
       this framework.

       3.1 Architecture
       In Figure 1, a generic overview of the GUMF architecture is depicted. The cen-
       tral element of the framework is the Grapple User Modeling Broker (GUMB),
       which manages the communication between the connected systems. The broker
       keeps track of the registered systems, the available user model data and ontol-
       ogy extensions. Further, it keeps a centralized repository of user events. The
       framework provides Web-based administrative interfaces for managing the sys-
       tem configuration and for exploring the available user data streams, reasoning
       mechanisms and ontology extensions. The target audience of these interfaces
       consists of the administrators and programmers of client (adaptive) systems, in
       order to find and incorporate suitable user data streams and to offer their own
       data streams. For most mapping, merging and reasoning tasks, administrators
       can utilize generic reasoning plugins (cf. Section 4) and hence generate user pro-
       file data in a format that perfectly fit their applications’ needs. For more specific
       reasoning tasks, administrator can create own reasoning plugins an provide them
       to the GUMF community. Once configured, the client systems can exchange user
       data without human intervention. The provision of data takes place in the form
       of statements, of which the structure is explained in more detail in Section 3.2.
            The querying of user data – summarized in statements – is realized through
       three alternative interfaces. The RESTful interface provides a light-weight query-
       ing approach for retrieving statements that match a certain simple pattern. A
       more elaborate interface is provided by a SOAP interface, which is more flexible,




                                                                                       4
Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, June 22-26, 2009




         property description
              ID   The globally unique ID of the statement.
                   In the current version of the UM ontology we differentiate between gc:Statement,
             type  which is a basic user profile statement, and gc:Observation, which is a speciali-
                   zation of gc:Statement and models a (user) observation made in some application.
           subject The entity (usually the user) the statement is about.
                   Refers to a property (of a domain ontology) that either characterizes the subject
         predicate (e.g. foaf:interest or k:hasKnowledge) or describes some action the subject has
                   performed (e.g. nop:hasBookmarked or nop:hasClicked).
            object The value of the predicate (e.g. “ItalianFood” or dbpedia:semantic web).
           created Specifies when the statement was created.
           creator Refers to the entity that created the statement. In case of a gc:Observation it
                   identifies the entity that reported the observation.
         temporal Allows to define temporal constraints on the validity of the statement.
          evidence If a statement was produced by a reasoning process then evidence can be used to
                   show how the statement was deduced.
            rating The rating of a statement indicates the level of trust in the statement.

       Table 1. Important properties of a Grapple statement as defined in the Grapple User
       Modeling Ontology (see: http://www.kbs.uni-hannover.de/gumf.owl).


       at the cost of a more complicated syntax and communication costs. A third inter-
       face allows applications to subscribe to an RSS-based data stream that matches
       a query, to be notified upon changes. The latter interface is particularly useful
       for event-driven personalization mechanisms, which depend on events in other
       systems.
           The GUMF architecture is inspired by the Personal Reader Framework [18],
       with as main enhancements the extensible user modeling ontology format, flex-
       ible query interfaces and a community-based way of sharing and ranking user
       models.


       3.2    User Modeling Ontology

       The Grapple User Modeling Ontology specifies the lingua franca for exchanging
       user profile information and user observations in a User Modeling 2.0 infrastruc-
       ture. It follows the approach of the General User Model Ontology [7] (GUMO)
       and UserRDF [19], as it is built upon the notion of reified subject-predicate-object
       statements. The subject models the entity (usually the user) that the statement
       is about. The predicate refers to a property that either characterizes the subject
       (e.g. foaf:interest or k:hasKnowledge) or describes some action the subject has
       performed (e.g. nop:hasBookmarked or nop:hasClicked ). The object contains the
       corresponding value (e.g. “ItalianFood” or dbpedia:semantic web). Each state-
       ment has a globally unique ID and is enriched with metadata (see Table 1), such
       as the creation date or details about the provenance of the statement.
       gc   = http://www.grapple-project.org/grapple-core/
       foaf = http://xmlns.com/foaf/0.1/
       gc:Statement {
         gc:id:        gc:statement-peter-2009-01-01-3234190;
         gc:user:      http://www.peter.de/foaf.rdf#me;
         gc:predicate: foaf:interest;
         gc:object:    http://en.wikipedia.org/wiki/Italy;
        }




                                                                5
Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, June 22-26, 2009




           In the example above, the subject (gc:user), predicate, and object refer to
       entities that are not part of the Grapple Core ontology. gc:user identifies the user
       Peter by referring to his FOAF profile, which is a separate document located
       at ”http://www.peter.de/foaf.rdf”. The value of the predicate is ”foaf:interest”.,
       which is a property defined in the FOAF ontology [8]. To find out about the
       actual meaning of ”foaf:interest”, one has to look up the FOAF ontology2 :
       
         
         
         
         
       

           The definition of ”foaf:interest” gives us the actual meaning of the Grapple
       statement. The comment describes the semantics of the predicate, to be read by
       people that want to use the property. Making use of the definitions of the domain
       and range, we can deduce that ”http://www.peter.de/foaf.rdf#me” is of the type
       ”foaf:Person”, that ”http://en.wikipedia.org/wiki/Italy” is a ”foaf:Document”
       and that the predicate ”foaf:interest” reflects ‘A page about a topic of interest
       to this person’.


       4     User Profile Reasoning

       The Grapple User Modeling Framework allows to dynamically utilize reasoning
       plugins to enable user profile reasoning. In this section we present two generic
       solutions that can be utilized directly by the GUMF client applications: (1) a
       rather classical rule-based approach and (2) a novel approach, which we call
       User Pipes, that allows user profile reasoning by mashing up different user pro-
       file data streams. However, client administrators can also create own reasoning
       plugins and share them with the community. A user interface within the client
       administrator backend allows to search for and publish own reasoning plugins.


       4.1     Reasoning Plugins

       Reasoning plugins are software components that can be integrated into the Grap-
       ple User Modeling Framework (GUMF). In general, they deduce new information
       about a user based on existing user profile data or based on some observations.
       Reasoning plugins can come in different flavors. For example, a plugin might
       gather and align user data from different social networking services in order to
       create a more comprehensive user profile.
           The first generic reasoning plugin is rule-based and applies derivation rules,
       which can be defined and adjusted by client applications. These derivation rules
       enable GUMF to generate new Grapple statements. Rules allow to express simple
       2
           More precisely, the ontology that is identified via foaf = http://xmlns.com/foaf/0.1/




                                                              6
Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, June 22-26, 2009




       types of inference in terms of premise-conclusion rules that derive new statements
       from the existence of other statements. These rules can, for example, (i) infer
       statements that embody new knowledge, (ii) they can be used to map between
       different ontologies or (iii) they describe how to solve problems where state-
       ments or rules conflict with each other. A simple derivation rule that infers new
       knowledge about a user might express the following: If a user has bookmarked
       a website that has topic t then the user is interested in t. Such a rule can, for
       example, simply be formulated as a SPARQL query:
       PREFIX foaf:   
       PREFIX gc:     
       PREFIX gnop:    

       CONSTRUCT { gc:derivedStatement   gc:user      ?user .
                   gc:derivedStatement   gc:predicate foaf:interest .
                   gc:derivedStatement   gc:object    ?topic }
       WHERE {
                   ?originalStatement    gc:user      ?user
                   ?originalStatement    gc:predicate gnop:hasBookmarked .
                   ?originalStatement    gc:object    ?document .
                   ?document             foaf:topic   ?topic . }

          A mapping rule could simply map one value to another value or it can com-
       pose a new value from other values or decompose one value in different separate
       values. Conflict resolution rules can be used to define preferences among different
       types of statements or preferences among different rules.


       4.2    User Pipes

       In addition to the rule-based approach described in the section above, GUMF
       enables deduction of user profiles also by mashing up different (user profile)
       data streams in RDF or RSS-format by utilizing Semantic Web Pipes3 or Yahoo
       Pipes4 . In this chapter, we focus on the processing of RSS data by utilizing
       Yahoo pipes as this enables the usage of a huge amount of structured data on
       the web. Different RSS streams are syndicated to so-called User Pipes.
           How this works is shown by our GUMF demonstrator5 . A specific profile
       stream searchedFor of the user fabian can be retrieved by requesting /user/fabi-
       an/predicate/searchedFor. An extract of the data stream is given as follows.
       
       
         
           GUMF data stream matching the query ’user = fabian’
           http://semweb.kbs.uni-hannover.de:8082/grapple-umf/user/fabian
           
             
               
               
               ...
             
           
         
       3
         http://pipes.deri.org/
       4
         http://pipes.yahoo.com
       5
         Available at http://semweb.kbs.uni-hannover.de:8082/grapple-umf/




                                                               7
Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, June 22-26, 2009




       Fig. 2. User Pipe: Mashing up user profile data streams from different sources
       (here: GUMF search activity stream and Delicious bookmarks). Online available at:
       http://pipes.yahoo.com/userpipes/gumf showcase

         
           user ’fabian’ searched for ’Trento’
           http://semweb.kbs.uni-hannover.de:8082/grapple-umf/62715
           http://fabian.myopenid.com
           http://www.grapple-project.org/nop.owl#searchedFor
           Trento
           1.0
           2009-03-20T18:23:50Z
           http://bookstore.example.org
           ...
         
         ...
       

           This data stream can be combined with other data streams to deduce new
       user profile information. For example, it can be combined with information from
       the feed /user/fabian/predicate/interest to deduce whether the user’s interests
       and search activities are thematically similar or it can even be mashed up with
       other RSS feeds from the Web.
           To demonstrate how meaningful streams can be created by embedding profile
       data from social networking sites, we created a simple user pipe6 that combines
       the search activity stream listed above with the latest bookmarks that the user
       created at Delicious7 . Figure 2 shows the editor view of the user pipe. The given
       user pipe detects those keywords that a user applied for both search and tagging
       of his latest bookmarks, which is expressed via the following YQL query.
       SELECT title, link, description, subject, predicate, object FROM rss WHERE url in

       6
           Available at http://pipes.yahoo.com/userpipes/gumf showcase
       7
           http://feeds.delicious.com/v2/rss/fabianabel




                                                              8
Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, June 22-26, 2009




         (’http://semweb.kbs.uni-hannover.de:8082/grapple-umf/user/fabian/predicate/searchedFor’)
        AND object in
         (select category from rss where url in (’http://feeds.delicious.com/v2/rss/fabianabel’) )

          The result of the YQL query is then passed to a component that tries to map
       the detected keywords to Wikipedia articles that further explain the concepts
       that are referred by the keywords. In the last stage, an Item Builder component is
       used to generate new Grapple statements. Similar to the example in Section 3.2,
       the above item makes use of the FOAF vocabulary (foaf:interest) to express
       that the user is interested in http://en.wikipedia.org/wiki/Trento (cf. bottom of
       Fig. 2):
       
         ...
         
           http://en.wikipedia.org/wiki/Trento
           http://fabian.myopenid.com
           http://xmlns.com/foaf/0.1/interest
           http://en.wikipedia.org/wiki/Trento
           http://pipes.yahoo.com/userpipes/gumf_showcase
         
         ...

           The benefit of the user pipe approach is that user pipes result in user profile
       streams that can again be used by other profile reasoners, which allows for flexible
       and extensible user profile reasoning. For publicly available data streams it is
       also possible to directly use the Yahoo Pipe editor, which provides an easy drag-
       and-drop user interface to process, combine, and perform various operations on
       data streams. This means that not only programmers or experts familiar with
       SPARQL or rule-based languages are enabled to create profile reasoners, but
       also leisure user as they can create such reasoners (user pipes) visually.
           The critical point of this approach is the immensely huge amount of RSS
       data on the Web that could slow down the processing of a pipe. Therefore, we
       are going to explore caching strategies (e.g. the precompute pipes regulary and
       deliever the cached results) as proposed in [13] and will conduct performance
       measures as well.

       5    Conclusions and Future Work
       In this paper we motivated and introduced a framework for cross-application
       user modeling. Based on several pieces of earlier work, the framework provides
       a domain-independent, decentralized approach for combining several user mod-
       els. In a collaborative manner, the connected systems can create, share, select,
       mashup, adopt and rate their user models, supported by a basic infrastructure
       that includes search and browse facilities, editors and universal reasoning mech-
       anisms.
           Although the framework provides the basic infrastructure for cross-application
       modeling, its success depends on the take-up by a critical mass and the availabil-
       ity of the necessary tools. In the GRAPPLE project, we are currently integrating
       the framework, to be used by a number of different e-learning systems. By evalua-
       tion and experimentation, we expect to find additional requirements and success
       factors for building an ecology of adaptive systems that exchange parts of their
       user models.




                                                              9
Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, June 22-26, 2009




       Acknowledgements The work presented in this paper has been sponsored by
       the EU FP7 STREP Project GRAPPLE.
       References
        1. Frias-Martinez, E., Magoulas, G., Chen, S., Macredie, R.: Modeling human behav-
           ior in user-adaptive systems: Recent advances using soft computing techniques.
           Expert Systems with Applications 29 (2005) 320–229
        2. Bilenko, M., White, R.: Mining the search trails of surfing crowds: Identifying
           relevant websites from user activity. In: Proc. WWW2008. (2008)
        3. Korth, A., Plumbaum, T.: A framework for ubiquitous user modeling. In: Proc.
           Information Reuse and Integration 2007. (2007)
        4. Kobsa, A., Koenemann, J., Pohl, W.: Personalized hypermedia presentation tech-
           niques for improving customer relationships. The Knowledge Engineering Review
           16 (2) (2001) 111–155
        5. Oreilly, T.: What is web 2.0: Design patterns and business models for the next
           generation of software. Social Science Research Network Working Paper Series
           (2007)
        6. Ankolekar, A., Krötzscha, M., Trana, T., Vrandecic, D.: The two cultures: Mashing
           up web 2.0 and the semantic web. In: Web Semantics: Science, Services and Agents
           on the World Wide Web. (2008)
        7. Heckmann, D., Schwartz, T., Brandherm, B., Schmitz, M., von Wilamowitz-
           Moellendorff, M.: Gumo - the general user model ontology. In: Proc. of the 10th
           Int. Conf. on User Modeling, Edinburgh, UK (2005) 428–432
        8. Brickley, D., Miller, L.: FOAF Vocabulary Specification 0.91. Namespace docu-
           ment, FOAF Project (November 2007) http://xmlns.com/foaf/0.1/.
        9. Paramythis, A., Loidl-Reisinger, S.: Adaptive learning environments and e-learning
           standards. Electronic J. of e-Learning 2 (2) (2004) Paper 11
       10. Chatti, M.A., Jarke, M.: The future of e-learning: a shift to knowledge networking
           and social software. Int. J. Knowledge and Learning 3 (4/5) (2007) 404–420
       11. Nielsen, J.: Personalization is over-rated. Alertbox (October 1998)
       12. Stewart, C., Celik, I., Cristea, A., Ashman, H.: Interoperability between aeh user
           models. In: Proc. APS 2006. (2006)
       13. Yudelson, M., Brusilovsky, P., Zadorozhny, V.: A user modeling server for con-
           temporary adaptive hypermedia: An evaluation of the push approach to evidence
           propagation. In: 11th International Conference on User Modeling. (2007) 27–36
       14. Assad, M., Carmichael, D., Kay, J., Kummerfeld, B.: Personisad: Distributed,
           active, scrutable model framework for context-aware services. (2007) 55–72
       15. Aroyo, L., Dolog, P., Houben, G., Kravcik, M., Naeve, A., Nilsson, M., Wild, F.:
           Interoperability in pesonalized adaptive learning. J. Educational Technology &
           Society 9 (2) (2006) 4–18
       16. Moreau, L., Groth, P., Miles, S., Vazques-Salceda, J., Ibbotson, J., Jiang, S.,
           Munroe, S., Rana, O., Schreiber, A., Tan, V., Varga, L.: The provenance of elec-
           tronic data. Communications of the ACM 51 (4) (2008)
       17. DCMI Usage Board: DCMI Metadata Terms. DCMI Recommendation, Dublin
           Core Metadata Initiative (January 2008)
       18. Henze, N., Krause, D.: Personalized access to web services in the semantic web. In:
           SWUI 2006 - 3rd International Semantic Web User Interaction Workshop, Athens,
           Georgia, USA (nov 2006)
       19. Abel, F., Henze, N., Krause, D., Plapper, D.: User modeling and user profile
           exchange for semantic web applications. In: 16th Workshop on Adaptivity and
           User Modeling in Interactive Systems, Wuerzburg, Germany. (2008)




                                                            10