Presentation is loading. Please wait.

Presentation is loading. Please wait.

Relational  RDF A Mapping Investigation JTC1 SC32N1639.

Similar presentations

Presentation on theme: "Relational  RDF A Mapping Investigation JTC1 SC32N1639."— Presentation transcript:

1 Relational  RDF A Mapping Investigation JTC1 SC32N1639

2 2006-08-22Copyright © 2006 Oracle Corp.2 The Need Relational databases hold vast quantities of enterprise data That data is often needed in the context of another data model SQL/XML maps relational data to XDM (and vice versa) No extant standards effort to map relational data to the RDF data model (or vice versa)

3 2006-08-22Copyright © 2006 Oracle Corp.3 But Why RDF? Provide business data in a form suitable for taxonomical – and inferential – use Allow use of SPARQL[-like] facilities on such data, allow use of existing inference engines Greater participation in the Semantic Web Improve business value of enterprise data

4 2006-08-22Copyright © 2006 Oracle Corp.4 What Does It Mean? Literal, physical transformation: probably rare, lousy cost/benefit ratio “Lenses”: allows apps to “see” their preferred data model by transforming only desired data, only upon demand (example: SQL’s views & Oracle’s materialized views) Impedance mismatch: unavoidable, but careful design can reduce the impact

5 2006-08-22Copyright © 2006 Oracle Corp.5 So, What Do We Need? Standardized transformation of arbitrary relational data into RDF Obvious approach: For each row in an SQL table (or view!), create one RDF triple corresponding to each column of the row Not so simple! What about tables without keys? What about table metadata? Will apps need customized transformations, too?

6 2006-08-22Copyright © 2006 Oracle Corp.6 For Example C1"C2…Cn-1"Cn 100…Joe ……… 450…Sue T1 T1:R100T1:C1100 T1:R100T1:C2… ……… T1:R100T1:Cn-1… T1:R100T1:CnJoe ……… ……… T1:R450T1:C1450 T1:R450T1:C2… ……… T1:R450T1:Cn-1… T1:R450T1:CnSue PK (C1) Assumes: T1 defined as namespace (e.g., SQL://DB1/SCH1/T1)

7 2006-08-22Copyright © 2006 Oracle Corp.7 But… Create a “namespace declaration” for T1, or use blank nodes? Need to specify that T1 is a table, that it has n columns, the names of those columns, the data types of those columns, what the keys are, etc. Tables without keys – how to identify each row? Most RDBMSs have row IDs, but not standardized How should foreign keys be handled? What about columns of complex types? Mindless proliferation of triples!

8 2006-08-22Copyright © 2006 Oracle Corp.8 An Expanded Example _:t1RDF:typeSQL:TBL _:t1SQL:TblNameT1 _:t1SQL:NumCols3 _:t1SQL:Column_:c1 SQL:ColNameC1 _:c1SQL:ColTypeSQL:INT _:c1SQL:ColPos1 ……… _:t1SQL:PKnumCols1 _:t1SQL:PKcolumn_:kc1 SQL:PKcolPos1 _:kc1SQL:PKcolumn_:c1 _:t1SQL:Row_:r1 SQL:PKrow_:pk1 SQL:PKpos1 _:pk1SQL:PKval100 _:r1_:c1100 _:r1_:c2… ……… _:r1_:cn-1… _:r1_:cnJoe _:t1SQL:rowID3589122

9 2006-08-22Copyright © 2006 Oracle Corp.9 My Mission Ensure that SQL and XML/XQuery play well together — SUCCESS (SQL/XML) Ensure that SQL and RDF/SPARQL play well together — initial research in progress: two aspects: a) “publish” relational  RDF & b) embed RDF in SQL tables, transform SPARQL to same execution trees as SQL) Can (should!) XML/XQuery and RDF/SPARQL be made to play well together? More difficult?

10 2006-08-22Copyright © 2006 Oracle Corp.10 Who should standardize this? H2/WG3? W3C (e.g., DAWG)? OASIS? Others? Additional approaches? Research not completed! Should I (and/or Oracle) continue? [So far, my boss’ answer is “Yes”] Lingering unresolved problems?

Download ppt "Relational  RDF A Mapping Investigation JTC1 SC32N1639."

Similar presentations

Ads by Google