OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

xdi message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: Minutes: XDI TC Telecon Friday 2014-03-21

XDI TC Minutes

Following are the minutes of the unofficial telecon of the XDI TC at:

Date:  Friday, 21 March 2014 USA
Time:  09:00AM - 10:30AM Pacific Time (16:00-17:30 UTC)


Markus Sabadello
Peter Davis
Animesh Chowdhury
Les Chasen
Hubert Le Van Gong
Joseph Boyle
Andy Dale



Drummond Reed


None scheduled.


Serialization Formats

We talked about the XDI serialization formats and looked at apparent inconsistencies between proposals on the wiki.

On the SerializationFormats page, the following formats are mentioned:

    XDI Display Formats:

     (1) XdiDisplayFormat#Single-LineDisplayFormat

     (2) XdiDisplayFormat#Double-LineDisplayFormat

    XDI JSON Formats:

     (3) XdiFlatSerialization

     (4) XdiTreeSerialization

     (5) XdiParseSerialization

The SimpleHTTPTransport proposal however only mentions the “XDI/JSON” format without specifying which one. Peter said that he found these inconsistencies on the wiki to be problematic when he worked on XDI Signatures.

Markus explained that the XDI2 implementation supports the above formats as follows, with certain internal names and MIME types:

    (1) "XDI DISPLAY"      "text/xdi"                read/write
    (2) not supported
    (3) "XDI/JSON"         "application/xdi+json"    read/write
    (4) "XDI/JSON/TREE"                              write
    (5) "XDI/JSON/PARSE"                             write

## MARKUS: Update the SimpleHTTPTransport proposal to refer to serialization formats in a consistent way.

## MARKUS: Update examples to use the “empty space” for contextual statements instead of ( )

We decided that we want to rename the three XDI/JSON formats as follows:

(3) XdiFlatSerialization  ->  XdiJsonSerialization       REQUIRED
(4) XdiTreeSerialization  ->  XdiJsonTreeSerialization   OPTIONAL
(5) XdiParseSerialization ->  XdiJsonParseSerialization  OPTIONAL

We also agreed that on the wiki we have to specify how nodes and statements in the various serialization formats can be ordered. A proposal exists but is outdated and may not cover all the serialization formats. This is important for XDI Signatures.

Specifically in the XDI DISPLAY format, we noted that sorting statements by comparing entire lines might have a different result than sorting subjects, predicates, and objects individually, e.g:

Sorting lines “as a whole”:


Sorting subjects, predicates, and objects individually:


XDI Signatures

Peter has revised the XdiSignature proposal.

One of the key changes is that the normalized graph string now again uses the XDI/JSON serialization, since this is the only format required for all XDI implementations. The ordering of nodes and statements still has to be documented better (see previous agenda item).

We briefly talked about implied statements (statements that must not be included when a graph is serialized).

In Peter’s design, the XDI statements representing a signature are “postpended”, i.e. included at the end of the serialized graph:

 "(=alice)/$ref": [
 "([=]!:uuid:1111)/$ref": [
 "/$is$ref": [
 "=alice/$ref": [
 "[=]!:uuid:1111/$is$ref": [
 "[=]!:uuid:1111/+friend": [
 "[=]!:uuid:1111<+email>&/&": "alice@alice.com",
 "[=]!:uuid:1111<+name>&/&": "Alice”,
 "=alice<$sig>/$is+": "$rsa$sha$256",
 "=alice$sig#1$keypair$public<$key>&/&": "the-key",
 "=alice<$sig>&/&": "c1g23p..."

However both Markus and Andy felt that it should not matter where the statements appear in the serialization, since by definition statements in an XDI graph are not ordered.

Animesh added that in a single serialized graph you could have multiple signatures in the same or in different subgraphs.

Finally, we talked about Unicode and how the differences between UTF-8 and UTF-16 may affect ordering and therefore signatures. Joseph explained that Java internally uses UTF-16, whereas XDI serializations require UTF-8 encoding.

Markus will review the relevant XDI2 code sections to see if this is an issue. In Java, the popular ICU4j library may be needed to produce correct results.

Hubert suggested that the Java Virtual Machine’s “UseCompressedStrings” configuration setting may be relevant here.

Link Contract Addressing

Let’s continue discussion on the new link contract patterns:



We did not have time to discuss this topic.

I-JSON and JSON Schema

Within the XDI2 project, the potential use of I-JSON and JSON Schema for the XDI/JSON serialization format has come up. Let’s discuss if this makes sense and how these two technologies fit in.

We did not have time to discuss this topic.

Next Steps on Working Drafts

We will discuss the additions/corrections we want to make to produce XDI Core 1.0 Working Draft 02, including:

We did not have time to discuss this topic.


None scheduled.


We have to review and probably clean up the current decision points on the wiki:




See also this list of proposals that need to be developed:



The next call is next week at the regular time.

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]