personalization scenarios like frequent viewed areas
in the application or usage of advanced features.
Profile information can be divided into two
categories (G. Adomavicius, 1999): demographic
and transactional. The first describes who the user is,
and the second what the user does. In recommender
systems, the transactional data refers to the history
of purchases.
Most stereotype definitions are unstructured, in
the sense that there cannot be an inheritance of
stereotypes to build a user profile. The notion of a
given stereotype being a specialization of other
doesn’t seem to exist. The main exception seems to
be (Brajnik & Tasso, 1994), that considers a
hierarchically ordered set of basic user modelling
purposes.
User modelling is not just about using the
obtained profiles. In order to be efficient while in
production, the storage mechanism must be
considered. Therefore, how are the canonical user
models and the user profiles stored?
The majority of user model systems are shell
systems, even though there are increasingly more
exceptions, as pointed by (Alfred, 2001; Alfred &
Josef, 2006; Judy, Bob, & Piers, 2002). In (Alfred &
Josef, 2006) authors present UMS, a user modelling
server that is based on the Lightweight Directory
Access Protocol. UMS extends traditional LDAP
container schema to store the required information.
3 USER PROFILES
We proposed a structured profile approach, in which
each user profile is the aggregation of several basic
profiles. These basic profile definitions can be seen
as transactional templates, since they define what a
user can do in the system. For a detailed description
of basic profile and user profile according to the
model here described, please refer to (Teixeira,
Pinto, & Martins, 2006).
3.1 Basic Profile
Bearing in mind the application scope, each basic
profile holds information on what can be done with
this basic profile and how it should be presented to a
user.
This approach differs from the current state of
the art on user modelling: we are not defining
adaptable interfaces for content or products; we are
using user modelling to customize access to services
within a corporate environment, based on dynamic
roles. Still, some parallelisms can be made with
profile and prediction stereotypes (Liliana & Anna,
2000): the profile part resembles the formal process
within the organization that attributes the basic
profile and the prediction part is the actual basic
profile, since it describes user features - service
usage permissions in this case.
3.2 User Profile
This user profile approach is service related, directly
dependent of the user’s condition in the
organization. The user cannot change these
conditions; it’s up to some formal process in the
organization to issue and revoke user permissions.
At his first visit in the system, the user’s profile
will merely be a set of basic profiles applied to a
particular user. However, the user has the possibility
to customize the entire application, as well as a
particular service to which he may access at the
moment. More importantly, it’s possible for each
service in the application to access the user’s current
profile and adapt its information accordingly with
personal tastes, or themes.
Each user profile is almost unique, since it is the
aggregation of the privileges granted by the
associated set of basic profiles, plus the user
customization. A corporate user profile update will
add, revoke or renew a given clearance, making the
user profile more than just a simple permissions file;
it also keeps a historical record of the privileges that
a user had, along with personalization and
characterization information.
3.3 User Profile Storage
Each user profile and each basic profile is stored in
an XML file. As mentioned, the user can only alter
part of his profile, being the organization responsible
for altering the remaining information. Typically,
there are two types of user profile updating: direct
and indirect updating:
Direct updating – occurs when an organization
formal process updates a specific user profile
(revoking permissions or issuing clearances);
when the user makes changes to his profile;
when the application or service update the
user’s profile;
Indirect updating – occurs when an
organization formal process updates a basic
profile (changing security, adding or removing
clearances). When this process occurs, it’s
necessary to access all the user profiles that
have the basic profile active and act
accordingly with the new basic profile
definition.
WEBIST 2008 - International Conference on Web Information Systems and Technologies
330