Application Semantics via Rules in Open Vocabulary English
Upcoming SlideShare
Loading in...5
×
 

Application Semantics via Rules in Open Vocabulary English

on

  • 385 views

 

Statistics

Views

Total Views
385
Views on SlideShare
377
Embed Views
8

Actions

Likes
0
Downloads
2
Comments
0

1 Embed 8

url_unknown 8

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Application Semantics via Rules in Open Vocabulary English Application Semantics via Rules in Open Vocabulary English Presentation Transcript

  • Application Semantics via Rules in Open Vocabulary English Adrian Walker www.reengineeringllc.com Presentation for theSci entific Discourse Meeting July 11 2011http://www.w3.org/wiki/HCLSIG/SWANSIOC/Actions/RhetoricalStructure/meetings/20110711 1
  • AbstractThere has been much progress assigning semantics to data.However the meaning that resides in an application (or in aSPARQL query) should be taken into account. Even if dataidentifiers and ontologies have really fine readable meanings, anapplication can change the semantics completely. And, unlessthere are explanations of what the app has done, no-one will beany the wiser unless the error is egregious (eg -- the Eiffel tower isa dog).This talk describes a system on the Web that combines three kindsof semantics: (a) data -- as in SQL or RDF, (b) inference -- via atheory of declarative knowledge, and (c) open vocabulary English.The combination is used to answer questions over networkeddatabases, and to explain the results in hypertexted English. Thesubject knowledge needed to do this can be acquired in socialnetwork style, by typing executable English into browsers. 2
  • 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
  • The World Wide Database vision"If HTML and the Web made all the online documents look like one hugebook, the Semantic Web will make all the data in the world look like onehuge database” -- Tim Berners-LeeWhat is the Semantic Web?“Data integration across application, organizational boundaries” -- Tim Berners-Lee 4
  • 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
  • The World Wide Database visionRetailer’s English Manufacturer’s Englishmodel of the world negotiable semantic distance model of the world 6
  • The World Wide Database visionRetailer’s English Manufacturer’s English negotiable semantic distancemodel 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
  • The World Wide Database vision Retailer’s English Manufacturer’s English negotiable semantic distance model of the world model of the world semantic disconnects XX <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
  • The World Wide Database vision Retailer’s English Manufacturer’s English negotiable semantic distance model of the world model of the world semantic disconnects XX <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
  • 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
  • Only Experts have the Skills to Use the Current Tools Semantic Web Sub Topic Knowledge DiscoveryText Mining Data Mining 11
  • Only Experts have the Skills to Use the Current Tools Semantic Researcher Web Instance Sub Topic Knowledge Adrian Claire DiscoveryText Mining Data Mining Bob 12
  • Only Experts have the Skills to Use the Current Tools Semantic Researcher Web Instance Sub Topic Knowledge Adrian Claire DiscoveryText Mining Data Mining Does research on Bob 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 BobNew user asked: how can I use RDF and Owl to find out from the above that“Bob does research into Semantic Web” ? 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 BobNew 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 aninference tool for them.” 15
  • 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
  • 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 DiscoveryText Mining Knowledge DiscoveryKnowledge Discovery Semantic Web 17
  • 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 AdrianText Mining Knowledge Discovery BobKnowledge Discovery Semantic Web Claire 18
  • An Easier Future for Semantic Technology Semantic Researcher Web Instance Sub Topic Knowledge Adrian Claire Discovery Text Mining Data Mining Does research on Bobthis-item is a sub topic of this-topic this-person is a researcher=================================== ===================Data Mining Knowledge Discovery Adrian Facts: BobText Mining Knowledge DiscoveryKnowledge Discovery Semantic Web Claire this-person does research into this-topic ============================== Adrian Knowledge Discovery Bob Data Mining Claire Text Mining 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 A rule:some-subject is a sub topic of some-subject1that-subject1 is a sub topic of some-topic-----------------------------------------------------that-subject is a sub topic of that-topic 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 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
  • An Easier Future for Semantic Technology Semantic Researcher Web Instance Sub Topic Knowledge Adrian Claire DiscoveryText Mining Data Mining Does research on Bob Question: Bob does research into some-topic? 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? 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
  • An Easier Future for Semantic Technology Semantic Researcher Web Instance Sub Topic Knowledge Adrian Claire DiscoveryText 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
  • An Easier Future for Semantic Technology Semantic Researcher Web Instance Sub Topic Knowledge Adrian Claire DiscoveryText 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
  • An Easier Future for Semantic Technology• Combine, in one system for non-expert authors and users 26
  • An Easier Future for Semantic Technology• Combine, in one system for non-expert authors and users • Semantics1 - Data Semantics • the current technology 27
  • 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
  • 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
  • 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
  • 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
  • A browser-based system for writing and running applications in English Semantics3Who does researchInto the Semantic Web? Writes Business Rules in open vocabulary English Directly into a browser Runs the Rules Using the browser Sees English explanationsEnd User / of the Results Author Semantics2 Theory of Declarative Knowledge Programmer 32
  • A browser-based system for writing and running applications in English Semantics3Who 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 IndependentEnd User / of the Results Author Semantics2 Theory of Declarative Knowledge Programmer 33
  • A browser-based system for writing and running applications in English Semantics3Who 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 RDFEnd User / of the Results Author Semantics2 Theory of Declarative Knowledge Programmer 34
  • 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
  • Ex 1: English semantics of ontology dataA retailer orders computers from a manufacturerIn the retailers terminology, a computer is called a PC for Gamers,while in the manufacturers terminology, it is called a Prof Desktop.The retailer and the manufacturer agree that both belong to the classWorksts/DesktopsUse semantic resolution to find out to what extent a Prof Desktop hasthe 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
  • 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 XX <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
  • Ex 1: English semantics of ontology dataA retailer orders computers from a manufacturer -- factsfor 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
  • Ex 1: English semantics of ontology dataA retailer orders computers from a manufacturer -- factsfor 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 sharedfor 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
  • 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
  • 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
  • Ex 1: English semantics of ontology dataA retailer orders computers from a manufacturer -- explanation/proof of an answerretailer 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
  • Ex 1: English semantics of ontology dataA retailer orders computers from a manufacturer -- explanation/proof of an answerretailer 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 Memorythe retailer term PC for Gamers and the manufacturer term Prof Desktop agree - they are of type Worksts/Desktopsfor the retailer the term PC for Gamers has part Memory with property Size >= 256 in the shared namespacefor 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
  • Ex 1: English semantics of ontology dataA retailer orders computers from a manufacturer -- explanation/proof of an answerretailer 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 Memorythe retailer term PC for Gamers and the manufacturer term Prof Desktop agree - they are of type Worksts/Desktopsfor the retailer the term PC for Gamers has part Memory with property Size >= 256 in the shared namespacefor 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 Memoryfor the retailer the term PC for Gamers has super-class Worksts/Desktops in the shared namespacefor 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
  • 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 XX <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
  • 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 machinesthe retailer term PC for Gamers and for the manufacturer the term Prof Desktopthe manufacturer term Prof Desktop agree - has part Memory with property Size = 512 inthey 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
  • 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
  • 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
  • Ex 2: English semantics of oil-industry SQL dataFacts: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
  • Ex 2: English semantics of oil-industry SQL dataFacts: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
  • Ex 2: English semantics of oil-industry SQL dataFacts: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
  • Ex 2: English semantics of oil-industry SQL dataFacts: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
  • 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-yearfor estimated demand that-id some-fraction of the order will be some-product from some-refinerythat-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
  • 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-yearfor estimated demand that-id some-fraction of the order will be some-product from some-refinerythat-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-refineryestimated demand some-id in some-region is for some-quantity gallons of some-finished-product in some-month of some-yearfor demand that-id for that-finished-product refinery some-refinery can supply some-amount gallons of some-productfor demand that-id the refineries have altogether some-total gallons of acceptable base productsthat-amount / that-total = some-long-fractionthat-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
  • 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-yearfor estimated demand that-id some-fraction of the order will be some-product from some-refinerythat-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-refineryestimated demand some-id in some-region is for some-quantity gallons of some-finished-product in some-month of some-yearfor demand that-id for that-finished-product refinery some-refinery can supply some-amount gallons of some-productfor demand that-id the refineries have altogether some-total gallons of acceptable base productsthat-amount / that-total = some-long-fractionthat-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-refineryestimated demand some-id in some-region is for some-amount gallons of some-product in some-month of some-yearsum 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
  • 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 OneTo run or change this example, please point Firefox or IE to the demo Oil-IndustrySupplyChain1 at www.reengineeringllc.com 56
  • Ex 2: English semantics of oil-industry SQL dataAn 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
  • Ex 2: English semantics of oil-industry SQL dataAn 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
  • 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 productsTo run or change this example, please point Firefox or IE to the demo Oil-IndustrySupplyChain1 at www.reengineeringllc.com 59
  • 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-regionTo run or change this example, please point Firefox or IE to the demo Oil-IndustrySupplyChain1 at www.reengineeringllc.com 60
  • Ex 2: English semantics of oil-industry SQL data Semantics3Who 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 RDFEnd User / of the Results Author Semantics2 Theory of Declarative Knowledge Programmer 61
  • Ex 2: English semantics of oil-industry SQL dataA SQL query generated automatically from the business rules:select distinct x6,T2.PRODUCT,T1.NAME,T2.AMOUNT,x5 fromT6 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 fromT6,T6 tt1,T6 tt2,((select T6.ID x3,T3.PRODUCT1,T1.NAME,T2.AMOUNT x4,T2.PRODUCT fromT1,T2,T3,T4,T5,T6,T6 tt1,T6 tt2 whereT1.NAME=T2.NAME and T1.REGION=T6.REGION and T2.MONTH1=T4.MONTH1 andT2.MONTH1=T6.MONTH1 and T2.PRODUCT=T3.PRODUCT2 and T4.MONTH1=T6.MONTH1 andT3.PRODUCT1=T6.FINISHED_PRODUCT and T3.SEASON=T4.SEASON and T3.SEASON=T5.SEASON andT4.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 fromT1,T2,T3,T4,T5,T6,T6 tt1,T6 tt2 whereT1.NAME=T2.NAME and T1.REGION=T6.REGION and T2.MONTH1=T6.MONTH1 andT2.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) whereT6.ID=tt2.ID and tt1.ID=T6.ID and T6.FINISHED_PRODUCT=x7 and T6.ID=x8 and tt1.ID=x8 andtt2.ID=x8 and T1.NAME=T2.NAME and T1.REGION=tt2.REGION and T2.MONTH1=T4.MONTH1 andT2.MONTH1=tt2.MONTH1 and T2.PRODUCT=T3.PRODUCT2 andT3.PRODUCT1=tt1.FINISHED_PRODUCT and T3.PRODUCT1=tt2.FINISHED_PRODUCT andT3.SEASON=T4.SEASON and T3.SEASON=T5.SEASON and T4.MONTH1=tt2.MONTH1 andT4.SEASON=T5.SEASON and T6.ID=x6 and tt1.FINISHED_PRODUCT=tt2.FINISHED_PRODUCT andtt1.ID=tt2.ID and tt1.ID=x6 and tt2.ID=x6order by x6,T2.PRODUCT,T1.NAME,T2.AMOUNT,x5; 62
  • 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
  • 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
  • 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
  • Google indexes and searchesapplications that are written in EnglishSearch: for estimated demand that-id fraction of the order 66
  • Google indexes and searches applications that are written in English Search: for estimated demand that-id fraction of the orderSearch: for estimated demand that-id fraction of the orderResult: 67
  • Google indexes and searches applications that are written in English Search: for estimated demand that-id fraction of the orderSearch: for estimated demand that-id fraction of the orderResult: The executable English rules and facts that define the application A paper that describes the application 68
  • 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
  • Links1. The NIST / UMBC paper listed in the presentation can be downloaded from : http://www.mel.nist.gov/msidlibrary/publications.html2. 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.htm4. Video about energy independence www.reengineeringllc.com/EnergyIndependence1Video.htm5. 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 OwlResearchOnt6. You are cordially invited to write and run your own examples. Shared use of the system is free. 70