platform-documentation

Accessibility

what is it?

Web accessibility means that websites, tools, and technologies are designed and developed so that people with disabilities can use them.

standards

Several standards for accessibility of digital content, products, and services exist:

1. WCAG (Web Content Accessibility Guidelines)

The global standard for making web content accessible to people with disabilities, published by the W3C.

2. EN 301 549

The European standard for ICT (Information and Communication Technology) accessibility, harmonized with WCAG 2.1.

3. EPUB Accessibility Specification

A standard for making EPUB e-books accessible. Based on WCAG 2.1. Key Features:

4. Section 508 (U.S.)

U.S. federal accessibility standard for ICT, aligned with WCAG 2.0. Key Areas:

5. ARIA (Accessible Rich Internet Applications)

A W3C technical specification to enhance web accessibility, especially for dynamic content.

6. PDF/UA-1 (Universal Accessibility)

UA stands for universally accessibility. This is a subtype of PDF/1.7, meant to comply with WCAG2. Key Features:

EAA

The European Accessibility Act (EAA), set to be fully implemented by mid-2025, requires digital content, including scientific publications and digital books, to be accessible to individuals with disabilities.

The act can be found here.

what does this mean for the platform?

Does the platform meet global accessibility standards? The Librarians’ FAQ says

We have aimed for WCAG 2.0 AA compliance with the Web Accessibility Initiative recommendations (WAI) and compliance with Section 508 Amendment to the Rehabilitation Act of 1973.

But…

See also

what does this mean for the content?

Let’s answers this in terms of formats:

PDF

PDF-UA-1. See above.

JATS / BITS XML

EAA has implications for markup languages like JATS (and BITS), which are widely used in the publishing industry for scholarly articles and books.

The JATS used at AUP has to comply with the four principles of accessibility of websites and mobile applications refered to by EAA:

  1. Perceivable information and user interface components: Text alternatives for non-text content (e.g., images, tables). Logical structure for content (headings, lists, etc.).
  2. Operable interface: Navigation and interaction through structural tagging (e.g., <sec>, <p>).
  3. Understandable content and interface: Clear labeling and hierarchical structure. Descriptive metadata.
  4. Robustness: Compatibility with assistive technologies (e.g., screen readers) and other user agents

Key JATS/BITS Elements and Attributes for Accessibility

1. Structural Elements

These ensure the logical organization of content, improving navigation:

2. Text Alternatives

Ensure all non-text content is described:

https://jats.nlm.nih.gov/archiving/tag-library/1.4/element/alt-text.html

3. Semantics and Metadata

Provide additional context for better comprehension:

4. Accessibility Attributes

Attributes in JATS/BITS that enhance accessibility:

5. Tables

Accessible tables require:

example 1. Figures

current XML (January 2025)

<fig id="fig1">
<label>Diagram 1.</label>
<caption><title>Kwantitatief overzicht nominale kernen</title></caption>
<graphic xlink:href="QUE2022.1.001.KLEI_fig1.jpg"/>
</fig>

Note the missing @alt attribute for <graphic>. Screen readers will not be able to describe the image. Also, <label> should not replace <caption>. Screen readers will not necessarily read the caption. Lastly, @xml:lang is missing for multilingual support.

correct XML (in the light of EEA)

<fig id="fig1" xml:lang="nl">
  <caption>
    <title>Diagram 1: Kwantitatief overzicht nominale kernen</title>
  </caption>
  <alt-text>Diagram 1: Kwantitatief overzicht nominale kernen</alt-text>
  <graphic xlink:href="QUE2022.1.006.TEST_fig1.jpg"/>
</fig>

How is this different?

Of course, these fixes mean nothing if the HTML generated from the XML is not accessible…

@alt vs <alt-text>

Use @alt for simple alternative text:

Use <alt-text> for longer or structured alternative text:

Use both:

<alt-text>vs <long-desc>

Use <long-desc> for detailed, structured descriptions. For example, complex figures, charts, and infographics that require in-depth explanations.

In short, use it if an image is highly complex. Combine it with <alt-text> so users have a short, immediate summary and can go to the <long-desc> for an in-depth explanation.

Example 2. Tables

current JATS

