This presentation was part of the introductory JSON-stat presentation (July, 2013):
http://www.slideshare.net/badosa/json-stat
That presentation was split into three presentations between December 2015 and January 2016 and only updated to reflect the latest changes in the format (v. 2.0).
2. JSON-stat is the perfect format
for statistical Open Data APIs.
It can represent any statistical table
in your website in lightweight JSON.
Tables for humans → Services for machines
3. But JSON-stat can also be used to
enrich HTML tables
Making your website for humans
into a service for machines too.
Tables for humans → Services for machines
4. Bringing JSON-stat back to (HTML) tables
Introducing
the StatisticalTable schema
a JSON-stat-based vocabulary
HTML microdata syntax will be used in the following slides,
but the same schema can be expressed in other semantic
technologies like microformats or RDFa.
7. HTML is semantically poor.
Likewise, HTML tables are
semantically poor.
There is a need to enrich
them for special uses.
the
StatisticalTable
schema
8. Other industries, like the news industry,
have felt the urge to semantically enrich
HTML.
(By the way, rNews does not support enriched tables.)
9. Extending the schema.org Table vocabulary
(By the way, the schema.org Table has no property of
its own: all its properties are inherited.)
How?
14. > StatisticalTable
<table itemscope itemtype="http://schema.org/Table/Stats">
<caption itemprop="label">
<span itemprop="metric">Population</span> in
<span itemprop="geo" itemscope itemtype="http://schema.org/Place">
<span itemprop="name">Tuvalu</span>
<meta itemprop="latitude" content="-8.516667" />
<meta itemprop="longitude" content="179.216667" />
</span>
in <time datetime="2002-12-31">2002</time>. By sex
</caption>
<thead>
<tr><th itemprop="dimension">Sex</th><th itemprop="units">Persons</th></tr>
</thead>
<tbody>
<tr><th>Men</th><td>4729</td></tr>
<tr><th>Women</th><td>4832</td></tr>
<tr><th>Total</th><td>9561</td></tr>
</tbody>
</table>
enriched
HTML code
15. > StatisticalTable
<table itemscope itemtype="http://schema.org/Table/Stats">
<caption itemprop="label">
<span itemprop="metric">Population</span> in
<span itemprop="geo" itemscope itemtype="http://schema.org/Place">
<span itemprop="name">Tuvalu</span>
<meta itemprop="latitude" content="-8.516667" />
<meta itemprop="longitude" content="179.216667" />
</span>
in <time datetime="2002-12-31">2002</time>. By sex
</caption>
<thead>
<tr><th itemprop="dimension">Sex</th><th itemprop="units">Persons</th></tr>
</thead>
<tbody>
<tr><th>Men</th><td>4729</td></tr>
<tr><th>Women</th><td>4832</td></tr>
<tr><th>Total</th><td>9561</td></tr>
</tbody>
</table>
This is just a very small sample
of the possibilities.
18. A browser plug-in could
allow you to import a table
(data & metadata) into
several formats (tabular
& non-tabular).
the
StatisticalTable
schema
Benefits
19. A browser plug-in could
allow you to manipulate
& transform a table (for
example, creating the right
visualization on the fly).
the
StatisticalTable
schema
Benefits
20. Search engines could
answer questions like:
“How many women live in
Canada between ages
30 and 34?”
the
StatisticalTable
schema
Benefits
21. A middleware could
automatically convert
your webpages into
API endpoints, & those
endpoints could be used
by third party apps.
the
StatisticalTable
schema
Benefits
23. all pictures from
Blocks picture in slide 1: Soma, by Dru!
(CC BY-NC)
Atomium in slide 5: Fighting Gravity –
Atomium, Brussels, by Jan Faborsky
(CC BY-NC-ND)
Corner in slide 6: Cubism, by Ilya
Khamushkin (CC BY-SA)
Egg in slide 22 : Egg, by Auntie P
(CC BY-NC-SA)