ontology based free form query processing for the semantic web
Download
Skip this Video
Download Presentation
Ontology-Based Free-Form Query Processing for the Semantic Web

Loading in 2 Seconds...

play fullscreen
1 / 21

Ontology-Based - PowerPoint PPT Presentation


  • 282 Views
  • Uploaded on

Ontology-Based Free-Form Query Processing for the Semantic Web. by Mark Vickers. Supported by:. The Problem. Searching the web for an answer to a question is hard. Returns documents (usually too many) Can it instead return just the right answers? Semantic web

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Ontology-Based ' - medwin


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
the problem
The Problem
  • Searching the web for an answer to a question is hard.
    • Returns documents (usually too many)
    • Can it instead return just the right answers?
  • Semantic web
    • Proposed ontology-based framework for making information machine-readable
    • Better access to information
  • How should semantic web be searched?
solution askontos a query system for the semantic web
Solution: AskOntos – a Query System for the Semantic Web
  • Allows free-form queries
  • Processes queries using information extraction
  • Returns tables of extracted values
extraction ontologies
Extraction Ontologies

Object sets

Relationship sets

Participation constraints

Lexical

Non-lexical

Primary object set

Aggregation

Generalization/Specialization

extraction ontologies5
Extraction Ontologies

Data Frame:

Internal Representation: float

Value Phrase

Value Expression: \s*[$]\s*(\d{1,3})*(\.\d{2})?

Left Context: $

Key Word Phrase

Key Word Expression: ([Pp]rice)|([Cc]ost)| …

Operation Phrase

Operator: >

Expression: (more\s*than)|(more\s*costly)|…

askontos overview
AskOntos Overview

Extraction Ontology Repository

Query

AskOntos

Ontology Matching

Extracted Values

Extracted Values

Extracted Values

Extracted Query Values

Extracted Data

Extracted Values

Form XQuery

Web

Answer

step 1 parse query
Step 1. Parse Query

“Find me the and of all s – I want a ”

price

mileage

red

Nissan

1998

or newer

>= Operator

step 2 find corresponding ontology
Step 2. Find Corresponding Ontology

“Find me the price and mileage of all red Nissans – I want a 1998 or newer”

>= Operator

Similarity value: 2

Similarity value: 6

step 3 formulate xquery expression

<Car rdf:ID="CarIns7">

<CarValue rdf:datatype="&xsd;string">7</CarValue>

</Car>

<Makerdf:ID="MakeIns7">

<MakeValuerdf:datatype="&xsd;string">Nissan</MakeValue>

<ontos:URIrdf:datatype="&xsd;string">MakeIns7</ontos:URI>

<offset rdf:datatype="&xsd;nonNegativeInteger">41893</offset>

</Make>

<Year rdf:ID="YearIns7">

<YearValue rdf:datatype="&xsd;string">1999</YearValue>

<ontos:URI rdf:datatype="&xsd;string">YearIns7</ontos:URI>

<offset rdf:datatype="&xsd;nonNegativeInteger">41641</offset>

</Year>

<Color rdf:ID="ColorIns7">

<ColorValuerdf:datatype="&xsd;string">red</ColorValue>

<ontos:URI rdf:datatype="&xsd;string">ColorIns7</ontos:URI>

<offset rdf:datatype="&xsd;nonNegativeInteger">42186</offset>

</Color>

<owl:Thing rdf:about="#CarIns7">

<hasMakerdf:resource="#MakeIns7"/>

<hasYearrdf:resource="#YearIns7" />

<hasColorrdf:resource="#ColorIns7"/>

<hasMileagerdf:resource="#MileageIns7"/>

<hasPricerdf:resource="#PriceIns7"/>

</owl:Thing>

Step 3. Formulate XQuery Expression

Conjunctive queries run over selected ontology’s extracted values

slide10

Step 3. Formulate XQuery Expression

  • Value-phrase-matching words determine conditions
  • Conditions:
    • Color = “red”
    • Make = “Nissan”
    • Year >= 1998

>= Operator

slide11

Step 3. Formulate XQuery Expression

1: for$docindocument("file:///c:/ontos/owlLib/Car.OWL")/rdf:RDF

2: for$Recordin$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" orempty($Color)) and

12: ($Make="Nissan" orempty($Make)) and

13: ($Year>="1998" orempty($Year))

14: return <Record ID="{$id}">

15: <Price>{$Price}</Price>

16: <Mileage>{$Mileage}</Mileage>

17: <Color>{$Color}</Color>

18: <Make>{$Make}</Make>

19: <Year>{$Year}</Year>

20: </Record>

For each owl:Thing

Get the instance ID and extracted values

Check conditions

Return values

step 4 run xquery expression over ontology s extracted data
Step 4. Run XQuery Expression Over Ontology’s Extracted Data
  • Uses Qexo 1.7, GNU’s XQuery engine for Java
  • Use XSLT to transform results to HTML table
evaluation of askontos
Evaluation of AskOntos
  • Measure success by:
    • Ability to match query to correct ontology
    • Ability to translate free-form queries into formal queries
  • We create:
    • Extraction ontologies for: car ads, diamonds, …
    • Queries for preliminary evaluation: 10 Conjunctive queries for car ads
    • Future work: do more evaluation
query translation metrics
Query Translation Metrics

“Find me the price and mileage of all red Nissans – I want a 1998 or newer.”

for$docin

document("file:///.../Car.OWL")/rdf:RDF

for$Recordin$doc/owl:Thing

where($Color="red" orempty($Color)) and

($Make="Nissan" orempty($Make)) and

($Year="1998" orempty($Year))

return <Record ID="{$id}">

<Price>{$Price}</Price>

<Color>{$Color}</Color>

<Make>{$Make}</Make>

<Year>{$Year}</Year>

</Record>

Human conversion

PROJECT: {Price, Mileage,Color, Make, Year}

SELECT: {(Color,=,“red”),

(Make,=,“Nissan”),

(Year,>=,“1998”)}

Automated conversion

PROJECT: {Price,Color, Make, Year}

SELECT: {(Color,=,“red”),

(Make,=,“Nissan”),

(Year,=,“1998”)}

preliminary results
Preliminary Results

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

6. What 2002 cars cost less than $9,000?

8. I want the year of any Honda with at least 200K miles on it

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

Evaluating the Framework

Input:

  • Obituaries ontology
  • 25 obituaries from two newspapers

Four of eighteen object sets shown above.

Data from Salt Lake Tribune and Arizona Daily Star

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