Re: [shex] Support for Datasets

The idea was to be able to fix the graph name with respect to some node. Heretics like myself frequently conflate the node with a graph name. In that case, no transformation is needed. Others are more fastidious about separating the entity from the document about the entity. Here's an access control example allowing `<http://accounts.example/Person1#i>` to `Read` `<page1>`:
```
<aclsResource> {
  <#acl1> acl:agent <http://accounts.example/Person1#i> ;
          acl:mode acl:Read ;
          acl:accessTo <page1> .
}
<http://accounts.example/Person1> {
  <http://accounts.example/Person1#i> 
    foaf:weblog <http://dig.csail.mit.edu/breadcrumbs/blog/4> .
}
```
The adminstrator of accounts.example wants to ensure adherence to this `#i` convention:
```
<AclShape> {
  acl:agent @<Accounts.ExamplePersonShape> ;
  acl:mode [acl:Read act:Write act:Delete]+ ;
  acl:accessTo IRI
}
<Accounts.ExamplePersonShape> GRAPH IRI s/(http:\/\/a.example/some/doc)#i/\1/ {
  foaf:weblog IRI
}
```
This says that the triples about an agent (`<http://accounts.example/Person1#i>`) must be in a graph without the `#i` (i.e. `<http://accounts.example/Person1>`). You could also say that it's in a named graph but you don't know the name of it:
```
<Accounts.ExamplePersonShape> GRAPH . { foaf:weblog IRI }
```

I can also imagine that someone might have a lookup table from node to authoritative graph but that may be more than we want to stuff into ShEx.

Can you see if this captures Verifiable Claims Use Cases? I can imagine there are more use cases we should be considering. Ideas?

-- 
GitHub Notification of comment by ericprud
Please view or discuss this issue at https://github.com/shexSpec/shex/issues/77#issuecomment-353862962 using your GitHub account

Received on Monday, 25 December 2017 11:32:40 UTC