Ontology-Based Ontology-Based Free-Form Query Free-Form Query Processing for the Processing for the Semantic Web Semantic Web Mark Vickers Mark Vickers Brigham Young University Brigham Young University MS Thesis Defense MS Thesis Defense Supported by:
31
Embed
Ontology-Based Free-Form Query Processing for the Semantic Web Mark Vickers Brigham Young University MS Thesis Defense Supported by:
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Processing for the Processing for the Semantic WebSemantic Web
Mark VickersMark Vickers
Brigham Young UniversityBrigham Young University
MS Thesis DefenseMS Thesis Defense
Supported by:
2
Presentation OverviewPresentation Overview
Web Queries Web Queries Explanation of AskOntosExplanation of AskOntos DemoDemo Evaluation Evaluation Future Work and ConclusionFuture Work and Conclusion
3
Web Queries: Web Queries: ChallengesChallengesExample: Searching for a carExample: Searching for a car
Documents returned (usually too many)Documents returned (usually too many)
Takes time to read through documents Takes time to read through documents
Determine relevance Determine relevance
Find information (price, year, etc.)Find information (price, year, etc.)
4
Web Queries: Web Queries: OpportunitiesOpportunities Semantic webSemantic web
Proposed ontology-based framework for Proposed ontology-based framework for making information machine-readablemaking information machine-readable
Uses markup languages to identify Uses markup languages to identify informationinformation
““[A] search program can look for only those [A] search program can look for only those pages that refer to a precise concept…”pages that refer to a precise concept…”
-Tim Berners-Lee-Tim Berners-Lee
How should semantic web be searched?How should semantic web be searched?
5
Solution: AskOntos – a Solution: AskOntos – a Query System for the Query System for the Semantic WebSemantic Web
Allows free-form queries over Allows free-form queries over
Processes queries using information Processes queries using information
extractionextraction
Returns tables of extracted valuesReturns tables of extracted values
6
AskOntos OverviewAskOntos Overview
7
Extraction OntologiesExtraction Ontologies
Object sets
Relationship sets
Participation constraints
Lexical
Non-lexical
Primary object set
Aggregation
Generalization/Specialization
8
Extraction OntologiesExtraction Ontologies
Value Expression: \s*[$]\s*(\d{1,3})*(\.\d{2})?
Key Word Phrase
Left Context: $
Data Frame:
Internal Representation: float
Value Phrase
Key Word Expression: ([Pp]rice)|([Cc]ost)| …
Operation Phrase
Operator: >
Expression: (more\s*than)|(more\s*costly)|…
9
Annotating Web PagesAnnotating Web Pages
10
Annotating Web PagesAnnotating Web Pages
11
Step 1. Parse Query Step 1. Parse Query “Find me the and of all s – I want a ”
price
mileage
red
Nissan
1996
or newer
>= Operator
12
Step 2. Find Related Step 2. Find Related OntologyOntology
Similarity value: 5
Similarity value: 2
“Find me the price and mileage of all red Nissans – I want a 1996 or newer”
13
Conjunctive and aggregate queries run Conjunctive and aggregate queries run over selected ontology’s extracted over selected ontology’s extracted valuesvalues
Value-phrase-matching words Value-phrase-matching words determine conditionsdetermine conditions
Conditions:Conditions: Color = “red”Color = “red” Make = “Nissan”Make = “Nissan” Year >= 1996Year >= 1996 >= Operator
Step 4. Run XQuery Step 4. Run XQuery Expression OverExpression Over Ontology’s Extracted Ontology’s Extracted DataData Uses Qexo 1.7, GNU’s XQuery engine for JavaUses Qexo 1.7, GNU’s XQuery engine for Java
Orders results according to number of valuesOrders results according to number of values
16
DemoDemo
17
Evaluation of AskOntosEvaluation of AskOntos
Success Measure:Success Measure: ability to translate free- ability to translate free-form queries into formal queriesform queries into formal queries
Extraction ontologiesExtraction ontologies: car ads, house ads, : car ads, house ads, countries, movies, and diamond adscountries, movies, and diamond ads
3 rounds of testing3 rounds of testing 50 queries each (gathered from other CS 50 queries each (gathered from other CS
students)students) 11stst round discarded due to queries round discarded due to queries Minor improvements on system between Minor improvements on system between
“Find me the price and mileage of all red Nissans – I want a 1996 or newer.”
Human conversion
for $doc in document("file:///.../Car.OWL")/rdf:RDF for $Record in $doc/owl:Thing
… where($Color="red" or empty($Color)) and ($Make="Nissan" or empty($Make)) and ($Year="1996" or empty($Year)) return <Record ID="{$id}"> <Price>{$Price}</Price> <Color>{$Color}</Color> <Make>{$Make}</Make> <Year>{$Year}</Year> </Record>
Is a free-form query system for the semantic Is a free-form query system for the semantic webweb
Applies information extraction for query Applies information extraction for query processingprocessing
Answers questions with extracted data valuesAnswers questions with extracted data values ContributionsContributions
Web queries that use semantic annotationsWeb queries that use semantic annotations Web queries returning answers from extracted Web queries returning answers from extracted
datadata Processing free-form queries using ontologies Processing free-form queries using ontologies
24
Future WorkFuture Work
Disjunction and negationDisjunction and negation Fuzzy queriesFuzzy queries Spellchecker Spellchecker
• Graphic-based interfaceGraphic-based interface• Returns generated Returns generated documents and documents and
graphsgraphs
SHOESHOE (2000) (2000) • Returns tables of dataReturns tables of data • Form-based interfaceForm-based interface
AQUAAQUA (2004) (2004)
• Natural language Natural language interfaceinterface• Uses ontology as part of Uses ontology as part of query translation processquery translation process
• For single domain For single domain environmentenvironment• Part-of-speech recognitionPart-of-speech recognition• Uses ontology for term Uses ontology for term replacementreplacement• Returns passagesReturns passages
28
Related ResearchRelated Research
SimilaritiesSimilarities DifferencesDifferences
Bernstein Bernstein et alet al. (2005). (2005)
• Natural language Natural language interfaceinterface
• Allows only subset of English Allows only subset of English (Attempto Controlled English) (Attempto Controlled English) queriesqueries
SWSE (2005)SWSE (2005)
• Natural language Natural language interfaceinterface• Returns semantically Returns semantically annotatedannotated
datadata• No part-of-speech No part-of-speech recognitionrecognition
• Query context found by Query context found by matchingmatching
RDF labels, comments and RDF labels, comments and literalsliterals• Uses WordNetUses WordNet
• Limited to parsing ability of Limited to parsing ability of MINIPARMINIPAR• For XML databaseFor XML database• Query terms expanded with Query terms expanded with WordNetWordNet