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

A11y expression of diagrams #2

Open
merchako opened this issue Aug 29, 2024 · 6 comments
Open

A11y expression of diagrams #2

merchako opened this issue Aug 29, 2024 · 6 comments

Comments

@merchako
Copy link

merchako commented Aug 29, 2024

The Diagrams are helpful (example: Characters). Thank you!

Problem

  • not A11y accessible
  • not searchable
  • not CTRL+F-able
  • not linked

Suggested solution

  1. Add a Code view to let us see the UML markup (or whatever's behind the diagram) and/or
  2. Add a key-value section modeled after the Technical Summary in MDN
@mhosken
Copy link
Collaborator

mhosken commented Aug 29, 2024 via email

@merchako
Copy link
Author

merchako commented Sep 3, 2024

Thank you for your prompt reply. I want to make sure I understand you to be the most helpful. Do I have this right?:

  • When you ask for "an exemplar for a11y", you'd like me to convert one diagram to HTML markup so you can understand what good output would look like if you were to generate more for other diagrams.

Correct?

Could I get a link to the grammar from which these diagrams are derived? That might be helpful. I'm also going to poke around the internet to see if other people have solved this problem before. For all I know, there's already a standard way to represent grammars for accessibility.

@merchako
Copy link
Author

merchako commented Sep 3, 2024

My first thought is to grab a human readable markup language and express them in that. I'm currently exploring

@mhosken
Copy link
Collaborator

mhosken commented Sep 9, 2024

The source basis for all the syntax diagrams is: (https://github.com/usfm-bible/tcdocs/blob/main/grammar/usx.rnc) some rather complex tooling creates syntax diagrams for selected definitions in that grammar, direct to SVG. I notice from the StackExchange thread that mentions SVG as a good target format, and that the thread is primarily about accessible content creators rather than how to create accessible content.
Which returns me to my original question: given an svg file like (https://github.com/usfm-bible/tcdocs/blob/main/markers/images/schema/f_rail.svg) what needs to be added to the file to make it accessible?
I'm not asking for tooling, I'm asking for specifications, and engineering details. We won't be retooling for this job it is too complex. You would be welcome to try.

@merchako
Copy link
Author

Thank you for the additional information, @mhosken . I'm working on getting you an exemplar and comprehensive list of changes that would fulfill this request. In the meantime, one sure improvement is a combination of
(1) link every element's label to that element's page (using xlink)
(2) ensure the SVG lightbox allows uses to notice and click on the links.

Untested pseudocode

- <text x="495.0" y="541">Figure</text>
+ <a xlink:href="https://docs.usfm.bible/usfm/latest/fig/fig.html"><text x="495.0" y="541">Figure</text></a>

(Aside: ideally, the link would go around the containing box, but I'm not confident enough to put the correct SVG elements in this example.)

More to come after the Paratext Summit. Thank you!

@mhosken
Copy link
Collaborator

mhosken commented Sep 11, 2024

This issue is blocked by this bug in antora: https://gitlab.com/antora/antora/-/issues/1001 unless someone can think of a way around it.

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

No branches or pull requests

2 participants