solid / solid/data-interoperability-panel

Support for image picker functionality?

Open
#335 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Bikeshed
Stars
58
Forks
18
PR merge metrics
No merged PRs in 30d

Description

I just found out that Google Photos has disabled access to photo library APIs and replaced it with a photo picker API, with user privacy as an explicit motivation.

https://developers.googleblog.com/en/google-photos-picker-api-launch-and-library-api-updates/

The idea is effectively that a user should use an authorization agent to explicitly share individual photos/media items with the app rather than granting access to all photos. This seems broadly consistent with SAI's ethos, but its not clear to me how SAI should implement this.

In an app's access needs, is there a way for a shape tree to ask for access to the items selected dynamically by the user with a photo picker? There's currently a comment that access needs for specific data instances requires advance knowledge of the data instances, which this use case is explicitly trying to avoid.

https://github.com/solid/data-interoperability-panel/blob/dd62af0c405415bc34e84b66aa923e0d3b1fd326/proposals/specification/access-needs.bs#L157-L160

In a data authorization, either a single (whole) data registration or data instance would be specified. Presumably the picker use case would therefore require the server to create a new data instance with just the selected photos? The same would apply to a data grant.
https://github.com/solid/data-interoperability-panel/blob/dd62af0c405415bc34e84b66aa923e0d3b1fd326/proposals/specification/access-authorizations.bs#L184-L194

Based on this first reading, photo picker functionality would require either the authorization agent or the server to actively create data instances in response to requests, not just grant access to existing data instances. Or alternatively, resource indication would need to allow selection of multiple data instances.

The authorization agent primer seems to indicate that the former is not intended, and the latter might be possible (plural is used), but the spec doesn't seem to indicate that multiple data instances can be individually selected and indicated (singular seems to always be used)? Would separate data grants be made for each photo?
https://github.com/solid/data-interoperability-panel/blob/dd62af0c405415bc34e84b66aa923e0d3b1fd326/proposals/primer/authorization-agent.bs#L110-L111

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the cited sections of proposals/specification/access-needs.bs, proposals/specification/access-authorizations.bs, and proposals/primer/authorization-agent.bs, then compare their singular and plural wording against the Google Photos picker use case. Done means the project has an explicit specification decision covering dynamically selected photos, data instances, resource indication, and data grants.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.