1 / 58

End-User Application Development for the Semantic Web

End-User Application Development for the Semantic Web. Karun Bakshi kbakshi@mit.edu Computer Science and Artificial Intelligence Laboratory (CSAIL), MIT. Overview. Tools for performing information based tasks are lacking.

malcolm
Download Presentation

End-User Application Development for the Semantic Web

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. End-User Application Development for the Semantic Web Karun Bakshi kbakshi@mit.edu Computer Science and Artificial Intelligence Laboratory (CSAIL), MIT Haystack, MIT

  2. Overview • Tools for performing information based tasks are lacking. • We need to fix these problems if we are to fully leverage all the information at our disposal. • I propose an approach to fix these problems and I think the Semantic Web can help. • In the process we demonstrate • An application of the Semantic Web • Applications for the Semantic Web Haystack, MIT

  3. Agenda • Introduction • Related Work • Approach • Demonstration • Implementation • Discussion • Evaluation • Conclusion Haystack, MIT

  4. Introduction Haystack, MIT

  5. Information Based Tasks • Information Based Tasks • Require multiple sets of information and functionality • Can reuse and visualize the same information and functionality from other tasks • Use Cases • Military Commander • Doctor • Software Project Manager Haystack, MIT

  6. A Day in the Life of a Software Project Manager • Receive E-mail Bug Report from Customer • Check Task Assignments • Log Bug in Bug Tracking Software (automatic e-mail notification) • Schedule meeting via e-mail and update calendar • Update Project Schedule and Task Assignments • Update Project Budget Haystack, MIT

  7. How Do We Accomplish Such Tasks Today? • Users Must • Dig deep and wide to find relevant information and functionality • Mentally collate information • Re-enter Information  Data Synchronization? • Lather, Rinse, Repeat • A solution that allows aggregating relevant resources would • Increase efficiency • Be mission critical Haystack, MIT

  8. Status Quo: A Potential Solution? • Build an uber-Application or build a task-focused application. But… • How do I reuse the calendar or e-mail for another purpose? • What if I need to track additional information? • What if I do a certain new task more often? • How does another user tackle the same problem? • How do we handle feature creep? Haystack, MIT

  9. Source of Problem • Tasks are Fluid. Information and functionality depends on: • User • Expertise • Preferences • Task Definition • Task • Evolve over time • New unanticipated tasks appear • New information is available that can be incorporated • Applications are static! Haystack, MIT

  10. Problem Definition • How do we provide users with an interface supportive of their tasks while avoiding the problems engendered by application shortcomings? • How Important is this Problem? • WWW  more information • WWW  more complex tasks • WWW  lay users • What about ad hoc multi-domain applications? Haystack, MIT

  11. Related Work Haystack, MIT

  12. WinCuts SNAP` MyYahoo! Related Work Build Task Workspace UI Real Estate Management Task Focused Applications Workspace Builder Tools Creation Configure Task Workspace Configure Operations Configure Content Configuration Configure Presentation Task Management Interface Data Management Interface Haystack, MIT

  13. MyYahoo! • Allows Selecting • Content • Layout • Relevant Operations • Limited to News Domain • User can configure settings, rather than create them Haystack, MIT

  14. SNAP Together Visualization • Linked Content • Arbitrary Content • Multiple Visualizations • No UI Programming • Knowledge of schema and SQL, or use fixed queries • Fixed visualizations • Primarily for data exploration Haystack, MIT

  15. WinCuts • Allows collaboration • Peripheral awareness • Supports multiple domains • Cannot be persisted • Have to go to source window to change content • Pixel based content, not semantic • Shareable, but not transferable Haystack, MIT

  16. Important Ideas • Window Management • Persistent Habitat • Persistent Queries • Dynamic Content • Reusable Content • User Creatable/Editable • Co-Location of Relevant Operations • Synchronized/Linked content Haystack, MIT

  17. Important Ideas (contd.) • Little knowledge of underlying schema • Powerful query ability • Tasks require peripheral awareness of other happenings • No Programming • Multiple visualizations • Low overhead reconfigurability • Applicable to multiple domains Haystack, MIT

  18. What’s Missing? • General Purpose Interface • All above properties • Domain Interoperable (support multiple domains ad hoc and simultaneously) • Transferable • Semantic Interface Haystack, MIT

  19. Approach Haystack, MIT

  20. Our Approach • Combine desirable characteristics in a single system • Information Management Interfaces Should Match Tasks. • Users Know Tasks Best • Therefore Give User Control Over Building Them • What are the application building primitives that users must control to match the fluid nature of tasks? • What we are NOT trying to achieve: • The best implementation for particular techniques, feature sets, UI widgets, etc. Haystack, MIT

  21. Our Approach (contd.) • Unify the Data Model • Let Users Build and Populate a Task Workspace • Formalize + Structure Existing Ideas/Features • Content • Presentation • Manipulation • Give users fragments of functionality to select & aggregate for unique tasks Haystack, MIT

  22. Semantic Web – Motivation • Information on the World Wide Web is primarily intended for human consumption with complex semantics distributed across text, images, video, sound • There is no way for machines to use and leverage such information easily and effectively • Thus, very little on the WWW can be automated, and use of all the information on the WWW is constrained to the limited bandwidth of human processing Haystack, MIT

  23. Semantic Web – What is it? • An initiative to embed semantics into content on the WWW to make it amenable to machine processing. • Semantics are embedded via metadata annotations • Software (agent) understands the annotations because they follow a particular schema/ontology • Different schemas can be used to describe the same entity • But with metadata annotations, we begin to have a substrate for automation Haystack, MIT

  24. Semantic Web – The Data Model • Semi-structured (unenforced and/or partial schema validation) data models are very flexible • Captures multiple domains • Models the web • Linking content from multiple domains in a growing (multi-schema) web • No single schema to enforce Haystack, MIT

  25. Resource Description Framework (RDF) • A specification/technology that captures and defines such a semi-structured data model for the Semantic Web • Can be used to capture content from multiple domains • Provides a common interchange format (XML based) that allows applications to communicate Haystack, MIT

  26. name friend hasCar name hasCat color color name RDF Example Karun has a blue cat named Max, and Karun’s friend John has a blue car. “John” <URI> <URI> URI– Universal Resource Identifier Literal– String data “Karun” <URI> “Blue” <URI> “Blue” “Max” Haystack, MIT

  27. name friend owns name owns name RDF Example Karun has a blue cat named Max, and Karun’s friend John has a blue car. “John” <URI> <URI> “Karun” <URI> color “FF” type type color blue <URI> <URI> <URI> “00” green <URI> name “Car” red name “Max” “00” “Cat” Haystack, MIT

  28. How Does the Semantic Web Fit In? • A Problem? • More information • Faster generation of information • Highly granular information • An Opportunity? • RDF models multiple domains • RDF allows granular access and annotation Haystack, MIT

  29. What’s Left? • Tools that let users create a task workspace by manipulating fragments of • Content  Queries (Channels)  Channel Manager • Presentation  Views & Layout  View Designer and Workspace Builder • Manipulation  Operations  Workspace Builder • Haystack provides • such fragments at the developer level • other supportive capabilities • Build tools to expose them to the user Haystack, MIT

  30. Haystack • An general purpose information management platform User Interface Framework Adenine RDF Store Services/Agent Framework Haystack, MIT

  31. Haystack Views Browsing Paradigm Recursive Rendering Haystack, MIT

  32. Haystack User Interaction • Direct Manipulation • Drag & Drop • Context Menus • Operations • UI Continuation • Currying • Demonstration Haystack, MIT

  33. Demonstration Haystack, MIT

  34. Tool Set • Workspace Designer • View Designer • Channel Manager Haystack, MIT

  35. Haystack, MIT

  36. Implementation Haystack, MIT

  37. Implementation Haystack, MIT

  38. Implementation (contd.) • Each Application Building Primitive has • An ontology • A set of views • Each tool generates RDF entities according to an ontology • User navigates to each entity and modifies it using its view(s) • Each entity can have several views, e.g. Design View vs. Usage View Haystack, MIT

  39. Implementation (contd.) • Store views, operation, content description and workspace as metadata along with application data in single format Haystack, MIT

  40. Workspace Designer • Design Decisions • Space Allocation to Winlets • Modality in Workspace Interaction • Uniform Treatment of Views • Dynamic Binding and Currying Haystack, MIT

  41. View Designer Pattern • Developer Created Designer • Exposes domain specific capabilities to create/customize views • Named view that can be reused in any context in Haystack, just like any other view Haystack, MIT

  42. Property Lens View Designer Haystack, MIT

  43. Property Lens View Designer (contd.) • Captures • RDF semantics only (property name and value) • Resource  View • Literal  Read-only/Editable • Layout • Has design and usage views • Design Intentionally Abstract • Multi-valued properties are supported • Provides baseline view extensibility without developer support or additional view designers Haystack, MIT

  44. (Information) Channels • What is a channel? • Query • Dynamic set of items (no ordering)  URIs only • Organizing mechanism for dynamic corpora • What are the implementation components? • Channel Agent • Query Primitives • Query • View of Query Primitive Haystack, MIT

  45. Channel Query Primitives <Query Primitive Arguments> queryPrimitive <Set of URIs> RDF Query Primitives Operators Domain Specific Query Primitives <URI1> <URI2> <URI3> … Property Constraints Haystack, MIT

  46. Operator Domain Specific Query Primitive RDF Query Primitive Channel Query Primitives Haystack, MIT

  47. Discussion Haystack, MIT

  48. Discussion • Transferable and Personalizable • Capture process in an interface • Low overhead task switching • Extensible by developers • Seamless integration of user/developer extensions • Consistent interaction modality • Domain specific view designers • Benefits of Channels • How much work is this? Haystack, MIT

  49. Evaluation Haystack, MIT

  50. Evaluation • By Example • Our tools/Specialized tools • Paper Writing Workspace  bridged multiple domains • Project Management Workspace • Preliminary End-User evaluation with Massachusetts General Hospital researchers Haystack, MIT

More Related