Discovering Implicit
Schemas in JSON Data
Javier Luis Cánovas Izquierdo, Jordi Cabot
{javier.canovas,jordi.cabot}@inria.fr...
APIs everywhere
APIs everywhere
flickr/FortMeade
Format War
flickr/FortMeade
Format War
XML vs. JSON
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
2009 2010 2011 2012 2013
JSON-based API XML-based API
Source: ProgrammableWeb....
flickr/Eleaf
Also called JavaScript Object Notation, is a text-
based open standard designed for human-
readable data interchange. It i...
Also called JavaScript Object Notation, is a text-
based open standard designed for human-
readable data interchange. It i...
flickr/jean-louis zimmermann
Example
flickr/Mads Boedker
Our proposal
Discovery of schemas in JSON
Creation Refinement
Creation Refinement
C1 C2 C3 C4 C5
R1 R2 R3
Creation Refinement
Creation Refinement
M1 M2 M3 M4
Discovering dependencies
Implementation
Not enough…
• Allowing developers to enrich the partial schemas
• Ideas from database normalization theory and XML-based a...
Check it out!
https://code.google.com/a/eclipselabs.org/p/json-discoverer/
Except where otherwise noted, content on this p...
Discovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON Data
Upcoming SlideShare
Loading in …5
×

Discovering Implicit Schemas in JSON Data

1,747 views

Published on

Slides of the paper "Discovering Implicit Schemas in JSON Data" at International Conference on Web Engineering 2013 (ICWE'13)

Published in: Technology
2 Comments
1 Like
Statistics
Notes
No Downloads
Views
Total views
1,747
On SlideShare
0
From Embeds
0
Number of Embeds
164
Actions
Shares
0
Downloads
9
Comments
2
Likes
1
Embeds 0
No embeds

No notes for slide
  • apis everywhere
  • apis everywhere
  • http://blog.programmableweb.com/2011/05/25/1-in-5-apis-say-bye-xml/
  • http://blog.programmableweb.com/2011/05/25/1-in-5-apis-say-bye-xml/
  • http://blog.programmableweb.com/2011/05/25/1-in-5-apis-say-bye-xml/Change range
  • Real experience
  • Possible structure
  • http://blog.programmableweb.com/2011/05/25/1-in-5-apis-say-bye-xml/
  • Emphasis on proposal
  • Grammar-model world
  • Importance of this step
  • Importance of this step
  • Importance of this step
  • Importance of this step
  • Discovering Implicit Schemas in JSON Data

    1. 1. Discovering Implicit Schemas in JSON Data Javier Luis Cánovas Izquierdo, Jordi Cabot {javier.canovas,jordi.cabot}@inria.fr ICWE Conference July 2013
    2. 2. APIs everywhere
    3. 3. APIs everywhere
    4. 4. flickr/FortMeade Format War
    5. 5. flickr/FortMeade Format War XML vs. JSON
    6. 6. 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 2009 2010 2011 2012 2013 JSON-based API XML-based API Source: ProgrammableWeb.com XML vs. JSON
    7. 7. flickr/Eleaf
    8. 8. Also called JavaScript Object Notation, is a text- based open standard designed for human- readable data interchange. It is derived from the JavaScript scripting language for representing simple data structures and associative arrays, called objects. Despite its relationship to JavaScript, it is language-independent, with parsers available for many languages. JSON (/ˈdʒeɪsɒn/ jay-sawn, /ˈdʒeɪsən/ jay- sun) Source: Wikipedia
    9. 9. Also called JavaScript Object Notation, is a text- based open standard designed for human- readable data interchange. It is derived from the JavaScript scripting language for representing simple data structures and associative arrays, called objects. Despite its relationship to JavaScript, it is language-independent, with parsers available for many languages. JSON (/ˈdʒeɪsɒn/ jay-sawn, /ˈdʒeɪsən/ jay- sun) … and it is schemaless
    10. 10. flickr/jean-louis zimmermann Example
    11. 11. flickr/Mads Boedker Our proposal
    12. 12. Discovery of schemas in JSON
    13. 13. Creation Refinement
    14. 14. Creation Refinement C1 C2 C3 C4 C5
    15. 15. R1 R2 R3 Creation Refinement
    16. 16. Creation Refinement
    17. 17. M1 M2 M3 M4
    18. 18. Discovering dependencies
    19. 19. Implementation
    20. 20. Not enough… • Allowing developers to enrich the partial schemas • Ideas from database normalization theory and XML-based approaches Improve discovery process • Some metrics: effectiveness, coverage, etc. Evaluate the discovery process • Automatize the generation of documentation • Identifying use patterns in the JSON-based API Promote JSON-based APIs • Generation of mash-ups • …others? Additional uses
    21. 21. Check it out! https://code.google.com/a/eclipselabs.org/p/json-discoverer/ Except where otherwise noted, content on this presentation is licensed under a Creative Commons Attribution 3.0 License. Do you wanna try?

    ×