Introduction to AtomPub Web Services Ben Ramsey International PHP Conference 11 Oct 2010

Size: px
Start display at page:

Download "Introduction to AtomPub Web Services Ben Ramsey International PHP Conference 11 Oct 2010"

Transcription

1 Introduction to AtomPub Web Services Ben Ramsey International PHP Conference 11 Oct 2010

2 Hi, I m Ben. VP of Engineering at Moontoast Co-founder and organizer emeritus of the Atlanta PHP user group Current organizer of the Nashville PHP user group I blog at benramsey.com I tweet Please rate this presentation: 2

3 Atom & AtomPub?

4 What s the difference?

5 Atom: RFC

6 Atom is an XML-based document format that describes lists of related information known as feeds. Feeds are composed of a number of items, known as entries, each with an extensible set of attached metadata. For example, each entry has a title. The primary use case that Atom addresses is the syndication of Web content such as weblogs and news headlines to Web sites as well as directly to user agents. RFC 4287, 1

7 Atom is an XML language.

8 AtomPub: RFC

9 The Atom Publishing Protocol is an application-level protocol for publishing and editing Web Resources using HTTP and XML 1.0. The protocol supports the creation of Web Resources and provides facilities for: Collections: Sets of Resources, which can be retrieved in whole or in part. Services: Discovery and description of Collections. Editing: Creating, editing, and deleting Resources. The Atom Publishing Protocol is different from many contemporary protocols in that the server is given wide latitude in processing requests from clients. RFC 5023, 1

10 AtomPub is a publishing protocol.

11 What about RSS? 11

12 Content Types RSS allows only for plain text and escaped HTML content types Atom provides for plain text, escaped HTML, XHTML, XML, and Base64-encoded binary data 12

13 Internationalization RSS may have a language set for a feed, but doesn t have a way to indicate language for items in the feed Atom uses the xml:lang attribute to specify language on a per-element basis Atom uses IRIs, which allow the usage of characters in identifiers outside of ASCII 13

14 Modularity RSS vocabulary elements aren t reusable in other XML vocabularies Atom was designed to allow its vocabulary to be mixed with other XML vocabularies Namespaces! Atom has one; RSS does not 14

15 Other Things RSS has no schema; Atom has a RelaxNG schema RSS defines no mechanism for handling relative URIs; Atom uses xml:base Various implementations in RSS leads to interoperability problems No standard protocol for publishing; RSS is read only 15

16 Atom was created to solve the RSS problems.

17 Profile of Atom Atom Syndication Format An XML-based web content and metadata syndication format Defined by IETF RFC 4287 Fixes the problems of RSS XML namespace: 17

18 Profile of AtomPub Atom Publishing Protocol or APP A protocol for publishing and editing web resources using HTTP and XML Defined by IETF RFC 5023 Uses Atom as it s XML syntax XML namespace: 18

19 Basics of AtomPub Each resource has a unique identifier The resources are well-connected Resources share the same interface There is no state; requests are atomic Follows a resource-oriented architecture 19

20 Terminology Entry Feed/Collection Category Document Service Document 20

21 Content Types Entry: application/atom+xml;type=entry Feed/Collection: application/atom+xml Category Document: application/atomcat+xml Service Document: application/atomsvc+xml 21

22 Designing an AtomPub Service 22

23 What will our service do? Expose users Expose content Allow users to manipulate content 23

24 Step 1: Define our URIs

25 Users /user /user/{username} For example: /user/ramsey 25

26 Content /content /content/{id} For example: /content/

27 Step 2: Define the relationships

28 Relationship Building user content: one to many content user: one to one 28

29 Step 3: Define the interface

30 Methods Cut & Paste GET PUT POST DELETE Copy Paste Over Paste After Cut

31 Actions for User Resources Retrieve user collection: GET /user Create a new user: POST /user Modify an existing user: PUT /user/ramsey Delete a user: DELETE /user/ramsey 31

32 Actions for Content Resources Retrieve content: GET /content Create new content: POST /content Modify content: PUT /content/1234 Remove content: DELETE /content/

33 Other Actions Service discovery: GET / Retrieve content for a particular user: GET /user/ramsey/content 33

34 Let s see it in action 34

35 GET / HTTP/1.1 Host: atom.example.org HTTP/1.x 200 OK Date: Mon, 21 Sep :33:45 GMT Content-Type: application/atomsvc+xml

36 <?xml version="1.0" encoding="utf-8"?> <service xmlns=" xmlns:atom=" xml:base=" <workspace> <atom:title>our Content Store</atom:title> <collection href="user"> <atom:title>users</atom:title> <accept>application/atom+xml;type=entry</accept> <categories href="cat/user"/> </collection> <collection href="content"> <atom:title>content</atom:title> <accept>application/atom+xml;type=entry</accept> <categories href="cat/content"/> </collection> </workspace> </service>

37 GET /user HTTP/1.1 Host: atom.example.org HTTP/1.x 200 OK Date: Mon, 21 Sep :34:26 GMT Content-Type: application/atom+xml

38 <?xml version="1.0" encoding="utf-8"?> <feed xmlns=" xmlns:app=" xml:base=" <title>users</title> <updated> t05:21:19z</updated> <id>tag:example.org, :user</id> <app:collection href="user"> <title>users</title> <app:accept>application/atom+xml;type=entry</app:accept> <app:categories href="cat/user"/> </app:collection> <link rel="first" href="user"/> <link rel="last" href="user?p=23"/> <link rel="next" href="user?p=2"/> <entry>... </entry> </feed>

39 Manipulating a User 39

40 GET /user/ramsey HTTP/1.1 Host: atom.example.org HTTP/1.x 200 OK Date: Mon, 21 Sep :34:26 GMT Content-Type: application/atom+xml;type=entry

