• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Presentation for Reasoning Web Summer School 2008
 

Presentation for Reasoning Web Summer School 2008

on

  • 768 views

Venice, September 2008

Venice, September 2008
Dr. Sebastian Schaffert
Salzburg Research Forschungsgesellschaft
sebastian.schaffert@salzburgresearch.at

Statistics

Views

Total Views
768
Views on SlideShare
768
Embed Views
0

Actions

Likes
0
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NoDerivs LicenseCC Attribution-NoDerivs License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Presentation for Reasoning Web Summer School 2008 Presentation for Reasoning Web Summer School 2008 Presentation Transcript

    • KiWi – Knowledge in a Wiki ReasoningWeb Summer School 2008 Venice, September 2008 Dr. Sebastian Schaffert Salzburg Research Forschungsgesellschaft sebastian.schaffert@salzburgresearch.at http://www.kiwi-project.eu http://planet.kiwi-project.eu
    • KiWi Vision ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Vision Knowledge Management |  many different kinds of rich content (text, images, audio, video, software, processes, …) |  user and domain specific workflows and processes |  sharing of content and collaboration of users ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Vision Knowledge Management (traditional) |  „knowledge acquisition systems“ |  form-based, predefined processes, part of quality management, „make people replaceable“ |  people are aligned with technology and organisation ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Vision Knowledge Management (KiWi Way) |  instead: technology and organisation should be alignable with people! |  KiWi: Semantic CMS the Wiki-Way ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • “share, give it away, make it easy, because the more people know your idea the more powerful it becomes” – Garr Reynolds, Presentation Zen ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Online Communities … are successful in sharing even now … there is no reason why this shouldn‘t work in the enterprise ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Vision Knowledge Management (Wikis) |  Wikis are... |  simple to use (low technologial barrier) |  flexible: from a short notice over documentation to collaborative authoring of documents |  do not impose a predefined workflow (no dictate of the system) |  adjust to the necessities of users ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Wikis: like a piece of paper! … you can write on it … you can connect things … you can draw on it ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Wikis: like a piece of paper |  workflows only by “social convention” |  there are rules, but it is possible to deviate from them if necessary (new situations, better solutions, …) ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Vision Knowledge Management (Wikis) |  but: Wikis are rather like an empty piece of paper |  well suited for creative and/or well-known tasks |  no support whatsoever for users |  nobody would fill his tax return on an empty piece of paper! |  forms and workflows have (originally) been developed as support! |  with growing amount of content it becomes also increasingly difficult to find the necessary information ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Vision Semantic Web |  adds formal, machine readable semantics to the Web |  on a first glance: |  rigid structures, predefined processes |  but on second glance: |  “open world” |  semi structured |  no pre-defined structures; evolving structures! |  structure is never really imposed, it is just used to support the user when it is there! ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Vision Knowledge Management + Wiki-Philosophy + Semantic Web = KiWi |  machine readable linking of content |  adaption of presentation and input |  to personal preferences |  to user and content context |  to different kinds of content |  examples: |  kinds of content: meeting minutes, resource plans, persons, tasks, reports, ideas, ... |  presentation/input: meeting minute editor, gantt diagram, user profile, report template, ... ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Use Cases: Requirements KiWi Use Cases ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Use Cases
    • Software Knowledge Management KiWi Use Cases Sun Microsystems (Prague) |  knowledge in and about software systems involves many different kinds of (rich) content: |  source code |  documentation |  minutes of group meetings |  bug reports, |  ... |  development of Sun’s Netbeans IDE is developed by a large community with a team of 150 core developers employed by Sun Prague |  knowledge gathered and developed during the software development process is distributed over many different kinds of systems (wikis, bug trackers, blogs, discussion forums, mailing lists) ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Software Knowledge Management KiWi Use Cases Sun Microsystems (Prague) |  goal: to develop a platform for managing and sharing knowledge in virtual software development communities ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Software Knowledge Management KiWi Use Cases Pilot Roles |  designer: responsible for requirements and use cases, usability (user researcher), as well as system behaviour (interaction designer) and user interface (visual designer) |  developer: responsible for actual implementation of planned features defined by planners and further specified by designers ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Software Knowledge Management KiWi Use Cases Knowledge to be Shared |  planning documents |  UI specifications |  UI guidelines |  scripts and reports |  issues (bugs) |  requests for enhancement (RFE) |  rich content (icons, mockups, interactive prototypes, …) ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Software Knowledge Management KiWi Use Cases Current Content Repositories |  wikis |  FTP respository, accessible via HTTP |  bug tracking system (bugzilla) |  versioning system (Mercurial) |  e-mail ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Software Knowledge Management KiWi Use Cases Designer – KM Tasks |  write UI specification and enter related bugs to the bug repository |  understand high-level relationships between various documents |  relate document or its part to an existing concept |  define non-existing entity while writing a text document ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Project Knowledge Management KiWi Use Cases Logica Denmark |  Logica DK: provider of IT solutions and services to public and private sector |  currently undergoes CMMI ML2 certification for their project management processes as a requirement by customers ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Project Knowledge Management KiWi Use Cases CMMI ML 2 |  CMMI ML2: “Capability Maturity Model Integration Maturity Level 2” means: |  standardising work processes among projects |  documenting and managing work processes |  following certain workflows |  sharing process knowledge between projects ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Project Knowledge Management KiWi Use Cases Logica Denmark |  goal: to develop a platform documenting and supporting processes in project management conforming to CMMI ML 2 and exchange relevant knowledge ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Project Knowledge Management KiWi Use Cases Roles |  process engineer: works on process for the company in general and teams in particular; all process changes have to be acknowledged by process engineer |  project manager: mediator between customer and the team; discusses project, implementation, and goals with both, customer and team members |  team member: software developers, architects, testers, etc.; experienced in their respective tools and knows his peers ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Project Knowledge Management KiWi Use Cases Knowledge to be Shared |  requirements and changes to requirements |  relevant parts of different standards |  errors made by others when doing the same activity |  examples of previously done work of the same kind |  relevant checklists and templates |  people with certain knowledge |  plans and deadlines |  bits and pieces of procedures and processes |  … ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Project Knowledge Management KiWi Use Cases Required KiWi Features |  collaborative environment where knowledge and experience can be easily written both at the project and process level |  support for semantic tagging and annotation with semantic meta-data |  support for semantic search over process descriptions, project documentation, and reported experience |  support for identification of well-defined inconsistencies between selected work products ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Concepts KiWi Core Concepts ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Core Concepts Core Usage Concepts |  content items: single units of information, associated with a URI (for machine-readable data) and some content (human-readable) |  tags: textual annotations of content items; can be lifted to semantic concepts, thus embedding content items in a knowledge base |  triples: relate two content items; stored in RDF; predicates may be further specified in ontologies ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Core Concepts Core Usage Concepts |  users: play an important role for personalisation, social networking, and reputation; have a unique URI and thus a content item |  roles: in every social interaction, users take specific roles which they can explicitly switch (e.g. “at home”, “at work”) |  revisions: represent logical changes to the system and are explicitly committed by the user (by clicking “save”); a revision may contain of several atomic updates ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Core Concepts Core Usage Concepts |  context: the current context of the system is defined by: |  current content item |  current user |  current role of the user |  based on the context, the KiWi system decides how to present itself to the user ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Advanced Concepts Advanced Usage Concepts |  rules: define rule-based deductive knowledge; rules can work on content items, tags, and triples and can add additional triples as well as influence the layout and presentation of the content |  structured tags: allow to define more complex tagging structures, e.g. hotel(3stars), author(sebastian), etc. ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi User Interface KiWi User Interface ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Presenting Content Items |  principle: content items are presented in a way that is as suitable as possible for the user |  generic presentation: |  wiki page (known from other wikis) |  incoming/outgoing references (known from IkeWiki) |  tags |  triple context (graph visualisation) |  specific presentation: |  custom layouts and widgets for certain kinds of content items that display the content in a manner appropriate for the domain and personal preferences ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Widgets & Layouts |  Task 1: allow the adaptation of the presentation and editing of content to current context and personal preferences  Layouts |  Task 2: allow (advanced) users to define custom components („widgets“) for presenting and editing content (and meta-data!)  Widgets |  Requirement: |  allow rules and reasoning to influence the layout using user- defined rules ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Custom Layouts & Widgets context specific content layout ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Custom Layouts & Widgets context specific visualisations ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Editing Content Items |  principle: allow everyone to enter data as she wants |  simple editor for simple tasks |  advanced access to the system if so desired |  guide users from very simple but restricted to full access ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Editing Content Items |  generic editors: |  wiki text editor |  annotations editor for RDF (as in IkeWiki) |  structured tags (see later) |  context specific: |  Semantic Forms |  Visual Editors |  (semi-)automatic: |  information extraction |  specific is always better than generic, but obviously does not work in all cases! ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Annotations Editor |  generic way of annotating content items |  the annotations editor is a native RDF editor that builds directly on top of the RDF model! |  allows to associate wiki pages (i.e. content items) and links between pages with types |  generic and flexible, but (as experience with IkeWiki shows) too complicated for most users! ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Annotations Editor ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Semantic Forms |  application and context specific forms for entering the relevant data, supporting the user e.g. by drop down selections, range and type restrictions, … |  selected based on personalisation/context adaptation (e.g.: when displaying a user profile, provide a user profile form) |  may allow to change both, content and meta-data (depending on processing instructions) |  defined by (advanced) users using widgets (actually: a special kind of widget that allows editing data) ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Semantic Forms (Slide: Denny Vrandecic / ACTIVE project) ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Semantic Forms |  arguably the most simple and user-centred way of editing content and meta-data |  requires a priori definition of forms |  mostly specific to the application domain ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Browsing Content Items |  two ways of finding relevant content |  search (active) |  navigation (passive) |  search in KiWi: |  always start with a keyword or keywords, used for full-text as well as semantic search (over RDF, Tags) |  refine search results via facetted browsing, adding additional concepts, relations, tags |  navigation in KiWi: |  incoming/outgoing references for a content item |  navigation ontology that is rendered appropriately ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Technology KiWi Technology ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Technology Stack and Frameworks (Server) |  Java EE 5: provides core technology for persistence and data management |  JBoss AS: Java EE web and application server, supporting clustering, persistence, … |  Sesame 2: RDF triple store supporting easy extension with custom reasoners |  JBoss Seam: web application framework building on and extending Java EE; provides core web application functionalities (user management, MVC separation & inversion of control, data access, …), Lucene integration, allows easy extension with e.g. Web Services |  TestNG: advanced unit testing environment for web applications ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Technology Stack and Frameworks (Client) |  JSF/RichFaces: provides core user interface concepts for web applications and supports interaction with server using AJAX |  XHTML: for rendering presentation in the browser and for storing conent item content |  TinyMCE: as extensible browser-based WYSIWYG editor for XHTML ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Model: Persistence & Data Model |  object oriented model for accessing frequently used core concepts of the system (“content item”, “user”, “role”, …) |  objects mapped partly to a relational database (using JPA/ Hibernate) and partly to the triple store (Sesame); developers don’t need to care ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Controller: Seam, EJB, and the KiWi API Controller Services (1) |  unified access to objects of the data model, regardless how they are persisted |  direct access to the XML and RDF data of content items and meta-data |  querying facilities for textual and meta-data querying, later extended by the KiWi reasoning and querying language |  web service endpoint for accessing the system from external applications ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Controller: Seam, EJB, and the KiWi API Controller Services (2) |  widget execution environment: an environment that provides relevant functionalities to widgets, e.g. the current context, the data model, etc. |  personalisation: management of the user model and automatic selection of appropriate layouts and widgets |  information extraction: allows automatic analysis of textual content for tag and annotation recommendation |  reasoning: allows the management and execution of predefined or user-defined rules that work on both, the content and the meta-data ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • View: the KiWi user interface |  browser-based, i.e. XHTML + JavaScript |  implemented as a specific configuration of layouts and widgets for different applications |  widgets may be implemented in different languages, e.g. JSF, Groovy, XHTML, JavaScript, … ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Research KiWi Research ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • KiWi Enabling Technologies |  Reasoning: a rule-based language capable of working with both data (content items) and meta-data (triples, tags) |  Reason Maintenance: tracking justifications for derivations for presentation to the user and for efficiency |  Information Extraction: supporting the user by suggesting appropriate annotations based on human- readable content |  Personalisation: adapting the presentation to the user based on context and user model ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Reasoning & Reason Maintenance Reasoning Motivation |  semantic wikis, particularly with advanced visualisations, personalisation, etc, require different support for reasoning and querying than is currently offered by e.g. Jena, Sesame, etc |  OWL(-Full/-DL/-Light) is nice for many tasks, but completely fails for rule- based derivations; these are, however, typical for most kinds of applications, and arguably represent the “interesting” part of reasoning |  current reasoners for the Semantic Web do not really take into account reason maintenance; this is, however, a prerequisite for efficient versioning of meta-data in a reasoning system, and can also increase the “experienced performance” and responsiveness of the system ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Reasoning & Reason Maintenance Reasoning Goals |  to develop a rule-based language that can be used by users of the wiki to query and to specify derivation (and possible action) rules that are capable to query content and knowledge base in a unified fashion; also, a simple and intuitive way to specify such queries and rules is sought for |  to develop a reason maintenance component for this language that gives users a way to understand why certain derivations exist, that allows versioning of updates to the knowledge base, and that allows easy updates ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Information extraction Information Extraction Motivation |  current semantic wikis provide no support for annotating content (besides providing an easy-to-use interface to enter annotations) |  content of wiki pages usually already contains much of the knowledge, albeit in natural language text |  annotation is for many users a very daunting task, because it requires understanding of the underlying knowledge models and concepts behind them |  existing natural language technologies can partly extract meta-data out of the natural language text and use this information to interactively guide users in the annotation process (e.g. by providing custom wizards, or even by simple reordering of the offered concepts) ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Information extraction Information Extraction Goals |  to develop an information extraction component that semi-automatically extracts meta-data out of wiki pages to interactively guide the user through the annotation task ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Personalisation Personalisation Motivation |  different users have different roles in knowledge management processes (e.g. developer, tester, documentation writer, customer) |  different users might also have different tasks and/or preferences |  in both cases, personalised presentation of content and user interface provides support for the user |  a semantic wiki can support this by storing user/group models in the knowledge base, by offering a reasoning component, and by offering advanced visualisations and editors that implement personalised access to the wiki ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Personalisation Personalisation Goals |  develop appropriate user and group models for representing properties and preferences of groups wrt. the KIWI system |  automatically track the usage of single users and user groups in order to refine user and group models |  develop rules that dynamically adapt the presentation of the content and user interface to the user ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Conclusion Conclusion ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Conclusion Summary (1) |  KiWi is concerned with knowledge management following the wiki philosophy and applying semantic web technologies |  KiWi is evaluated in two use cases, software knowledge management (Sun Microsystems) and project knowledge management (Logica) |  KiWi core concepts are content items, tags, triples, users, roles, and context |  the KiWi user interface builds on flexible, customisable layouts and widgets |  KiWi is implemented using legacy Java EE technology using a model-view-controller paradigm ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Conclusion Summary (2) |  KiWi also addresses novel research issues in the areas of reasoning, reason maintenance, information extraction and personalisation ReasoningWeb Summer School, Venice, © 2008,Sebastian Schaffert, Salzburg Research
    • Conclusion Contact |  Dr. Sebastian Schaffert |  Salzburg Research Forschungsgesellschaft |  Jakob Haringer Str. 5/II |  A-5020 Salzburg |  sebastian.schaffert@salzburgresearch.at |  http://www.kiwi-project.eu |  http://planet.kiwi-project.eu KIWI © 2008, Sebastian Schaffert, Salzburg Research