Successfully reported this slideshow.

Knowledge Engineering rediscovered, Towards Reasoning Patterns for the Semantic Web

1,339 views

Published on

We show how it is possible to apply the problem solving patterns from knowledge engineering to systems developed on the semantic web. This give us re-usable problem solving patterns for the semantic web, and would greatly help us to build and understand such systems.

  • Be the first to comment

  • Be the first to like this

Knowledge Engineering rediscovered, Towards Reasoning Patterns for the Semantic Web

  1. 1. Knowledge Engineering rediscovered: Towards Reasoning Patterns for the Semantic Web Frank van Harmelen, Annette ten Teije, Vrije Universiteit Amsterdam Holger Wache Univeristy of Applied Sciences Northwestern Switzerland Paper at http://www.cs.vu.nl/~frankh/postscript/KCAP09.pdfK-CAP2009 1
  2. 2. Knowledge Engineering rediscovered:Towards Reasoning Patterns for the Semantic Web Lessons from Knowledge Engineering – How to build knowledge-based systems out of reusable components (CommonKADS, Generic Tasks) – All based on Newell’s work on Knowledge-level / Symbol-level reasoning K-CAP2009 2
  3. 3. Knowledge Engineering rediscovered:Towards Reasoning Patterns for the Semantic Web • Research question: – Can we identify reusable patterns and components that can help designers and implementers of SW applications? – First step towards a methodology for building semantic web applications out of reusable components • Notice: – Existing work on reusable ontology patterns, but little work on reusable reasoning patterns K-CAP2009 3
  4. 4. Overview• KE best practices: CommonKADS• Identify Semantic Web Tasks• Validation of those tasks• Identify Inferences• Quasi-validation of those inferencesK-CAP2009 4
  5. 5. Knowledge Categories Task Knowledge • Goal + method • Decomposition • Control Inference knowledge • Functions • Roles • Domain mapping Domain Knowledge • Scheme • Knowledge • FactsK-CAP2009 5
  6. 6. Example of inference structure: Diagnosis hypothesis specify observable complaint select obtain cover hypothesis verify finding resultK-CAP2009 6
  7. 7. Can we identify reusable semantic web tasks and inferences? • Seven tasks, defined by: – Input/output types – Definition of functionality – Decomposed into inferences • Five inferences, defined by: – Input/output types – Definition of functionality K-CAP2009 7
  8. 8. 1. Search task (semi-formal)Input: query conceptKnowledge: ontology = schema + instance setOutput: members of the instance set• Search: c x O → I’• Input: a query concept c• Knowledge: T(O) (set of 〈ci,⊆,cj〉) and I(O) (set of 〈i,∈,ck〉)• Output: search(c,O) = {〈i,∈,c〉|∃cj: 〈cj,⊆,c〉 ∈ T(O) ∧ 〈i,∈,cj〉 ∈ I(O))} K-CAP2009 8
  9. 9. Is this the only possible definition?• Other definitions are possible and reasonable• Alternative: O |-- 〈cj,⊆, c〉 ∈ T(O) ∧ O |-- 〈i,∈,cj〉 ∈ I(O))}• Leads to a typology of search tasks• Helps implementers: – Makes choices explicit – Reusable componentsK-CAP2009 9
  10. 10. Other Tasks2. Browse: – input: a concept – knowledge: ontology + instance set – output: members of the instance set or concepts of the ontology2. Data integration: – input: multiple ontologies with their instance sets – output: a single ontology and an instance set2. Personalisation and recommending – input: instance set plus profile – knowledge: ontology – output: reduced instance setK-CAP2009 10
  11. 11. Other Tasks5. Web-service selection: – input: required functionality – Knowledge: ontology + set of instances of services – Output:5. Web-service composition: – input: required functionality – Knowledge: ontology + set of instances of services – output: compositions of service instances5. Semantic Enrichment: – input: an instanceK-CAP2009 11 – output: set of triples with the given instance as
  12. 12. Validation of tasks: how complete are the 7 tasks?• We classified all (38) Semantic Web Challenge applications of 2005-2007• 37 applications could be classified• Often, a single application belongs to multiple tasks• We found no web-service selection, but some web-service compositionK-CAP2009 12
  13. 13. question answering web-service compo Validation of tasks on Semantic web challenges 2005-2007 semantic enrichme web-service selecti data integration PersonalizationApplication Use Cases browse searchArnetMiner (2007) x x xCantabria (2007) x x xCHIP (2007) x xCOHSE (2006) x x xCollimator (2006) xCONFOTO (2005) x xDartgrid (2006) x xDbin (2006) x x ~DORIS (2007) x xDynamicView (2005) x xEachWiki (2007) xEKOSS (2006) xeMerges (2006) xFalcon-S (2006) x xFoafing the Music (2006) xFungalWeb (2005) x xGeospatial Semantic Web Services (2006) xGroupMe (2007) xiFanzy (2007) x x xInt.ere.st (2007) xJeromeDL(2007) x xMediaWatch (2007) x x xmle (2007) x xMultimediaN E-Culture (2006) x x xNotitio.us (2007) x xOyster (2005) xPaperpuppy (2006) xPersonal Publication Reader (2005) x x xPotluck (2007) x xRevyu (2007) x xRKB Explorer (2007) xSemantic MediaWiki (2006) xSemClip (2007) x K-CAP2009SMART (2007) x 13swse (2007) x xWeb Services Execution Environment (2005) xwwwatch (2007) x x
  14. 14. Five Primitive Inferences1. Realisation: – Given an instance, find the concepts of which it is a member – Instance x Ontology → concept (o |-- i ∈ c)1. Subsumption: – Determining whether one concept is a subset of another – C1 x C2 x Ontology → boolean (Ontology |-- C1 ⊆ C2)K-CAP2009 14
  15. 15. Five primitive inferences3. Mapping: – Finding correspondence relation between two concepts – Concept x Concept → relation3. Retrieval: – Inverse of realisation: which instances belong to a given concept – Concept → instances (i ∈ c)3. Classification: – Determining where a given class should be placed in a subsumption hierarchy – Concept x hierarchy → <C1,C2> (c1 ⊆ concept ⊆ c2) K-CAP2009 15
  16. 16. Decomposing Tasks in Basic InferencesExample:Search = Classification: locate the query concept in the ontology in order to find its direct sub- or super-concepts + Retrieval: to determine the instances of those sub- and super-concepts, which form the answers to the query.K-CAP2009 16
  17. 17. Inference structure for Search C Classify Subconcepts T Retrieve I InstancesK-CAP2009 17
  18. 18. Decomposing Tasks in basic Inferences (2)Example 2:Personalisation (eg. based on previously bought items) = Realisation: to obain the concepts that describe these items + Classification: to find closely related concepts + Retrieval: to obtain instances of such related concepts, since these instances might of be interest to the userK-CAP2009 18
  19. 19. Inference structure for Personalisation Iprofile realise concepts classify subconcepts T Retrieve Idata InstancesK-CAP2009 19
  20. 20. Quasi-Validation of inferencesTask types Primitive inference steps realisation Subsumption mapping retrieval & classificationsearch x xbrowse x x xData x x xintegrationpersonalisation x x xservice x xselectionService xcompositionSemantic K-CAP2009 20enrichment
  21. 21. Conclusion• First step towards a methodology for building semantic web applications out of reusable components: tasks and inferences• Attempt at a knowledge level description of semantic web reasoning• Enables analysis and reuse at a higher level of abstraction.K-CAP2009 21
  22. 22. Next steps• Further investigation of set of inferences and tasks: – E.g. Right level of inferences (too DL-driven?) – E.g. More complex task definitions• Model real applications as inference structures.K-CAP2009 22
  23. 23. Our hope is that you will... Iprofile realise concepts classify subconcepts describe your T application at this level Retrieve of abstraction!Idata Instances C Classify Subconcepts T Retrieve IK-CAP2009 Instances 23

×