41 <?xml version="1.0" encoding="utf-8"?> <entry xmlns=" xml:base=" <title>ramsey</title> <author> <name>ramsey</name> </author> <link rel="self" href="user/ramsey"/> <link rel="edit" type="application/atom+xml;type=entry" href="user/ramsey"/> <link rel="related" href="user/ramsey/content"/> <id>tag:example.org,2008:user/ramsey</id> <updated> t13:45:00z</updated> <published> t16:23:34z</published> <content type="xhtml"> <div class="vcard" xmlns=" <a class="fn">ben Ramsey</a> <span class="tel"> </span> </div> </content> </entry>

42 Modify the Entry Locally 42

43 <?xml version="1.0" encoding="utf-8"?> <entry xmlns=" xml:base=" <title>ramsey</title> <author> <name>ramsey</name> </author> <link rel="self" href="user/ramsey"/> <link rel="edit" type="application/atom+xml;type=entry" href="user/ramsey"/> <link rel="related" href="user/ramsey/content"/> <id>tag:example.org,2008:user/ramsey</id> <updated> t09:14:58z</updated> <published> t16:23:34z</published> <content type="xhtml"> <div class="vcard"> <a class="fn url" href=" Ramsey</a> <span class="org">moontoast</span> <span class="tel"> </span> </div> </content> </entry>

44 PUT /user/ramsey HTTP/1.1 Host: atom.example.org Content-Type: application/atom+xml;type=entry {body here} HTTP/1.x 200 OK Date: Mon, 22 Sep :14:59 GMT Content-Type: application/atom+xml;type=entry

45 Add Some Content 45

46 First, a Few Notes You need authentication! Perhaps you need encryption You definitely need validation And I m not going to tell you how 46

47 That s out of scope.

48 :-)

49 But I ll show you the basics.

50 <?xml version="1.0" encoding="utf-8"?> <service xmlns=" xmlns:atom=" xml:base=" <workspace> <atom:title>our Content Store</atom:title> <collection href="user"> <atom:title>users</atom:title> <accept>application/atom+xml;type=entry</accept> <categories href="cat/user"/> </collection> <collection href="content"> <atom:title>content</atom:title> <accept>application/atom+xml;type=entry</accept> <categories href="cat/content"/> </collection> </workspace> </service>

51 Get the Categories 51

52 GET /cat/content HTTP/1.1 Host: atom.example.org HTTP/1.x 200 OK Date: Mon, 22 Sep :39:26 GMT Content-Type: application/atomcat+xml

53 <?xml version="1.0"?> <app:categories xmlns:app=" xmlns:atom=" fixed="yes" scheme=" <atom:category term="audio"/> <atom:category term="video"/> <atom:category term="game"/> </app:categories>

54 Create the Entry Document Locally 54

55 <?xml version="1.0" encoding="utf-8"?> <entry xmlns=" xml:base=" <title>perfect</title> <author> <name>mark Phelps</name> </author> <id>tag:example.org,2009:content/perfect</id> <published> t20:12:08z</published> <category term="audio" scheme=" <content type="application/mp4"> TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWF IHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlciBhbmltYWxzLCB3aGl... </content> </entry>

56 POST /content HTTP/1.1 Host: atom.example.org Content-Type: application/atom+xml;type=entry {body here} HTTP/1.x 202 Accepted Date: Mon, 22 Sep :14:59 GMT {body contains status indicator}

57 Authentication? Atom doesn t specify a preference WSSE Username Token OAuth Basic authentication Digest authentication??? 57

58 Did I miss anything?

59 Oh, yeah. Where s the PHP code?

60 AtomPub in PHP DOM for reading/writing SimpleXML for reading XMLReader for reading XMLWriter for writing String concatenation for writing I recommend XMLReader/XMLWriter; they re the fastest at parsing and generating XML 60

61 Wrapping Up You can extend Atom with other XML vocabularies (Dublin Core, etc.) XML Digital Signature or XML Encryption may be used, or encrypt as a bag of bits Use your preferred authentication method Use HTTP in a RESTful fashion Use DOM or XMLReader/XMLWriter to parse Atom documents 61

62 Questions? I blog at benramsey.com I tweet Please rate this presentation: Read the Atom specifications: RFC 4287 RFC 5023 My company is Moontoast 62

63 Introduction to AtomPub Web Services Copyright Ben Ramsey. Some rights reserved. This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 United States License. For uses not covered under this license, please contact the author.

64 Photo Credits Molecule display, by Christian Guthier Atom, by jayneandd Atomium - detail, by Constantin Barbu Simplicity, by Subterranean Tourist Board STEREO's Extreme UltraViolet Imager (EUVI), by NASA Quantum Universe, by Gaurav Fullerene Nanogears, by NASA Little Atom, by Marrio That Atom, by Albert O Conner Bokeh Spiral, by Eric Wüstenhagen Chambered Nautilus Shell - detail, by Jitze Couperus 64

Distribution and Publication With Atom Web Services

Distribution and Publication With Atom Web Services Distribution and Publication With Atom Web Services Software Architect at Schematic Atlanta PHP Leader Co-author of Zend PHP 5 Certification Study Guide Chatter on #phpc The name Atom applies to a pair

More information

Request for Comments: NewBay Software October 2007

Request for Comments: NewBay Software October 2007 Network Working Group Request for Comments: 5023 Category: Standards Track J. Gregorio, Ed. Google B. de hora, Ed. NewBay Software October 2007 The Atom Publishing Protocol Status of This Memo This document

More information

Publishing and Edi.ng Web Resources Atom Publishing Protocol. CS 431 Spring 2008 Cornell University Carl Lagoze 03/12/08

Publishing and Edi.ng Web Resources Atom Publishing Protocol. CS 431 Spring 2008 Cornell University Carl Lagoze 03/12/08 Publishing and Edi.ng Web Resources Atom Publishing Protocol CS 431 Spring 2008 Cornell University Carl Lagoze 03/12/08 Acknowledgments Dan Diephouse netzooid.org Elizabeth Fisher Colorado Ibm.com/developerworks

More information

