Download presentation
Presentation is loading. Please wait.
Published byStella Jefferson Modified over 8 years ago
1
XDI Graph Patterns OASIS XDI TC Submission Drummond Reed 2011-02-10 This document contains illustrations of six basic XDI graph patterns: 1.Simple properties: properties that accept only a single literal value. 2.Complex properties: properties that may accept multiple literal values as well as describe typing and ordering of those values. 3.Simple subjects: subjects that may contain only instances of themselves and metadata describing those instances. 4.Complex subjects: subjects that may contain all of the above. 5.Link contracts: subgraphs used for XDI authorization. 6.Messages: XDI documents used in the XDI protocol. It also illustrates how versioning may be applied to any branch of the graph. Note: this document uses the XDI metagraph symbols as documented in the XDI Graph Model 2011-02-09. 1
2
Notation Example Context node: Represents an XDI subject or non-literal XDI object Contextual arc: Uniquely identifies a context node Relational arc: Links two context nodes Literal node: Represents a literal XDI object Root node: Represents the root of an XDI graph Literal arc: Uniquely identifies a literal node literal “literal” contextual root context “literal” contextual relational literal context 2
3
Simple properties (=abc) =abc “33” +age +age! “2010-10-10T11:12:13Z” $d! $number !$! $v *1 “32” *1! “33” *2! “2010-09-09T10:11:12Z” $d! *2 “2010-10-10T11:12:13Z” $d! Versioning subgraph describing the +age property $! Metadata describing the +age property $! Simple +age property 3
4
Complex properties (=abc) =abc +tel “2010-11-11T11:11:11Z” $d! $string ! $! $v *1 *2 “+1.206.555.1111” !1! !2! “+1.206.555.2222” *1 +work +home *2 +home+fax !1 “2010-12-22T22:22:22Z” $d! !2 Snapshot of =abc+tel graph in first version state Snapshot of =abc+tel graph in second version state 4
5
Simple subjects (=abc) =abc +passport “2010-11-11T11:11:11Z” $d! $$! $v *1 *2 !1 “2010-12-22T22:22:22Z” $d! !2 Snapshot of =abc+passport graph in first version state Snapshot of =abc+passport graph in second version state $ !1 !2 “2005-01-01T00:00:00Z” $d! “Canada” +country! “987654321” +number! “2010-10-01T00:00:00Z” $d! “New Zealand” +country! “123456789” +number! *1 *2 Metadata on complex subject instances 5
6
Complex subjects (=abc) =abc +passport “2010-11-11T11:11:11Z” $d! $! $v *1 *2 !1 “2010-12-22T22:22:22Z” $d! !2 Snapshot of =abc graph in first version state Snapshot of =abc graph in second version state $ “33” +age! +tel !1 !2 First complex subject instance (subgraph not shown) Second complex subject instance (subgraph not shown) Metadata on complex subject instances +person … … Simple property pattern (see previous page) Complex property pattern (see previous page) Simple subject pattern (see previous page) 6
7
Link contracts (=abc) =abc +passport +person $! “33” +age! +tel Simple property pattern (see previous page) Complex property pattern (see previous page) Simple subject pattern (see previous page) !1 Subgraph included in persona =abc!1 $do $get (=xyz) $add $() +age! +tel Permitted XDI operations on the =abc!1 graph (subtrees not shown) Link contract assignment $for Policies under which these permissions are granted (subtrees not shown) Link contract root … … … 7
8
Messages (=xyz) (=abc) $msg$! “from” – source context “to” – target context “is a” message $do $get $add message actions (verbs and subgraphs must match link contract) (subgraph not shown) $for Optional description of message purpose (must match link contract) (subgraph not shown) $() root of message actions … … … 8
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.