the constellation query language

23
The Constellation Query Language Clifford Heath, Data Constellation

Upload: clifford-heath

Post on 07-Jul-2015

347 views

Category:

Technology


3 download

DESCRIPTION

Presentation to Data Melb on Semantic Modeling and CQL.

TRANSCRIPT

Page 1: The Constellation Query Language

TheConstellationQueryLanguage

CliffordHeath,DataConstellation

Page 2: The Constellation Query Language

Copyright © 2010 Data Constellation

Page 3: The Constellation Query Language

Copyright © 2010 Data ConstellationImage Copyright Andrew Lipson 2005. Used with permission. Not affiliated with Lego™

The Enterprise is a mess

Page 4: The Constellation Query Language

Copyright © 2010 Data Constellation

One­waycommunication

•Softwarefolktranslateuserstoriesintopreciseabstractions(UML,ER,etc)

• Theabstractionsaremostlyunreadablebythebusiness­>Nobackchannel!

• Onlythebuiltartefactscommunicateourmisunderstandings­>Late!

Page 5: The Constellation Query Language

Copyright © 2010 Data Constellation

Loss of Semantics

Page 6: The Constellation Query Language

Copyright © 2010 Data Constellation

Semantics

• Eachtermdenotesatypeofthing

• Eachthingisassociatedwithothers

• Theseassociationsareconnotations

• “Meaning”isthesumofallconnotations

• Everypersonhasdifferentconnotations

“The shared meanings of a community”

Page 7: The Constellation Query Language

Copyright © 2010 Data Constellation

Relations,Objects,Graphs,or...

Facts?

Page 8: The Constellation Query Language

Copyright © 2010 Data Constellation

ConstellationQueryLanguage

Page 9: The Constellation Query Language

Copyright © 2010 Data Constellation

InsuranceSimplified(contd.)

Page 10: The Constellation Query Language

Copyright © 2010 Data Constellation

RelationalMapping

Page 11: The Constellation Query Language

Copyright © 2010 Data Constellation

InsuranceClaim(complete)

Schema has been modified to suit a Rails application

Page 12: The Constellation Query Language

Copyright © 2010 Data Constellation

Insurance(snippets)DriverisakindofPerson;

VehicleIncidentisakindofIncident;

DrivingiswhereDriverdrovevehicleinVehicleIncident;

VehicleIncidentfollowedIntoxication;

DrivingChargeiswhereDrivingresultedinCharge;

DrivingChargeisawarning;

These definitions support the example that follows.

Page 13: The Constellation Query Language

Copyright © 2010 Data Constellation

InstanceData

Page 14: The Constellation Query Language

Copyright © 2010 Data Constellation

DiplomacyModelObjectandfacttypes

Page 15: The Constellation Query Language

Copyright © 2010 Data Constellation

Diplomacymodel­constraints

CQL supports many constraint types:Mandatory, Uniqueness, Frequency, Subset, Equality, Exclusion, Ring, Value, etc.

Page 16: The Constellation Query Language

Copyright © 2010 Data Constellation

ORM2Agraphicallanguageforfact­orientedmodeling.

Page 17: The Constellation Query Language

Copyright © 2010 Data Constellation

RelationalMapping

Page 18: The Constellation Query Language

Copyright © 2010 Data Constellation

SQL

Page 19: The Constellation Query Language

Copyright © 2010 Data Constellation

RubyRuby fact-oriented DSL* uses meta-programming* assert/retract, no new/delete* fully co-referenced.

Page 20: The Constellation Query Language

Copyright © 2010 Data Constellation

SimpleQuery

PersonhasgivenName‘Daniel’?

PersonhasgivenName,givenName=‘Daniel’?

... a contraction of the value join:

Page 21: The Constellation Query Language

Copyright © 2010 Data Constellation

UnitsconversionAreaiswrittenasRealinmm^2;

PanehasArea:PaneofglasshasWidth,PaneofglasshasHeight,Width*Height=Area;

largePane:PanehasArea,Area>=5foot^2;

largePane?

Definedinmm

Compatibilityischecked

Conversionsupplied

Query:

Page 22: The Constellation Query Language

Copyright © 2010 Data Constellation

SemanticModeling

•Highlyverbal,andverbalisable

• Basedonuserexamples

•Mathematicallyformal(FOL)

• Fine­grainedsemanticstructure

• Attribute­free(Doesn’tencodeassumptions)

• AutomaticmappingtoO­O,ERandcode

Page 23: The Constellation Query Language

CliffordHeathAvailableforconsultingandtraining

http://dataconstellation.com/