[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [xdi] final (i hope) signature proposal
I think the purpose of the collection and member indexing in Peter’s examples was for the user or authority named =example to have a list of all their signatures in one place. Not sure whether we ever explicitly discussed whether this was a requirement, or whether it is enough to have signature information a little more distributed in the graph as in Drummond’s example below - Drummond, what is your view here? There was also uncertainty on whether the literal value has to be part of the signature of the literal statement that sets the value - Drummond, why is this unnecessary? Dan, the double slash indicates a triple where the predicate is empty string. This is a “contextual statement” whose meaning can be explained as “trace from the common root down to the =example<#work> node in the graph, then create the path <#email> starting from that node.” The path resulting from the statement is simply =example<#work><#email> which does happen to coincide with the contextual statement with the // removed. Conversely, you can take a path from common root to an existing node, and by inserting // at any point, get a contextual statement which asserts/creates that path, possibly assuming that the first part of it exists - Markus, do we get an error if the subject node doesn’t yet exist? This indicates to me that contextual statements are very closely related to context paths, and that according to the XDI philosophy that the graph is fundamental and serialization secondary, we should prefer to sign the subgraph (which is just a path, in this case) rather than the statement creating the path, unless there is a good reason to do so. I think literal statements are similar: the statement =example<$email><$work>&/&/"example@employer.org" creates an address (path from root) which is =example<$email><$work>&"example@employer.org” which is identical to the statement with /&/ removed. We know the literal is addressable because this was a major XDI design principle and the & arc was designed with this in mind. Applying the same philosophy as for contextual statements, we should be able to act on and sign the path =example<$email><$work>&"example@employer.org” in preference to signing the literal statement creating the path. However, currently XDI2 rejects =example<$email><$work>&"example@employer.org” as illegal syntax, which seems to me an arbitrary restriction inconsistent with the principle of addressability of the literal. The third type of statement is relational, such as =drummond/#friend/=markus. This is also just a means to create a subgraph, but here that subgraph is a triangle rather than a single path. I think we should first think it out in terms of signing this triangular subgraph, rather than thinking in serialization. In general I think our thinking has been too colored by expressing all examples in (Display) serialization as lists of statements, rather than thinking primarily about subgraphs. If we have a general procedure for signing subgraphs, then some of the issues about signing statements specifically should disappear. On Jun 29, 2014, at 8:37 AM, =Drummond Reed <drummond.reed@xdi.org> wrote:
|
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]