1 / 48

The XDI Graph: An Overview of the Proposed XDI Schema

The XDI Graph: An Overview of the Proposed XDI Schema. XDI TC Face-to-Face Meeting OASIS Symposium April 29, 2004. Drummond Reed CTO, Cordance Corporation Co-Chair, OASIS XRI and XDI TCs drummond.reed@cordance.net.

oleg-grant
Download Presentation

The XDI Graph: An Overview of the Proposed XDI Schema

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The XDI Graph:An Overview of the Proposed XDI Schema XDI TC Face-to-Face MeetingOASIS SymposiumApril 29, 2004 Drummond ReedCTO, Cordance CorporationCo-Chair, OASIS XRI and XDI TCsdrummond.reed@cordance.net

  2. “Never doubt that a small group of thoughtful, committed citizens can change the world. Indeed, it's the only thing that ever has.” -- Margaret Mead (1901-1978)US Anthropologist, Author

  3. "I would not give a fig for the simplicity this side of complexity, but I would give my life for the simplicity on the other side of complexity." -- Oliver Wendell Holmes, Jr.

  4. "It’s turtles all the way down." -- Anecdotal

  5. Part 1:The Proposed Overall Design of XDI

  6. The Big Picture OASIS XNSORG XDI 1.0 XNS 1.0 XRI 1.0 Gestation period forDataweb technology 1993 1998 2002 2003 2004 2005

  7. Jamie Lewis on XRIs “Today, we use a wide variety of different mechanisms for identification, including e-mail addresses, IP addresses, phone numbers, and object identifiers. But most of these are specific to one means of interaction. None of them is persistent across the many different ways that people, applications, and devices can communicate, and so they don't function well as identifiers in the long run." -- Jamie Lewis, CEO and Research Chair, Burton Group, BetaNews, 2/5/2004

  8. His second key point “Having that persistent, unique identifier is an important predicate for any trusted relationship between nodes. Without it, the trust is much more difficult, if not impossible, to achieve. The XRI specification is an attempt to solve this problem by creating a standard for abstract identifiers." -- Jamie Lewis, BetaNews, 2/5/2004

  9. The mission of the XDI TC • To build on the foundation of XRIs to provide a standard, generalized, extensible, domain-independent way to identify, describe, exchange, link, and synchronize data

  10. An evolutionary step Abstraction XDI/XDI Docs SOAP/XML Docs HTTP/Web Pages IP/Packets Time

  11. Moving complexity to a new bucket

  12. The primary value is in the delta Abstraction The primary value lies here – in what XDI can do that’s not easy using HTTP, XML, and SOAP XDI/XDI Docs SOAP/XML Docs HTTP/Web Pages IP/Packets Time

  13. What’s in that delta? • Persistent identification and linking • The URN problem • Cross-domain data sharing • The ontology and data mapping problem • Distributed data sharing controls • The security, privacy, and trust problem • Generalized synchronization • The data concurrency problem

  14. Proposed XDI specifications

  15. The Dataweb Model If every piece of data could be uniquely addressed using an XRI… …and there were a simple way to describe this in XML… …and a standard service for exchanging, linking, and synchronizing these XML documents with security and privacy controls… …you could create a trusted Web of all data… …a Dataweb.

  16. XML/XDI XML/XDI XDI Linkcontracts XML/XDI XML/XDI XML/XDI XML/XDI XML/XDI XML/XDI XML/XDI XML/XDI Dataweb siteA Dataweb siteB Websites vs. Dataweb sites HTML HTML HTML HTML HTML HTML HTML HTML HTML HTML WebsiteA WebsiteB

  17. OASIS XDI TC Web standards vs. Dataweb standards Web Dataweb  URIs XRIs 100% resourceaddressability HTML XML/XDI Common representationand linking format HTTP XDI/HTTPXDI/SOAP Common interchangeprotocol

  18. Part 2: The XDI Graph – Understanding the Proposed XDI Metaschema

  19. The XDI metaschema • The goal is a common representation format for all XRI-identifiable data • Essentially a cross between the function of HTML (as a common representation format for all content) and XML (as an extensible markup language for data) • A meta-schema because it is explicitly designed to describe (and optionally carry) other XML-encoded data

  20. Inspiration for the proposed design • Nature produces complexity by iterating simplicity • Examples • DNA • Human Language • The Web • The proposed XDI metaschema applies this principle to describing data and data relationships

  21. The XDI Graph Authority A Authority B Link Link Resources

  22. The proposed XDI meta-schema Resource * * 1..* 0..1 XRI Data 1..* 0..1 * * Link “Turtles all the way down”

  23. The name/value pair analogy name=value Classic view <name>value</name> XML encoding <xri>name</xri><data>value</data> XDI meta-encoding step 1 <resource> <xri>name</xri> <data>value</data> </resource> XDI meta-encoding step 2 <resource> <xri>name1</xri> <xri>name2</xri> <xri>name3</xri> <data>value</data> </resource> XDI meta-encoding step 3: XRI synonyms permit many-to-one mapping of “names” to data values

  24. Nesting resources <resource> <xri>name1</xri> <xri>name2</xri> <xri>name3</xri> <data>value</data> <resource> <xri>name1</xri> <xri>name2</xri> <data>value</data> </resource> </resource> Nested resources have a UML compositionrelationship with the parent resource

  25. Links <resource> <xri>name1</xri> <xri>name2</xri> <xri>name3</xri> <data>value</data> </resource> A resource representsthe authoritative sourceof a data value <link> <xri>name1</xri> <xri>name2</xri> <xri>name3</xri> <data>value</data> </link> A link represents a cached resource instantiated at another node on the XDI graph. This cache can be anything from a 100% complete replica down to a single XRI reference

  26. Nesting links <resource> <xri>name1</xri> <xri>name2</xri> <xri>name3</xri> <data>value</data> <link> <xri>name1</xri> <xri>name2</xri> <data>value</data> </link> </resource> Nested links have a UML aggregationrelationship with the parent resource

  27. Use of the XML “Any” type <resource> <xri>name1</xri> <xri>name2</xri> <xri>name3</xri> <data> <address xmlns:”xxx”> 1234 Main St. </address> <city> Seattle </city> … </address> </data> </resource> The data element can contain any well-formed XML

  28. The XDI graph • The XDI graph is the graph of all data that is XRI-identifiable • Three node types • Data (edge nodes) • Resources (authoritative paths to data) • Links (non-authoritative paths to data copies) • Every XDI document is a “snapshot” of some subset of the XDI graph • Most importantly, any segment of the graph can be “copied-and-pasted” to any other point

  29. Addressing nodes in the XDI graph • Every node is XRI-addressable because the XDI graph is a reflection of XRI syntactic structure • Authorities (XRI or URI) are the a-priori starting points • “/” (equivalent to “/.”) or “/:” represents a resource • “.” or “:” represents a link • Cross-reference syntax enables XRIs or URIs to be reused at any point in the graph

  30. Mapping XRI syntax to the XDI meta-schema Note: this interpretation of XRI syntax applies ONLY to the proposed XDI metaschema, and not to XRIs used outside this context / (reassignable) or /: (persistent) Resource * * 1..* 0..1 XRI Data 1..* 0..1 * * Link . (reassignable) or : (persistent)

  31. Navigating the XDI Graph with XRIs Authority A Authority B Link Link Resources

  32. Pseudo-XML Example(see separate “XDI-Graph-Examples-v1”)

  33. Part 3: The Proposed XDI Service Definition

  34. Web standards vs. Dataweb standards Web Dataweb URIs XRIs 100% resourceaddressability HTML XML/XDI Common representationand linking format HTTP XDI/HTTPXDI/SOAP Common interchangeprotocol

  35. Is XDI a Web service? • Yes, XDI/SOAP is absolutely a Web service • A data-oriented service • A data mediation service • A generalized data sharing service • But XDI can also be bound to other transport protocols • XDI/HTTP is “native” REST architecture for Web purists • XDI/SMTP is a solution to structured email

  36. XDI service definition • The Dataweb model follows classic Web “REST” architecture • Representational State Transfer • Roy Fielding’s PhD thesis • Posits that the success of the Web is based on transfer of URI-addressable resource representations • Representations may be linked using URIs • “Many nouns, few verbs”

  37. REST operations • Four verbs • GET – read resource representation • PUT – write resource representation • DELETE – remove resource representation • POST – invoke operation on resource representation • Many nouns • Any resource that can be represented, i.e., any XRI

  38. Proposed XDI service definition • WSDL adaptation of REST • Allows binding to HTTP, SOAP, SMTP/MIME, or any other transport protocol • All representations are XDI documents • Data • Forms (data requests) • Contracts (data sharing agreements) • Dictionaries (data definitions)

  39. XDI forms • The Dataweb equivalent of HTML forms • HTML forms are interpreted by people • XDI forms are interpreted by machines • They are a way to request an XDI document from another XDI authority (“copy a branch of the XDI graph”) • Forms that request controlled (private) data require data control metadata

  40. XDI link contracts • A link contract is an XDI document that governs the exchange of other XDI documents • Directly analogous to real-world contracts that govern the exchange of goods, services, or information • There is no limit to the types of controls in an XDI contract – it can describe any set of terms governing data interchange

  41. XML/XDI XML/XDI XDI Linkcontracts XML/XDI XML/XDI XML/XDI XML/XDI XML/XDI XML/XDI XML/XDI XML/XDI Dataweb siteA Dataweb siteB Link contracts control XDI data “flow” HTML HTML HTML HTML HTML HTML HTML HTML HTML HTML WebsiteA WebsiteB

  42. Defining link contract controls • The role of the XDI Service Dictionary • Directly analogous to a legal dictionary • Example: privacy controls • A link contract can associate an XDI document (a set of XRI-addressable nodes) with data usage controls • Such controls can include: • References to applicable privacy policies • Opt-in and opt-out permissions • Data retention terms

  43. Analogs to conventional directory constructs • Identity, Attributes, Groups, Roles • Identity = XRI for a resource • Attributes = resources representing nested (composed) resources • Groups = resources representing linked (aggregated) resources • Roles = resources representing typed (inheritance) resources

  44. XDI dictionaries • XDI dictionaries are Dataweb sites designed explicitly to share “words” (XRIs) and “definitions” (XDI documents describing them) • Directly analogous to real-world dictionaries • Can be developed for any purpose • General dictionaries (Oxford English Dictionary) • Specialized dictionaries (Black’s Law Dictionary) • Domain specific “glossaries”

  45. What’s different about XDI dictionaries? • Machine-readable • Machine-linkable (dictionaries can reference or link each other’s vocabulary) • Can significantly automate the process of cross-domain data mapping • Human-language translations • Ontology development

  46. A different view of a “semantic web” • The descriptions and relationships between resources are all expressed as XRI paths through the XDI graph • Common semantics are established via dynamic mapping of XRI synonyms using XDI dictionaries • Vocabulary can evolve as quickly as new XRIs and XDI documents are propagated throughout the network

  47. Web Web services Dataweb Another view – link levels Links Presentation Application Data

  48. Q & A

More Related