anusii / solidpod

MIT License
1 stars 1 forks source link

PERMISSION: Capture permissions granted to public agents #183

Open cdawei opened 1 week ago

cdawei commented 1 week ago

The current implementation captures agents from predicate acl:agent. We may need to capture the permissions granted to public agent (objects of predicates foaf:Agent or acl:AuthenticatedAgent) when reading/revoking permissions, as per the Web ACL specification.

anushkavidanage commented 1 week ago

Image

cdawei commented 1 week ago

Hi Anushka, could you please share the content of pub-values.ttl.acl used in your screenshot here? I am struggling to construct an ACL file to test pull request #192. Thanks

anushkavidanage commented 4 days ago

pub-values.ttl.acl content

@prefix : <#>. @prefix acl: http://www.w3.org/ns/auth/acl#. @prefix foaf: http://xmlns.com/foaf/0.1/. @prefix c: <card#>.

:owner a acl:Authorization; acl:accessTo ; acl:agent c:me; acl:mode acl:Control, acl:Read, acl:Write.

:public a acl:Authorization; acl:accessTo ; acl:agentClass foaf:Agent; acl:mode acl:Read, acl:Write.

:group a acl:Authorization; acl:accessTo ; acl:agentGroup ; acl:mode acl:Read.

cdawei commented 4 days ago

pub-values.ttl.acl content

Thanks Anushka for this.

It seems the python RDFLib cannot parse pub-values.ttl.acl. If I change the @Prefix to @prefix and @Prefix acl: http://www.w3.org/ns/auth/acl#. to @prefix acl: <http://www.w3.org/ns/auth/acl#>. (and similarly for foaf), it worked.

This might indicate the RDF parser employed by solidpod may not be compatible with python RDFLib.