S e m a n t i c
T e c h n o l o g y
Toward the Semantic Desktop:
The seMouse Approach
Jon Iturrioz, Oscar Díaz, and Sergio F. Anzuola, University of the Basque Country
M
odern computers have enjoyed increasing storage capacity, but the mechanisms that harness this storage power haven’t improved proportionally. Whether cur-
The seMouse approach
rent desktops have scaled to handle the enormous number of files computers must handle
realizes the promising
compared to just a few years ago is doubtful at best. Scalability includes not only fault
vision of the semantic
tolerance or performance stability but also the availability of tools for users to harness this power. The lack of appropriate structures and tools for locating, navigating, relating, and sharing bulky file sets is preventing users from harnessing their PCs’ full storage power.1 Powering desktops with metadata, leading to the semantic desktop, is a promising way to realize this potential. The seMouse (semantic mouse) approach strives to lower the adoption barrier of the semantic desktop by providing seamless integration between Microsoft Office-like, file-centered tooling and semantically aware, resource-centered applications. Previous approaches favored semantic competence at the expense of integration with traditional tooling. Although this can account for more sophisticated and rewarding semantic outcomes, it puts the burden of integration on users. Ultimately, this hinders the adoption of the semantic desktop. By contrast, we strive to ease the transition to the semantic desktop. We accomplish this by focusing on seamless integration and by making copy, paste, and zip operations semantically aware. We separate the world of file applications from the world of resource applications, and we use the mouse to bridge both worlds with the help of a semantic clipboard.
desktop. This approach provides seamless integration between file-centered tooling and semantically aware, resourcecentered applications.
24
1541-1672/08/$25.00 © 2008 IEEE Published by the IEEE Computer Society
This enables reinterpreting traditional desktop operations and framing them in the ontology. Approaching the semantic desktop Thus far, current efforts to develop a semantic desktop have focused on enhancing the operating system with automatic metadata extraction to overcome the limitations of strict hierarchical folder structures. Spotlight, for Macintosh, is an example of this approach (see www.apple.com/macosx/features/ spotlight). However, such proposals are format oriented; the file extension (.doc, .ppt, .html, and so on) determines the metadata to extract. If all files have the same extension, the extractor extracts identical metadata from all of them. The extractor doesn’t consider the content’s semantics, only the container’s format. This falls short in a desktop setting, in which the metadata to be extracted highly depends on the user’s mental model rather than the file format. The existence of this mental model—concretized in terms of an ontology—lets the semantic desktop treat files as knowledge base (KB) resources. (For the purpose of this article, a KB encompasses both the ontology and its instances.) According to this notion, not only is a resource capable of being adIEEE INTELLIGENT SYSTEMS
Related Work on Semantic Desktops Other researchers have recently been trying to make desktops semantically aware. The results include • • • •
ontology management tools such as Protégé (http://protege. stanford.edu); navigation and search facilities such as Fentwine (http:// fenfire.org/manuscripts/2004/fentwine); annotating-and-authoring editors such as SemanticWord;1 and additional semantic applications such as semantic calendars (www.cs.cmu.edu/~softagents/Cal), annotated photo albums (www.mindswap.org/2003/PhotoStuff), and semantic wikis (http://swik.net/semperwiki).
Gnowsis2 and Haystack3 are among the most significant projects that realize the semantic-desktop vision. Gnowsis provides a unified semantic model for the distinct resources found in traditional desktops. The desktop features several different enhanced mechanisms, including • • •
an ontology editor to specify the user-defined ontology, an explorer tool for the resources, and distinct ActiveX plug-ins for Microsoft Office applications to annotate desktop resources and thereby populate the ontology.
Unfortunately, other applications will require similar plugins, making this approach costly. Alternatively, seMouse capitalizes on the mouse as an application-independent device
dressable, but also that resource’s description embodies the notion of a concept. A concept is “a thing that represents the mental conceptualization of a user inside his information model, stored on a computer.”2 The semantic desktop systematically arranges concepts in ontologies. Although we focus here on files, resources are “any way information can manifest inside a computer system.”2 This includes MS Word documents and Web pages but also address book and calendar items. Moving from files to resources has several implications. First, a file is characterized by its format, whereas a resource is described through semantically rich concepts. Operations can exploit these semantics, leveraging traditional file operations to mimic more closely the user’s mental model. Second, a file tends to be a stand-alone entity, whereas resources are KB nodes. So, whereas file operations tend to be limited to the file itself, resource operations can have far-reaching effects, owing to the underlying ontology. For instance, creating a deliverable involves creating both the file and the deliverable-class instance. Every file has its instance counterpart in the KB. January/February 2008
that’s available regardless of the application. Haystack provides a new framework with tools for resource manipulation, search, and navigation. It also provides a set of proprietary, semantically aware applications: word processors, email clients, image manipulation, and so on. This in-house development permits tight integration with the underlying ontology. However, it also forces users to move from their familiar desktop applications to ones Haystack provides. This can jeopardize user involvement, because many users might be reluctant to move away from their office tooling. We believe the movement toward the semantic desktop should be evolutionary, building on existing practices and tooling.
References 1. M. Tallis, “Semantic Word Processing for Content Authors,” Proc. Knowledge Markup and Semantic Annotation Workshop (SemAnnot 03), CEUR-WS, 2003; http://ftp.informatik.rwthaachen.de/Publications/CEUR-WS/Vol-101/Marcelo_Tallis.pdf. 2. L. Sauermann et al., “Semantic Desktop 2.0: The Gnowsis Experience,” Proc. 5th Int’l Semantic Web Conf. (ISWC 06), LNCS 4273, Springer, 2006, pp. 887–900. 3. D. Karger et al., “Haystack: A Customizable General-Purpose Information Management Tool for End Users of Semistructured Data,” Proc. 2nd Conf. Innovative Data Systems Research (CIDR 05), Very Large Database Endowment, 2005; www-db.cs.wisc.edu/ cidr/cidr2005/papers/P02.pdf.
The semantic desktop partitions desktop functionality into two orthogonal layers. One layer contains traditional desktop applications (for example, MS Office applications); the other provides the semantic leverage that’s available for those applications. The mouse, configured according to the desktop ontology, bridges the gap between the two layers. This decoupling permits a twofold view of an artifact. Treating it as a file, users can continue using their favorite applications (for example, the Word editor). Treating it as a resource, users can profit from using the seMouse. When users click on seMouse’s middle button, it exports and imports metadata from the KB through the semantic clipboard. Whether the user is working with Word, Excel, Adobe Acrobat, Netscape, or any other application, the semantic button is always available. The use of a single gadget should facilitate user adoption of our approach. Defining the sample ontology Our work aligns with current efforts for desktops to become semantically aware.3,4 (The “Related Work on Semantic Deskwww.computer.org/intelligent
tops” sidebar gives examples of the most significant projects in this area.) As a starting point, our work assumes the existence of a user ontology and focuses on populating and capitalizing on this ontology. Populating implies the existence of annotating and authoring capabilities that permit extracting metadata from existing files. However, it’s critical to provide immediate value for this cumbersome task in terms of leveraging traditional file operations with semantic value. So, in the seMouse approach, the semantic desktop reinterprets copy, paste, and zip file operations in a semantically rich setting. The existence of a user ontology is a demanding premise. The average user has difficulty concretizing his or her mental model as an ontology. Some authors argue that current tools for ontology creation are too difficult for ordinary users.5,6 These authors empirically found that “the effort to select a class before typing in an annotation discouraged use of the tool” (Protégé, in this case).6 Aligned with these findings, Robert MacGregor, Sameer Maggon, and Baoshi Yan discuss an extreme approach to authoring, in which users immediately create metadata without first defining the ontology: 25
S e m a n t i c
T e c h n o l o g y
relatedWith
authors, authoredBy
Deliverable +title[1] +keyword[*] +abstract[1]
hasComment, commentsAbout
fundedBy, delivers Participant +fullname[1] +address[*] +phone[*] +category[1] +email[*]
supervises, supervisedBy
participatesIn, formedBy
Project +title[1] +projectCode[1] +description[1] +duration[1] +fundingBody[1]
expends, chargedTo
Comment +description +author +text Bill +description[1] +id[1] +date[1] +totalCost[1] +seller[1]
Figure 1. A sample ontology. This ontology includes five classes, characterized by a set of value-based properties (title, keyword, abstract, and so on). The ontology defines associations between these classes (for example, a Project is supervisedBy a Participant, and a Participant supervises a Project).
Annotating and authoring After configuring seMouse according to the ontology, the user interacts with the KB through the mouse. These KB interactions are context sensitive. The mouse button accomplishes distinct operations, depending on the resource state (basically, whether the file has been classified or not).
(a)
(b) Figure 2. Using seMouse for (a) file classification and (b) property annotation. Annotation involves three steps: First, the user selects the text. Second, the dropdown menu displays the deliverable class’s properties. Third, the selected text becomes the chosen property’s value.
“It is our belief that ontologies can be created later in a bottom-up fashion, as the byproduct of creating and using data, rather than a straightjacket that inhibits the evolution of domain vocabularies.”6 The seMouse approach, on the other hand, takes the ontology for granted. 26
counterpart can be either the homepage, an HTML resource, or a PDF resource), and comments (either emails or Word resources). Current desktops handle these documents as mere files. However, daily use makes evident that such files aren’t isolated entities but rather part of a larger notion. Signs of this situation are content reuse among files, as well as frequent contextual navigations in this file space. Examples of such contextual navigations would be access to a project participant’s Web page (an HTML file), followed by access to the participant’s project proposals (Word files) or associated deliverables (PDF files). These navigation patterns indicate the existence of a mental model the user follows when retrieving pieces of information from his or her desktop. An ontology makes this mental model explicit; figure 1 provides a sample. This ontology serves to configure seMouse. Desktop users define the ontology either locally (using Protégé) or remotely (for example, by accessing ontology repositories such as http:// schemaweb.info or http://swoogle.umbc. edu). Using seMouse, they can annotate and author file documents according to the rules of the ontology being loaded.
Consider the heterogeneous documents that go with a research project. These might include, for example, the project proposal (one Word file), bills paid with the project funding (15 Excel files), papers as project deliverables (30 files in both the PDF and Word formats), participants (whose desktop www.computer.org/intelligent
File classification Figure 2a illustrates file classification in seMouse. The user must first identify files as resources of any of the ontology’s classes. The user achieves this by opening a file and pressing the middle button. A menu pops up for the user to indicate for which class this file is a resource. This action creates a new instance in the KB. Property annotation Annotating and authoring becomes the counterpart to copy and paste in traditional desktops, with the difference that now these operations have counterparts in the KB. The exported item (copy) is no longer a string but a resource property. Once the user classifies a file (that is, turns it into a resource), the annotation process begins. If the user selects some text, IEEE INTELLIGENT SYSTEMS
he or she uses the mouse to export this text as part of the property’s value (see figure 2b). This action implies adding a property value to a selected resource in the KB. Of course, the set of properties depends on the resource class. In figure 2b, abstract, title, and keyword correspond to the deliverable class’s properties. Association annotation Once a file has been classified, if the user hasn’t selected any text, he or she uses the middle button to establish associations with other resources. Figure 3a depicts this situation. In this case, the user has classified the coordisProject.doc document as a project instance. When the user presses the middle button, a menu pops up for the user to associate the current resource with other target resources. The menu is ontology driven, meaning the associations are restricted to those available for the current resource. The targets of all the associations are limited to the appropriated class’s resources. In figure 3a, if the user selects delivers, this association can be established only with deliverable files, because these files constitute this association’s range class. The upper part of the delivers menu shows all the associations already annotated. The article’s title, rather than the resource URI (uniform resource identifier), serves to ease identification and navigation. Authoring The user can now exploit the associations set during annotation. For instance, the project resource can import all the property values of its associated deliverable resources. In figure 3b, the article “Authoring and Annotation of Web Pages in CREAM” appears as a deliverable of the current resource. When the user selects this article, the menu extends to the right and reveals this article’s properties. The user can select one of these properties (for instance, title), and seMouse inserts this property’s value at the cursor place. (Thus, seMouse supports instance-based authoring.) Navigating and searching Once file annotation is complete, seMouse capitalizes on the underlying KB. The next two scenarios show how to exploit semantic information for semantic navigation and semantic search. Semantic navigation File location in current desktops frequently January/February 2008
(a)
(b) Figure 3. Using seMouse for (a) association annotation (the menu shows the association of a project file) and (b) authoring (this action imports the deliverable’s title into a project resource).
implies folder digging. In contrast, semantic navigation (see figure 4) strives to exploit the human memory’s associative behavior. The ontology provides the context to facilitate resource location so that users can locate a resource on the basis of its related resources. As an example, assume a user has selected a deliverable file. When the user clicks on the middle button, a menu pops up with all the associations that have this resource as their source. As the user moves along one of these associations, another window displays the target resources, regardless of the folders where these files are physically stored. Thus, seMouse supports semantic browsing. Semantic search In traditional desktops, files are located according to their names and folders. Moving from files to resources requires querying mechanisms to locate resources on the basis of classes, properties, and associawww.computer.org/intelligent
tions. These mechanisms also exploit the underlying ontology’s inference capabilities. Figure 5 shows a deliverables menu for a semantic search. For example, let’s say a user searches for deliverables related to the article “Authoring and Annotation of Web pages in CREAM.” The system displays not only the deliverables that the user has manually annotated but also all the deliverables inferred from the semantics of the “related with” association. Thus, the system provides symmetric and transitive closure. Additionally, the user can define new types of associations using semantic rules—for example, two deliverables are related if delivered in the same project. These benefits also apply to semantic navigation. Reinterpreting traditional file operations Traditional file operations use a clipboard and a recycle bin to store temporal 27
S e m a n t i c
T e c h n o l o g y
Figure 4. Semantic navigation. The user can navigate along the associations—for example, from a project resource to its deliverables.
about its format (Is it a PowerPoint document, for example?). So, creating a file traditionally involves using a drop-down menu to select the file format, as in figure 6a. In contrast, when the user creates a resource, he or she should think about its concept (Is it a deliverable or a bill, for example?). Therefore, the user needs a drop-down menu of the concepts available in the desktop ontology, as in figure 6b. However, a resource can’t exist without its file counterpart. So, when the user selects a concept to instantiate, the system opens up the corresponding editor to create its file counterpart. For example, selecting a new deliverable causes an MS Word editor to be opened because deliverable resources have MS Word documents as their file counterparts. So that the system can detect which file format is associated with a given concept, we extended the ontology with the property. The following example indicates that deliverable resources have MS Word file counterparts: doc From this information, seMouse routes petitions to create deliverables to the default editor for .doc files. Semantic file deletion In a semantic desktop, deleting a file implies removing its resource counterpart. However, files are stand-alone entities, whereas resources are nodes in a knowledge base. So, we enhance file deletion to avoid dangling references in the KB. Specifically, deletion includes • copying the deleted resource along with
Figure 5. Semantic search. The screen shows the deliverables related to the resource “Authoring and Annotation of Web Pages in CREAM.”
information. Likewise, seMouse handles transient KB resources through a semantic clipboard and a semantic bin. The use of these transient resources depends on the operation at hand. However, such resources are transparent to the user, who works with files, as usual. Gerald Reif, Martin Morger, and Harald Gall have also proposed a semantic clipboard,7 but specifically for interoperation of MS Office applications. That is, MS Office 28
applications normally use RDF (Resource Description Framework) markup to communicate through the clipboard. In contrast, we use our clipboard as a conduit for KB operations, so MS Office applications are unaware of its existence. This is akin to our premise of two detached application worlds: the world of files and the world of resources. Semantic file creation Whenever a file is created, the user thinks www.computer.org/intelligent
all its attributes and associations from the KB to the semantic bin for undo purposes; • finding all the instances in the KB that are related to the deleted resource, and moving the corresponding associations to the semantic bin; and • removing the resource’s instance counterpart from the KB. For example, if the user deletes a deliverable file, then seMouse copies the deliverable instance counterpart to the semantic bin. Next, seMouse detects whether IEEE INTELLIGENT SYSTEMS
resources of other classes (project, participant, comment, and so on) have any association with the removed individual. If such an association exists, seMouse also copies those associations to the semantic bin and removes them from the KB. Semantic copy and paste A traditional copy operation copies the selected file’s path to the clipboard. (If the document is removed after being copied, it can’t be pasted.) Copying a resource extends this procedure by copying the file’s instance counterpart into the semantic clipboard. Specifically, once a user selects a file, clicks the middle button, and chooses the semanticCopy operation, seMouse creates a new RDF triplet in the clipboard. At this time, there will be two instances, one in the KB and another in the clipboard, referring to the same file. It’s time for pasting. A traditional paste operation creates a new file from the last file moved to the clipboard. Pasting a resource extends this procedure by turning this new file into a resource. This involves four steps: 1. Obtain the newly created file’s URI. 2. Recover the copied resource’s class from the semantic clipboard. 3. Create a new instance of this class that points to the new file as its resource. 4. Replicate all the copied resource’s attributes to the new instance. Unlike files, resources are networked entities. This introduces two alternatives: The attributePaste alternative copies only the original resource’s attributes to the copy. The associationPaste alternative copies the original resource’s attributes and associations to the copy; thus, it supports a shallow copy of resources. So, both the original and the copy are associated with the same resources. Semantic zip and unzip The traditional zip operation compresses selected files or folders into a single file. This usually implies folder digging to select the required documents. Actually, the user must remember the related files’ location unless those files are all in a unique folder. However, this one-by-one manual selection most likely rests on the existence of some relationship that the user must remember. The semantic desktop strives to make such association explicit through the ontology. January/February 2008
(a)
(b)
Figure 6. Creating (a) a new file versus (b) a new resource.
The user should locate, relate, and operate in ontological terms rather than digging through the folder structure. The seMouse system enables semantic zipping. Once the cursor sits on a given resource, the mouse lets the user select semanticZip. By default, this causes a deep zip of this resource, recursively zipping the associated resources (inverse associations are ignored). The zip file replicates both the files and the KB counterparts. For example, when the user semantically zips a project proposal file (see figure 1), the system also zips all related files (deliverables, participants, bills, and so on) with the proposal. Moreover, this zip includes the ontology classes—the rationale being to provide the capability to replicate parts of the KB on other desktops (for example, a colleague’s desktop). Similarly, unzipping a semantically zipped file first involves checking whether the current desktop already holds the zipped ontology. If not, the unzipping operation configures seMouse according to the zipped ontology. Once the desktop ontology is set, the KB is populated along the RDF triplets found in the zipped file. Finally, the unzipping operation unzips the files. Users can perform this last step by either copying all the files in the actual folder or replicating the zipped files’ structure and creating the necessary folders. The seMouse architecture For the purpose of this article, a desktop’s basic architecture includes a file handler, clipboard, and recycle bin (see figure 7). The file handler provides an interface to copy, paste, and delete files. Any application can implement this interface to support file operations in its own way. Word, Excel, www.computer.org/intelligent
and other MS Office applications illustrate this case. Besides direct manipulation, this interface also enables indirect manipulation through drop-down menus. (Implementation-wise, the Windows’ WndProc function supports these interfaces. Whenever anything happens to a window, the operating system calls this function to find out what has occurred. The message parameter contains the message sent. The resource handler can then trap any message.) Indirect manipulation involves parameterizing the right-button click event. Basically, these are the two ways users manipulate files in Windows. The clipboard acts as a temporal repository through which text and resources are copied. The recycle bin stores deleted files until they are definitively erased. The seMouse approach builds on this architecture by providing the semantic counterparts: the resource handler, KB manager, semantic clipboard, and semantic recycle bin. The resource handler provides an interface to operate on resources (annotation, authoring, semantic navigation, semantic copy, and so on). These operations are independent of the editor at hand. Editors are file handlers but not resource handlers. The mouse, specifically its middle button, is the device that operates on resources. The KB manager supports the ontology used to describe resources and to store resources as OWL triplets. These operations are specified as part of the KB manager interface. This interface comprises methods for adding, removing, and updating OWL triplets, and for querying a given resource or checking on its status. All these methods find their realizations in the Joseki (www. joseki.org) implementation, which stores 29
S e m a n t i c
T e c h n o l o g y
desktop
semantic desktop
Windows application interface
semouse application interface
recycle bin
Clipboard
Kb manager interface
Windows application interface WndProc(op: String=copy) WndProc(op: String=paste) WndProc(op: String=delete) OnRightButtonClick()
microsoft Word
semantic clipboard
resource handler
file handler
acrobat reader
semantic recycle bin
Kb manager
semouse application interface OnMiddleButtonClick()
microsoft explorer
annotation and authoring ClassRes(className) PropRes(propName, txt) AscRes(assocName, res) Author(assocName, res)
file operations semNew() semCopy() semPaste(mode) semZip() semDel()
browse navigate(assoc) query(class, assoc, res)
Kb manager interface +isResourceIntoKB(resource):boolean +getResultFromQuery(query):String +addTriple(triple) +removeTriples(query) +updateTriple(triple) Joseki Jena Figure 7. The seMouse architecture. A semantic desktop is built on top of a traditional desktop framework.
OWL triplets in the Jena database management system (www.hpl.hp.com/semweb/jena. htm). The semantic clipboard mimics traditional clipboard functionality, but now OWL triplets are the data being stored. The semantic recycle bin—the semantic counterpart of the recycle bin—holds OWL triplets.
U
sability issues are critical in a desktop setting. So, we conducted experiments to assess seMouse’s effectiveness (error rates), efficiency (time spent), and user satisfaction.8 The results suggest that most users agree on semantic annotation’s usefulness for improving location and navigation of resources. However, some users expressed concern about overloading the mouse with semantic operations. Although all users appreciated the for30
mat independence that seMouse provided, some were reluctant to use the middle button. This situation could improve as users become more familiar with this gadget. (This seems to be the general tendency with recent releases of such gadgets with distinct buttons and sophisticated functionalities.) Although these results aren’t conclusive, and we need to conduct larger experiments, the received feedback makes us optimistic about the semantic desktop in general, and seMouse in particular.
Acknowledgments
This work was supported by the Spanish Ministry of Science & Education and the European Social Fund under contract TIN2005-05610.
References 1. P. Dourish et al., “Extending Document Man www.computer.org/intelligent
agement Systems with User-Specific Active Properties,” ACM Trans. Information Sys tems, vol. 18, no. 2, 2000, pp. 140–170. 2. N. Fernandez-Garcia et al., “PIMO Population and Semantic Annotation for the Gnowsis Semantic Desktop,” Proc. Semantic Desktop and Social Semantic Collaboration Workshop (SemDesk 06), CEUR-WS, 2006; http://sunsite. informatik.rwth-aachen.de/Publications/ CEUR-WS/Vol-202/SEMDESK2006_ 0008.pdf. 3. D. Karger et al., “Haystack: A Customizable General-Purpose Information Management Tool for End Users of Semistructured Data,” Proc. 2nd Conf. Innovative Data Systems Research (CIDR 05), Very Large Database Endowment, 2005; www-db.cs.wisc.edu/ cidr/cidr2005/papers/P02.pdf. 4. L. Sauermann et al., “Semantic Desktop 2.0: The Gnowsis Experience,” Proc. 5th Int’l Semantic Web Conf. (ISWC 06), LNCS 4273, Springer, 2006, pp. 887–900. 5. B. Kettler et al., “A Template-Based Markup Tool for Semantic Web Content,” Proc. 4th Int’l Semantic Web Conf. (ISWC 05), IEEE INTELLIGENT SYSTEMS
LNCS 3729, Springer, 2005, pp. 446–460. 6. R. MacGregor, S. Maggon, and B. Yan, “MetaDesk: A Semantic Web Desktop Manager,” Proc. Knowledge Markup and Semantic Annotation Workshop (SemAnnot 04), CEUR-WS, 2004, pp. 107–110; http:// ftp.informatik.rwth-aachen.de/Publications/ CEUR-WS/Vol-184/semAnnot04-12.pdf. 7. G. Reif, M. Morger, and H. Gall, “Semantic Clipboard: Semantically Enriched Data Exchange between Desktop Applications,” Proc. Semantic Desktop and Social Se mantic Collaboration Workshop (SemDesk 06); http://seal.ifi.unizh.ch/fileadmin/User_ Filemount/Publications/reif-SemDesk06.pdf. 8. J. Iturrioz, S.F. Anzuola, and O. Díaz, “Turning the Mouse into a Semantic Device: The seMouse Experience,” Proc. 3rd European Semantic Web Conf. (ESWC 06), LNCS 4011, Springer, 2006, pp. 457–471.
T h e
A u t h o r s Jon Iturrioz is an associate professor on the Computer Engineering Fac-
ulty of the University of the Basque Country. His research interests include the Semantic Web and portal development. He received his PhD in computing from the University of the Basque Country. Contact him at Facultad Informática, Apdo. 649, 20.018 San Sebastián, Spain; jon.
[email protected].
Oscar Díaz is a full professor on the Computer Engineering Faculty of
the University of the Basque Country. His research interests include portlet-based portals, software product lines, and semantic-based tooling. He received his PhD in computing from the University of Aberdeen. Contact him at Facultad Informática, Apdo. 649, 20.018 San Sebastián, Spain;
[email protected].
Sergio F. Anzuola is a PhD student on the Computer Engineering Fac-
ulty of the University of the Basque Country. His research interests include the Semantic Web and desktop user interfaces. He received his BSc in computing from the University of the Basque Country. Contact him at Facultad Informática, Apdo. 649, 20.018 San Sebastián, Spain; jibfeans@ si.ehu.es. For more information on this or any other computing topic, please visit our Digital Library at www.computer.org/csdl.
a d v e r t i s e r I n f o r m a t i o n J AN U AR Y / f e b r u a r y 2 0 0 8 Advertising Personnel
Next Issue March/April:
Sandy Brown, Business Development Manager phone +1 714 821 8380 fax +1 714 821 4010
[email protected]
Ambient Intelligence Ambient intelligence deals with a world where computing devices are spread everywhere (for example, in appliances, clothes, and buildings), letting human beings interact with them intelligently and unobtrusively. This special issue will present real-world cases or prototypes of ambientintelligence environments in which AI methodologies and techniques are crucial for accomplishing the ambient-intelligence goals.
Onkar Sandal, Sales Representative phone +1 785 843 1234 x218 fax +1 785 843 1853
[email protected] For production information and conference and classified advertising, contact Marian Anderson IEEE Intelligent Systems phone +1 714 816 2139 fax +1 714 821 4010
[email protected]
www.computer.org/intelligent January/February 2008
www.computer.org/intelligent
31