<table-wrap id="tab1">
<table id="table1" width="1*">
<colgroup>
<col width="0.20*"/>
<col width="0.80*"/>
</colgroup>
<tbody>
<tr>
<td><italic>Maget</italic></td>
<td>1) <italic>Volwassen of huwbaar meisje, maagd, jonkvrouw, ongehuwde vrouw</italic>; 2) Ook van <italic>een ongehuwd jonkman, een man</italic> &#x201E;die nie wijf en kende&#x201D;; 3) <italic>Eene ongehuwde vrouw of meisje in dienstbaarheid, dienstmaagd</italic></td>
</tr>
<tr>
<td><italic>Wijf</italic></td>
<td>1) <italic>Vrouw, vrouwspersoon, vrouw in het algemeen</italic>; ook <italic>jonge vrouw, meisje</italic>; vgl. joncwijf; 2) In ongunstigen zin. <italic>Zedelooze vrouw</italic>; <italic>lichtekooi</italic>; 3) <italic>Gehuwde vrouw</italic>; 4) <italic>Van Maria, de Moeder Gods</italic>; 5) <italic>Echtgenoote, vrouw</italic>; 6) <italic>Het wijfje van een dier</italic>; 7) <italic>Dienstmaagd, dienstbode</italic></td>
</tr>
<tr>
<td><italic>Vrouwe</italic></td>
<td>1) <italic>Gebiedster, heerscheres, landsvrouwe</italic>; 2) Van <italic>Maria, de hemelkoningin</italic>, ndl. &#x201E;onze lieve <italic>Vrouw</italic>&#x201D;; 3) <italic>Meesteres</italic>; 4) Van zaken en dingen gezegd heeft vrouwe de bet. van <italic>de hoogste, voornaamste, uitstekendste, beste in eene soort</italic>; 5) Vrouwe wordt de uitdrukking voor <italic>deftige dame, vrouw van hooge geboorte of van aanzienlijken stand</italic>, ook <italic>edelvrouw</italic>; 6) <italic>Vrouw</italic> in het algemeen, hetzelfde als wijf; 7) <italic>Vrouw, echtgenoot, vrouw van, huisvrouw</italic> 8) Als tweede lid van eene samenstelling komt vrouwe voor in woorden, waar het de bet. <italic>opzichteres</italic> heeft.</td>
</tr>
</tbody>
</table>
</table-wrap>

There are some issues with this XML:

It may also make sense to explicitly associate <td> cells with column meaning. For simple tables, <th scope="col"> is enough. For complex tables, use <td headers="id_of_th">.

correct XML (in the light of EEA)

<table-wrap id="tab1" xml:lang="nl">
  <caption>
    <title><italic>Maget, wijf</italic> en <italic>vrouwe</italic> in nominale aanspreekvormen: het corpus</title>
    <p>Het MNW geeft de volgende betekenissen voor de zelfstandige naamwoorden <italic>maget, wijf</italic> en <italic>vrouwe</italic></p>
  </caption>
  <table id="table1" width="1*">
     <colgroup>
      <col width="0.20*"/>
      <col width="0.80*"/>
    </colgroup>
    <thead>
      <tr>
        <th scope="col">Term</th>
        <th scope="col">Definitions</th>
      </tr>
    </thead>
    <tfoot>
      <tr>
        <td colspan="2">Bron: <sc>mnw</sc></td>
      </tr>
    </tfoot>
    <tbody>
      <tr>
        <td><italic>Maget</italic></td>
        <td>
          <list list-type="order">
            <list-item><p><italic>Volwassen of huwbaar meisje, maagd, jonkvrouw, ongehuwde vrouw</italic></p></list-item>
            <list-item><p><italic>Ook van een ongehuwd jonkman, een man „die nie wijf en kende”</italic></p></list-item>
            <list-item><p><italic>Eene ongehuwde vrouw of meisje in dienstbaarheid, dienstmaagd</italic></p></list-item>
          </list>
        </td>
      </tr>
      <tr>
        <td><italic>Wijf</italic></td>
        <td>
          <list list-type="order">
            <list-item><p><italic>Vrouw, vrouwspersoon, vrouw in het algemeen</italic>; ook <italic>jonge vrouw, meisje</italic></p></list-item>
            <list-item><p><italic>Zedelooze vrouw</italic>; <italic>lichtekooi</italic></p></list-item>
            <list-item><p><italic>Gehuwde vrouw</italic></p></list-item>
            <list-item><p><italic>Van Maria, de Moeder Gods</italic></p></list-item>
            <list-item><p><italic>Echtgenoote, vrouw</italic></p></list-item>
            <list-item><p><italic>Het wijfje van een dier</italic></p></list-item>
            <list-item><p><italic>Dienstmaagd, dienstbode</italic></p></list-item>
          </list>
        </td>
      </tr>
      <tr>
        <td><italic>Vrouwe</italic></td>
        <td>
          <list list-type="order">
            <list-item><p><italic>Gebiedster, heerscheres, landsvrouwe</italic></p></list-item>
            <list-item><p>Van <italic>Maria, de hemelkoningin</italic>, ndl. &#x201E;onze lieve <italic>Vrouw</italic>&#x201D;</p></list-item>
            <list-item><p><italic>Meesteres</italic></p></list-item>
            <list-item><p>Van zaken en dingen gezegd heeft vrouwe de bet. van <italic>de hoogste, voornaamste, uitstekendste, beste in eene soort</italic></p></list-item>
            <list-item><p>Vrouwe wordt de uitdrukking voor <italic>deftige dame, vrouw van hooge geboorte of van aanzienlijken stand</italic>, ook <italic>edelvrouw</italic></p></list-item>
            <list-item><p><italic>Vrouw</italic> in het algemeen, hetzelfde als wijf</p></list-item>
            <list-item><p><italic>Vrouw, echtgenoot, vrouw van, huisvrouw</italic></p></list-item>
            <list-item><p>Als tweede lid van eene samenstelling komt vrouwe voor in woorden, waar het de bet. <italic>opzichteres</italic> heeft</p></list-item>
          </list>
        </td>
      </tr>
    </tbody>
    </table>
