hypothesis / hypothesis/product-backlog

Consider interoperability in our #annotations fragment syntax

Open
#989 3 comments 2 reactions 0 assignees View on GitHub
client Standards
Dominant language
No language data
Stars
122
Forks
7
PR merge metrics
No merged PRs in 30d

Description

## Feature Request Form
### Problem you are trying to address with this feature

Right now our bouncer links resolve to an #annotations fragment that passes the necessary annotations and search facets to our client. This syntax is a likely point of intersection with the broader movement towards an ecosystem of interoperable clients and services, and the links that use these fragments are likely to be embedded in the web in larger numbers-- including by those copying and pasting our own bouncer output instead of the initial bouncer syntax.

### Your solution

We might consider an #annotation syntax that would work alongside other link syntaxes for deep linking, such as in these W3C notes:

Selectors and States:
https://www.w3.org/TR/2017/NOTE-selectors-states-20170223/

And Embedding Web Annotations in HTML
https://www.w3.org/TR/2017/NOTE-annotation-html-20170223/

This syntax could direct supporting clients to fetch annotations from indicated services, with filters for users, groups, tags, urls or plain text search terms.

Note previous discussion here:
https://github.com/hypothesis/product-backlog/issues/975#issuecomment-478292789

And a broader discussion around deep linking in browsers here:
https://github.com/bokand/ScrollToTextFragment/issues/4

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading the linked W3C notes on Selectors and States and embedding Web Annotations in HTML, then review the discussion in product-backlog issue 975 and the browser deep-linking discussion in ScrollToTextFragment issue 4. Done would require a decided interoperable #annotation fragment design covering annotation services and the proposed filters; no implementation files or tests are identified here.

Written by the indexing model from the issue text.

Assessment

Tech stack
html
Domain
web-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.