Difference between RDF, OData and GData  RDF                               OData                           GData  Abbrevia...
cannot define a link between                                                                  data elements that doesnt   ...
RDF/XML,JSON, N3, TTL,           tooling and integration with…                                others following.[7,8]URI mi...
principle to linked data,          URIs with special $metadata author,category,fields.  whether in document, local        ...
[10] http://www.odata.org/blog/2010/4/22/queryable-odata-metadata[11] http://www.odata.org/media/16348/%5Bmc-csdl%5D.pdf[1...
[43] http://www.swsi.org/[44] http://www.w3.org/Submission/OWL-S/[45] http://www.serviceweb30.eu/cms/[46] http://www.w3.or...
Upcoming SlideShare
Loading in …5

Difference between rdf, odata and gdata


Published on

Difference between RDF, OData and GData

Published in: Technology, Education
1 Comment
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Difference between rdf, odata and gdata

  1. 1. Difference between RDF, OData and GData RDF OData GData Abbreviation: Abbreviation: Abbreviation: RDF stands for Resource OData stands for Open Data GData stands for Google Description Framework Protocol Data Protocol Meaning: Meaning: Meaning: RDF is a framework which The Open Data Protocol Gdata provides a simple follows W3C technology for (OData) is an open web protocol for reading and representing information in protocol for querying and writing data on the Internet, the Web. updating data. The protocol designed by Google. GData allows for a consumer to combines common XML- The design of RDF is query a datasource over the based syndication formats intended to meet the HTTP protocol and get the (Atom and RSS) with a feed- following goals: result back in formats like publishing system based on Atom, JSON or plain XML, the Atom Publishing i.having a simple data including pagination, Protocol, plus some model ordering or filtering of the extensions for handling ii.having formal semantics data. queries. It relies on XML or and provable inference JSON as a data format. iii.using an extensible URI- Many of the building blocks based vocabulary that make up OData are Google provides GData iv.using an XML-based standardized via Atom and client libraries for Java, syntax AtomPub. The OData JavaScript, .NET, PHP, v.supporting use of XML specification is available Python, and Objective-C. schema datatypes under the Microsoft Open vi.allowing anyone to make Specification Promise (OSP). statements about any resource Microsoft has released an OData software development It is used in Mozilla to kit (SDK) consisting of integrate and aggregate libraries for .NET, PHP, Internet resources. Java, JavaScript, webOS, and the iPhone. Mozilla RDF was originally used to support the Aurora/Sidebar user interface and SmartBrowsing metadata services. Its main use in Mozilla now is as a common data model and API for use in XUL-based applications Logical Model: Logical Model: Logical Model: Graph/EAV.Technology Graph/EAV. AtomPub and Unclear/Mixed – whatever grounding (esp OWL ) in EDM grounding in entity google logical Model is Description Logic.[12, 13]. relationship modelling [11]. behind services, but “Open World Assumption” “Closed World transcoded and exposed as [27] Assumption”[28] view (?) AtomPub/JSON. Data but with “OpenTypes” and relations and graphs not “Dynamic Properties”[29] controllable by API – eg
  2. 2. cannot define a link between data elements that doesnt already exist. GData is primarily a client API.Physical model: Physical model: Physical model:Not mandated, but probably Not mandated, but probably Google applications andbacked by a triple store and backed by existing RDBMS services publishing data inserialised over Http to persistence [4 - "Abstract AtomPub/JSON format, withRDF/XML, Json,TTL, N3 or Data Model"], or more Google Data Namespace[58]other format. RDBMS precisely a non-triple store. element.backing or proxying possible. (I have no evidence to support this, but the gist of docs and examples suggests it as a typical use case) and serialised over Http with Atom/JSON according to Entity Data Model (EDM)[6] and Conceptual Schema Definition Language (CSDL) [11]Intent: Intent: Intent:Data syndication and web Data publishing and Google cloud datalevel linking : "The goal of syndication : "There is a vast publishing [55] : "Thethe W3C SWEO Linking amount of data available Google Data ProtocolOpen Data community today and data is now being provides a secure means forproject is to extend the Web collected and stored at a rate external developers to writewith a data commons by never seen before. Much, if new applications that let endpublishing various open data not most, of this data users access and update thesets as RDF on the Web and however is locked into data stored by many Googleby setting RDF links between specific applications or products.External developersdata items from different data formats and difficult to can use the Google Datasources" access or to integrate into Protocol directly, or they can new uses" use any of the supported programming languages provided by the client libraries"Protocol,operations: Protocol,operations: Protocol,operations:http, content negotiation, http, content negotiation, http,REST (PUT/POST?RDF, REST-GET. Sparql 1.1 AtomPub/JSON, REST- GET/PATCH/DELETE)[56]for update GET/PUT/POST/DELETE [9]Openness/Extensibility: Openness/Extensibility: Openness/Extensibility:Any and all,create your own Any and all (with a “legacy” Google applications andontology/namespace/URIs Microsoft base), while reuse services only.with RDFS/OWL/SKOS/…, Microsoft classes andlarge opensource tooling & types,namespaces (EDM)[6]community, multiple with Atom/JSONserialisation serialisation. Large microsoft
  3. 3. RDF/XML,JSON, N3, TTL, tooling and integration with… others following.[7,8]URI minting,dereferencing : URI URI minting,dereferencingCreate your own URIs and minting,dereferencing : :namespaces following Unclear whether concept Atom namespace. <linkguidelines (“slash vs hash”) URI and Location URI are rel=”self”[15,16] Subject, predicate and distinguished in specification …/> denotes URIobject URIs must be -values can certainly be of item. ETags also used fordereferencible, content Location URIs, and IDs can versioned updates. Googlenegotiation expected. be URIs, but attribute Data namespace for contentSeparation of concept URI properties aren’t “Kinds”.[59],and location URI central. dereferencible to Location no dereferencing. URIs.Well specified URI conventions [21]Linking, matching, Linking,matching, Linking,matching,equivalence: equivalence: equivalence:External entities can Navigation properties link URIS Not dereferencable,inherently be directly linked entity elements within a linkage outside of google notby reference, and equivalence single OData materialisation possible.is possible with owl:sameAs, -external linkage notowl:seeAlso (and other possible. Dereferencableequivalence assertions) attribute properties not possible but proposed[10].Namespace handling, Namespace handling, Namespace handling,vocabularies: vocabularies: vocabularies:Declare namespaces as Namespaces supported in AtomPub and Google Datarequired when importing EDM but unclear if possible namespace only.public or “well known” to create and useontologies/vocabularies, namespace,or if it can becreating SPARQL queries, backed with a customshort hand URIs,create new class/property definitionas required for your own (ontology). $metadata seemscustom classes, instances. to separate logically and physically type and service metadata from instance data – ie oData doesn’t “eat its own dog food”.Content negotiation: Content negotiation: Content negotiation:Client and server negotiate Client specifies or server Use alt query param (accept-content to best determination. fails, or default to Atom header not used)[57][17,18] representation.[19]. Only XML serialisation for service metadata.[40]. New mime- types introduced.Query capability : Query capability : Query capability :Dereferencibility central Proposed dereferencible Query by
  4. 4. principle to linked data, URIs with special $metadata author,category,fields. whether in document, local path element allow type endpoint or federated. metadata to be retrieved [10]. SPARQL [14] query language Running a structured query allows suitably equipped against an OData service endpoints to service with something like structured query requests and SPARQL isn’t possible. return serialised RDF, json, csv, html, … Security, privacy, Security, privacy, Security, privacy, provenance: provenance: provenance: No additional specifications No additional specifications Http wire protocols, but in above that supplied in above that mandated in addition authentication web/http architecture. CORS http/atom/json.[23, 31] (OpenID) and authorization becoming popular as access CORS use possible for cross are required(OAuth). filter method for cross-site site syndication. “ClientLogin&#8221 syndication capability at Dallas/Azure Datamarket for ; and AuthSub are client level. Server side “trusted commercial and deprecated. [60]. No access control. Standards for premium public domain provenance handling. Provenance and privacy data”.[26] planned and under development[24]. W3C XG provenance group[25]Sources:http://uoccou.wordpress.com/2011/02/17/linked-data-odata-gdata-datarss-comparison-matrix/http://en.wikipedia.org/wiki/Open_Data_Protocolhttp://en.wikipedia.org/wiki/GDatahttp://en.wikipedia.org/wiki/Resource_Description_Frameworkhttp://www.w3.org/TR/2003/PR-rdf-concepts-20031215/References:[1] http://www.w3.org/wiki/SweoIG/TaskForces/CommunityProjects/LinkingOpenData[2] http://www.w3.org/DesignIssues/LinkedData.html[3] http://www.w3.org/TR/webarch[4] http://www.microsoft.com/interop/osp/default.mspx[5] http://www.w3.org/QA/2010/03/microsoft_bring_odata_to_a_w3c.html[6] http://www.odata.org/developers/protocols/overview#EntityDataModel[7] http://www.odata.org/producers[8] http://www.odata.org/consumers[9] http://www.odata.org/developers/protocols/operations
  5. 5. [10] http://www.odata.org/blog/2010/4/22/queryable-odata-metadata[11] http://www.odata.org/media/16348/%5Bmc-csdl%5D.pdf[12] http://www.w3.org/TR/2009/REC-owl2-direct-semantics-20091027/[13] http://en.wikipedia.org/wiki/Description_logic[14] http://www.w3.org/TR/rdf-sparql-query/[15] http://www.w3.org/TR/cooluris/[16] http://www.w3.org/wiki/DereferenceURI[17] http://www.w3.org/TR/webarch/#def-coneg[18] http://www.w3.org/TR/cooluris/#implementation[19]http://www.odata.org/developers/protocols/operations#RepresentationFormatsAndContentTypeNegotiation[20] http://www.odata.org/developers/protocols/batch[21] http://www.odata.org/developers/protocols/uri-conventions[22] http://code.google.com/p/void-impl/[23] http://www.odata.org/developers/protocols/overview#SecurityConsiderations[24] http://lod2.eu/Welcome.html[25] http://www.w3.org/2005/Incubator/prov/wiki/Relevant_Technologies[26] https://datamarket.azure.com/[27] http://en.wikipedia.org/wiki/Open_world_assumption[28] http://en.wikipedia.org/wiki/Closed_world_assumption[29] http://www.odata.org/media/16343/%5Bmc-edmx%5D.pdf[30] http://www.odata.org/developers/protocols/operations#InvokingServiceOperations[31] http://blogs.msdn.com/astoriateam/archive/2010/05/10/odata-and-authentication-part-1.aspx[32] http://www.odata.org/developers/protocols/overview#ServiceMetadataDocument[33] http://www.odata.org/developers/protocols/overview#ProtocolVersioning[34] http://www.odata.org/developers/protocols/overview#AbstractTypeSystem[35] http://www.w3.org/TR/xmlschema-2[36] http://ckan.net/[37] http://www.w3.org/wiki/SemanticWebTools#head-805c63479c854babe4657d5184de605910f6d3e2[38] http://www.w3.org/2001/sw/[39] http://www.odata.org/developers/articles[40] http://www.odata.org/developers/protocols/operations#Retrievingthemetadatadocument[41]http://www.odata.org/blog/2010/8/6/enhancing-odata-support-for-querying-derived-types—revisited[42] http://www.w3.org/TR/2009/WD-sparql11-update-20091022/
  6. 6. [43] http://www.swsi.org/[44] http://www.w3.org/Submission/OWL-S/[45] http://www.serviceweb30.eu/cms/[46] http://www.w3.org/Submission/WSDL-S/[47] http://webofdata.wordpress.com/2010/04/14/oh-it-is-data-on-the-web/[48] http://blog.jonudell.net/2010/01/29/odata-for-collaborative-sense-making/[49] http://www.powerpivot.com/[50] http://sqlblog.com/blogs/jamie_thomson/archive/2010/02/03/microsoft-odata-and-rdf.aspx[51] http://www.wsmo.org/[52] http://void.rkbexplorer.com/[53] http://www.alphaworks.ibm.com/tech/wssem[54] http://rapporter.ffi.no/rapporter/2010/00015.pdf[55] http://code.google.com/intl/en/apis/gdata/docs/directory.html[56] http://code.google.com/intl/en/apis/gdata/docs/2.0/basics.html[57] http://code.google.com/intl/en/apis/gdata/docs/2.0/reference.html#QueryRequests[58] http://schemas.google.com/g/2005[59] http://code.google.com/intl/en/apis/gdata/docs/2.0/elements.html[60] http://code.google.com/intl/en/apis/gdata/docs/auth/overview.htmlAnd, further updates on difference between questions and answers, please visit my blog @http://onlydifferencefaqs.blogspot.in/