class: center, middle, inverse, title-slide # RDF for Tidyverse Lovers ### Carl Boettiger ### 2018/03/12 --- --- class: left, top, inverse background-image: url(img/uglyduckling.jpg) # RDF: Ugly Duckling ```r cat(readLines(system.file("extdata/ex2.xml", package="rdflib")), sep= "\n") ``` ``` <?xml version="1.0" encoding="utf-8"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:nodeID="b0"> <rdf:type rdf:resource="http://schema.org/Person"/> </rdf:Description> <rdf:Description rdf:nodeID="b0"> <ns0:name xmlns:ns0="http://schema.org/">Jane Doe</ns0:name> </rdf:Description> <rdf:Description rdf:nodeID="b0"> <ns0:url xmlns:ns0="http://schema.org/" rdf:resource="http://www.janedoe.com"/> </rdf:Description> <rdf:Description rdf:nodeID="b0"> <ns0:jobTitle xmlns:ns0="http://schema.org/">Professor</ns0:jobTitle> </rdf:Description> <rdf:Description rdf:nodeID="b0"> <ns0:telephone xmlns:ns0="http://schema.org/">(425) 123-4567</ns0:telephone> </rdf:Description> </rdf:RDF> ``` --- class: center, middle, inverse # The Semantic Web is the Future of the Internet... --- class: center, middle, inverse # ... and always will be. -- Peter Norvig, Director of Research, Google Inc. --- class: center, top, inverse background-image: url(img/steampunk.jpg) # RDF as Steampunk? --- class: center, top, inverse background-image: url(img/tetris.jpg) # All Data are Tabular --- class: center, top, inverse background-image: url(img/tetris-lose.jpg) # All Data are Definitely Not Tabular --- class: center, middle, inverse background-image: url(img/factory-farm.jpg) # Factory Farm Data --- class: center, middle, inverse background-image: url(img/organic-farm.png) # Or Handcrafted, Organic Data? --- class: center, middle, inverse # Heterogeneous Data is Hard --- class: center, top, inverse background-image: url(img/field-notes.jpg) # Heterogeneous Data in Ecology --- class: center, top, inverse background-image: url(img/neon.png) # Heterogeneous Data in Ecology --- class: center, top, inverse background-image: url(img/integration.png) # Ecological Metadata Language --- class: center, middle background-image: url(img/codemeta.png) # CodeMeta --- class: center, top, inverse background-image: url(img/no-data-lake.jpg) # The Data Lake --- class: center, top, inverse background-image: url(img/data-lake.jpg) # The Data Lake --- class: center, middle, inverse # From Schema on Write # To Schema on Read --- class: center, middle, inverse # All Data Really is Tabular --- class: center, middle, inverse # `tidyr::gather()` all the things! --- class: left, top, inverse # `tidyr::gather()` all the things! ```r mtcars %>% rowid_to_column("id") %>% gather(property, value, -id) ``` ``` id property value 1 1 Model Mazda RX4 2 2 Model Mazda RX4 Wag 3 3 Model Datsun 710 4 4 Model Hornet 4 Drive 5 5 Model Hornet Sportabout 6 6 Model Valiant 7 7 Model Duster 360 8 8 Model Merc 240D 9 9 Model Merc 230 10 10 Model Merc 280 11 11 Model Merc 280C 12 12 Model Merc 450SE 13 13 Model Merc 450SL 14 14 Model Merc 450SLC 15 15 Model Cadillac Fleetwood 16 16 Model Lincoln Continental [ reached getOption("max.print") -- omitted 368 rows ] ``` --- class: center, middle, inverse # Atomizing your data --- class: left, middle # Row, Column, Cell <table> <thead> <tr> <th style="text-align:left;"> Model </th> <th style="text-align:right;"> mpg </th> <th style="text-align:right;"> cyl </th> <th style="text-align:right;"> disp </th> <th style="text-align:right;"> hp </th> <th style="text-align:right;"> drat </th> <th style="text-align:right;"> wt </th> <th style="text-align:right;"> qsec </th> <th style="text-align:right;"> vs </th> <th style="text-align:right;"> am </th> <th style="text-align:right;"> gear </th> <th style="text-align:right;"> carb </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;"> Mazda RX4 </td> <td style="text-align:right;"> 21.0 </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 160.0 </td> <td style="text-align:right;"> 110 </td> <td style="text-align:right;"> 3.90 </td> <td style="text-align:right;"> 2.620 </td> <td style="text-align:right;"> 16.46 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:left;"> Mazda RX4 Wag </td> <td style="text-align:right;"> 21.0 </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 160.0 </td> <td style="text-align:right;"> 110 </td> <td style="text-align:right;"> 3.90 </td> <td style="text-align:right;"> 2.875 </td> <td style="text-align:right;"> 17.02 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:left;"> Datsun 710 </td> <td style="text-align:right;"> 22.8 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 108.0 </td> <td style="text-align:right;"> 93 </td> <td style="text-align:right;"> 3.85 </td> <td style="text-align:right;"> 2.320 </td> <td style="text-align:right;"> 18.61 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 1 </td> </tr> <tr> <td style="text-align:left;"> Hornet 4 Drive </td> <td style="text-align:right;"> 21.4 </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 258.0 </td> <td style="text-align:right;"> 110 </td> <td style="text-align:right;"> 3.08 </td> <td style="text-align:right;"> 3.215 </td> <td style="text-align:right;"> 19.44 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 1 </td> </tr> <tr> <td style="text-align:left;"> Hornet Sportabout </td> <td style="text-align:right;"> 18.7 </td> <td style="text-align:right;"> 8 </td> <td style="text-align:right;"> 360.0 </td> <td style="text-align:right;"> 175 </td> <td style="text-align:right;"> 3.15 </td> <td style="text-align:right;"> 3.440 </td> <td style="text-align:right;"> 17.02 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 2 </td> </tr> <tr> <td style="text-align:left;"> Valiant </td> <td style="text-align:right;"> 18.1 </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 225.0 </td> <td style="text-align:right;"> 105 </td> <td style="text-align:right;"> 2.76 </td> <td style="text-align:right;"> 3.460 </td> <td style="text-align:right;"> 20.22 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 1 </td> </tr> <tr> <td style="text-align:left;"> Duster 360 </td> <td style="text-align:right;"> 14.3 </td> <td style="text-align:right;"> 8 </td> <td style="text-align:right;"> 360.0 </td> <td style="text-align:right;"> 245 </td> <td style="text-align:right;"> 3.21 </td> <td style="text-align:right;"> 3.570 </td> <td style="text-align:right;"> 15.84 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:left;"> Merc 240D </td> <td style="text-align:right;"> 24.4 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 146.7 </td> <td style="text-align:right;"> 62 </td> <td style="text-align:right;"> 3.69 </td> <td style="text-align:right;"> 3.190 </td> <td style="text-align:right;"> 20.00 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 2 </td> </tr> <tr> <td style="text-align:left;"> Merc 230 </td> <td style="text-align:right;"> 22.8 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 140.8 </td> <td style="text-align:right;"> 95 </td> <td style="text-align:right;"> 3.92 </td> <td style="text-align:right;"> 3.150 </td> <td style="text-align:right;"> 22.90 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 2 </td> </tr> <tr> <td style="text-align:left;"> Merc 280 </td> <td style="text-align:right;"> 19.2 </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 167.6 </td> <td style="text-align:right;"> 123 </td> <td style="text-align:right;"> 3.92 </td> <td style="text-align:right;"> 3.440 </td> <td style="text-align:right;"> 18.30 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:left;"> Merc 280C </td> <td style="text-align:right;"> 17.8 </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 167.6 </td> <td style="text-align:right;"> 123 </td> <td style="text-align:right;"> 3.92 </td> <td style="text-align:right;"> 3.440 </td> <td style="text-align:right;"> 18.90 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:left;"> Merc 450SE </td> <td style="text-align:right;"> 16.4 </td> <td style="text-align:right;"> 8 </td> <td style="text-align:right;"> 275.8 </td> <td style="text-align:right;"> 180 </td> <td style="text-align:right;"> 3.07 </td> <td style="text-align:right;"> 4.070 </td> <td style="text-align:right;"> 17.40 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 3 </td> </tr> <tr> <td style="text-align:left;"> Merc 450SL </td> <td style="text-align:right;"> 17.3 </td> <td style="text-align:right;"> 8 </td> <td style="text-align:right;"> 275.8 </td> <td style="text-align:right;"> 180 </td> <td style="text-align:right;"> 3.07 </td> <td style="text-align:right;"> 3.730 </td> <td style="text-align:right;"> 17.60 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 3 </td> </tr> <tr> <td style="text-align:left;"> Merc 450SLC </td> <td style="text-align:right;"> 15.2 </td> <td style="text-align:right;"> 8 </td> <td style="text-align:right;"> 275.8 </td> <td style="text-align:right;"> 180 </td> <td style="text-align:right;"> 3.07 </td> <td style="text-align:right;"> 3.780 </td> <td style="text-align:right;"> 18.00 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 3 </td> </tr> <tr> <td style="text-align:left;"> Cadillac Fleetwood </td> <td style="text-align:right;"> 10.4 </td> <td style="text-align:right;"> 8 </td> <td style="text-align:right;"> 472.0 </td> <td style="text-align:right;"> 205 </td> <td style="text-align:right;"> 2.93 </td> <td style="text-align:right;"> 5.250 </td> <td style="text-align:right;"> 17.98 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:left;"> Lincoln Continental </td> <td style="text-align:right;"> 10.4 </td> <td style="text-align:right;"> 8 </td> <td style="text-align:right;"> 460.0 </td> <td style="text-align:right;"> 215 </td> <td style="text-align:right;"> 3.00 </td> <td style="text-align:right;"> 5.424 </td> <td style="text-align:right;"> 17.82 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:left;"> Chrysler Imperial </td> <td style="text-align:right;"> 14.7 </td> <td style="text-align:right;"> 8 </td> <td style="text-align:right;"> 440.0 </td> <td style="text-align:right;"> 230 </td> <td style="text-align:right;"> 3.23 </td> <td style="text-align:right;"> 5.345 </td> <td style="text-align:right;"> 17.42 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 0 </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:left;"> Fiat 128 </td> <td style="text-align:right;"> 32.4 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 78.7 </td> <td style="text-align:right;"> 66 </td> <td style="text-align:right;"> 4.08 </td> <td style="text-align:right;"> 2.200 </td> <td style="text-align:right;"> 19.47 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 1 </td> </tr> <tr> <td style="text-align:left;"> Honda Civic </td> <td style="text-align:right;"> 30.4 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 75.7 </td> <td style="text-align:right;"> 52 </td> <td style="text-align:right;"> 4.93 </td> <td style="text-align:right;"> 1.615 </td> <td style="text-align:right;"> 18.52 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 2 </td> </tr> <tr> <td style="text-align:left;"> Toyota Corolla </td> <td style="text-align:right;"> 33.9 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 71.1 </td> <td style="text-align:right;"> 65 </td> <td style="text-align:right;"> 4.22 </td> <td style="text-align:right;"> 1.835 </td> <td style="text-align:right;"> 19.90 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 1 </td> </tr> </tbody> </table> --- class: left, middle, inverse # Object, Property, Value ``` [ { "Model": "Mazda RX4", "mpg": 21, "cyl": 6, "disp": 160, "hp": 110, "drat": 3.9, "wt": 2.62, "qsec": 16.46, "vs": 0, "am": 1, "gear": 4, "carb": 4 }, { "Model": "Mazda RX4 Wag", "mpg": 21, "cyl": 6, "disp": 160, "hp": 110, "drat": 3.9, "wt": 2.875, "qsec": 17.02, "vs": 0, "am": 1, "gear": 4, "carb": 4 }, { "Model": "Datsun 710", "mpg": 22.8, "cyl": 4, "disp": 108, "hp": 93, "drat": 3.85, "wt": 2.32, "qsec": 18.61, "vs": 1, "am": 1, "gear": 4, "carb": 1 }, { "Model": "Hornet 4 Drive", "mpg": 21.4, "cyl": 6, "disp": 258, "hp": 110, "drat": 3.08, "wt": 3.215, "qsec": 19.44, "vs": 1, "am": 0, "gear": 3, "carb": 1 }, { "Model": "Hornet Sportabout", "mpg": 18.7, "cyl": 8, "disp": 360, "hp": 175, "drat": 3.15, "wt": 3.44, "qsec": 17.02, "vs": 0, "am": 0, "gear": 3, "carb": 2 }, { "Model": "Valiant", "mpg": 18.1, "cyl": 6, "disp": 225, "hp": 105, "drat": 2.76, "wt": 3.46, "qsec": 20.22, "vs": 1, "am": 0, "gear": 3, "carb": 1 }, { "Model": "Duster 360", "mpg": 14.3, "cyl": 8, "disp": 360, "hp": 245, "drat": 3.21, "wt": 3.57, "qsec": 15.84, "vs": 0, "am": 0, "gear": 3, "carb": 4 }, { "Model": "Merc 240D", "mpg": 24.4, "cyl": 4, "disp": 146.7, "hp": 62, "drat": 3.69, "wt": 3.19, "qsec": 20, "vs": 1, "am": 0, "gear": 4, "carb": 2 }, { "Model": "Merc 230", "mpg": 22.8, "cyl": 4, "disp": 140.8, "hp": 95, "drat": 3.92, "wt": 3.15, "qsec": 22.9, "vs": 1, "am": 0, "gear": 4, "carb": 2 }, { "Model": "Merc 280", "mpg": 19.2, "cyl": 6, "disp": 167.6, "hp": 123, "drat": 3.92, "wt": 3.44, "qsec": 18.3, "vs": 1, "am": 0, "gear": 4, "carb": 4 }, { "Model": "Merc 280C", "mpg": 17.8, "cyl": 6, "disp": 167.6, "hp": 123, "drat": 3.92, "wt": 3.44, "qsec": 18.9, "vs": 1, "am": 0, "gear": 4, "carb": 4 }, { "Model": "Merc 450SE", "mpg": 16.4, "cyl": 8, "disp": 275.8, "hp": 180, "drat": 3.07, "wt": 4.07, "qsec": 17.4, "vs": 0, "am": 0, "gear": 3, "carb": 3 }, { "Model": "Merc 450SL", "mpg": 17.3, "cyl": 8, "disp": 275.8, "hp": 180, "drat": 3.07, "wt": 3.73, "qsec": 17.6, "vs": 0, "am": 0, "gear": 3, "carb": 3 }, { "Model": "Merc 450SLC", "mpg": 15.2, "cyl": 8, "disp": 275.8, "hp": 180, "drat": 3.07, "wt": 3.78, "qsec": 18, "vs": 0, "am": 0, "gear": 3, "carb": 3 }, { "Model": "Cadillac Fleetwood", "mpg": 10.4, "cyl": 8, "disp": 472, "hp": 205, "drat": 2.93, "wt": 5.25, "qsec": 17.98, "vs": 0, "am": 0, "gear": 3, "carb": 4 }, { "Model": "Lincoln Continental", "mpg": 10.4, "cyl": 8, "disp": 460, "hp": 215, "drat": 3, "wt": 5.424, "qsec": 17.82, "vs": 0, "am": 0, "gear": 3, "carb": 4 }, { "Model": "Chrysler Imperial", "mpg": 14.7, "cyl": 8, "disp": 440, "hp": 230, "drat": 3.23, "wt": 5.345, "qsec": 17.42, "vs": 0, "am": 0, "gear": 3, "carb": 4 }, { "Model": "Fiat 128", "mpg": 32.4, "cyl": 4, "disp": 78.7, "hp": 66, "drat": 4.08, "wt": 2.2, "qsec": 19.47, "vs": 1, "am": 1, "gear": 4, "carb": 1 }, { "Model": "Honda Civic", "mpg": 30.4, "cyl": 4, "disp": 75.7, "hp": 52, "drat": 4.93, "wt": 1.615, "qsec": 18.52, "vs": 1, "am": 1, "gear": 4, "carb": 2 }, { "Model": "Toyota Corolla", "mpg": 33.9, "cyl": 4, "disp": 71.1, "hp": 65, "drat": 4.22, "wt": 1.835, "qsec": 19.9, "vs": 1, "am": 1, "gear": 4, "carb": 1 }, { "Model": "Toyota Corona", "mpg": 21.5, "cyl": 4, "disp": 120.1, "hp": 97, "drat": 3.7, "wt": 2.465, "qsec": 20.01, "vs": 1, "am": 0, "gear": 3, "carb": 1 }, { "Model": "Dodge Challenger", "mpg": 15.5, "cyl": 8, "disp": 318, "hp": 150, "drat": 2.76, "wt": 3.52, "qsec": 16.87, "vs": 0, "am": 0, "gear": 3, "carb": 2 }, { "Model": "AMC Javelin", "mpg": 15.2, "cyl": 8, "disp": 304, "hp": 150, "drat": 3.15, "wt": 3.435, "qsec": 17.3, "vs": 0, "am": 0, "gear": 3, "carb": 2 }, { "Model": "Camaro Z28", "mpg": 13.3, "cyl": 8, "disp": 350, "hp": 245, "drat": 3.73, "wt": 3.84, "qsec": 15.41, "vs": 0, "am": 0, "gear": 3, "carb": 4 }, { "Model": "Pontiac Firebird", "mpg": 19.2, "cyl": 8, "disp": 400, "hp": 175, "drat": 3.08, "wt": 3.845, "qsec": 17.05, "vs": 0, "am": 0, "gear": 3, "carb": 2 }, { "Model": "Fiat X1-9", "mpg": 27.3, "cyl": 4, "disp": 79, "hp": 66, "drat": 4.08, "wt": 1.935, "qsec": 18.9, "vs": 1, "am": 1, "gear": 4, "carb": 1 }, { "Model": "Porsche 914-2", "mpg": 26, "cyl": 4, "disp": 120.3, "hp": 91, "drat": 4.43, "wt": 2.14, "qsec": 16.7, "vs": 0, "am": 1, "gear": 5, "carb": 2 }, { "Model": "Lotus Europa", "mpg": 30.4, "cyl": 4, "disp": 95.1, "hp": 113, "drat": 3.77, "wt": 1.513, "qsec": 16.9, "vs": 1, "am": 1, "gear": 5, "carb": 2 }, { "Model": "Ford Pantera L", "mpg": 15.8, "cyl": 8, "disp": 351, "hp": 264, "drat": 4.22, "wt": 3.17, "qsec": 14.5, "vs": 0, "am": 1, "gear": 5, "carb": 4 }, { "Model": "Ferrari Dino", "mpg": 19.7, "cyl": 6, "disp": 145, "hp": 175, "drat": 3.62, "wt": 2.77, "qsec": 15.5, "vs": 0, "am": 1, "gear": 5, "carb": 6 }, { "Model": "Maserati Bora", "mpg": 15, "cyl": 8, "disp": 301, "hp": 335, "drat": 3.54, "wt": 3.57, "qsec": 14.6, "vs": 0, "am": 1, "gear": 5, "carb": 8 }, { "Model": "Volvo 142E", "mpg": 21.4, "cyl": 4, "disp": 121, "hp": 109, "drat": 4.11, "wt": 2.78, "qsec": 18.6, "vs": 1, "am": 1, "gear": 4, "carb": 2 } ] ``` --- class: left, middle, inverse # Subject, Predicate, Object ``` <mtcars:24> <mtcars:wt> "3.84"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:wt> "3.15"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:hp> "245"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:Model> "Lincoln Continental" . <mtcars:12> <mtcars:mpg> "16.4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:3> <mtcars:wt> "2.32"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:carb> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:hp> "65"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:qsec> "18.3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:disp> "160"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:drat> "3.77"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:disp> "71.1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:hp> "97"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:23> <mtcars:qsec> "17.3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:12> <mtcars:drat> "3.07"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:qsec> "19.9"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:disp> "318"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:23> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:disp> "121"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:wt> "3.17"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:drat> "4.08"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:14> <mtcars:Model> "Merc 450SLC" . <mtcars:3> <mtcars:mpg> "22.8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:drat> "3.08"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:hp> "215"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:mpg> "15.5"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:carb> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:Model> "Toyota Corona" . <mtcars:23> <mtcars:wt> "3.435"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:Model> "Dodge Challenger" . <mtcars:27> <mtcars:hp> "91"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:hp> "66"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:31> <mtcars:carb> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:1> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:carb> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:disp> "145"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:gear> "5"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:23> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:carb> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:17> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:qsec> "17.98"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:12> <mtcars:qsec> "17.4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:disp> "275.8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:qsec> "16.7"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:drat> "3.62"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:cyl> "6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:17> <mtcars:wt> "5.345"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:disp> "78.7"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:1> <mtcars:disp> "160"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:wt> "3.73"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:carb> "2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:hp> "123"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:Model> "Merc 230" . <mtcars:12> <mtcars:carb> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:qsec> "17.02"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:mpg> "14.3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:12> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:1> <mtcars:mpg> "21"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:wt> "2.77"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:Model> "Ferrari Dino" . <mtcars:19> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:12> <mtcars:Model> "Merc 450SE" . <mtcars:2> <mtcars:cyl> "6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:drat> "4.22"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:disp> "167.6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:qsec> "18.6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:disp> "350"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:31> <mtcars:wt> "3.57"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:drat> "4.43"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:31> <mtcars:qsec> "14.6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:hp> "110"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:wt> "3.57"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:cyl> "6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:drat> "3.69"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:12> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:Model> "Porsche 914-2" . <mtcars:1> <mtcars:wt> "2.62"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:drat> "4.11"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:carb> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:1> <mtcars:hp> "110"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:3> <mtcars:drat> "3.85"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:qsec> "18.9"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:17> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:cyl> "6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:Model> "Fiat X1-9" . <mtcars:31> <mtcars:mpg> "15"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:Model> "Merc 450SL" . <mtcars:3> <mtcars:Model> "Datsun 710" . <mtcars:1> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:mpg> "30.4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:carb> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:drat> "4.08"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:carb> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:17> <mtcars:Model> "Chrysler Imperial" . <mtcars:15> <mtcars:mpg> "10.4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:14> <mtcars:drat> "3.07"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:mpg> "32.4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:14> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:mpg> "21.4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:carb> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:mpg> "19.2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:drat> "3.07"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:hp> "110"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:23> <mtcars:mpg> "15.2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:wt> "3.52"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:14> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:23> <mtcars:hp> "150"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:3> <mtcars:hp> "93"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:gear> "5"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:1> <mtcars:cyl> "6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:drat> "2.93"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:17> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:mpg> "15.8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:qsec> "14.5"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:carb> "2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:gear> "5"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:qsec> "15.41"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:qsec> "17.05"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:17> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:hp> "123"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:qsec> "17.82"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:hp> "175"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:carb> "2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:mpg> "10.4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:Model> "Camaro Z28" . <mtcars:25> <mtcars:wt> "3.845"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:31> <mtcars:hp> "335"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:3> <mtcars:carb> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:drat> "3.15"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:carb> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:qsec> "22.9"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:wt> "1.513"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:hp> "180"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:3> <mtcars:disp> "108"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:1> <mtcars:qsec> "16.46"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:Model> "Cadillac Fleetwood" . <mtcars:22> <mtcars:qsec> "16.87"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:14> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:Model> "Toyota Corolla" . <mtcars:9> <mtcars:drat> "3.92"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:hp> "175"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:14> <mtcars:hp> "180"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:drat> "3.7"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:31> <mtcars:gear> "5"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:hp> "105"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:gear> "5"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:wt> "5.25"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:carb> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:disp> "351"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:drat> "3.92"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:wt> "5.424"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:Model> "Volvo 142E" . <mtcars:23> <mtcars:drat> "3.15"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:31> <mtcars:Model> "Maserati Bora" . <mtcars:28> <mtcars:carb> "2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:mpg> "33.9"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:12> <mtcars:wt> "4.07"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:hp> "175"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:drat> "3.9"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:qsec> "15.5"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:disp> "460"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:carb> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:23> <mtcars:disp> "304"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:disp> "95.1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:Model> "Mazda RX4 Wag" . <mtcars:14> <mtcars:qsec> "18"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:disp> "140.8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:carb> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:Model> "Pontiac Firebird" . <mtcars:31> <mtcars:drat> "3.54"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:wt> "2.875"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:mpg> "13.3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:mpg> "17.3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:carb> "2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:17> <mtcars:mpg> "14.7"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:14> <mtcars:mpg> "15.2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:23> <mtcars:carb> "2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:31> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:cyl> "6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:Model> "Honda Civic" . <mtcars:7> <mtcars:drat> "3.21"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:1> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:mpg> "24.4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:hp> "205"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:mpg> "22.8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:3> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:hp> "264"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:hp> "52"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:drat> "4.22"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:qsec> "20.22"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:qsec> "17.6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:1> <mtcars:drat> "3.9"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:disp> "75.7"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:qsec> "20"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:wt> "1.835"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:17> <mtcars:disp> "440"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:3> <mtcars:qsec> "18.61"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:hp> "245"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:qsec> "18.9"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:mpg> "19.2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:wt> "1.935"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:hp> "62"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:drat> "4.93"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:3> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:14> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:wt> "2.465"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:wt> "2.2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:Model> "Merc 240D" . <mtcars:12> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:Model> "Lotus Europa" . <mtcars:26> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:mpg> "27.3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:hp> "109"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:disp> "360"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:14> <mtcars:disp> "275.8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:carb> "2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:wt> "1.615"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:drat> "2.76"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:wt> "3.44"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:drat> "2.76"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:14> <mtcars:carb> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:carb> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:disp> "120.3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:mpg> "18.7"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:disp> "400"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:drat> "3.92"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:carb> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:Model> "Duster 360" . <mtcars:17> <mtcars:qsec> "17.42"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:mpg> "30.4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:mpg> "21.5"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:Model> "Merc 280C" . <mtcars:16> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:wt> "3.19"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:qsec> "17.02"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:1> <mtcars:carb> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:drat> "3.73"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:qsec> "19.44"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:17> <mtcars:drat> "3.23"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:drat> "3.08"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:23> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:hp> "66"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:mpg> "18.1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:qsec> "18.52"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:wt> "2.78"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:Model> "Hornet 4 Drive" . <mtcars:8> <mtcars:disp> "146.7"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:Model> "Ford Pantera L" . <mtcars:14> <mtcars:wt> "3.78"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:31> <mtcars:disp> "301"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:3> <mtcars:cyl> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:disp> "167.6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:mpg> "19.7"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:carb> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:8> <mtcars:carb> "2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:hp> "113"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:12> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:Model> "Valiant" . <mtcars:4> <mtcars:wt> "3.215"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:disp> "360"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:disp> "120.1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:mpg> "21"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:32> <mtcars:carb> "2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:7> <mtcars:qsec> "15.84"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:13> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:31> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:qsec> "19.47"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:Model> "Fiat 128" . <mtcars:21> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:21> <mtcars:qsec> "20.01"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:18> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:mpg> "26"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:disp> "258"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:2> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:Model> "Hornet Sportabout" . <mtcars:10> <mtcars:wt> "3.44"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:9> <mtcars:hp> "95"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:23> <mtcars:Model> "AMC Javelin" . <mtcars:12> <mtcars:disp> "275.8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:31> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:26> <mtcars:disp> "79"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:3> <mtcars:vs> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:10> <mtcars:Model> "Merc 280" . <mtcars:17> <mtcars:hp> "230"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:19> <mtcars:carb> "2"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:23> <mtcars:am> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:5> <mtcars:wt> "3.44"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:disp> "225"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:1> <mtcars:Model> "Mazda RX4" . <mtcars:11> <mtcars:mpg> "17.8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:cyl> "6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:12> <mtcars:hp> "180"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:16> <mtcars:drat> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:11> <mtcars:gear> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:6> <mtcars:wt> "3.46"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:4> <mtcars:mpg> "21.4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:cyl> "8"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:30> <mtcars:carb> "6"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:20> <mtcars:am> "1"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:29> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:28> <mtcars:qsec> "16.9"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:25> <mtcars:gear> "3"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:24> <mtcars:vs> "0"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:15> <mtcars:disp> "472"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:17> <mtcars:carb> "4"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:22> <mtcars:hp> "150"^^<http://www.w3.org/2001/XMLSchema#decimal> . <mtcars:27> <mtcars:wt> "2.14"^^<http://www.w3.org/2001/XMLSchema#decimal> . ``` --- class: left, top, inverse # Triples --- class: center, middle, inverse background-image: url(img/no-data-lake.jpg) # Into the Lake: Data Frames ```r triplestore <- rdf() as_rdf(mtcars, triplestore, "mtcars:") as_rdf(iris, triplestore, "iris:") ``` --- class: left, middle, inverse background-image: url(img/no-data-lake.jpg) # Into the Lake: Lists Example JSON data returned from the [GitHub API](https://api.github.com/users/cboettig/events) ``` [ { "id": "7353780009", "type": "CreateEvent", "actor": { "id": 222586, "login": "cboettig", "display_login": "cboettig", "gravatar_id": "", "url": "https://api.github.com/users/cboettig", "avatar_url": "https://avatars.githubusercontent.com/u/222586?" }, "repo": { "id": 124477112, "name": "cboettig/test", "url": "https://api.github.com/repos/cboettig/test" }, "payload": { "ref": null, "ref_type": "repository", ``` --- class: left, middle, inverse background-image: url(img/no-data-lake.jpg) # Into the Lake: Lists ```r events <- read_json("https://api.github.com/users/cboettig/events") ``` ```r as_rdf(events, triplestore, "gh:") ``` --- class: left, middle # Schema on read: SPARQL ```r rdf_query(triplestore, 'SELECT ?Model ?mpg ?cyl ?disp ?hp WHERE { ?s <mtcars:Model> ?Model ; <mtcars:mpg> ?mpg ; <mtcars:cyl> ?cyl ; <mtcars:disp> ?disp ; <mtcars:hp> ?hp }') ``` --- class: left, middle # Schema on read: SPARQL ``` # A tibble: 32 x 5 Model mpg cyl disp hp <chr> <dbl> <int> <dbl> <int> 1 Merc 230 22.8 4 141. 95 2 Toyota Corolla 33.9 4 71.1 65 3 Merc 450SL 17.3 8 276. 180 4 Fiat 128 32.4 4 78.7 66 5 Lincoln Continental 10.4 8 460. 215 6 Merc 450SLC 15.2 8 276. 180 7 Fiat X1-9 27.3 4 79.0 66 8 Hornet Sportabout 18.7 8 360. 175 9 Lotus Europa 30.4 4 95.1 113 10 Valiant 18.1 6 225. 105 # ... with 22 more rows ``` --- class: left, middle # Data Rectangling ```r rdf_query(triplestore, 'SELECT ?type ?user ?repo ?when WHERE { ?s <gh:type> ?type ; <gh:created_at> ?when ; <gh:repo> ?repo_id ; <gh:actor> ?actor . ?actor <gh:login> ?user . ?repo_id <gh:name> ?repo }') ``` --- class: left, middle # Data Rectangling ``` # A tibble: 30 x 4 type user repo when <chr> <chr> <chr> <dttm> 1 PushEvent cboettig cboettig/noise-phenomena 2018-03-06 05:25:07 2 IssueCommentEvent cboettig rocker-org/shiny 2018-03-08 01:51:57 3 PushEvent cboettig cboettig/NetGen 2018-03-08 17:34:09 4 PushEvent cboettig cboettig/labnotebook 2018-03-06 05:27:18 5 IssueCommentEvent cboettig ropensci/jqr 2018-03-07 22:18:46 6 PushEvent cboettig ropensci/rdflib 2018-03-08 21:37:14 7 PushEvent cboettig cboettig/noise-phenomena 2018-03-05 22:25:31 8 PushEvent cboettig cboettig/noise-phenomena 2018-03-06 18:23:51 9 CreateEvent cboettig cboettig/popdyn 2018-03-09 02:34:21 10 PushEvent cboettig cboettig/NetGen 2018-03-08 17:56:38 # ... with 20 more rows ``` --- class: left, middle # Data Rectangling: Graph Queries ```r df <- rdf_query(triplestore, 'SELECT DISTINCT ?property ?value WHERE { ?s <gh:url> "https://api.github.com/repos/cboettig/noise-phenomena" . ?parent ?p ?s . ?parent ?property ?value }') ``` --- class: left, middle # Data Rectangling: Graph Queries ``` # A tibble: 37 x 2 property value <chr> <chr> 1 gh:created_at 2018-03-05T22:25:08Z 2 gh:payload _:b231 3 gh:repo _:b236 4 gh:type PushEvent 5 gh:id 7334335663 6 gh:public true 7 gh:actor _:b230 8 gh:created_at 2018-03-05T22:25:31Z 9 gh:id 7334337582 10 gh:payload _:b225 # ... with 27 more rows ``` --- class: center, middle, inverse # Potential Issues - Potential column name or property collisions - Dealing with data types (numeric, logical, dates, etc) - Potential row name or object id collisions --- class: center, middle, inverse # U say URL # I say IRI --- class: left, middle, inverse # Internationalized Resource Identifiers - `https://example.com` - `https://schema.org/givenName` - `isbn:978-0-387-98140-6` - `urn:uuid:0aae8482-93b9-4b22-879e-aa71af0d3fd1` --- class: center, middle, inverse # Unique variable/column names - `https://schema.org/givenName` - `https://schema.org/programmingLanguage` - `https://schema.org/softwareRequirements` --- class: center, middle, inverse # Data types - `http://www.w3.org/2001/XMLSchema#decimal` - `http://www.w3.org/2001/XMLSchema#dateTime` --- class: center, middle, inverse # Subject IRIs - `https://example.com` - `isbn:978-0-387-98140-6` - `doi:10.1007/978-0-387-98141-3` - `_:` Blank nodes --- class: center, middle, inverse # Object Types and Resource Nodes - `https://schema.org/SoftwareSoureCode` - `doi:10.1007/978-0-387-98141-3` --- class: center, middle, inverse # Practical Issues - `SQL` -> `dplyr` - `SPARQL` -> `???` --- class: center, middle, inverse # Explore & Contribute - <https://github.com/ropensci/rdflib> - <https://cran.r-project.org/package=rdflib>