User Modeling and User-Adapted Interaction

, Volume 16, Issue 2, pp 129–169 | Cite as

An LDAP-based User Modeling Server and its Evaluation

  • Alfred Kobsa
  • Josef Fink
Open Access
Original Paper


Representation components of user modeling servers have been traditionally based on simple file structures and database systems. We propose directory systems as an alternative, which offer numerous advantages over the more traditional approaches: international vendor-independent standardization, demonstrated performance and scalability, dynamic and transparent management of distributed information, built-in replication and synchronization, a rich number of pre-defined types of user information, and extensibility of the core representation language for new information types and for data types with associated semantics. Directories also allow for the virtual centralization of distributed user models and their selective centralized replication if better performance is needed. We present UMS, a user modeling server that is based on the Lightweight Directory Access Protocol (LDAP). UMS allows for the representation of different models (such as user and usage profiles, and system and service models), and for the attachment of arbitrary components that perform user modeling tasks upon these models. External clients such as user-adaptive applications can submit and retrieve information about users. We describe a simulation experiment to test the runtime performance of this server, and present a theory of how the parameters of such an experiment can be derived from empirical web usage research. The results show that the performance of UMS meets the requirements of current small and medium websites already on very modest hardware platforms, and those of very large websites in an entry-level business server configuration.