</table-wrap>

How is this different?

Note that this table does not need alt text because it is textual. For tables, it is good practice to rely on well-structured content (headers, captions, and a clear arrangement) and use @alt and <alt-text> for any graphical or complex content that requires additional explanation.

Again: if the JATS is not accessible, the HTML cannot be accessible either. We need to fix the JATS and re-upload the content. Then, we need to check if the HTML is accessible.

Example 3. Lists

No special effort is required to make lists in JATS accessible, with the possible exception of adding a languages tag.

correct XML (in the light of EEA)

<list id="list1" list-type="unordered" xml:lang="nl">
  <list-item>
    <label>Maget</label>
    <list list-type="ordered">
      <list-item><p>1. <italic>Volwassen of huwbaar meisje, maagd, jonkvrouw, ongehuwde vrouw</italic></p></list-item>
      <list-item><p>2. Ook van <italic>een ongehuwd jonkman, een man</italic> „die nie wijf en kende”</p></list-item>
      <list-item><p>3. <italic>Eene ongehuwde vrouw of meisje in dienstbaarheid, dienstmaagd</italic></p></list-item>
    </list>
  </list-item>
  
  <list-item>
    <label>Wijf</label>
    <list list-type="ordered">
      <list-item><p>1. <italic>Vrouw, vrouwspersoon, vrouw in het algemeen</italic>; ook <italic>jonge vrouw, meisje</italic>; vgl. joncwijf</p></list-item>
      <list-item><p>2. In ongunstigen zin. <italic>Zedelooze vrouw</italic>; <italic>lichtekooi</italic></p></list-item>
      <list-item><p>3. <italic>Gehuwde vrouw</italic></p></list-item>
      <list-item><p>4. <italic>Van Maria, de Moeder Gods</italic></p></list-item>
      <list-item><p>5. <italic>Echtgenoote, vrouw</italic></p></list-item>
      <list-item><p>6. <italic>Het wijfje van een dier</italic></p></list-item>
      <list-item><p>7. <italic>Dienstmaagd, dienstbode</italic></p></list-item>
    </list>
  </list-item>
  
  <list-item>
    <label>Vrouwe</label>
    <list list-type="ordered">
      <list-item><p>1. <italic>Gebiedster, heerscheres, landsvrouwe</italic></p></list-item>
      <list-item><p>2. Van <italic>Maria, de hemelkoningin</italic>, ndl. „onze lieve <italic>Vrouw</italic></p></list-item>
      <list-item><p>3. <italic>Meesteres</italic></p></list-item>
      <list-item><p>4. Van zaken en dingen gezegd heeft vrouwe de bet. van <italic>de hoogste, voornaamste, uitstekendste, beste in eene soort</italic></p></list-item>
      <list-item><p>5. Vrouwe wordt de uitdrukking voor <italic>deftige dame, vrouw van hooge geboorte of van aanzienlijken stand</italic>, ook <italic>edelvrouw</italic></p></list-item>
      <list-item><p>6. <italic>Vrouw</italic> in het algemeen, hetzelfde als wijf</p></list-item>
      <list-item><p>7. <italic>Vrouw, echtgenoot, vrouw van, huisvrouw</italic></p></list-item>
      <list-item><p>8. Als tweede lid van eene samenstelling komt vrouwe voor in woorden, waar het de bet. <italic>opzichteres</italic> heeft.</p></list-item>
    </list>
  </list-item>
</list>

some points

see also