[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

SDSI syntax

Excellent question (below); this was indeed a fine point where the
documentation is inconsistent.  The examples are correct; the text should
have been modified to state that:

	In some cases an entry of the form:
            ( attribute: value)
        is replaced by an object:
            ( object-type: ... )
        This looks similar syntactically, but a strict attribute-value encoding
        would have resulted in the uglier:
            ( object-type: ( object-type: ... ) )
        These cases are easily recognized by the object-types used.

	Ron Rivest
Date: Mon, 29 Apr 1996 15:00:43 -0700 (PDT)
From: Wei Dai <weidai@eskimo.com>
To: Ron Rivest <rivest@theory.lcs.mit.edu>

On Mon, 29 Apr 1996, Ron Rivest wrote:

> The ability to nest objects inside each other is tremendously powerful
> and useful.  That is one reason why in SDSI[1] Butler Lampson and I
> decided in favor of fully parenthesized S-expressions, rather than having
> data structures that are flat (as I understand the whois++ data structures
> are).

I just have one minor question about the nesting syntax.  In the paper you
represent SDSI objects using lists:

( type:
  ( Attribute1: value1 )
  ... )

But in an earlier example:

  ( Public-Key:
    ( Algorithm: ... )
    ... ) )

In this case we have a nested object of type Public-Key: inside an object
of type Principal:.  But Public-Key: can also be interpreted as an
attribute instead of a type.  Which interpretation is correct?

Wei Dai