Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Access Needs for Public Resources #254

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

laurensdeb
Copy link

Context

Some applications may have to express the need for making some data instances available to public agents, thus the interoperability specification should allow for applications to define access modes for public agents in their access needs. We detailed this requirement in #243.

In progress

  • Add interop:publicAccessMode to Access Needs, Data Grant and Data Consent in interop.ttl, JSON-LD contexts and specification.
  • Further explain the behaviour of this field in the specification
  • Update some of the snippets to include this predicate (to be discussed in next panel)

@elf-pavlik
Copy link
Member

I think we need to clarify

  1. What value would we use for interop:grantee?
  2. Where do we store generated AccessGrant?

Based on the above I will have a better understanding of the approach to see how the new property would be used.

@laurensdeb could you please prioritize snippets with examples? I think this will help a lot with discussing the proposed approach.

Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
@laurensdeb
Copy link
Author

laurensdeb commented Apr 5, 2022

  1. The idea behind the proposed interop:publicAccessMode is that it expresses the resources the agent wishes to make public, i.e. the interop:grantee of such a DataGrant would still be the agent that has expressed this Access Need.

  2. The AccessGrant would thus be stored under the AgentRegistry of the agent that expressed the access need.

An example of a Data Grant:

alice-projectron:40d038ea
  a interop:DataGrant ;
  interop:dataOwner alice:\#id ;
  interop:grantee projectron:\#id ;
  interop:registeredShapeTree pm-shapetrees:ProjectTree ;
  interop:hasDataRegistration alice-work-data:8501f084\/ ;
  interop:satisfiesAccessNeed projectron:\#ac54ff1e ;
  interop:accessMode acl:Read, acl:Create ;
  interop:creatorAccessMode acl:Update, acl:Delete ;
  interop:publicAccessMode acl:Read;
  interop:scopeOfGrant interop:AllFromRegistry .

One thing I'm not sure about is how this would work in the "Social Agent Shares Access"-flow, supposing that an end-user wishes to share a resource to the public outside of interaction with an application or a request from a concrete social agent. This might be a use case we want to support.

@ericprud
Copy link
Contributor

ericprud commented Apr 8, 2022

One thing I'm not sure about is how this would work in the "Social Agent Shares Access"-flow, supposing that an end-user wishes to share a resource to the public outside of interaction with an application or a request from a concrete social agent. This might be a use case we want to support.

To make sure I understand, would a FOAF page or resumé be an example of a public page not associated with an app or social agent?

@elf-pavlik
Copy link
Member

We should try to take it into account together with #291
Some of my feedback there relates supporting discovery of data shared with the public.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants