Re: using Shape Expressions to validate RDF graphs

On Fri, Jul 11, 2014 at 8:35 PM, Peter F. Patel-Schneider <> wrote:

> The "meaning" of this shape expression is, roughly, a node of shape
> <Person> has an rdf:type link to :Person and at most one :spouse link, and
> the target of the :spouse link is a node of shape <Person>.  I say roughly
> here because of the recursive nature of this expression - there is a
> decided question as to how this sort of recursion is defined in general,
> which appears to have been answered in a particular way here, although the
> formal underpinnings here do not appear to support recursion.

> So, a node of shape <Person> does have at most one spouse here - as
> opposed to the situation for (all :spouse :Person) - and all spouses must
> have shape <Person> - as opposed to the situation for (exists :spouse
> :Person).

Yes, the declaration is saying that. The cardinality "?" says that a node
with Shape Person "can" have at most a spouse of shape Person.

With regards to recursion, I think it is a matter of selecting a formal
system that supports recursion. That's why I opted for an operational
semantics inspired in the type inference systems of programming languages.

Best regards, Jose Labra

Received on Friday, 11 July 2014 19:26:46 UTC