Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ontology-Based Free-Form Query Processing for the Semantic Web by Mark Vickers Supported by:

Similar presentations


Presentation on theme: "Ontology-Based Free-Form Query Processing for the Semantic Web by Mark Vickers Supported by:"— Presentation transcript:

1 Ontology-Based Free-Form Query Processing for the Semantic Web by Mark Vickers Supported by:

2 The Problem Searching the web for an answer to a question is hard. Searching the web for an answer to a question is hard. Returns documents (usually too many) Returns documents (usually too many) Can it instead return just the right answers? Can it instead return just the right answers? Semantic web Semantic web Proposed ontology-based framework for making information machine-readable Proposed ontology-based framework for making information machine-readable Better access to information Better access to information How should semantic web be searched? How should semantic web be searched?

3 Solution: AskOntos – a Query System for the Semantic Web Allows free-form queries Allows free-form queries Processes queries using information extraction Processes queries using information extraction Returns tables of extracted values Returns tables of extracted values

4 Extraction Ontologies Object sets Relationship sets Participation constraints Lexical Non-lexical Primary object set Aggregation Generalization/Specialization

5 Extraction 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)|…

6 Query AskOntos Ontology Matching Form XQuery Answer Extraction Ontology Repository Extracted Values AskOntos Overview Extracted Query Values Extracted Data Web

7 Step 1. Parse Query “Find me the and of all s – I want a ”pricemileagere d Nissan1998or newer >= Operator

8 Step 2. Find Corresponding Ontology Similarity value: 6 Similarity value: 2 >= Operator “Find me the price and mileage of all red Nissans – I want a 1998 or newer”

9 Step 3. Formulate XQuery Expression Conjunctive queries run over selected ontology’s extracted values Conjunctive queries run over selected ontology’s extracted values 7 Nissan MakeIns7 41893 1999 YearIns7 41641 red ColorIns7 42186

10 Value-phrase-matching words determine conditions Value-phrase-matching words determine conditions Conditions: Conditions: Color = “red” Color = “red” Make = “Nissan” Make = “Nissan” Year >= 1998 Year >= 1998 >= Operator Step 3. Formulate XQuery Expression

11 1: for $doc in document("file:///c:/ontos/owlLib/Car.OWL")/rdf:RDF 2: for $Record in $doc/owl:Thing 3: 4: let $id := substring-after(xs:string($Record/@rdf:about), "CarIns") 5: let $Color := $doc/car:Color[@rdf:ID=concat("ColorIns", $id)]/car:ColorValue/text() 6: let $Make := $doc/car:Make[@rdf:ID=concat("MakeIns", $id)]/car:MakeValue/text() 7: let $Year := $doc/car:Year[@rdf:ID=concat("YearIns", $id)]/car:YearValue/text() 8: let $Price := $doc/car:Price[@rdf:ID=concat("PriceIns", $id)]/car:PriceValue/text() 9: let $Mileage := $doc/car:Mileage[@rdf:ID=concat("MileageIns", $id)]/car:MileageValue/text() 10: 11: where($Color="red" or empty($Color)) and 12: ($Make="Nissan" or empty($Make)) and 13: ($Year>="1998" or empty($Year)) 14: return 15: {$Price} 16: {$Mileage} 17: {$Color} 18: {$Make} 19: {$Year} 20: For each owl:Thing Get the instance ID and extracted values Check conditions Return values Step 3. Formulate XQuery Expression

12 Step 4. Run XQuery Expression Over Ontology’s Extracted Data Uses Qexo 1.7, GNU’s XQuery engine for Java Uses Qexo 1.7, GNU’s XQuery engine for Java Use XSLT to transform results to HTML table Use XSLT to transform results to HTML table