User modeling server Directory server LDAP Architecture Evaluation Performance Scalability 


  1. Aha D.W. (1992) Tolerating noisy, irrelevant and novel attributes in instance-based learning algorithms. Int. J. Man-Machine Studies 36, 267–287. DOI: 10.1016/0020–7373(92)90018-GCrossRefGoogle Scholar
  2. Almeida, V., Bestavros, A., Crovella, M., Oliveira, A.: Characterizing reference locality in the WWW. Fourth International Conference on Parallel and Distributed Information Systems, IEEE Computer Society, 92–103 (1996) DOI: 10.1109/PDIS.1996.568672Google Scholar
  3. Andrews G. (1991) Paradigms for process interaction in distributed programs. ACM Comput. Surveys 23(1): 49–90. DOI: 10.1145/103162.103164CrossRefGoogle Scholar
  4. Bigfoot: Bigfoot (2006) Scholar
  5. Borland: Borland VisiBroker (2006) Scholar
  6. Bosch G. (1988) ASCON. Memo, SFB 314: AI—Knowledge-Based Systems. Department of Computer, Science Saarland University, Saarbrücken, GermanyGoogle Scholar
  7. Brajnik G., Tasso C. (1994) A shell for developing non-monotonic user modeling systems. Int. J. Human-Computer Studies 40: 31–62. DOI: 10.1006/ijhc.1994.1003CrossRefGoogle Scholar
  8. Breese, J., Heckerman, D., Kadie, C.: Empirical analysis of predictive algorithms for collaborative filtering. Proceedings of the Fourteenth Annual Conference on Uncertainty in Artificial Intelligence (UAI-98), San Francisco, Morgan Kaufmann, pp 43–52 (1998) ftp://ftp.research.–12.pdfGoogle Scholar
  9. Breslau, L., Cao, P., Fan, L., Phillips, G., Shenker, S.: Web caching and Zipf-like distributions: evidence and implications. INFOCOM’99. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies, (126–134) (1999) DOI: 10.1109/INFCOM.1999.749260Google Scholar
  10. Bright, A., Kay, J., Ler, D., Ngo, K., Niu, W., Nuguid, A.: Adaptively recommending museum tours. UBICOMP-05 Workshop on Smart Environments and their Applications to Cultural Heritage, Tokyo, Japan (2005) Scholar
  11. Brusilovsky, P., Ritter, S., Schwarz, E.: Distributed intelligent tutoring on the Web. AI-ED′97, 8th World Conference on Artificial Intelligence in Education, Kobe, Japan, pp. 482–489. (1997) Scholar
  12. Carmichael D.J., Kay J., Kummerfeld B. (2005) Consistent modelling of users, devices and sensors in a ubiquitous computing environment. User Model. User-Adapted Interact. J. Personal. Res. 15(3–4): 197–234. DOI: 10.1007/s11257–005–0001-zCrossRefGoogle Scholar
  13. Chadwick D. (1996) Understanding X.500: The Directory. London, ThomsonGoogle Scholar
  14. Critical Path.: Critical Path (2006) http://www.cp.netGoogle Scholar
  15. Datta A., Dutta K., VanderMeer D., Ramamritham K., Navathe S.B. (2001) An architecture to support scalable online personalization on the web. VLDB J. 10, 104–117. DOI: 10.1007/s007780100037zbMATHGoogle Scholar
  16. Deep Map.: Deep Map: intelligent, mobile, multi-media and full of knowledge (Project Homepage) (2001) Scholar
  17. Duska, B.M., Marwood, D., Feeley, M. J.: The measured access characteristics of world-wide-web client proxy caches. USENIX Symposium on Internet Technologies and Systems, Monterey, CA (1997) Scholar
  18. enQuire: enQuire Identity Server. (2006). Scholar
  19. Excite: Excite Network Online Media Kit.(2006)|ListRental|3|1.html.Google Scholar
  20. Fenstermacher, K.D., Ginsburg, M.: Mining client-side activity for personalization. Fourth Workshop on advanced issues in electronic commerce and web information systems (WECWIS), Newport Beach, CA, (2002), pp. 44–51. Scholar
  21. Finin T.W. (1989) GUMS: A general user modeling shell. In: Kobsa A., Wahlster W., (eds) User Models in Dialog Systems. Berlin, Heidelberg, Springer-Verlag, pp. 415–430Google Scholar
  22. Finin T.W., Drager D. (1986) GUMS1: A general user modeling system Sixth Canadian Conference on Artificial Intelligence. Montreal, Canada, pp. 24–29Google Scholar
  23. Fink, J.: Transactional consistency in user modeling systems. In: Kay, J., (ed.) UM99 User Modeling: Proceedings of the Seventh International Conference, pp. 191–200, Wien New York, Springer-Verlag (1999) Scholar
  24. Fink, J.: User modeling servers—Requirements, design, and evaluation. IOS Press, Amsterdam, Netherlands, (2004) Scholar
  25. Fink J., Kobsa A. (2000) A review and analysis of commercial user modeling servers for personalization on the world wide web. User Model. User-Adapted Interact. J. Personal. Res. 10(2–3): 209–249. DOI: 10.1023/A:1026597308943CrossRefGoogle Scholar
  26. Fink J., Kobsa A. (2002) User modeling in personalized city tours. Artificial Intelligence Rev. 18(1): 33–74. DOI: 10.1023/A:1016383418977CrossRefzbMATHGoogle Scholar
  27. Fink J., Koenemann J., Noller S., Schwab I. (2002) Putting personalization into practice. CACM 45(5): 41–42. DOI: 10.1145/506218.506242Google Scholar
  28. Glassman S. (1994) A caching relay for the world wide web. Computer Networks ISDN Sys. 27(2): 165–172. DOI: 10.1016/0169–7552(94)90130–9CrossRefGoogle Scholar
  29. Goldman, A.: Top U.S. ISPs by subscriber: how we count. ISP-Planet, (2005) Scholar
  30. Goldrei, S., Kay, J., Kummerfeld, B.: Exploiting user models to automate the harvesting of metadata for learning objects. AIED-05 Workshop on Adaptive Systems for Web-Based Education: Tools and Reusability, Amsterdam, Netherlands (2005) .pdf.Google Scholar
  31. Goodman, B., Linton, F., Schoening, J.: Workshop on standards for learner modeling (1997) Scholar
  32. Gribble, S.D., Brewer, E.A.: System design issues for internet middleware services: deductions from a large client trace. USENIX Symposium on Internet Technologies and Systems, Monterey, CA, (1997) Scholar
  33. Heckmann, D., Schwartz, T., Brandherm, B., Schmitz, M., von Wilamowitz-Moellendorff M.: GUMO: The general user model ontology. In: Ardissono, L., Brna P., Mitrovic A., (eds). User Modeling 2005: 10th International Conference, UM 2005, Edinburgh, Scotland, pp. 428–432 (2005) DOI: 10.1007/11527886_58Google Scholar
  34. Herlocker, J., Konstan, J., Borchers, A., Riedl, J.: An algorithmic framework for performing collaborative filtering. Proceedings of the 22nd Annual International ACM SIGIR Conference on Research and Development in Information Retrieval., New York, pp. 230–237. (1999). DOI: 10.1145/312624.312682Google Scholar
  35. Hill P., Lloyd J. (1993) The Gödel programming language. MIT Press, Cambridge, MAGoogle Scholar
  36. Howes T., Smith M., Good G. Understanding and deploying LDAP directory services. IN, Macmillan Indianapolis, (1999)Google Scholar
  37. Howes T.A., Smith M. (1997) LDAP: programming directory-enabled applications with lightweight directory access protocol. Macmillan, Indianapolis, INGoogle Scholar
  38. IBM: IBM Lotus Notes (2006a) Scholar
  39. IBM: IBM Tivoli Directory Server (2006b) directory-server/Google Scholar
  40. Informix: Informix Product Family. (2006) Scholar
  41. ISO: Information technology—Database languages—SQL. ISO/IEC 9075:1989, International Standardization Organization, Geneva, Switzerland (1989) Scholar
  42. ISO: Information technology—Database languages—SQL. ISO/IEC 9075:2003, International Standardization Organization, Geneva, Switzerland (2003) Scholar
  43. ITU-T: Information technology—open systems interconnection—the directory: overview of concepts, models and services. Recommendation X.500 (02/01), International Telecommunication Union (2001) Scholar
  44. IVW: IVW online usage data march 2006, (2006) (in German) ausweisung2/suchen.php.Google Scholar
  45. Kay J. (1990) um: a toolkit for user modelling. Second International Workshop on User Modeling, Honolulu, HIGoogle Scholar
  46. Kay J. (1995) The um toolkit for reusable, long term user models. User Model. User-Adapted Interact. J. Personal. Res. 4(3): 149–196. DOI: 10.1007/BF01100243CrossRefMathSciNetGoogle Scholar
  47. Kay, J., Kummerfeld, B., Lauder, P.: Personis: a server for user models. In: De Bra, P., Brusilovsky, P., Conejo, R., (eds.) Adaptive Hypermedia and Adaptive Web-Based Systems: Second International Conference, AH 2002. Berlin Heidelberg, Springer-Verlag, pp. 203–212 (2002) http:// Scholar
  48. Keung, S., Abbott, S.: LDAP server performance report. (1998) Scholar
  49. Kobsa A. (1990) Modeling the user’s conceptual knowledge in BGP-MS, a user modeling shell system. Comput. Intelligence 6, 193–208CrossRefGoogle Scholar
  50. Kobsa, A.: Utilizing knowledge: the components of the SB-ONE knowledge representation workbench. In: Sowa, J. (ed.) Principles of Semantic Networks: Exploration in the Representation of Knowledge. Morgan Kaufmann, San Mateo, CA, pp. 457–486 (1991)Google Scholar
  51. Kobsa A. (2001) Generic user modeling systems. User Model. User-Adapted Interact. J. Personal. Res. 11(1–2): 49–63. DOI: 10.1023/A:1011187500863zbMATHGoogle Scholar
  52. Kobsa A., Koenemann J., Pohl W. (2001) Personalized hypermedia presentation techniques for improving customer relationships. Knowledge Eng. Rev. 16(2): 111–155. DOI: 10.1017/S0269888901000108.CrossRefzbMATHGoogle Scholar
  53. Kobsa A. Generic User Modeling Systems In: Brusilovsky, P., Kobsa, A., and Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization. Heidelberg, Germany: Springer Verlag (2006, forthcoming).Google Scholar
  54. Kobsa, A., Müller, D., Nill, A.: KN-AHS: an adaptive hypertext client of the user modeling system BGP-MS. Proceedings of the Fourth International Conference on User Modeling, Hyannis, MA pp. 99–105. Reprinted in Maybury, M., Wahlster, W., (eds.) (1998). Readings in Intelligent User Interfaces. Morgan. Kaufman, San Mateo, CA pp. 372–378 (1994) Scholar
  55. Kobsa A., Pohl W. (1995) The BGP-MS user modeling system. User Model. User-Adapted Interact. J. Personal. Res. 4(2): 59–106. DOI: 10.1007/BF01099428Google Scholar
  56. Kobsa, A., Pohl, W., Fink, J.: A standard for the performatives in the communication between applications and user modeling systems (Draft) (1996) 1996-kobsa-pohl-fink-rfc.pdf.Google Scholar
  57. Kobsa A., Schreck J. (2003) Privacy through pseudonymity in user-adaptive systems. ACM Trans. Internet Technol. 3(2): 149–183. DOI: 10.1145/767193.767196CrossRefGoogle Scholar
  58. Kummerfeld, R., Kay, J.: Remote access protocols for user modelling. Proceedings and Kit for Workshop User Models in the Real World, Chia Laguna, Sardinia, pp. 12–15 (1997) Scholar
  59. Liberty: Liberty Alliance Project: Digital Identity Defined (2006) Scholar
  60. Loshin P. (2000) Big Book of Lightweight Directory Access Protocol (LDAP) RFCs. Morgan Kaufmann San Diego, CAGoogle Scholar
  61. LTSC: Learning Technology Standards Committee (2006) Scholar
  62. Malaka R., Zipf A.: DEEP MAP—Challenging IT research in the framework of a tourist information system. In: Fesenmaier, D., Klein, S., Buhalis, D., (eds.) Information and Communication Technologies in Tourism 2000: Proceedings of ENTER 2000. Wien, New York, Springer, pp. 15–27, (2000)Google Scholar
  63. McCune W.W.: OTTER 3.0 reference manual and guide. In: Argonne National Laboratory, Mathematics and Computer Science Division. Argonne, IL (1994) http:// Scholar
  64. Microsoft: Microsoft Exchange Server (2006a) Scholar
  65. Microsoft: Windows Server 2003 Active Directory (2006b) server2003/technologies/directory/activedirectory/default.mspxGoogle Scholar
  66. Miller B.N., Konstan J.A., J. Riedl (2004) PocketLens: toward a personal recommender system. ACM Trans. Information Syst. 22(3): 437–476. DOI: 10.1145/1010614.1010618CrossRefGoogle Scholar
  67. MindCraft: DirectoryMark: the ladp server benchmarking tool (2006). directorymark/Google Scholar
  68. Mitchell T. (1997) Machine learning. McGraw-Hill, New York, NYzbMATHGoogle Scholar
  69. Nelson B.: Sizing Guide for Netscape Directory Server (2002). sizing/doc2/Directory4_0-SizingGuide.htmlGoogle Scholar
  70. Nielsen J. (1993) Usability engineering. Academic Press, San Diego, CAzbMATHGoogle Scholar
  71. Nielsen J.: Zipf Curves and Website Popularity (1997) Scholar
  72. Nielsen J. (2000) Designing Web Usability. New Riders, Indianapolis, INGoogle Scholar
  73. Novell: Novell eDirectory (2006) Scholar
  74. Nvision: 35 Percent of Surfing Time is Spent on 50 Sites (1999) surveys/index.cgi?f=VS&art_id=905355323&rel=trueGoogle Scholar
  75. O’Connor, M., Herlocker, J.: Clustering items for collaborative filtering. Proceedings of the ACM SIGIR Workshop on Recommender Systems, Berkeley, CA (1999) http://web.engr. Scholar
  76. OMG: Object Management Group (OMG) (2001) http://www.omg.orgGoogle Scholar
  77. Orfali R., Harkey D., Edwards J. (1994) Essential Client/Server Survival Guide. Wiley and Sons, New YorkGoogle Scholar
  78. Orwant J. (1993). Doppelgänger goes to school: machine learning for user modeling. Master Thesis, MIT, Cambridge, MAGoogle Scholar
  79. Orwant, J.: Privacy and user models: threats, caveats, and safeguards (1994) http:// Scholar
  80. Orwant J. (1995) Heterogenous learning in the Doppelgänger user modeling system. User Model. Interact. J. Personal. Res. 4(2): 107–130. DOI: 10.1007/BF01099429CrossRefGoogle Scholar
  81. Padmanabhan V., Qiu L. The content and access dynamics of a busy web site: findings and implications. ACM SIGCOMM, ACM pp. 111–123 (2000) DOI: 10.1145/347059.347413Google Scholar
  82. Paiva A., Self J. (1994) TAGUS: a user and learner modeling system. In: Proceedings of the Fourth International Conference on User Modeling. Hyannis, MA, pp. 43–49Google Scholar
  83. Paiva A., Self J. (1995) TAGUS—A user and learner modeling workbench. User Model. User-Adapted Interact. J. Personal. Res. 4(3): 197–226. DOI: 10.1007/BF01100244CrossRefGoogle Scholar
  84. PAPI: PAPI Learner, Draft 8 Specification (2001) Scholar
  85. Passport: Microsoft Passport Network (2006) http://www.passport.netGoogle Scholar
  86. Patrick, A.S., Black, A.: Implications of access methods and frequency of use for the National Capital Freenet (1996) Scholar
  87. Pereira, F., (Ed.): C-Prolog User’s Manual Version 1.5. (1996). cps106/ Scholar
  88. Persistent: Persistent (2006) http://www.persistentsys.comGoogle Scholar
  89. Pohl W. (1998) Logic-Based Representation and Reasoning for User Modeling Shell Systems. Sankt Augustin, Germany, infixGoogle Scholar
  90. Pohl W., Schwab I., Koychev I. (1999) Learning about the user: a general approach and its application. IJCAI′99 Workshop Learning About Users. Stockholm, SwedenGoogle Scholar
  91. Pope A. (1997) The CORBA Reference Guide: Understanding the Common Object Request Broker Architecture. Addison-Wesley, Sydney, AustraliaGoogle Scholar
  92. Razmerita, L., Angehrn, A., Maedche, A.: Ontology-based user modeling for knowledge management systems. In: Brusilovsky, P., Corbett, A., De Rosis, F. (eds.): User Modeling 2003: 9th International Conference, UM 2003. Heidelberg, Germany, Springer Verlag, pp 213–217 (2003) http:// Scholar
  93. Rozanski, H., Bollman, G., Lipman, M.: Seize the occasion: usage-based segmentation for internet marketers (2001)–20–01_eInsight.pdfGoogle Scholar
  94. Schreck, J.: Security and Privacy in User Modeling. Kluwer Academic Publishers, Dordrecht, Netherlands, (2003) Scholar
  95. Schwab I., Pohl W. (1999) Learning Information Interest from Positive Examples. UM99 Workshop on Machine Learning for User Modeling, Banff, CanadaGoogle Scholar
  96. Shukla, S., Deshpande, A.: Tutorial: LDAP Directory Services—Just Another Database Application? 2000 ACM SIGMOD International Conference on Management of Data, New York, NY (2000) Scholar
  97. Sparck Jones K. (1972) A Statistical Interpretation of term specificity and its application to retrieval. J. Documentation 28: 11–21. DOI: 10.1108/00220410410560573CrossRefGoogle Scholar
  98. Sun: Sun Java System Directory Server Enterprise Edition (2006) products/directory_srvr_ee/Google Scholar
  99. Switchboard: Switchboard (2006) Scholar
  100. Tornago: Net Perceptions (2006) http://www.tornago.comGoogle Scholar
  101. VanderMeer, D., Dutta, K., Datta, A.: Enabling Scalable Online Personalization on the Web. 2nd ACM Conference on Electronic Commerce, Minneapolis, MN, ACM, pp. 185–196 (2000) DOI: 10.1145/352871.352892Google Scholar
  102. Vassileva J., McCalla G., Greer J. (2003) Multi-agent multi-user modeling in I-Help. User Model. Interact. J. Personal. Res. 13(1+2): 179–210. DOI: 10.1023/A:1024072706526CrossRefGoogle Scholar
  103. Vergara H. (1994) PROTUM: a prolog based tool for user modeling WIS-Report 10, WG Information Systems. Department of Information Science University of Konstanz, GermanyGoogle Scholar
  104. Wahl, M., Howes, T., Kille, S.: Lightweight Directory Access Protocol (v3). RFC 2251, Internet Engineering Task Force (1977) Scholar
  105. Wang, X., Schulzrinne, H., Kandlur, D., Verma, D.: Measurement and analysis of LDAP performance. ACM SIGMETRICS Conference on Measurement and Modeling of Computer Systems, ACM, pp. 156–165 (2000) Scholar
  106. WebTrends: WebTrends Customers Switch to First-Party Cookies and See Accuracy Skyrocket by More Than 300 Percent (2005). NewsRoomArchive/2005/WebTrendsCustomersSwitchtoFirst-PartyCookiesandSeeAccuracy SkyrocketbyMoreThan300Percent.aspxGoogle Scholar
  107. Weltman, R., Tomlinson, C., and Sonntag, S.: The Java LDAP Application Program Interface (2005) Scholar
  108. Wettschereck, D.: A hybrid nearest-neighbor and nearest-hyperrectangle algorithm. Proceedings of the 7th European Conference on Machine Learning, Catania, Italy, Springer-Verlag, pp. 323–335 (1994)Google Scholar
  109. Wettschereck D., Dietterich T.G. (1995) An experimental comparison of nearest-neighbor and nearest- hyperrectangle algorithms. Machine Learning 19(1): 5–28. DOI: 10.1007/BF00994658Google Scholar
  110. Whitaker, R., Kay, J.: Location and activity modelling in intelligent environments. UM05 Workshop on Decentralized, Agent Based and Social Approaches to User Modelling, Edinburgh, Scotland (2005) Scholar
  111. (2006) Scholar
  112. Wilson, D.R., Martinez, T.R.: Instance Pruning Techniques. In: Fisher, D., (ed.) Machine Learning: Proceedings of the Fourteenth International Conference (ICML′97). San Francisco, CA, Morgan Publishers, pp. 403–411 (1997) wilson.icml97.prune.pdfGoogle Scholar
  113. Wilson D.R., Martinez T.R. (2000) Reduction techniques for instance-based learning algorithms. Machine Learning 38, 257–286. DOI: 10.1023/A:1007626913721CrossRefzbMATHGoogle Scholar
  114. Yaacovi, Y., Wahl, M., Genovese, T.: Lightweight Directory Access Protocol (v3): Extensions for Dynamic Directory Services. RFC 2589, Internet Engineering Task Force (1999) Scholar
  115. Yimam, D., Kobsa, A.: Expert finding systems for organizations: problem and domain analysis and the demoir approach. In: Ackerman, M., Cohen, A., Pipek, V., Wulf, V., (eds.) Beyond Knowledge Management: Sharing Expertise. MIT Press, Cambridge, MA, (2003) Scholar
  116. Yodlee: Yodlee (2006). http://www.yodlee.comGoogle Scholar
  117. Young, A.: Connection-Less Lightweight X.500 Directory Access Protocol. RFC 1798, Internet Engineering Task Force (1995) Scholar
  118. Zipf G.K. (1949) Human Behavior and the Principle of Least Effort. Addison-Wesley Reading, MAGoogle Scholar

Copyright information

© Springer Science+Business Media B.V. 2006

Authors and Affiliations

  1. 1.Donald Bren School of Information and Computer SciencesUniversity of CaliforniaIrvineUSA
  2. 2.Department of Computer and Engineering SciencesUniversity of Applied SciencesFrankfurt am MainGermany

Personalised recommendations