SlideShare uma empresa Scribd logo
1 de 17
News in JSON
Stuart Myles * Associated Press * 10th March 2014
http://www.flickr.com/photos/toffaelrashid/7574046808/
Remind Me: What is JSON?
JSON = JavaScript Object Notation http://json.org/
Name / value pairs: a fieldname in quotes, a colon, a value in quotes
"givenname" : "Evan"
Objects: written inside curly braces, may contain multiple NVPs
{"givenname" : "Evan", "familyname" : "Sandhaus"}
Arrays: Written inside square braces, may contain multiple objects
{"iptcdelegates": [
{
"givenname": "Jayson", "familyname": “Lorenzen"},
{
"givenname": "Jeremy", "familyname": "Brooks"},
{
"givenname": "Evan", "familyname": "Sandhaus"
}
]}
© 2014 IPTC (www.iptc.org) All rights reserved 2
Remind Me: Why News in JSON?
Lightweight, easy to parse format
Increasingly popular alternative to / replacement for XML
Two principle use cases:
data interchange (e.g. APIs) with an emphasis on partial representation
data at rest (e.g. search engines like Elastic Search or MongoDB)
Not simply translating from any existing XML standard into JSON
Determine how to represent key properties and structures
Hand crafted, rather than mechanically translating from XML into JSON
Goal: comprehensive standard, lightweight instance documents
© 2014 IPTC (www.iptc.org) All rights reserved 3
ninjs Overview
© 2014 IPTC (www.iptc.org) All rights reserved 4
http://groups.yahoo.com/neo/groups/iptc-news-in-json-dev
ninjs Data Model
© 2014 IPTC (www.iptc.org) All rights reserved 5
http://dev.iptc.org/ninjs
ninjs 1.0
• ninjs is a JSON representation of a news item
– Text, Photo, Graphic, Video, Audio, Package
• You can represent a complete item, with all properties
– For instance in an internal CMS like MongoDB
• Or you may want to convey key properties
– For instance as an API response
• The representationtype property indicates how complete
– Either “full” or “partial”
• Associations are themselves ninjs documents
– You may include complete or partial representations
© 2014 IPTC (www.iptc.org) All rights reserved 6
A Complete NINJS 1.0 Article
{
"uri" : "http://ninjs.example.com/newsitems/20130709simp123",
"type" : "text",
"versioncreated" : "2013-07-09T10:37:00Z",
"byline" : "Paulo Santalucia and Frances d'Emilio",
"headline" : "Captain of wrecked cruise ship on trial in
Italy",
"body_text" : "GROSSETO, Italy (EP) -- The trial of the
captain of the shipwrecked Costa Concordia cruise liner has begun
in a theater converted into a courtroom …"
}
© 2014 IPTC (www.iptc.org) All rights reserved 7
Rendition Example
"renditions" : {
"main" : {
"href" : "http://example.org/photos/2/2643c588-dc8d-4923-
bebd-e3b904edbb3a-big.jpg",
"mimetype": "image/jpg",
"title" : "Mid Resolution",
"height" : 281,
"width" : 429
},
"small" : {
"href" : "http://example.org/photos/2/2643c588-dc8d-4923-
bebd-e3b904edbb3a-small.jpg",
"mimetype": "image/jpg",
"title" : "Low Resolution",
"height" : 117,
"width" : 179
}
}
© 2014 IPTC (www.iptc.org) All rights reserved 8
Associations Example
"associations" : {
"mainpic" :
{
"uri" :
"http://ninjs.example.com/newsitems/20130709simpPh123",
"representationtype" : "partial",
"type" : "picture",
"byline" : "Paulo Santalucia",
"headline" : "Costa Concordia cruise ship",
"renditions" : {
"small" : {
"href" : "http://example.org/photos/2/2643c588-dc8d-
4923-bebd-e3b904edbb3a-small.jpg",
"height" : 117,
"width" : 179
}
}
}}
© 2014 IPTC (www.iptc.org) All rights reserved 9
NINJS 1.1
• Improving on NINJS 1.0
– Geo data
– Usage terms
– Urgency (in late breaking changes)
© 2014 IPTC (www.iptc.org) All rights reserved 10
Geo Data
• Extend “place” with machine-readable geo data
– Such as lat and long
• There are several ways to represent geo data
– Including GeoJSON, KML and GML
• Add a “geometry_” pattern property to NINJS
• Allow providers to select the geo data representation(s)
that best fits their needs
http://dev.iptc.org/ninjs-CR-10-01-add-geo-data
https://raw.github.com/iptc/newsinjson-dev/master/ninjsExComplex2-
withGeoJSON_2013-11-06.json
© 2014 IPTC (www.iptc.org) All rights reserved 11
Usage Terms
• Natural language restrictions specific to this ninjs object.
• In addition to any machine-readable description, such as
via RightsML
• http://www.w3.org/community/odrl/work/json/
• Add a "usageterms" string property
– A natural-language statement about the usage terms pertaining
to the content
• http://dev.iptc.org/ninjs-CR-10-02-add-usageterms
© 2014 IPTC (www.iptc.org) All rights reserved 12
Urgency
• Providers wish to convey the editorial urgency of the
content
• The “urgency” property is a number
• The suggested range is 1 to 9, where 1 represents the
highest urgency, 9 the lowest
• http://dev.iptc.org/ninjs-CR-10-03-add-urgency
© 2014 IPTC (www.iptc.org) All rights reserved 13
© 2014 IPTC (www.iptc.org) All rights reserved 14
ninjs 1.1
MOTION – Standards Committee
MOTION (to the Standards Committee):
To approve ninjs version 1.1
as specified by
ninjs-schema_1.1-DRAFT
Plus
http://dev.iptc.org/ninjs-CR-10-03-add-urgency
ninjs Resources
• The ninjs development website is a trove of information http://dev.iptc.org/ninjs
• ninjs JSON schema http://www.iptc.org/std/ninjs/ninjs-schema_1.0.json
– Uses JSON schema draft standard http://json-schema.org/
– Validation http://dev.iptc.org/ninjs-Validation-of-ninjs-Objects
• ninjs examples
– Text http://dev.iptc.org/ninjs-Examples-1
– Photo http://dev.iptc.org/ninjs-Examples-2
– Multimedia http://dev.iptc.org/ninjs-Examples-3
• Best practices and how to’s http://dev.iptc.org/ninjs-Best-Practices-and-How-Tos
• ninjs github https://github.com/iptc/newsinjson
• ninjs feedback forum http://dev.iptc.org/Forum-5
© 2014 IPTC (www.iptc.org) All rights reserved 15
News in JSON Road Map
• Try ninjs out and give us feedback!
– http://dev.iptc.org/Forum-5
– iptc-news-in-json-dev@yahoogroups.com
• Some providers are adopting NINJS
– Including using NINJS as the basis of internal JSON schema
• Let’s get ninjs onto the main IPTC site
– http://www.iptc.org/site/News_Exchange_Formats/
© 2014 IPTC (www.iptc.org) All rights reserved 16
Date and Place of Next Meeting
Beijing, China June, 2014
http://www.flickr.com/photos/26226551@N00/10753739865/
Teşekkür ve veda!
© 2014 IPTC (www.iptc.org) All rights reserved 17

Mais conteúdo relacionado

Mais de Stuart Myles

IPTC Board Spring 2019
IPTC Board Spring 2019IPTC Board Spring 2019
IPTC Board Spring 2019Stuart Myles
 
IPTC Spring 2019 Conference
IPTC Spring 2019 ConferenceIPTC Spring 2019 Conference
IPTC Spring 2019 ConferenceStuart Myles
 
Photomation or Fauxtomation?
Photomation or Fauxtomation?Photomation or Fauxtomation?
Photomation or Fauxtomation?Stuart Myles
 
Image Tagging at the Associated Press
Image Tagging at the Associated PressImage Tagging at the Associated Press
Image Tagging at the Associated PressStuart Myles
 
IPTC Rights Working Group Toronto October 2018
IPTC Rights Working Group Toronto October 2018IPTC Rights Working Group Toronto October 2018
IPTC Rights Working Group Toronto October 2018Stuart Myles
 
IPTC AGM 2018 Welcome
IPTC AGM 2018 WelcomeIPTC AGM 2018 Welcome
IPTC AGM 2018 WelcomeStuart Myles
 
How Can We Make Algorithmic News More Transparent?
How Can We Make Algorithmic News More Transparent?How Can We Make Algorithmic News More Transparent?
How Can We Make Algorithmic News More Transparent?Stuart Myles
 
IPTC EXTRA Spring 2018
IPTC EXTRA Spring 2018IPTC EXTRA Spring 2018
IPTC EXTRA Spring 2018Stuart Myles
 
IPTC Machine Readable Rights for News and Media: Solving Three Challenges wit...
IPTC Machine Readable Rights for News and Media: Solving Three Challenges wit...IPTC Machine Readable Rights for News and Media: Solving Three Challenges wit...
IPTC Machine Readable Rights for News and Media: Solving Three Challenges wit...Stuart Myles
 
Ap Taxonomy Localization Requirements and Challenges
Ap Taxonomy Localization Requirements and ChallengesAp Taxonomy Localization Requirements and Challenges
Ap Taxonomy Localization Requirements and ChallengesStuart Myles
 
IPTC Spring Meeting Welcome To Athens April 2018
IPTC Spring Meeting Welcome To Athens April 2018IPTC Spring Meeting Welcome To Athens April 2018
IPTC Spring Meeting Welcome To Athens April 2018Stuart Myles
 
Sustaining Television News Technical Challenges
Sustaining Television News Technical ChallengesSustaining Television News Technical Challenges
Sustaining Television News Technical ChallengesStuart Myles
 
How to Train Your Classifier: Create a Serverless Machine Learning System wit...
How to Train Your Classifier: Create a Serverless Machine Learning System wit...How to Train Your Classifier: Create a Serverless Machine Learning System wit...
How to Train Your Classifier: Create a Serverless Machine Learning System wit...Stuart Myles
 
The Search for IPTC's Next Managing Director
The Search for IPTC's Next Managing DirectorThe Search for IPTC's Next Managing Director
The Search for IPTC's Next Managing DirectorStuart Myles
 
IPTC Approach to News in JSON
IPTC Approach to News in JSONIPTC Approach to News in JSON
IPTC Approach to News in JSONStuart Myles
 
IPTC News in JSON November 2017
IPTC News in JSON November 2017IPTC News in JSON November 2017
IPTC News in JSON November 2017Stuart Myles
 
IPTC EXTRA and EXTRA+ November 2017
IPTC EXTRA and EXTRA+ November 2017IPTC EXTRA and EXTRA+ November 2017
IPTC EXTRA and EXTRA+ November 2017Stuart Myles
 
Welcome to Barcelona - IPTC November 2017
Welcome to Barcelona - IPTC November 2017Welcome to Barcelona - IPTC November 2017
Welcome to Barcelona - IPTC November 2017Stuart Myles
 
Credibility Schema Working Group
Credibility Schema Working GroupCredibility Schema Working Group
Credibility Schema Working GroupStuart Myles
 
Rights for Photo and Video Archives at the Associated Press
Rights for Photo and Video Archives at the Associated PressRights for Photo and Video Archives at the Associated Press
Rights for Photo and Video Archives at the Associated PressStuart Myles
 

Mais de Stuart Myles (20)

IPTC Board Spring 2019
IPTC Board Spring 2019IPTC Board Spring 2019
IPTC Board Spring 2019
 
IPTC Spring 2019 Conference
IPTC Spring 2019 ConferenceIPTC Spring 2019 Conference
IPTC Spring 2019 Conference
 
Photomation or Fauxtomation?
Photomation or Fauxtomation?Photomation or Fauxtomation?
Photomation or Fauxtomation?
 
Image Tagging at the Associated Press
Image Tagging at the Associated PressImage Tagging at the Associated Press
Image Tagging at the Associated Press
 
IPTC Rights Working Group Toronto October 2018
IPTC Rights Working Group Toronto October 2018IPTC Rights Working Group Toronto October 2018
IPTC Rights Working Group Toronto October 2018
 
IPTC AGM 2018 Welcome
IPTC AGM 2018 WelcomeIPTC AGM 2018 Welcome
IPTC AGM 2018 Welcome
 
How Can We Make Algorithmic News More Transparent?
How Can We Make Algorithmic News More Transparent?How Can We Make Algorithmic News More Transparent?
How Can We Make Algorithmic News More Transparent?
 
IPTC EXTRA Spring 2018
IPTC EXTRA Spring 2018IPTC EXTRA Spring 2018
IPTC EXTRA Spring 2018
 
IPTC Machine Readable Rights for News and Media: Solving Three Challenges wit...
IPTC Machine Readable Rights for News and Media: Solving Three Challenges wit...IPTC Machine Readable Rights for News and Media: Solving Three Challenges wit...
IPTC Machine Readable Rights for News and Media: Solving Three Challenges wit...
 
Ap Taxonomy Localization Requirements and Challenges
Ap Taxonomy Localization Requirements and ChallengesAp Taxonomy Localization Requirements and Challenges
Ap Taxonomy Localization Requirements and Challenges
 
IPTC Spring Meeting Welcome To Athens April 2018
IPTC Spring Meeting Welcome To Athens April 2018IPTC Spring Meeting Welcome To Athens April 2018
IPTC Spring Meeting Welcome To Athens April 2018
 
Sustaining Television News Technical Challenges
Sustaining Television News Technical ChallengesSustaining Television News Technical Challenges
Sustaining Television News Technical Challenges
 
How to Train Your Classifier: Create a Serverless Machine Learning System wit...
How to Train Your Classifier: Create a Serverless Machine Learning System wit...How to Train Your Classifier: Create a Serverless Machine Learning System wit...
How to Train Your Classifier: Create a Serverless Machine Learning System wit...
 
The Search for IPTC's Next Managing Director
The Search for IPTC's Next Managing DirectorThe Search for IPTC's Next Managing Director
The Search for IPTC's Next Managing Director
 
IPTC Approach to News in JSON
IPTC Approach to News in JSONIPTC Approach to News in JSON
IPTC Approach to News in JSON
 
IPTC News in JSON November 2017
IPTC News in JSON November 2017IPTC News in JSON November 2017
IPTC News in JSON November 2017
 
IPTC EXTRA and EXTRA+ November 2017
IPTC EXTRA and EXTRA+ November 2017IPTC EXTRA and EXTRA+ November 2017
IPTC EXTRA and EXTRA+ November 2017
 
Welcome to Barcelona - IPTC November 2017
Welcome to Barcelona - IPTC November 2017Welcome to Barcelona - IPTC November 2017
Welcome to Barcelona - IPTC November 2017
 
Credibility Schema Working Group
Credibility Schema Working GroupCredibility Schema Working Group
Credibility Schema Working Group
 
Rights for Photo and Video Archives at the Associated Press
Rights for Photo and Video Archives at the Associated PressRights for Photo and Video Archives at the Associated Press
Rights for Photo and Video Archives at the Associated Press
 

Último

IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIES VE
 
The UX of Automation by AJ King, Senior UX Researcher, Ocado
The UX of Automation by AJ King, Senior UX Researcher, OcadoThe UX of Automation by AJ King, Senior UX Researcher, Ocado
The UX of Automation by AJ King, Senior UX Researcher, OcadoUXDXConf
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Julian Hyde
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...FIDO Alliance
 
THE BEST IPTV in GERMANY for 2024: IPTVreel
THE BEST IPTV in  GERMANY for 2024: IPTVreelTHE BEST IPTV in  GERMANY for 2024: IPTVreel
THE BEST IPTV in GERMANY for 2024: IPTVreelreely ones
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1DianaGray10
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfFIDO Alliance
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekCzechDreamin
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityScyllaDB
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsStefano
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfFIDO Alliance
 
Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...CzechDreamin
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101vincent683379
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceSamy Fodil
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomCzechDreamin
 
Strategic AI Integration in Engineering Teams
Strategic AI Integration in Engineering TeamsStrategic AI Integration in Engineering Teams
Strategic AI Integration in Engineering TeamsUXDXConf
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty SecureFemke de Vroome
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Patrick Viafore
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon
 

Último (20)

IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
The UX of Automation by AJ King, Senior UX Researcher, Ocado
The UX of Automation by AJ King, Senior UX Researcher, OcadoThe UX of Automation by AJ King, Senior UX Researcher, Ocado
The UX of Automation by AJ King, Senior UX Researcher, Ocado
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 
THE BEST IPTV in GERMANY for 2024: IPTVreel
THE BEST IPTV in  GERMANY for 2024: IPTVreelTHE BEST IPTV in  GERMANY for 2024: IPTVreel
THE BEST IPTV in GERMANY for 2024: IPTVreel
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
Strategic AI Integration in Engineering Teams
Strategic AI Integration in Engineering TeamsStrategic AI Integration in Engineering Teams
Strategic AI Integration in Engineering Teams
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 

IPTC News In JSON Spring 2014

  • 1. News in JSON Stuart Myles * Associated Press * 10th March 2014 http://www.flickr.com/photos/toffaelrashid/7574046808/
  • 2. Remind Me: What is JSON? JSON = JavaScript Object Notation http://json.org/ Name / value pairs: a fieldname in quotes, a colon, a value in quotes "givenname" : "Evan" Objects: written inside curly braces, may contain multiple NVPs {"givenname" : "Evan", "familyname" : "Sandhaus"} Arrays: Written inside square braces, may contain multiple objects {"iptcdelegates": [ { "givenname": "Jayson", "familyname": “Lorenzen"}, { "givenname": "Jeremy", "familyname": "Brooks"}, { "givenname": "Evan", "familyname": "Sandhaus" } ]} © 2014 IPTC (www.iptc.org) All rights reserved 2
  • 3. Remind Me: Why News in JSON? Lightweight, easy to parse format Increasingly popular alternative to / replacement for XML Two principle use cases: data interchange (e.g. APIs) with an emphasis on partial representation data at rest (e.g. search engines like Elastic Search or MongoDB) Not simply translating from any existing XML standard into JSON Determine how to represent key properties and structures Hand crafted, rather than mechanically translating from XML into JSON Goal: comprehensive standard, lightweight instance documents © 2014 IPTC (www.iptc.org) All rights reserved 3
  • 4. ninjs Overview © 2014 IPTC (www.iptc.org) All rights reserved 4 http://groups.yahoo.com/neo/groups/iptc-news-in-json-dev
  • 5. ninjs Data Model © 2014 IPTC (www.iptc.org) All rights reserved 5 http://dev.iptc.org/ninjs
  • 6. ninjs 1.0 • ninjs is a JSON representation of a news item – Text, Photo, Graphic, Video, Audio, Package • You can represent a complete item, with all properties – For instance in an internal CMS like MongoDB • Or you may want to convey key properties – For instance as an API response • The representationtype property indicates how complete – Either “full” or “partial” • Associations are themselves ninjs documents – You may include complete or partial representations © 2014 IPTC (www.iptc.org) All rights reserved 6
  • 7. A Complete NINJS 1.0 Article { "uri" : "http://ninjs.example.com/newsitems/20130709simp123", "type" : "text", "versioncreated" : "2013-07-09T10:37:00Z", "byline" : "Paulo Santalucia and Frances d'Emilio", "headline" : "Captain of wrecked cruise ship on trial in Italy", "body_text" : "GROSSETO, Italy (EP) -- The trial of the captain of the shipwrecked Costa Concordia cruise liner has begun in a theater converted into a courtroom …" } © 2014 IPTC (www.iptc.org) All rights reserved 7
  • 8. Rendition Example "renditions" : { "main" : { "href" : "http://example.org/photos/2/2643c588-dc8d-4923- bebd-e3b904edbb3a-big.jpg", "mimetype": "image/jpg", "title" : "Mid Resolution", "height" : 281, "width" : 429 }, "small" : { "href" : "http://example.org/photos/2/2643c588-dc8d-4923- bebd-e3b904edbb3a-small.jpg", "mimetype": "image/jpg", "title" : "Low Resolution", "height" : 117, "width" : 179 } } © 2014 IPTC (www.iptc.org) All rights reserved 8
  • 9. Associations Example "associations" : { "mainpic" : { "uri" : "http://ninjs.example.com/newsitems/20130709simpPh123", "representationtype" : "partial", "type" : "picture", "byline" : "Paulo Santalucia", "headline" : "Costa Concordia cruise ship", "renditions" : { "small" : { "href" : "http://example.org/photos/2/2643c588-dc8d- 4923-bebd-e3b904edbb3a-small.jpg", "height" : 117, "width" : 179 } } }} © 2014 IPTC (www.iptc.org) All rights reserved 9
  • 10. NINJS 1.1 • Improving on NINJS 1.0 – Geo data – Usage terms – Urgency (in late breaking changes) © 2014 IPTC (www.iptc.org) All rights reserved 10
  • 11. Geo Data • Extend “place” with machine-readable geo data – Such as lat and long • There are several ways to represent geo data – Including GeoJSON, KML and GML • Add a “geometry_” pattern property to NINJS • Allow providers to select the geo data representation(s) that best fits their needs http://dev.iptc.org/ninjs-CR-10-01-add-geo-data https://raw.github.com/iptc/newsinjson-dev/master/ninjsExComplex2- withGeoJSON_2013-11-06.json © 2014 IPTC (www.iptc.org) All rights reserved 11
  • 12. Usage Terms • Natural language restrictions specific to this ninjs object. • In addition to any machine-readable description, such as via RightsML • http://www.w3.org/community/odrl/work/json/ • Add a "usageterms" string property – A natural-language statement about the usage terms pertaining to the content • http://dev.iptc.org/ninjs-CR-10-02-add-usageterms © 2014 IPTC (www.iptc.org) All rights reserved 12
  • 13. Urgency • Providers wish to convey the editorial urgency of the content • The “urgency” property is a number • The suggested range is 1 to 9, where 1 represents the highest urgency, 9 the lowest • http://dev.iptc.org/ninjs-CR-10-03-add-urgency © 2014 IPTC (www.iptc.org) All rights reserved 13
  • 14. © 2014 IPTC (www.iptc.org) All rights reserved 14 ninjs 1.1 MOTION – Standards Committee MOTION (to the Standards Committee): To approve ninjs version 1.1 as specified by ninjs-schema_1.1-DRAFT Plus http://dev.iptc.org/ninjs-CR-10-03-add-urgency
  • 15. ninjs Resources • The ninjs development website is a trove of information http://dev.iptc.org/ninjs • ninjs JSON schema http://www.iptc.org/std/ninjs/ninjs-schema_1.0.json – Uses JSON schema draft standard http://json-schema.org/ – Validation http://dev.iptc.org/ninjs-Validation-of-ninjs-Objects • ninjs examples – Text http://dev.iptc.org/ninjs-Examples-1 – Photo http://dev.iptc.org/ninjs-Examples-2 – Multimedia http://dev.iptc.org/ninjs-Examples-3 • Best practices and how to’s http://dev.iptc.org/ninjs-Best-Practices-and-How-Tos • ninjs github https://github.com/iptc/newsinjson • ninjs feedback forum http://dev.iptc.org/Forum-5 © 2014 IPTC (www.iptc.org) All rights reserved 15
  • 16. News in JSON Road Map • Try ninjs out and give us feedback! – http://dev.iptc.org/Forum-5 – iptc-news-in-json-dev@yahoogroups.com • Some providers are adopting NINJS – Including using NINJS as the basis of internal JSON schema • Let’s get ninjs onto the main IPTC site – http://www.iptc.org/site/News_Exchange_Formats/ © 2014 IPTC (www.iptc.org) All rights reserved 16
  • 17. Date and Place of Next Meeting Beijing, China June, 2014 http://www.flickr.com/photos/26226551@N00/10753739865/ Teşekkür ve veda! © 2014 IPTC (www.iptc.org) All rights reserved 17