Church Building Grants To Assist With New Construction, Additions, And Restor...
Application Semantics via Rules in Open Vocabulary English
1. Application Semantics via Rules in Open
Vocabulary English
Adrian Walker
www.reengineeringllc.com
Presentation for theSci entific Discourse Meeting
July 11 2011
http://www.w3.org/wiki/HCLSIG/SWANSIOC/Actions/RhetoricalStructure/meetings/20110711
1
2. Abstract
There has been much progress assigning semantics to data.
However the meaning that resides in an application (or in a
SPARQL query) should be taken into account. Even if data
identifiers and ontologies have really fine readable meanings, an
application can change the semantics completely. And, unless
there are explanations of what the app has done, no-one will be
any the wiser unless the error is egregious (eg -- the Eiffel tower is
a dog).
This talk describes a system on the Web that combines three kinds
of semantics: (a) data -- as in SQL or RDF, (b) inference -- via a
theory of declarative knowledge, and (c) open vocabulary English.
The combination is used to answer questions over networked
databases, and to explain the results in hypertexted English. The
subject knowledge needed to do this can be acquired in social
network style, by typing executable English into browsers.
2
3. Agenda
• The World Wide Database vision
• Only experts have the skills to use the current tools
• An easier future for Semantic Technology -- combine:
– Semantics1 - Data Semantics = the current Technology
– Semantics2 - what a reasoner should do
– Semantics3 - Application Semantics = English meanings at the UI / AI
• A browser-based system for writing and running applications in English
• Examples : Semantics of ontology data, and of oil-industry SQL data
• Google finds applications that are written in executable English
• Summary
3
4. The World Wide Database vision
"If HTML and the Web made all the online documents look like one huge
book, the Semantic Web will make all the data in the world look like one
huge database”
-- Tim Berners-Lee
What is the Semantic Web?
“Data integration across application, organizational boundaries”
-- Tim Berners-Lee
4
5. The World Wide Database vision
• An advantage of RDF is that data from diverse sources can, in principle,
be freely merged and repurposed.
• Yet we cannot always expect meaningful results from simply merging
previously unseen RDF data under an existing application
• An application adds meaning to the data
5
6. The World Wide Database vision
Retailer’s English Manufacturer’s English
model of the world negotiable semantic distance
model of the world
6
7. The World Wide Database vision
Retailer’s English Manufacturer’s English
negotiable semantic distance
model of the world model of the world
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://retailer.org/node"/>
</rdf:RDF>
negotiable semantic distance
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://manuf.org/node"/>
</rdf:RDF>
7
8. The World Wide Database vision
Retailer’s English Manufacturer’s English
negotiable semantic distance
model of the world model of the world
semantic disconnects X
X
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://retailer.org/node"/>
</rdf:RDF>
negotiable semantic distance
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://manuf.org/node"/>
</rdf:RDF>
8
9. The World Wide Database vision
Retailer’s English Manufacturer’s English
negotiable semantic distance
model of the world model of the world
semantic disconnects X
X
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://retailer.org/node"/>
</rdf:RDF>
negotiable semantic distance
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://manuf.org/node"/>
</rdf:RDF>
9
10. Agenda
• The World Wide Database vision
• Only experts have the skills to use the current tools
• An easier future for Semantic Technology -- combine:
– Semantics1 - Data Semantics = the current Technology
– Semantics2 - what a reasoner should do
– Semantics3 - Application Semantics = English meanings at the UI
• A browser-based system for writing and running applications in English
• Examples : Semantics of ontology data, and of oil-industry SQL data
• Google indexes and searches applications that are written in English
• Summary
10
11. Only Experts have the Skills to
Use the Current Tools
Semantic
Web
Sub Topic
Knowledge
Discovery
Text Mining Data Mining
11
12. Only Experts have the Skills to
Use the Current Tools
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Bob
12
13. Only Experts have the Skills to
Use the Current Tools
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Does research on Bob
13
14. Only Experts have the Skills to
Use the Current Tools
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Does research on Bob
New user asked: how can I use RDF and Owl to find out from the above that
“Bob does research into Semantic Web” ?
14
15. Only Experts have the Skills to
Use the Current Tools
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Does research on Bob
New user asked: how an I use RDF and Owl to find out from the above that
“Bob does research into Semantic Web” ?
Expert replied: “You can do it by declaring subtopic to be transitive and by using a rule such as
ObjectPropertyAtom( worksIn, ?x, ?y) IF
ObjectPropertyAtom( worksIn, ?x, ?z)
AND ObjectPropertyAtom( subtopic, ?z, ?y)
Such rules can be expressed in RuleML or in SWRL, but you would have to find an
inference tool for them.”
15
16. Agenda
• The World Wide Database vision
• Only experts have the skills to use the current tools
• An easier future for Semantic Technology -- combine:
– Semantics1 - Data Semantics = the current Technology
– Semantics2 - what a reasoner should do
– Semantics3 - Application Semantics = English meanings at the UI
• A browser-based system for writing and running applications in English
• Examples : Semantics of ontology data, and of oil-industry SQL data
• Google indexes and searches applications that are written in English
• Summary
16
17. An Easier Future for Semantic Technology
Semantic
Web
Sub Topic
Knowledge
Discovery
Text Mining Data Mining
Facts:
this-item is a sub topic of this-topic
===================================
Data Mining Knowledge Discovery
Text Mining Knowledge Discovery
Knowledge Discovery Semantic Web
17
18. An Easier Future for Semantic Technology
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Discovery Adrian Claire
Text Mining Data Mining Bob
Facts:
this-item is a sub topic of this-topic this-person is a researcher
=================================== ===================
Data Mining Knowledge Discovery Adrian
Text Mining Knowledge Discovery Bob
Knowledge Discovery Semantic Web Claire
18
19. An Easier Future for Semantic Technology
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Does research on Bob
this-item is a sub topic of this-topic this-person is a researcher
=================================== ===================
Data Mining Knowledge Discovery Adrian
Facts: Bob
Text Mining Knowledge Discovery
Knowledge Discovery Semantic Web Claire
this-person does research into this-topic
==============================
Adrian Knowledge Discovery
Bob Data Mining
Claire Text Mining
19
20. An Easier Future for Semantic Technology
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Does research on Bob
A rule:
some-subject is a sub topic of some-subject1
that-subject1 is a sub topic of some-topic
-----------------------------------------------------
that-subject is a sub topic of that-topic
20
21. An Easier Future for Semantic Technology
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Does research on Bob
Another rule:
some-subject is a sub topic of some-subject1 some-person does research into some-subject
that-subject1 is a sub topic of some-topic that-subject is a sub topic of some-topic
----------------------------------------------------- ------------------------------------------------------
that-subject is a sub topic of that-topic that-person does research into that-topic
-- To run or change this example, please point Firefox or IE to the demo OwlResearchOnt at www.reengineeringllc.com
21
22. An Easier Future for Semantic Technology
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Does research on Bob
Question: Bob does research into some-topic?
22
23. An Easier Future for Semantic Technology
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Does research on Bob
Question: Bob does research into some-topic?
Bob does research into this-topic
Answer:
===========================
Data Mining
Knowledge Discovery
Semantic Web
-- To run or change this example, please point Firefox or IE to the demo OwlResearchOnt at www.reengineeringllc.com
23
24. An Easier Future for Semantic Technology
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Does research on Bob
Explanation:
Bob does research into Data Mining
Data Mining is a sub topic of Semantic Web
--------------------------------------------------------
Bob does research into Semantic Web
24
25. An Easier Future for Semantic Technology
Semantic Researcher
Web
Instance
Sub Topic
Knowledge
Adrian Claire
Discovery
Text Mining Data Mining Does research on Bob
Explanation:
Bob does research into Data Mining
Data Mining is a sub topic of Semantic Web
--------------------------------------------------------
Bob does research into Semantic Web
Data Mining is a sub topic of Knowledge Discovery
Knowledge Discovery is a sub topic of Semantic Web
------------------------------------------------------------------
Data Mining is a sub topic of Semantic Web
25
26. An Easier Future for Semantic Technology
• Combine, in one system for non-expert authors and users
26
27. An Easier Future for Semantic Technology
• Combine, in one system for non-expert authors and users
• Semantics1 - Data Semantics
• the current technology
27
28. An Easier Future for Semantic Technology
• Combine, in one system for non-expert authors and users
• Semantics1 - Data Semantics
• the current technology
• Semantics2 -Mathematical Theory of Declarative Knowledge
• specifies what a reasoner should do
28
29. An Easier Future for Semantic Technology
• Combine, in one system for non-expert authors and users
• Semantics1 - Data Semantics
• the current technology
• Semantics2 -Mathematical Theory of Declarative Knowledge
• specifies what a reasoner should do
• Semantics3 – Natural Language Application Semantics
• English meanings at the Author/User Interface
29
30. Agenda
• The World Wide Database vision
• Only experts have the skills to use the current tools
• An easier future for Semantic Technology -- combine:
– Semantics1 - Data Semantics = the current Technology
– Semantics2 - what a reasoner should do
– Semantics3 - Application Semantics = English meanings at the UI
• A browser-based system for writing and running applications in English
• Examples : Semantics of ontology data, and of oil-industry SQL data
• Google indexes and searches applications that are written in English
• Summary
30
31. A browser-based system for writing and
running applications in English
Semantics3
Who does research
Into the Semantic Web? Business Policy Agents
Writes Business Rules
in open vocabulary
English Directly into a
browser
Runs the Rules Using
the browser
Sees English
explanations of the
Results
End User /
Author
31
32. A browser-based system for writing and
running applications in English
Semantics3
Who does research
Into the Semantic Web?
Writes Business Rules
in open vocabulary
English Directly into a
browser
Runs the Rules Using
the browser
Sees English
explanations
End User / of the Results
Author
Semantics2
Theory of
Declarative
Knowledge
Programmer
32
33. A browser-based system for writing and
running applications in English
Semantics3
Who does research.
Into the Semantic Web?
Writes Business Rules
in open vocabulary
Internet
English Directly into a Business
browser Business Policy Agents
Logic
Runs the Rules Using
the browser
Sees English
Application
explanations Independent
End User / of the Results
Author
Semantics2
Theory of
Declarative
Knowledge
Programmer
33
34. A browser-based system for writing and
running applications in English
Semantics3
Who does research.
Into the Semantic Web?
Writes Business Rules
in open vocabulary
Internet SQL
English Directly into a Business
browser Business Policy Agents
Logic Semantics1
Runs the Rules Using
the browser
Sees English
Application
explanations Independent RDF
End User / of the Results
Author
Semantics2
Theory of
Declarative
Knowledge
Programmer
34
35. Agenda
• The World Wide Database vision
• Only experts have the skills to use the current tools
• An easier future for Semantic Technology -- combine:
– Semantics1 - Data Semantics = the current Technology
– Semantics2 - what a reasoner should do
– Semantics3 - Application Semantics = English meanings at the UI
• A browser-based system for writing and running applications in English
• Examples : Semantics of ontology data, and of oil-industry SQL data
• Google indexes and searches applications that are written in English
• Summary
35
36. Ex 1: English semantics of ontology data
A retailer orders computers from a manufacturer
In the retailer's terminology, a computer is called a PC for Gamers,
while in the manufacturer's terminology, it is called a Prof Desktop.
The retailer and the manufacturer agree that both belong to the class
Worksts/Desktops
Use semantic resolution to find out to what extent a Prof Desktop has
the required memory, CPU and so forth for a PC for Gamers
-- Example based on “Semantic Resolution for E-Commerce”,
by Yun Peng, Youyong Zou, Xiaocheng Luan ( UMBC ) and
Nenad Ivezic, Michael Gruninger and Albert Jones ( NIST )
36
37. Ex 1: English semantics of ontology data
Retailer’s English Manufacturer’s English
negotiable semantic distance
model of the world model of the world
semantic disconnects X
X
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://retailer.org/node"/>
</rdf:RDF>
negotiable semantic distance
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://manuf.org/node"/>
</rdf:RDF>
37
38. Ex 1: English semantics of ontology data
A retailer orders computers from a manufacturer -- facts
for the retailer the term PC for Gamers has super-class this-class in the this-ns namespace
==================================================================
Computers to order retailer
Worksts/Desktops shared
Computers shared
38
39. Ex 1: English semantics of ontology data
A retailer orders computers from a manufacturer -- facts
for the retailer the term PC for Gamers has super-class this-class in the this-ns namespace
==================================================================
Computers to order retailer
Worksts/Desktops shared
Computers shared
for the manufacturer the term Prof Desktop has super-class this-class in the this-ns namespace
=====================================================================
Desktop manufacturer
Worksts/Desktops shared
Computer Systems manufacturer
Computers shared
39
40. Ex 1: English semantics of ontology data
A retailer orders computers from a manufacturer -- facts and a rule
for the retailer the term PC for Gamers has super-class this-class in the this-ns namespace
==================================================================
Computers to order retailer
Worksts/Desktops shared
Computers shared
for the manufacturer the term Prof Desktop has super-class this-class in the this-ns namespace
=====================================================================
Desktop manufacturer
Worksts/Desktops shared
Computer Systems manufacturer
Computers shared
for the retailer the term some-item1 has super-class some-class in the some-ns namespace
for the manufacturer the term some-item2 has super-class that-class in the that-ns namespace
----------------------------------------------------------------------------------------------------------------------
the retailer term that-item1 and the manufacturer term that-item2 agree - they are of type that-class
-- To run or change this example, please point Firefox or IE to the demo SemanticResolution1 at www.reengineeringllc.com
40
41. Ex 1: English semantics of ontology data
A retailer orders computers from a manufacturer -- answer table
this-result : retailer this-item1 is matched by manufacturer this-item2 on the property this-prop for part this-comp
====================================================================================
NEED PC for Gamers *missing-item* Size Graphics Card
OK PC for Gamers Prof Desktop Size CPU
OK PC for Gamers Prof Desktop Size Memory
OK PC for Gamers Prof Desktop Size Sound Card
-- To run or change this example, please point Firefox or IE to the demo SemanticResolution1 at www.reengineeringllc.com
41
42. Ex 1: English semantics of ontology data
A retailer orders computers from a manufacturer -- explanation/proof of an answer
retailer PC for Gamers is matched by manufacturer Prof Desktop on the property Size for part Memory
------------------------------------------------------------------------------------------------------------------------------------
OK : retailer PC for Gamers is matched by manufacturer Prof Desktop on the property Size for part Memory
-- To run or change this example, please point Firefox or IE to the demo SemanticResolution1 at www.reengineeringllc.com
42
43. Ex 1: English semantics of ontology data
A retailer orders computers from a manufacturer -- explanation/proof of an answer
retailer PC for Gamers is matched by manufacturer Prof Desktop on the property Size for part Memory
------------------------------------------------------------------------------------------------------------------------------------
OK : retailer PC for Gamers is matched by manufacturer Prof Desktop on the property Size for part Memory
the retailer term PC for Gamers and the manufacturer term Prof Desktop agree - they are of type Worksts/Desktops
for the retailer the term PC for Gamers has part Memory with property Size >= 256 in the shared namespace
for the manufacturer the term Prof Desktop has part Memory with property Size = 512 in the shared namespace
= 512 meets the requirement >= 256
----------------------------------------------------------------------------------------------------------------------------------------------
retailer PC for Gamers is matched by manufacturer Prof Desktop on the property Size for part Memory
-- To run or change this example, please point Firefox or IE to the demo SemanticResolution1 at www.reengineeringllc.com
43
44. Ex 1: English semantics of ontology data
A retailer orders computers from a manufacturer -- explanation/proof of an answer
retailer PC for Gamers is matched by manufacturer Prof Desktop on the property Size for part Memory
------------------------------------------------------------------------------------------------------------------------------------
OK : retailer PC for Gamers is matched by manufacturer Prof Desktop on the property Size for part Memory
the retailer term PC for Gamers and the manufacturer term Prof Desktop agree - they are of type Worksts/Desktops
for the retailer the term PC for Gamers has part Memory with property Size >= 256 in the shared namespace
for the manufacturer the term Prof Desktop has part Memory with property Size = 512 in the shared namespace
= 512 meets the requirement >= 256
----------------------------------------------------------------------------------------------------------------------------------------------
retailer PC for Gamers is matched by manufacturer Prof Desktop on the property Size for part Memory
for the retailer the term PC for Gamers has super-class Worksts/Desktops in the shared namespace
for the manufacturer the term Prof Desktop has super-class Worksts/Desktops in the shared namespace
--------------------------------------------------------------------------------------------------------------------------------------------
the retailer term PC for Gamers and the manufacturer term Prof Desktop agree - they are of type Worksts/Desktops
-- To run or change this example, please point Firefox or IE to the demo SemanticResolution1 at www.reengineeringllc.com
44
45. Ex 1: English semantics of ontology data
Retailer’s English Manufacturer’s English
negotiable semantic distance
model of the world model of the world
semantic disconnects X
X
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://retailer.org/node"/>
</rdf:RDF>
negotiable semantic distance
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://manuf.org/node"/>
</rdf:RDF>
45
46. Ex 1: English semantics of ontology data
Retailer’s English Manufacturer’s English
negotiable semantic distance
model of the world model of the world
English explanations bridge the
semantic gap between people
and machines
the retailer term PC for Gamers and for the manufacturer the term Prof Desktop
the manufacturer term Prof Desktop agree - has part Memory with property Size = 512 in
they are of type Worksts/Desktops the shared namespace
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://retailer.org/node"/>
</rdf:RDF>
negotiable semantic distance
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Alt rdf:about="http://manuf.org/node"/>
</rdf:RDF>
46
47. Agenda
• The World Wide Database vision
• Only experts have the skills to use the current tools
• An easier future for Semantic Technology -- combine:
– Semantics1 - Data Semantics = the current Technology
– Semantics2 - what a reasoner should do
– Semantics3 - Application Semantics = English meanings at the UI
• A browser-based system for writing and running applications in English
• Examples : Semantics of ontology data, and of oil-industry SQL data
• Google indexes and searches applications that are written in English
• Summary
47
48. Ex 2: English semantics of oil-industry SQL data
• A customer needs 1000 gallons of product y in October
• Products x and z can be substituted for product y, but only in the Fall
• Combine products x, y and z to fill the order
• Combination depends on:
• How much of each product is available from each refinery
• Available transportation from each refinery to the customer area
-- Example based on
“Oil Industry Supply Chain Management Using English Business Rules Over SQL”
by Ted Kowalski and Adrian Walker,
www.reengineeringllc.com/Oil_Industry_Supply_Chain_by_Kowalski_and_Walker.pdf
48
49. Ex 2: English semantics of oil-industry SQL data
Facts:
estimated demand this-id in this-region is for this-quantity gallons of this-finished-product in this-month of this-year
===================================================================================
523 NJ 1000 product-y October 2005
49
50. Ex 2: English semantics of oil-industry SQL data
Facts:
estimated demand this-id in this-region is for this-quantity gallons of this-finished-product in this-month of this-year
===================================================================================
523 NJ 1000 product-y October 2005
in this-season an order for this-product1 can be filled with the alternative this-product2
==============================================================
Fall product-y product-x
Fall product-y product-z
50
51. Ex 2: English semantics of oil-industry SQL data
Facts:
estimated demand this-id in this-region is for this-quantity gallons of this-finished-product in this-month of this-year
===================================================================================
523 NJ 1000 product-y October 2005
in this-season an order for this-product1 can be filled with the alternative this-product2
==============================================================
Fall product-y product-x
Fall product-y product-z
in this-month the refinery this-name has committed to schedule this-amount gallons of this-product
=======================================================================
October Shell Canada One 500 product-y
October Shell Canada One 300 product-x
October Shell Canada One 800 product-z
October Shell Canada One 10000 product-w
51
52. Ex 2: English semantics of oil-industry SQL data
Facts:
estimated demand this-id in this-region is for this-quantity gallons of this-finished-product in this-month of this-year
===================================================================================
523 NJ 1000 product-y October 2005
in this-season an order for this-product1 can be filled with the alternative this-product2
==============================================================
Fall product-y product-x
Fall product-y product-z
in this-month the refinery this-name has committed to schedule this-amount gallons of this-product
=======================================================================
October Shell Canada One 500 product-y
October Shell Canada One 300 product-x
October Shell Canada One 800 product-z
October Shell Canada One 10000 product-w
we have this-method transportation from refinery this-name to region this-region
==========================================================
truck Shell Canada One NJ
rail Shell Canada One NJ
52
53. Ex 2: English semantics of oil-industry SQL data
Rules:
estimated demand some-id in some-region is for some-quantity gallons of some-finished-product
in some-month of some-year
for estimated demand that-id some-fraction of the order will be some-product from some-refinery
that-quantity * that-fraction = some-amount
------------------------------------------------------------------------------------------------------------------------------------------------
for demand that-id that-region for that-quantity that-finished-product we use that-amount that-product from that-refinery
53
54. Ex 2: English semantics of oil-industry SQL data
Rules:
estimated demand some-id in some-region is for some-quantity gallons of some-finished-product
in some-month of some-year
for estimated demand that-id some-fraction of the order will be some-product from some-refinery
that-quantity * that-fraction = some-amount
------------------------------------------------------------------------------------------------------------------------------------------------
for demand that-id that-region for that-quantity that-finished-product we use that-amount that-product from that-refinery
estimated demand some-id in some-region is for some-quantity gallons of some-finished-product
in some-month of some-year
for demand that-id for that-finished-product refinery some-refinery can supply some-amount gallons of some-product
for demand that-id the refineries have altogether some-total gallons of acceptable base products
that-amount / that-total = some-long-fraction
that-long-fraction rounded to 2 places after the decimal point is some-fraction
----------------------------------------------------------------------------------------------------------------
for estimated demand that-id that-fraction of the order will be that-product from that-refinery
54
55. Ex 2: English semantics of oil-industry SQL data
Rules:
estimated demand some-id in some-region is for some-quantity gallons of some-finished-product
in some-month of some-year
for estimated demand that-id some-fraction of the order will be some-product from some-refinery
that-quantity * that-fraction = some-amount
------------------------------------------------------------------------------------------------------------------------------------------------
for demand that-id that-region for that-quantity that-finished-product we use that-amount that-product from that-refinery
estimated demand some-id in some-region is for some-quantity gallons of some-finished-product
in some-month of some-year
for demand that-id for that-finished-product refinery some-refinery can supply some-amount gallons of some-product
for demand that-id the refineries have altogether some-total gallons of acceptable base products
that-amount / that-total = some-long-fraction
that-long-fraction rounded to 2 places after the decimal point is some-fraction
----------------------------------------------------------------------------------------------------------------
for estimated demand that-id that-fraction of the order will be that-product from that-refinery
estimated demand some-id in some-region is for some-amount gallons of some-product in some-month of some-year
sum a-num :
for demand that-id for that-product refinery some-name can supply some-num gallons of some-product1 = a-total
-------------------------------------------------------------------------------------------------------------------------
for demand that-id the refineries have altogether that-total gallons of acceptable base products
55
56. Ex 2: English semantics of oil-industry SQL data
An answer table:
for demand this-id this-region for this-quantity this-finished-product we use this-amount this-product from this-refinery
======================================================================================
523 NJ 1000 product-y 190.0 product-x Shell Canada One
523 NJ 1000 product-y 310.0 product-y Shell Canada One
523 NJ 1000 product-y 500.0 product-z Shell Canada One
To run or change this example, please point Firefox or IE to the demo Oil-IndustrySupplyChain1 at www.reengineeringllc.com
56
57. Ex 2: English semantics of oil-industry SQL data
An explanation:
estimated demand 523 in NJ is for 1000 gallons of product-y in October of 2005
for estimated demand 523 0.19 of the order will be product-x from Shell Canada One
1000 * 0.19 = 190
------------------------------------------------------------------------------------------------------
for demand 523 NJ for 1000 product-y we use 190 product-x from Shell Canada One
57
58. Ex 2: English semantics of oil-industry SQL data
An explanation:
estimated demand 523 in NJ is for 1000 gallons of product-y in October of 2005
for estimated demand 523 0.19 of the order will be product-x from Shell Canada One
1000 * 0.19 = 190
------------------------------------------------------------------------------------------------------
for demand 523 NJ for 1000 product-y we use 190 product-x from Shell Canada One
estimated demand 523 in NJ is for 1000 gallons of product-y in October of 2005
for demand 523 for product-y refinery Shell Canada One can supply 300 gallons of product-x
for demand 523 the refineries have altogether 1600 gallons of acceptable base products
300 / 1600 = 0.1875
0.1875 rounded to 2 places after the decimal point is 0.19
------------------------------------------------------------------------------------------------------------------
for estimated demand 523 0.19 of the order will be product-x from Shell Canada One
58
59. Ex 2: English semantics of oil-industry SQL data
An explanation:
estimated demand 523 in NJ is for 1000 gallons of product-y in October of 2005
for estimated demand 523 0.19 of the order will be product-x from Shell Canada One
1000 * 0.19 = 190
------------------------------------------------------------------------------------------------------
for demand 523 NJ for 1000 product-y we use 190 product-x from Shell Canada One
estimated demand 523 in NJ is for 1000 gallons of product-y in October of 2005
for demand 523 for product-y refinery Shell Canada One can supply 300 gallons of product-x
for demand 523 the refineries have altogether 1600 gallons of acceptable base products
300 / 1600 = 0.1875
0.1875 rounded to 2 places after the decimal point is 0.19
------------------------------------------------------------------------------------------------------------------
for estimated demand 523 0.19 of the order will be product-x from Shell Canada One
estimated demand 523 in NJ is for 1000 gallons of product-y in October of 2005
sum eg-amount :
for demand 523 for product-y refinery eg-refinery can supply eg-amount gallons of eg-product1 = 1600
---------------------------------------------------------------------------------------------------------------------------------
for demand 523 the refineries have altogether 1600 gallons of acceptable base products
To run or change this example, please point Firefox or IE to the demo Oil-IndustrySupplyChain1 at www.reengineeringllc.com
59
60. Ex 2: English semantics of oil-industry SQL data
Rules for finding SQL data on the Internet:
A data table
we have this-method transportation from refinery this-name to region this-region
==========================================================
truck Shell Canada One NJ
rail Shell Canada One NJ
A rule that says how to find the table on the internet
url:www.example.com dbms:9i dbname:ibldb tablename:T1 port:1521 id:anonymous password:oracle
-----------------------------------------------------------------------------------------------------------------------------------
we have this-method transportation from refinery this-name to region this-region
To run or change this example, please point Firefox or IE to the demo Oil-IndustrySupplyChain1 at www.reengineeringllc.com
60
61. Ex 2: English semantics of oil-industry SQL data
Semantics3
Who does research.
Into the Semantic Web?
Writes Business Rules Internet SQL
in open vocabulary
English Directly into a Business
browser
Logic Semantics1
Runs the Rules Using
the browser
Application
Sees English Independent
explanations
RDF
End User / of the Results
Author
Semantics2
Theory of
Declarative
Knowledge
Programmer
61
62. Ex 2: English semantics of oil-industry SQL data
A SQL query generated automatically from the business rules:
select distinct x6,T2.PRODUCT,T1.NAME,T2.AMOUNT,x5 from
T6 tt1,T6 tt2,T5,T4,T3,T2,T1,T6,
(select x3 x6,T6.FINISHED_PRODUCT x7,T6.ID x8,tt1.ID x9,tt2.ID x10,sum(x4) x5 from
T6,T6 tt1,T6 tt2,
((select T6.ID x3,T3.PRODUCT1,T1.NAME,T2.AMOUNT x4,T2.PRODUCT from
T1,T2,T3,T4,T5,T6,T6 tt1,T6 tt2 where
T1.NAME=T2.NAME and T1.REGION=T6.REGION and T2.MONTH1=T4.MONTH1 and
T2.MONTH1=T6.MONTH1 and T2.PRODUCT=T3.PRODUCT2 and T4.MONTH1=T6.MONTH1 and
T3.PRODUCT1=T6.FINISHED_PRODUCT and T3.SEASON=T4.SEASON and T3.SEASON=T5.SEASON and
T4.SEASON=T5.SEASON and T6.ID=tt1.ID and T6.ID=tt2.ID and tt1.ID=tt2.ID)
union
(select T6.ID x3,T2.PRODUCT,T1.NAME,T2.AMOUNT x4,T2.PRODUCT from
T1,T2,T3,T4,T5,T6,T6 tt1,T6 tt2 where
T1.NAME=T2.NAME and T1.REGION=T6.REGION and T2.MONTH1=T6.MONTH1 and
T2.PRODUCT=T6.FINISHED_PRODUCT and T6.ID=tt1.ID and T6.ID=tt2.ID and tt1.ID=tt2.ID)
) group by T6.FINISHED_PRODUCT,T6.ID,tt1.ID,tt2.ID,x3) where
T6.ID=tt2.ID and tt1.ID=T6.ID and T6.FINISHED_PRODUCT=x7 and T6.ID=x8 and tt1.ID=x8 and
tt2.ID=x8 and T1.NAME=T2.NAME and T1.REGION=tt2.REGION and T2.MONTH1=T4.MONTH1 and
T2.MONTH1=tt2.MONTH1 and T2.PRODUCT=T3.PRODUCT2 and
T3.PRODUCT1=tt1.FINISHED_PRODUCT and T3.PRODUCT1=tt2.FINISHED_PRODUCT and
T3.SEASON=T4.SEASON and T3.SEASON=T5.SEASON and T4.MONTH1=tt2.MONTH1 and
T4.SEASON=T5.SEASON and T6.ID=x6 and tt1.FINISHED_PRODUCT=tt2.FINISHED_PRODUCT and
tt1.ID=tt2.ID and tt1.ID=x6 and tt2.ID=x6
order by x6,T2.PRODUCT,T1.NAME,T2.AMOUNT,x5;
62
63. Ex 2: English semantics of oil-industry SQL data
• It would be difficult to write the SQL query on the previous slide by hand, or
to manually reconcile it with the business knowledge specified in the rules.
• How do we know that the automatically generated SQL yields results
that are correct with respect to the business rules ?
The concern is eased by the fact that we can get step-by-step
business level English explanations
63
64. Ex 2: English semantics of oil-industry SQL data
• Could a programmer write more readable SQL by hand ?
Yes, but we would need to add comments in English to help people to
reconcile the hand-written query with the business knowledge
By their nature, the comments would not be used during machine processing,
so the correctness of the hand written-SQL would rely on lengthy,
and perhaps error prone, manual verification
Comments are sometimes not kept up to date when the code that they
supposedly document is changed
• The situation with SPARQL is similar
64
65. Agenda
• The World Wide Database vision
• Only experts have the skills to use the current tools
• An easier future for Semantic Technology -- combine:
– Semantics1 - Data Semantics = the current Technology
– Semantics2 - what a reasoner should do
– Semantics3 - Application Semantics = English meanings at the UI
• A browser-based system for writing and running applications in English
• Examples : Semantics of ontology data, and of oil-industry SQL data
• Google indexes and searches applications that are written in English
• Summary
65
66. Google indexes and searches
applications that are written in English
Search: for estimated demand that-id fraction of the order
66
67. Google indexes and searches
applications that are written in English
Search: for estimated demand that-id fraction of the order
Search: for estimated demand that-id fraction of the order
Result:
67
68. Google indexes and searches
applications that are written in English
Search: for estimated demand that-id fraction of the order
Search: for estimated demand that-id fraction of the order
Result:
The executable English rules
and facts that define the application
A paper that describes
the application
68
69. Summary
• The World Wide Database vision
– all the data in the world as one database
• Only experts have the skills to use the current tools
– OwlResearchOnt -- Bob does research into Semantic Web
• An easier future for Semantic Technology -- combine:
– Semantics1 - Data Semantics = the current Technology
– Semantics2 - what a reasoner should do
– Semantics3 - Application Semantics = English meanings at the UI
• A browser-based system for writing and running applications in English
• Examples : Semantics of ontology data, and of oil-industry SQL data
• Google indexes and searches applications that are written in English
69
70. Links
1. The NIST / UMBC paper listed in the presentation can be downloaded from :
http://www.mel.nist.gov/msidlibrary/publications.html
2. What a reasoner should do:
Backchain Iteration: Towards a Practical Inference Method that is Simple Enough to be Proved
Terminating, Sound and Complete. Journal of Automated Reasoning, 11:1-22.
3 . Video about interactions between drugs www.reengineeringllc.com/ibldrugdbdemo1.htm
4. Video about energy independence www.reengineeringllc.com/EnergyIndependence1Video.htm
5. The English inferencing examples
OwlResearchOnt SemanticResolution1 Oil-IndustrySupplyChain1 Oil-IndustrySupplyChain1MySql1
(and many other examples provided) can be run, changed, and re-run as follows:
1. Point Firefox or IE to www.reengineeringllc.com
2. Click on Internet Business Logic
3. Click on the GO button
4. Click on the Help button to see how to navigate through the pages
5. Select OwlResearchOnt
6. You are cordially invited to write and run your own examples. Shared use of the system is free.
70