The
Constellation

Query
Language
Clifford
Heath,
Data
Constellation
Copyright © 2010 Data Constellation
Copyright © 2010 Data ConstellationImage Copyright Andrew Lipson 2005. Used with permission. Not affiliated with Lego™
The ...
Copyright © 2010 Data Constellation
One­way

communication
•Software
folk
translate
user
stories
into

precise
abstraction...
Copyright © 2010 Data Constellation
Loss of Semantics
Copyright © 2010 Data Constellation
Semantics
• Each
term
denotes
a
type
of
thing
• Each
thing
is
associated
with
others
•...
Copyright © 2010 Data Constellation
Relations,
Objects,

Graphs,
or...
Facts?
Copyright © 2010 Data Constellation
Constellation
Query
Language
Copyright © 2010 Data Constellation
Insurance
Simplified
(contd.)
Copyright © 2010 Data Constellation
Relational
Mapping
Copyright © 2010 Data Constellation
Insurance
Claim
(complete)
Schema has been modified to suit a Rails application
Copyright © 2010 Data Constellation
Insurance
(snippets)
Driver
is
a
kind
of
Person;
Vehicle
Incident
is
a
kind
of
Inciden...
Copyright © 2010 Data Constellation
Instance
Data
Copyright © 2010 Data Constellation
Diplomacy
Model
Object
and
fact
types
Copyright © 2010 Data Constellation
Diplomacy
model
­
constraints
CQL supports many constraint types:
Mandatory, Uniquenes...
Copyright © 2010 Data Constellation
ORM2
A
graphical

language
for
fact­oriented

modeling.
Copyright © 2010 Data Constellation
Relational
Mapping
Copyright © 2010 Data Constellation
SQL
Copyright © 2010 Data Constellation
Ruby
Ruby fact-oriented DSL
* uses meta-programming
* assert/retract, no new/delete
* ...
Copyright © 2010 Data Constellation
Simple
Query
Person
has
given
Name
‘Daniel’?
Person
has
given
Name,




given
Name
=
‘...
Copyright © 2010 Data Constellation
Units
conversion
Area
is
written
as
Real
in
mm^2;
Pane
has
Area:
Pane
of
glass
has
Wid...
Copyright © 2010 Data Constellation
Semantic
Modeling
•Highly
verbal,
and
verbalisable
•Based
on
user
examples
•Mathematic...
Clifford
Heath
Available
for
consulting
and
training
http://dataconstellation.com/
Upcoming SlideShare
Loading in …5
×

The Constellation Query Language

514 views
447 views

Published on

Presentation to Data Melb on Semantic Modeling and CQL.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
514
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

The Constellation Query Language

  1. 1. The
Constellation
 Query
Language Clifford
Heath,
Data
Constellation
  2. 2. Copyright © 2010 Data Constellation
  3. 3. Copyright © 2010 Data ConstellationImage Copyright Andrew Lipson 2005. Used with permission. Not affiliated with Lego™ The Enterprise is a mess
  4. 4. Copyright © 2010 Data Constellation One­way
 communication •Software
folk
translate
user
stories
into
 precise
abstractions
(UML,
ER,
etc) •The
abstractions
are
mostly
unreadable
 by
the
business
­>
No
backchannel! •Only
the
built
artefacts
communicate
 our
misunderstandings
­>
Late!
  5. 5. Copyright © 2010 Data Constellation Loss of Semantics
  6. 6. Copyright © 2010 Data Constellation Semantics • Each
term
denotes
a
type
of
thing • Each
thing
is
associated
with
others • These
associations
are
connotations • “Meaning”
is
the
sum
of
all
connotations • Every
person
has
different
connotations “The shared meanings of a community”
  7. 7. Copyright © 2010 Data Constellation Relations,
Objects,
 Graphs,
or... Facts?
  8. 8. Copyright © 2010 Data Constellation Constellation
Query
Language
  9. 9. Copyright © 2010 Data Constellation Insurance
Simplified
(contd.)
  10. 10. Copyright © 2010 Data Constellation Relational
Mapping
  11. 11. Copyright © 2010 Data Constellation Insurance
Claim
(complete) Schema has been modified to suit a Rails application
  12. 12. Copyright © 2010 Data Constellation Insurance
(snippets) Driver
is
a
kind
of
Person; Vehicle
Incident
is
a
kind
of
Incident; Driving
is
where
Driver
drove
vehicle
in
Vehicle
Incident; Vehicle
Incident
followed
Intoxication; Driving
Charge
is
where
Driving
resulted
in
Charge;
 Driving
Charge
is
a
warning; These definitions support the example that follows.
  13. 13. Copyright © 2010 Data Constellation Instance
Data
  14. 14. Copyright © 2010 Data Constellation Diplomacy
Model Object
and
fact
types
  15. 15. Copyright © 2010 Data Constellation Diplomacy
model
­
constraints CQL supports many constraint types: Mandatory, Uniqueness, Frequency, Subset, Equality, Exclusion, Ring, Value, etc.
  16. 16. Copyright © 2010 Data Constellation ORM2 A
graphical
 language
for fact­oriented
 modeling.
  17. 17. Copyright © 2010 Data Constellation Relational
Mapping
  18. 18. Copyright © 2010 Data Constellation SQL
  19. 19. Copyright © 2010 Data Constellation Ruby Ruby fact-oriented DSL * uses meta-programming * assert/retract, no new/delete * fully co-referenced.
  20. 20. Copyright © 2010 Data Constellation Simple
Query Person
has
given
Name
‘Daniel’? Person
has
given
Name, 



given
Name
=
‘Daniel’? ... a contraction of the value join:
  21. 21. Copyright © 2010 Data Constellation Units
conversion Area
is
written
as
Real
in
mm^2; Pane
has
Area: Pane
of
glass
has
Width, Pane
of
glass
has
Height, Width
*
Height
=
Area; large
Pane: Pane
has
Area,
Area
>=
5
foot^2; large
Pane? Defined
 in
mm Compatibility
 is
checked Conversion
 supplied Query:
  22. 22. Copyright © 2010 Data Constellation Semantic
Modeling •Highly
verbal,
and
verbalisable •Based
on
user
examples •Mathematically
formal
(FOL) •Fine­grained
semantic
structure •Attribute­free
(Doesn’t
encode
assumptions) •Automatic
mapping
to
O­O,
ER
and
 code
  23. 23. Clifford
Heath Available
for
consulting
and
training http://dataconstellation.com/

×