XDI White Paper Graphics
Shared by: HC12070413291
-
Stats
- views:
- 1
- posted:
- 7/4/2012
- language:
- pages:
- 48
Document Sample


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
“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
1
"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.
2
"It’s turtles all the way down."
-- Anecdotal
3
Part 1:
The Proposed Overall Design of XDI
The Big Picture
OASIS
XNSORG
XNS 1.0 XDI 1.0
Gestation period for XRI 1.0
Dataweb technology
1993 1998 2002 2003 2004 2005
5
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
6
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
7
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
8
An evolutionary step
Abstraction XDI/
XDI Docs
SOAP/
XML Docs
HTTP/
Web Pages
IP/
Packets
Time
9
Moving complexity to a new bucket
HTTP/ SOAP/ XDI/
Complexity IP
HTML XML XML/XDI
Addressing/
Packets
Protocols
Data Repre-
sentation
Schemas
Dictionaries/
Thesauri
10
The primary value is in the delta
Abstraction The primary value lies XDI/
here – in what XDI can XDI Docs
do that’s not easy using
HTTP, XML, and SOAP
SOAP/
XML Docs
HTTP/
Web Pages
IP/
Packets
Time
11
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
12
Proposed XDI specifications
HTTP/ SOAP/ XDI/
Complexity IP
HTML XML XML/XDI
Addressing/
TCP/IP URI URI XRI
Packets
Protocols HTTP SOAP XDI
Data Repre-
XML XML
sentation
Schemas XDI/XML
Dictionaries/ XDI Service
Thesauri Dictionary
13
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.
14
Websites vs. Dataweb sites
HTML HTML XML/ XML/
XDI XDI
XDI Link
contracts
HTML HTML HTML HTML XML/ XML/ XML/ XML/
XDI XDI XDI XDI
HTML HTML HTML HTML XML/ XML/ XML/ XML/
XDI XDI XDI XDI
Website Website Dataweb site Dataweb site
A B A B
15
Web standards vs. Dataweb standards
Web Dataweb
100% resource
addressability
URIs XRIs
Common representation
HTML XML/XDI
and linking format
Common interchange XDI/HTTP
HTTP
protocol XDI/SOAP
OASIS XDI TC
16
Part 2:
The XDI Graph – Understanding the
Proposed XDI Metaschema
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
18
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
19
The XDI Graph
Authority A Authority B
Link
Link
Resources
20
The proposed XDI meta-schema
Resource
* *
1..* 0..1
XRI Data
1..* 0..1
* *
Link
“Turtles all the way down”
21
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> XDI meta-encoding step 2
</resource>
<resource>
<xri>name1</xri> XDI meta-encoding step 3:
<xri>name2</xri> XRI synonyms permit
<xri>name3</xri> many-to-one mapping of
<data>value</data> “names” to data values
</resource> 22
Nesting resources
<resource>
<xri>name1</xri>
<xri>name2</xri>
<xri>name3</xri>
<data>value</data>
<resource>
<xri>name1</xri> Nested resources
have a UML composition
<xri>name2</xri>
relationship with the
<data>value</data>
parent resource
</resource>
</resource>
23
Links
<resource>
<xri>name1</xri>
A resource represents
<xri>name2</xri> the authoritative source
<xri>name3</xri> of a data value
<data>value</data>
</resource>
<link>
A link represents a cached
<xri>name1</xri> resource instantiated at another
<xri>name2</xri> node on the XDI graph. This cache
<xri>name3</xri> can be anything from a 100%
<data>value</data> complete replica down to a single
</link> XRI reference
24
Nesting links
<resource>
<xri>name1</xri>
<xri>name2</xri>
<xri>name3</xri>
<data>value</data>
<link>
<xri>name1</xri> Nested links
have a UML aggregation
<xri>name2</xri>
relationship with the
<data>value</data>
parent resource
</link>
</resource>
25
Use of the XML “Any” type
<resource>
<xri>name1</xri>
<xri>name2</xri>
<xri>name3</xri>
<data>
<address xmlns:”xxx”>
1234 Main St.
</address> The data element
<city> can contain any
Seattle well-formed XML
</city>
…
</address>
</data>
</resource>
26
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
27
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
28
Mapping XRI syntax to the
XDI meta-schema Note: this interpretation
of XRI syntax applies
ONLY to the proposed
XDI metaschema, and
/ (reassignable) or /: (persistent) not to XRIs used
outside this context
Resource
* *
1..* 0..1
XRI Data
1..* 0..1
* *
Link
. (reassignable) or : (persistent)
29
Navigating the XDI Graph with XRIs
Authority A Authority B
Link
Link
Resources
30
Pseudo-XML Example
(see separate “XDI-Graph-Examples-v1”)
Part 3:
The Proposed XDI Service Definition
Web standards vs. Dataweb standards
Web Dataweb
100% resource
URIs XRIs
addressability
Common representation
HTML XML/XDI
and linking format
Common interchange XDI/HTTP
HTTP
protocol XDI/SOAP
33
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
34
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”
35
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
36
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)
37
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
38
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
39
Link contracts control XDI data “flow”
HTML HTML XML/ XML/
XDI XDI
XDI Link
contracts
HTML HTML HTML HTML XML/ XML/ XML/ XML/
XDI XDI XDI XDI
HTML HTML HTML HTML XML/ XML/ XML/ XML/
XDI XDI XDI XDI
Website Website Dataweb site Dataweb site
A B A B
40
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
41
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
42
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”
43
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
44
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
45
Another view – link levels
Links
Presentation
Web
Application
Web services
Data
Dataweb
46
Q&A
Get documents about "