REST-based Integration Architecture for a Financial Business Service. Phillip Ghadir, innoq

REST-based Integration Architecture for a Financial Business Service. Phillip Ghadir, innoq REST-based Integration Architecture for a Financial Business Service Phillip Ghadir, innoq REST-based Integration Architecture for a Financial Business Service When we started out building a large-scale

More information

Erik Wilde (UC Berkeley School of Information)

Erik Wilde (UC Berkeley School of Information) Erik Wilde (UC Berkeley School of Information) [http://creativecommons.org/licenses/by/3.0/] This work is licensed under a CC Attribution 3.0 Unported License [http://creativecommons.org/licenses/by/3.0/]

More information

REST in Practice. From SOA to REST: Designing and Implementing RESTful Services [./] Tutorial at ICWE Sebastián, Spain) Contents

REST in Practice. From SOA to REST: Designing and Implementing RESTful Services [./] Tutorial at ICWE Sebastián, Spain) Contents REST in Practice From SOA to REST: Designing and Implementing RESTful Services [./] Tutorial at ICWE 2009 [http://icwe2009.webengineering.org/] (San Sebastián, Spain) Erik Wilde (UC Berkeley School of

More information

Intended status: Standards Track August 15, 2008 Expires: February 16, 2009

Intended status: Standards Track August 15, 2008 Expires: February 16, 2009 Network Working Group J. Gregorio, Ed. Internet-Draft Google Intended status: Standards Track August 15, 2008 Expires: February 16, 2009 Status of this Memo AtomPub Multipart Media Resource Creation draft-gregorio-atompub-multipart-03

More information

Designing RESTful Web Applications. Ben Ramsey

Designing RESTful Web Applications. Ben Ramsey Designing RESTful Web Applications Ben Ramsey About Me Proud father of 3-month-old Sean Organizer of Atlanta PHP user group Founder of PHP Groups Founding principal of PHP Security Consortium Original

More information

Java Technology and REST: Implementing the Atom Publishing Protocol

Java Technology and REST: Implementing the Atom Publishing Protocol Java Technology and REST: Implementing the Atom Publishing Protocol Dave Johnson Staff Engineer Sun Microsystems http://rollerweblogger.org/page/roller TS-1756 Copyright 2006, Sun Microsystems Inc., All

More information

Intro to the Atom Publishing Protocol. Joe Gregorio Google

Intro to the Atom Publishing Protocol. Joe Gregorio Google Intro to the Atom Publishing Protocol Joe Gregorio Google Atom Atom Syndication Feed example Feed 2003-12-13t18:30:02z

More information

RSS - FEED ELEMENTS. It indicates the last time the Feed was modified in a significant way. All timestamps in Atom must conform to RFC 3339.

RSS - FEED ELEMENTS. It indicates the last time the Feed was modified in a significant way. All timestamps in Atom must conform to RFC 3339. http://www.tutorialspoint.com/rss/feed.htm RSS - FEED ELEMENTS Copyright tutorialspoint.com Feed ID: It identifies the Feed using a universally unique and permanent URI. If you have a long-term, renewable

More information

Federated Search Developer Guide

Federated Search Developer Guide Federated Search Developer Guide Version 40.0, Summer 17 @salesforcedocs Last updated: August 9, 2017 Copyright 2000 2017 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark

More information

Atom: From Blogging to Data, Web (Services) 2.0

Atom: From Blogging to Data, Web (Services) 2.0 Atom: From Blogging to Data, Web (Services) 2.0 Scott Davis Davisworld Consulting Scott Davis Atom: From Blogging to Data, Web (Services) 2.0 Slide 1 Introduction My name is Scott Davis Editor in Chief

More information

REST in Practice. From SOA to REST: Designing and Implementing RESTful Services [./] Tutorial at WWW2009 [http://www2009.org/] (Madrid, Spain)

REST in Practice. From SOA to REST: Designing and Implementing RESTful Services [./] Tutorial at WWW2009 [http://www2009.org/] (Madrid, Spain) REST in Practice Designing and Implementing RESTful Services [./] Tutorial at WWW2009 [http://www2009.org/] (Madrid, Spain) Erik Wilde (UC Berkeley School of Information) [http://creativecommons.org/licenses/by/3.0/]

More information

XML Processing & Web Services. Husni Husni.trunojoyo.ac.id

XML Processing & Web Services. Husni Husni.trunojoyo.ac.id XML Processing & Web Services Husni Husni.trunojoyo.ac.id Based on Randy Connolly and Ricardo Hoar Fundamentals of Web Development, Pearson Education, 2015 Objectives 1 XML Overview 2 XML Processing 3

More information

Open Archives Initiative Object Reuse & Exchange. Resource Map Discovery

Open Archives Initiative Object Reuse & Exchange. Resource Map Discovery Open Archives Initiative Object Reuse & Exchange Resource Map Discovery Michael L. Nelson * Carl Lagoze, Herbert Van de Sompel, Pete Johnston, Robert Sanderson, Simeon Warner OAI-ORE Specification Roll-Out

More information

OData Atom Format Version 4.0

OData Atom Format Version 4.0 OData Atom Format Version 4.0 Committee Specification Draft 01 26 April 2013 Specification URIs This version: http://docs.oasis-open.org/odata/odata-atom-format/v4.0/csd01/odata-atom-format-v4.0- csd01.doc

More information

Expires: December 9, 2005 June 07, The Atom Syndication Format draft-ietf-atompub-format-09. Status of this Memo

Expires: December 9, 2005 June 07, The Atom Syndication Format draft-ietf-atompub-format-09. Status of this Memo Network Working Group M. Nottingham, Ed. Internet-Draft R. Sayre, Ed. Expires: December 9, 2005 June 07, 2005 Status of this Memo The Atom Syndication Format draft-ietf-atompub-format-09 By submitting

More information

Network Working Group Internet-Draft October 27, 2007 Intended status: Experimental Expires: April 29, 2008

Network Working Group Internet-Draft October 27, 2007 Intended status: Experimental Expires: April 29, 2008 Network Working Group J. Snell Internet-Draft October 27, 2007 Intended status: Experimental Expires: April 29, 2008 Status of this Memo Atom Publishing Protocol Feature Discovery draft-snell-atompub-feature-12.txt

More information

OData Atom Format Version 4.0

OData Atom Format Version 4.0 OData Atom Format Version 4.0 Committee Specification 02 17 November 2013 Specification URIs This version: http://docs.oasis-open.org/odata/odata-atom-format/v4.0/cs02/odata-atom-format-v4.0-cs02.doc (Authoritative)

More information

Using metadata for interoperability. CS 431 February 28, 2007 Carl Lagoze Cornell University

Using metadata for interoperability. CS 431 February 28, 2007 Carl Lagoze Cornell University Using metadata for interoperability CS 431 February 28, 2007 Carl Lagoze Cornell University What is the problem? Getting heterogeneous systems to work together Providing the user with a seamless information

More information

FeedFeeds A Web Service for Feed Metadata

FeedFeeds A Web Service for Feed Metadata FeedFeeds A Web Service for Feed Metadata Igor Pesenson Advisor: Erik Wilde UC Berkeley School of Information May 8 th, 2008 ABSTRACT... 2 BACKGROUND... 2 EXPLANATION OF SERVICE... 2 SERVICE DESIGN...

More information

Internet-Draft. Boswijck Memex Consulting January 26, The Atom Syndication Format draft-ietf-atompub-format-05. Status of this Memo

Internet-Draft. Boswijck Memex Consulting January 26, The Atom Syndication Format draft-ietf-atompub-format-05. Status of this Memo Network Working Group Internet-Draft Expires: July 27, 2005 M. Nottingham, Ed. R. Sayre, Ed. Boswijck Memex Consulting January 26, 2005 The Atom Syndication Format draft-ietf-atompub-format-05 Status of

More information

Content Syndication. Web Architecture and Information Management [./] Spring 2009 INFO (CCN 42509) Contents. Erik Wilde, UC Berkeley School of

Content Syndication. Web Architecture and Information Management [./] Spring 2009 INFO (CCN 42509) Contents. Erik Wilde, UC Berkeley School of Contents Content Syndication Contents Web Architecture and Information Management [./] Spring 2009 INFO 190-02 (CCN 42509) Erik Wilde, UC Berkeley School of Information [http://creativecommons.org/licenses/by/3.0/]

More information

Using Web Services to Integrate with Questionmark Perception

Using Web Services to Integrate with Questionmark Perception Using Web Services to Integrate with Questionmark Perception Steve Lay, Integrations Product Owner 2012 Users Conference New Orleans March 20-23 Synopsis Questionmark provides a wide array of methods for

More information

Your Auth is open! Oversharing with OpenAuth & SAML

Your Auth is open! Oversharing with OpenAuth & SAML Your Auth is open! Oversharing with OpenAuth & SAML Andrew Pollack Northern Collaborative Technologies 2013 by the individual speaker Sponsors 2013 by the individual speaker Who Am I? Andrew Pollack President

More information

Open Archives Initiative Object Reuse & Exchange. Resource Map Discovery

Open Archives Initiative Object Reuse & Exchange. Resource Map Discovery Open Archives Initiative Object Reuse & Exchange Resource Map Discovery Michael L. Nelson * Carl Lagoze, Herbert Van de Sompel, Pete Johnston, Robert Sanderson, Simeon Warner OAI-ORE Specification Roll-Out

More information

Web Standards Mastering HTML5, CSS3, and XML

Web Standards Mastering HTML5, CSS3, and XML Web Standards Mastering HTML5, CSS3, and XML Leslie F. Sikos, Ph.D. orders-ny@springer-sbm.com www.springeronline.com rights@apress.com www.apress.com www.apress.com/bulk-sales www.apress.com Contents

More information

BibSword. Implementation of SWORD client in Invenio for the automated submission of digital objects to arxiv

BibSword. Implementation of SWORD client in Invenio for the automated submission of digital objects to arxiv 08/09/2010 CERN-THESIS-2010-109 Implementation of SWORD client in Invenio for the automated submission of digital objects to arxiv CERN - IT Barras Mathieu From 2010-06-01 to 2010-09-11 Table of contents

More information

Department of Computer Science Institute for System Architecture, Chair for Computer Networks. Internet Subscription Services

Department of Computer Science Institute for System Architecture, Chair for Computer Networks. Internet Subscription Services Department of Computer Science Institute for System Architecture, Chair for Computer Networks Internet Subscription Services Introduction Internet users bundle information from various sources 2 Explicit

More information

Intelligence Community and Department of Defense Content Discovery & Retrieval Integrated Project Team (CDR IPT)

Intelligence Community and Department of Defense Content Discovery & Retrieval Integrated Project Team (CDR IPT) Intelligence Community and Department of Defense Content Discovery & Retrieval Integrated Project Team (CDR IPT) IC/DoD REST Interface Encoding Specification for CDR Search, v1.1 12 May 2011 REVISION/HISTORY

More information

Designing Enterprise IT Systems with REST: A (Cloudy) Case Study. Stuart Charlton Chief Software Architect, Elastra

Designing Enterprise IT Systems with REST: A (Cloudy) Case Study. Stuart Charlton Chief Software Architect, Elastra Designing Enterprise IT Systems with REST: A (Cloudy) Case Study Stuart Charlton Chief Software Architect, Elastra Objectives What enterprise problem domains does RESTful architecture handle well? Understanding

More information

RESTful Application Protocols

RESTful Application Protocols RESTful Application Protocols Ian Robinson http://iansrobinson.com @iansrobinson iansrobinson@gmail.com Who am I? Global Bank Integration REST in Practice: A Tutorial on Web- based Distributed Systems

More information

Apache Wink User Guide

Apache Wink User Guide Apache Wink User Guide Software Version: 0.1 The Apache Wink User Guide document is a broad scope document that provides detailed information about the Apache Wink 0.1 design and implementation. Apache

More information

Intended status: Informational. B. Wyman October 2, 2007

Intended status: Informational. B. Wyman October 2, 2007 Network Working Group Internet-Draft Intended status: Informational Expires: April 4, 2008 P. Saint-Andre XMPP Standards Foundation J. Hildebrand Jabber, Inc. B. Wyman October 2, 2007 Transporting Atom

More information

Apache Wink 0.1 Feature Set

Apache Wink 0.1 Feature Set Apache Wink 0.1 Feature Set Software Version: 0.1 [The Wink REST Runtime Feature Set internal draft document is a broad scope document that provides detailed information about the Runtime strategy and

More information

Implementation profile for using OASIS DSS in Central Signing services

Implementation profile for using OASIS DSS in Central Signing services Implementation profile for using OASIS DSS in Central Signing services ELN-0607-v0.9 Version 0.9 2013-10-14 1 (12) 1 INTRODUCTION 3 1.1 TERMINOLOGY 3 1.2 REQUIREMENT KEY WORDS 3 1.3 NAME SPACE REFERENCES

More information

All About Open & Sharing

All About Open & Sharing All About Open & Sharing 차세대웹기술과컨버전스 Lecture 3 수업블로그 : http://itmedia.kaist.ac.kr 2008. 2. 28 한재선 (jshan0000@gmail.com) NexR 대표이사 KAIST 정보미디어경영대학원대우교수 http://www.web2hub.com Open & Sharing S2 OpenID Open

More information

SOA Repository Artifact Model and Protocol Specification (S-RAMP) Atom Binding

SOA Repository Artifact Model and Protocol Specification (S-RAMP) Atom Binding SOA Repository Artifact Model and Protocol Specification (S-RAMP) Atom Binding International Business Machines Corporation Hewlett-Packard Corporation Software AG TIBCO Software Inc Revision 0.9 April

More information

References differences between SVG 1.1 Full and SVG 1.2 Tiny

References differences between SVG 1.1 Full and SVG 1.2 Tiny References differences between SVG 1.1 Full and SVG 1.2 Tiny Differences in XML related s XML 1.0 (Second Edition) XML 1.0 (Fourth Edition) XML 1.1 April 2004. XML-NS 1.0 (First Edition) Jan. 1999. XML

More information

The Atom Project. Tim Bray, Sun Microsystems Paul Hoffman, IMC

The Atom Project. Tim Bray, Sun Microsystems Paul Hoffman, IMC The Atom Project Tim Bray, Sun Microsystems Paul Hoffman, IMC Recent Numbers On June 23, 2004 (according to Technorati.com): There were 2.8 million feeds tracked 14,000 new blogs were created 270,000 new

More information

Develop Mobile Front Ends Using Mobile Application Framework A - 2

Develop Mobile Front Ends Using Mobile Application Framework A - 2 Develop Mobile Front Ends Using Mobile Application Framework A - 2 Develop Mobile Front Ends Using Mobile Application Framework A - 3 Develop Mobile Front Ends Using Mobile Application Framework A - 4

More information

White paper Viz One APIs. Overview of our API Offering

White paper Viz One APIs. Overview of our API Offering White paper Viz One APIs Overview of our API Offering The Viz One is more than just a production, management and distribution system. A broad range of APIs, extend its capacity to numerous alternative

More information

UNIT-II : VIRTUALIZATION & COMMON STANDARDS IN CLOUD COMPUTING

UNIT-II : VIRTUALIZATION & COMMON STANDARDS IN CLOUD COMPUTING Cloud Computing UNIT-II : VIRTUALIZATION & COMMON STANDARDS IN CLOUD COMPUTING Prof. S. S. Kasualye Department of Information Technology Sanjivani College of Engineering, Kopargaon Common Standards 1.

More information

Extended Identity for Social Networks

Extended Identity for Social Networks Extended Identity for Social Networks Antonio Tapiador, Antonio Fumero, and Joaquín Salvachúa Universidad Politécnica de Madrid, ETSI Telecomunicación, Avenida Complutense 30, 28040 Madrid, Spain {atapiador,amfumero,jsalvachua}@dit.upm.es

More information

Beyond Blogging: Feeds in Action

Beyond Blogging: Feeds in Action Beyond Blogging: Feeds in Action Dave Johnson Staff Engineer / SW Sun Microsystems, Inc. http://rollerweblogger.org/roller Session TS-6029 2007 JavaOne SM Conference Session TS-6029 Goal What you'll learn

More information

RSS to ATOM. ATOM to RSS

RSS to ATOM. ATOM to RSS RSS----------------------------------------------------------------------------- 2 I. Meta model of RSS in KM3--------------------------------------------------------------- 2 II. Graphical Meta model

More information

REMIT. Guidance on the implementation of web feeds for Inside Information Platforms

REMIT. Guidance on the implementation of web feeds for Inside Information Platforms REMIT Guidance on the implementation of web feeds for Inside Information Platforms Version 2.0 13 December 2018 Agency for the Cooperation of Energy Regulators Trg Republike 3 1000 Ljubljana, Slovenia

More information

Advisor/Committee Members Dr. Chris Pollett Dr. Mark Stamp Dr. Soon Tee Teoh. By Vijeth Patil

Advisor/Committee Members Dr. Chris Pollett Dr. Mark Stamp Dr. Soon Tee Teoh. By Vijeth Patil Advisor/Committee Members Dr. Chris Pollett Dr. Mark Stamp Dr. Soon Tee Teoh By Vijeth Patil Motivation Project goal Background Yioop! Twitter RSS Modifications to Yioop! Test and Results Demo Conclusion

More information

xmlreader & xmlwriter Marcus Börger

xmlreader & xmlwriter Marcus Börger xmlreader & xmlwriter Marcus Börger PHP tek 2006 Marcus Börger xmlreader/xmlwriter 2 xmlreader & xmlwriter Brief review of SimpleXML/DOM/SAX Introduction of xmlreader Introduction of xmlwriter Marcus Börger

More information

Information Network I Web 3.0. Youki Kadobayashi NAIST

Information Network I Web 3.0. Youki Kadobayashi NAIST Information Network I Web 3.0 Youki Kadobayashi NAIST Web 3.0 Overview: Interoperability in the Web dimension (1) Interoperability of data: Metadata Data about data Assist in interacting with arbitrary

More information

Intro to XML. Borrowed, with author s permission, from:

Intro to XML. Borrowed, with author s permission, from: Intro to XML Borrowed, with author s permission, from: http://business.unr.edu/faculty/ekedahl/is389/topic3a ndroidintroduction/is389androidbasics.aspx Part 1: XML Basics Why XML Here? You need to understand

More information

Nick Terkay CSCI 7818 Web Services 11/16/2006

Nick Terkay CSCI 7818 Web Services 11/16/2006 Nick Terkay CSCI 7818 Web Services 11/16/2006 Ning? Start-up co-founded by Marc Andreeson, the co- founder of Netscape. October 2005 Ning is an online platform for painlessly creating web apps in a jiffy.

More information

Web Architecture and Technologies

Web Architecture and Technologies Web Architecture and Technologies Ambient intelligence Fulvio Corno Politecnico di Torino, 2015/2016 Goal Understanding Web technologies Adopted for User Interfaces Adopted for Distributed Application

More information

Network Working Group Internet-Draft January 25, 2006 Expires: July 29, Feed Rank draft-snell-atompub-feed-index-05.txt. Status of this Memo

Network Working Group Internet-Draft January 25, 2006 Expires: July 29, Feed Rank draft-snell-atompub-feed-index-05.txt. Status of this Memo Network Working Group J. Snell Internet-Draft January 25, 2006 Expires: July 29, 2006 Status of this Memo Feed Rank draft-snell-atompub-feed-index-05.txt By submitting this Internet-Draft, each author

More information

Abstract. Table of Contents. 1. License

Abstract. Table of Contents. 1. License Your use of this Specification may be subject to other third party rights. THIS SPECIFICATION IS PROVIDED AS IS. The contributors expressly disclaim any warranties (express, implied, or otherwise), including

More information

Salesforce IoT REST API Getting Started Guide

Salesforce IoT REST API Getting Started Guide Salesforce IoT REST API Getting Started Guide Version 42.0, Spring 18 @salesforcedocs Last updated: March 9, 2018 Copyright 2000 2018 salesforce.com, inc. All rights reserved. Salesforce is a registered

More information

draft-ietf-lager-specification Status Update November 2015 Kim Davies

draft-ietf-lager-specification Status Update November 2015 Kim Davies draft-ietf-lager-specification Status Update November 2015 Kim Davies Current Status Version -04 (18 October) Correct namespace in schema (migrated from URL to URN) Version -03 (21

More information

Intelligence Community and Department of Defense Content Discovery & Retrieval Integrated Project Team (CDR IPT)

Intelligence Community and Department of Defense Content Discovery & Retrieval Integrated Project Team (CDR IPT) Intelligence Community and Department of Defense Content Discovery & Retrieval Integrated Project Team (CDR IPT) IC/DoD REST Encoding Specification for CDR Brokered Search v1.1 12 May 2011 REVISION/HISTORY

More information

Shankersinh Vaghela Bapu Institue of Technology

Shankersinh Vaghela Bapu Institue of Technology Branch: - 6th Sem IT Year/Sem : - 3rd /2014 Subject & Subject Code : Faculty Name : - Nitin Padariya Pre Upload Date: 31/12/2013 Submission Date: 9/1/2014 [1] Explain the need of web server and web browser

More information

Specifications for implementing web feeds in DLXS

Specifications for implementing web feeds in DLXS University of Michigan Deep Blue deepblue.lib.umich.edu 2007-04-30 Specifications for implementing web feeds in DLXS Hawkins, Kevin http://hdl.handle.net/2027.42/78535 Hawkins 1/5/2011 5:01:52 PM Page

More information

Java Web Service Essentials (TT7300) Day(s): 3. Course Code: GK4232. Overview

Java Web Service Essentials (TT7300) Day(s): 3. Course Code: GK4232. Overview Java Web Service Essentials (TT7300) Day(s): 3 Course Code: GK4232 Overview Geared for experienced developers, Java Web Service Essentials is a three day, lab-intensive web services training course that

More information

Web 3.0 Overview: Interoperability in the Web dimension (1) Web 3.0 Overview: Interoperability in the Web dimension (2) Metadata

Web 3.0 Overview: Interoperability in the Web dimension (1) Web 3.0 Overview: Interoperability in the Web dimension (2) Metadata Information Network I Web 3.0 Youki Kadobayashi NAIST Web 3.0 Overview: Interoperability in the Web dimension (1) Interoperability of data: Assist in interacting with arbitrary (including unknown) resources

More information

The HTTP protocol. Fulvio Corno, Dario Bonino. 08/10/09 http 1

The HTTP protocol. Fulvio Corno, Dario Bonino. 08/10/09 http 1 The HTTP protocol Fulvio Corno, Dario Bonino 08/10/09 http 1 What is HTTP? HTTP stands for Hypertext Transfer Protocol It is the network protocol used to delivery virtually all data over the WWW: Images

More information

Database Driven Web 2.0 for the Enterprise

Database Driven Web 2.0 for the Enterprise May 19, 2008 1:30 p.m. 2:30 p.m. Platform: Linux, UNIX, Windows Session: H03 Database Driven Web 2.0 for the Enterprise Rav Ahuja IBM Agenda What is Web 2.0 Web 2.0 in the Enterprise Web 2.0 Examples and

More information

MxVision WeatherSentry Web Services REST Programming Guide

MxVision WeatherSentry Web Services REST Programming Guide MxVision WeatherSentry Web Services REST Programming Guide DTN 11400 Rupp Drive Minneapolis, MN 55337 00.1.952.890.0609 This document and the software it describes are copyrighted with all rights reserved.

More information

Some more XML applications and XML-related standards (XLink, XPointer, XForms)

Some more XML applications and XML-related standards (XLink, XPointer, XForms) Some more XML applications and XML-related standards (XLink, XPointer, XForms) Patryk Czarnik XML and Applications 2014/2015 Lecture 12 19.01.2015 Standards for inter-document relations XPointer addressing

More information

Search Operation. Using the Search Operation CHAPTER

Search Operation. Using the Search Operation CHAPTER CHAPTER 12 This chapter describes the Cisco WebEx Social API Search operation. This operation lets you search for content, users, or communities through all Cisco WebEx Social elements, including information

More information

Internet Standards for the Web: Part II

Internet Standards for the Web: Part II Internet Standards for the Web: Part II Larry Masinter April 1998 April 1998 1 Outline of tutorial Part 1: Current State Standards organizations & process Overview of web-related standards Part 2: Recent

More information

Internet-Draft September 5, 2004 Expires: March 6, The Atom Syndication Format draft-ietf-atompub-format-02. Status of this Memo

Internet-Draft September 5, 2004 Expires: March 6, The Atom Syndication Format draft-ietf-atompub-format-02. Status of this Memo Network Working Group M. Nottingham, Ed. Internet-Draft September 5, 2004 Expires: March 6, 2005 Status of this Memo The Atom Syndication Format draft-ietf-atompub-format-02 By submitting this Internet-Draft,

More information

Search Operation. Using the Search Operation CHAPTER

Search Operation. Using the Search Operation CHAPTER CHAPTER 15 This chapter describes the Cisco WebEx Social API Search operation. This operation lets you search for content, users, or communities through all Cisco WebEx Social elements, including information

More information

Release Information. Product Version 1308 Release Date 9/ SuccessFactors Inc. All rights reserved. Contact Information

Release Information. Product Version 1308 Release Date 9/ SuccessFactors Inc. All rights reserved. Contact Information OData Query Trademark Information (TBD) and (TBD) are trademarks of SuccessFactors Inc. All other trademarks and copyrights are the property of their respective owners. No part of this document may be

More information

How to work with HTTP requests and responses

How to work with HTTP requests and responses How a web server processes static web pages Chapter 18 How to work with HTTP requests and responses How a web server processes dynamic web pages Slide 1 Slide 2 The components of a servlet/jsp application

More information

Building Interoperable Metadata

Building Interoperable Metadata Building Interoperable Metadata Hal Abelson, Ben Adida MIT Computer Science & Artificial Intelligence Laboratory 8 March 2006 http://ben.adida.net/presentations/ 1 the important thing about the semantic

More information

Lecture 7b: HTTP. Feb. 24, Internet and Intranet Protocols and Applications

Lecture 7b: HTTP. Feb. 24, Internet and Intranet Protocols and Applications Internet and Intranet Protocols and Applications Lecture 7b: HTTP Feb. 24, 2004 Arthur Goldberg Computer Science Department New York University artg@cs.nyu.edu WWW - HTTP/1.1 Web s application layer protocol

More information

Comp 336/436 - Markup Languages. Fall Semester Week 4. Dr Nick Hayward

Comp 336/436 - Markup Languages. Fall Semester Week 4. Dr Nick Hayward Comp 336/436 - Markup Languages Fall Semester 2018 - Week 4 Dr Nick Hayward XML - recap first version of XML became a W3C Recommendation in 1998 a useful format for data storage and exchange config files,

More information

INFO/CS 4302 Web Informa6on Systems

INFO/CS 4302 Web Informa6on Systems INFO/CS 4302 Web Informa6on Systems FT 2012 Week 10 / Lecture 18: Publishing Structured Data on the Web - Bernhard Haslhofer - Plan for today... Recap Publishing Data The Linked Data Way Embedding Structured

More information

SharePoint 2013 CRUD on List Items Using REST Services & jquery

SharePoint 2013 CRUD on List Items Using REST Services & jquery American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) ISSN (Print) 2313-4410, ISSN (Online) 2313-4402 Global Society of Scientific Research and Researchers http://asrjetsjournal.org/

More information

Comp 336/436 - Markup Languages. Fall Semester Week 4. Dr Nick Hayward

Comp 336/436 - Markup Languages. Fall Semester Week 4. Dr Nick Hayward Comp 336/436 - Markup Languages Fall Semester 2017 - Week 4 Dr Nick Hayward XML - recap first version of XML became a W3C Recommendation in 1998 a useful format for data storage and exchange config files,

More information

WCI Feed Service Servlet

WCI Feed Service Servlet WCI Feed Service Servlet Muhammad Mokhtar, IBM Portal and WCM SME Page 1 of 14 Introduction... 3 Objective... 3 Document Scope... 3 Web Content Integrator... 3 Feed Service System Design... 4 Using Web

More information

Open PermID Release notes R1.2

Open PermID Release notes R1.2 Preface Permid.org is the public-facing portal for Thomson Reuters core entities and metadata, providing the tools that enable you to work with PermIDs unique identifiers for objects in the Thomson Reuters

More information

UNIT I. A protocol is a precise set of rules defining how components communicate, the format of addresses, how data is split into packets

UNIT I. A protocol is a precise set of rules defining how components communicate, the format of addresses, how data is split into packets UNIT I Web Essentials: Clients, Servers, and Communication. The Internet- Basic Internet Protocols -The World Wide Web-HTTP request message-response message- Web Clients Web Servers-Case Study. Markup

More information

Schemachine. (C) 2002 Rick Jelliffe. A framework for modular validation of XML documents

Schemachine. (C) 2002 Rick Jelliffe. A framework for modular validation of XML documents June 21, 2002 Schemachine (C) 2002 Rick Jelliffe A framework for modular validation of XML documents This note specifies a possible framework for supporting modular XML validation. It has no official status

More information

Content Management Interoperability Services Version 0.60 Part II ReSTful AtomPub Binding

Content Management Interoperability Services Version 0.60 Part II ReSTful AtomPub Binding Content Management Interoperability Services Version 0.60 Part II ReSTful AtomPub Binding Committee Draft 14 March 2009 Specification URIs: This Version: http://docs.oasis-open.org/cmis/ [additional path/filename].html

More information

edocs Home > BEA AquaLogic Service Bus 3.0 Documentation > Accessing ALDSP Data Services Through ALSB

edocs Home > BEA AquaLogic Service Bus 3.0 Documentation > Accessing ALDSP Data Services Through ALSB Accessing ALDSP 3.0 Data Services Through ALSB 3.0 edocs Home > BEA AquaLogic Service Bus 3.0 Documentation > Accessing ALDSP Data Services Through ALSB Introduction AquaLogic Data Services Platform can

More information

Make your application real-time with PubSubHubbub. Brett Slatkin May 19th, 2010

Make your application real-time with PubSubHubbub. Brett Slatkin May 19th, 2010 Make your application real-time with PubSubHubbub Brett Slatkin May 19th, 2010 View live notes and ask questions about this session on Google Wave http://tinyurl.com/push-io2010 Me http://onebigfluke.com

More information

XML for Java Developers G Session 8 - Main Theme XML Information Rendering (Part II) Dr. Jean-Claude Franchitti

XML for Java Developers G Session 8 - Main Theme XML Information Rendering (Part II) Dr. Jean-Claude Franchitti XML for Java Developers G22.3033-002 Session 8 - Main Theme XML Information Rendering (Part II) Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical

More information

Introduction to XML. When talking about XML, here are some terms that would be helpful:

Introduction to XML. When talking about XML, here are some terms that would be helpful: Introduction to XML XML stands for the extensible Markup Language. It is a new markup language, developed by the W3C (World Wide Web Consortium), mainly to overcome limitations in HTML. HTML is an immensely

More information

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11 !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... 7:4 @import Directive... 9:11 A Absolute Units of Length... 9:14 Addressing the First Line... 9:6 Assigning Meaning to XML Tags...

More information

Search Web Services - searchretrieve Operation: Binding for OpenSearch Version 1.0

Search Web Services - searchretrieve Operation: Binding for OpenSearch Version 1.0 Search Web Services - searchretrieve Operation: Binding for OpenSearch Version 1.0 Committee Draft 01 30 June 2008 Specification URIs: This Version: http://docs.oasis-open.org/search-ws/june08releases/opensearch-v1.0-cd-01.doc

More information

RESTful API Design APIs your consumers will love

RESTful API Design APIs your consumers will love RESTful API Design APIs your consumers will love Matthias Biehl RESTful API Design Copyright 2016 by Matthias Biehl All rights reserved, including the right to reproduce this book or portions thereof in

More information

Lesson 14 SOA with REST (Part I)

Lesson 14 SOA with REST (Part I) Lesson 14 SOA with REST (Part I) Service Oriented Architectures Security Module 3 - Resource-oriented services Unit 1 REST Ernesto Damiani Università di Milano Web Sites (1992) WS-* Web Services (2000)

More information

Content Management Interoperability Services

Content Management Interoperability Services Version 0.5 Content Management Interoperability Services Unified Search Proposal Versions Version Author Date Modifications 0.1 Gregory Melahn, IBM 02/09/2009 N/A 0.2 Gregory Melahn, IBM 02/11/2009 Added

More information

DEOS : Web Services and Data Feeds

DEOS : Web Services and Data Feeds DEOS : Web Services and Data Feeds DEOS Technical Note #17 Version 2 Copyright 2006-2008 Center for Climatic Research All material herein is copyright by The Center for Climatic Research Published: October

More information

WWW: the http protocol

WWW: the http protocol Internet apps: their protocols and transport protocols Application e-mail remote terminal access Web file transfer streaming multimedia remote file Internet telephony Application layer protocol smtp [RFC

More information

COPYRIGHTED MATERIAL. Contents. Part I: Introduction 1. Chapter 1: What Is XML? 3. Chapter 2: Well-Formed XML 23. Acknowledgments

COPYRIGHTED MATERIAL. Contents. Part I: Introduction 1. Chapter 1: What Is XML? 3. Chapter 2: Well-Formed XML 23. Acknowledgments Acknowledgments Introduction ix xxvii Part I: Introduction 1 Chapter 1: What Is XML? 3 Of Data, Files, and Text 3 Binary Files 4 Text Files 5 A Brief History of Markup 6 So What Is XML? 7 What Does XML

More information

Open Source and Standards

Open Source and Standards Open Source and Standards Joe Gregorio Google Zaheda Bhorat Google Scope My opinions. A Poll Contribute to an open source project Contribute to a standard Both? Fair Warning Turning the table Standards

More information

extensible Markup Language (XML) Basic Concepts

extensible Markup Language (XML) Basic Concepts (XML) Basic Concepts Giuseppe Della Penna Università degli Studi di L Aquila dellapenna@univaq.it http://www.di.univaq.it/gdellape This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

More information

Rob Weir, IBM 1 ODF and Web Mashups

Rob Weir, IBM 1 ODF and Web Mashups ODF and Web Mashups Basic techniques Rob Weir, IBM robert_weir@us.ibm.com 2009-11-05 1615 1 ODF and Web Mashups Agenda Why it is hard to use ODF in a web app Two techniques for accessing ODF on the web

More information

API Gateway. Version 7.5.1

API Gateway. Version 7.5.1 O A U T H U S E R G U I D E API Gateway Version 7.5.1 15 September 2017 Copyright 2017 Axway All rights reserved. This documentation describes the following Axway software: Axway API Gateway 7.5.1 No part

More information