13 Evaluation of AskOntos Measure success by: Measure success by: Ability to match query to correct ontology Ability to match query to correct ontology Ability to translate free-form queries into formal queries Ability to translate free-form queries into formal queries We create: We create: Extraction ontologies for: car ads, diamonds, … Extraction ontologies for: car ads, diamonds, … Queries for preliminary evaluation: 10 Conjunctive queries for car ads Queries for preliminary evaluation: 10 Conjunctive queries for car ads Future work: do more evaluation Future work: do more evaluation

14 Query Translation Metrics “Find me the price and mileage of all red Nissans – I want a 1998 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="1998" or empty($Year)) return {$Price} {$Color} {$Make} {$Year} Automated conversion PrecisionRecall PROJECT100%80% SELECT88%88% PROJECT: {Price,Color, Make, Year} SELECT: {(Color,=,“red”), (Make,=,“Nissan”), (Year,=,“1998”)} PROJECT: {Price, Mileage,Color, Make, Year} SELECT: {(Color,=,“red”), (Make,=,“Nissan”), (Year,>=,“1998”)}

15 Preliminary Results PrecisionRecall PROJECT100%95% SELECT78%76% 1. Find me a 1994 red Nissan for $2000 2. Find me the price and mileage of all red Nissans – I want a 1998 or newer. 3. Find me a black Ford for under $8000 -- it should be a 1990 or newer and have less than 120K miles on it. 4. Show me the year of all chevy corvettes for less than $25,000. 5. I want the year, price, mileage, and color of all Toyota Camrys 6. What 2002 cars cost less than $9,000? 7. I want a 1998 or newer Ford for $10,000 or less 8. I want the year of any Honda with at least 200K miles on it 9. What colors can I get a camry in between 1999 - 2004 10. I want to see all 2001 Toyota 4 Runners with less than 100K miles, that are blue, and have AC  8. I want the year of any Honda with at least 200K miles on it  6. What 2002 cars cost less than $9,000?

16 Conclusion/Contributions AskOntos AskOntos Is a free-form query system for the semantic web Is a free-form query system for the semantic web Applies information extraction for query processing Applies information extraction for query processing Answers questions with extracted data values Answers questions with extracted data values Contributions Contributions Web queries that use semantic annotations Web queries that use semantic annotations Web queries returning answers from extracted data Web queries returning answers from extracted data Processing free-form queries using ontologies Processing free-form queries using ontologies

17

18 TREC 2004 QA Question Topics

19 Related Research AskOntos NLIDB(60’s-Now) Syntactic analysis Syntactic analysis No structural analysis No structural analysis Portability to new domains Portability to new domains Design new ontology Design new ontology Bernstein et al. (2005) Subset of English (ACE) Subset of English (ACE) Conjuntive queries Conjuntive queries AQUA (2004) Target: Single domain environment Target: Single domain environment Target: Semantic web Target: Semantic web Part of speech recognition Part of speech recognition No recognition No recognition Returns passages Returns passages Returns extracted values Returns extracted values SHOE (2000) Form-based interface Form-based interface Free-form interface Free-form interface QUEST (1999) Graph-based interface Graph-based interface Free-from interface Free-from interface

20 Evaluating the Framework AgeFuneralDateViewingRelationship/RelativeName RecallPrecisionRecallPrecisionRecallPrecisionRecallPrecision New Ontos 60%50%68%76%80%63%74%43% Legacy Ontos 57%38%63%75%93%18%73%41% Four of eighteen object sets shown above. Data from Salt Lake Tribune and Arizona Daily Star Input:  Obituaries ontology  25 obituaries from two newspapers

21 Scaling to the Web Ontologies crawl and harvest web pages Ontologies crawl and harvest web pages Ontologies extract values from pages Ontologies extract values from pages Ontologies indexed (??) Ontologies indexed (??) Queries extracted by relevant ontologies Queries extracted by relevant ontologies Rely on Google-like technology Rely on Google-like technology


Download ppt "Ontology-Based Free-Form Query Processing for the Semantic Web by Mark Vickers Supported by:"

Similar presentations


Ads by Google