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

Allow linking from references to definitions to be limited to only the first per group #684

Closed
halindrome opened this issue Apr 5, 2016 · 2 comments

Comments

@halindrome
Copy link
Contributor

The A11Y folks have requested this feature. Basically have a flag that would indicate to references to defined terms should only act as "links" the first time the term is referenced in a block; possibly where block is defined through some sort of CSS selector that the document can supply.

The rationale for this is that people using screen readers get distracted when there are many many links. It breaks up the flow of the block and makes it harder to comprehend. Or at least that is my understanding. @joanmarie ?

@halindrome halindrome self-assigned this Apr 5, 2016
@joanmarie
Copy link

@halindrome: One issue is what you cite (many links breaking up flow). A similar/related issue are things like screen reader links list dialogs having a bunch of unnecessary duplicates.

That said, my specific use case is in the ARIA spec. Our style guide is to make the first instance of references (pdef, sdef, rdef) links and subsequent references non-links (e.g. via the use of code). Similarly we currently use a without an href attribute for glossary term references.

We (ARIA spec editors and contributors) have been adhering to this rule rather loosely. In part I think out of sheer forgetfulness or habit. In part, I think it's been a side effect of changes to the spec in which changed, added, or removed text introduces or eliminates referenced terms. We could deal with this manually. But the side effect of that -- in addition to people having to remember to check and make the appropriate changes -- is that changing one paragraph might necessitate changing another paragraph (e.g. to add or remove a instances). And the side effect of that is the introduction of noise into revision history (e.g. when using git blame to hunt down the rationale of a change).

(Having written all this out, I see that I really am anal-retentive....)

You addressed this for pdef, sdef, and rdef within the ARIA spec utilities (thanks again!!). The only remaining element is a. Unlike what we do for the ARIA-specific elements, presumably a would just be stripped out (as code would not be appropriate).

If everyone else sees no point in making this change, or if making it would be extremely involved, then feel free to WONTFIX this. Otherwise.... Thanks for looking into it!

@marcoscaceres
Copy link
Member

What might be nice here is to do something similar to what we do for webidl: set what you are going to cite up the tree, then allow nodes to reference that... so:

<section data-cite="aria">
  <a data-cite="#some-role">role</a>
   OR 
  <a data-cite-frag="#some-role">role</a>
</section>

marcoscaceres added a commit that referenced this issue Jun 5, 2017
* develop:
  v13.1.0
  fix(core/headers): SoTD doesn't respect sections
  style(core/data-cite-spec): remove forgotten console.log
  feat(core/data-cite): parent can define cite root (closes #684)
  chore(deps/highlight): updates copyright
shikhar-scs pushed a commit to shikhar-scs/respec that referenced this issue Feb 19, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants