Een datatabel moet goed bruikbaar zijn voor mensen die bijvoorbeeld een screenreader gebruiken. Daarom is het belangrijk dat je goed aangeeft wat rijkoppen en kolomkoppen zijn en wat het bereik is van die rijkoppen en kolomkoppen. Voor een goede toegankelijkheid maak je geen gebruik van opmaaktabellen: dit zijn tabellen waarmee je tekst of afbeeldingen op een pagina positioneert. Gebruik tabellen alleen voor data.
Gebruik geen opmaaktabellen
Gebruik alleen tabellen voor het presenteren van data. En niet voor het vormgeven van (een deel van) een pagina.
Voorbeeld opmaaktabel met afbeelding
Met axesWord en een aangepast sjabloon kun je wel opmaaktabellen gebruiken. De software houdt de zichtbare opmaak in stand, verwijdert de datatabel uit de ’tag tree’ en maakt de inhoud op met geschikte semantisch tags.
Voorbeeld opmaaktabel met 2 cellen
In dit voorbeeld is een tabel gebruikt voor het creëren van 2 kolommen. Er is geen relatie tussen de twee cellen. Ook is er geen relatie aangebracht in de informatie in de cellen. In elke cel staat 1 alinea, gemarkeerd met een <P>-tag. Een tabel zou juist moeten gebruiken om makkelijk de informatie te gebruiken. Je zou dus een relatie willen aangeven tussen ‘Agendapunt’ en ’07’ en tussen bijvoorbeeld ‘Openbaar/vertrouwelijk’ en ‘Openbaar’.
Agendapunt: 07 Openbaar/vertrouwelijk: Openbaar Versienummer: 1.1 Zaaknummer: P76_2 | Auteur: F. Fritsema Eindverantwoordelijk: T. Hugooszoon Status: Definitief Opmerkingen: geen |
Op deze manier gebruik je de tabel dus puur voor opmaak. Dit is geen goed gebruik van een tabel.
Toegankelijke datatabellen maken
Als je Word gebruikt zonder plug-in voor toegankelijkheid dan is nabewerking nodig om een datatabel toegankelijk te maken. Afhankelijk van je versie van Word worden er bijvoorbeeld alleen kolomkoppen geëxporteerd. En het bereik van rijkoppen en kolomkoppen vraagt tot nu toe sowieso nabewerking.
Tips voor Word
- Gebruik geen tabellen voor opmaakeffecten, bijvoorbeeld het maken van kolommen of het positioneren van tekst en afbeeldingen.
- Houd tabellen eenvoudig: vermijd complexe tabellen, gesplitste cellen, samengevoegde cellen en geneste tabellen. Gebruik de Toegankelijkheidscontrole om dit te checken.
- Bij ‘Tabelontwerp’ in Word kun je de rijkoppen en kolomkoppen aangeven:
- Met ‘Veldnamenrij geef je de kolomkoppen aan.
- Met ‘Eerste kolom’ geef je de rijkoppen aan.
- Vermijd volledig lege kolommen en lege rijen
Afhankelijk van je versie van Word en de ontwikkelingen in deze software kan het zijn dat in de pdf die je maakt alleen de kolomkoppen worden aangegeven en niet de rijkoppen. Het bereik van de kopcellen wordt niet aangegeven in een pdf die ie met Word maakt. Je zult tabellen dus nog moeten nabewerken als je een pdf met Word maakt.
axesWord
Als je met axesWord werkt met de juiste stijlen, dan kun je in 1 keer vanuit Word een toegankelijke datatabel maken.
Toegankelijke datatabellen: de techniek
Een tabel kan rijkoppen hebben, kolomkoppen of beide. Kolomkoppen zijn gemarkeerd met een <TH>-tag, datacellen met een <TD>-tag. De datacellen moeten gekoppeld zijn aan de kolomkoppen of rijkoppen door het aangeven van het bereik voor elke kolomkop en rijkop. Zo verbind je de cellen en koppen met elkaar. Dit kan ook met ID’s en headers. Dit kun je ook met nabewerking regelen.
Voorbeeld tabel met alleen kolomkoppen
Locatie Schoolstraat | Locatie Spoorstraat |
---|---|
Geen AED | AED |
Verbandtrommel | Verbandtrommel |
In bovenstaande tabel zie je een tabel met kolomkoppen (Locatie Schoolstraat en Locatie Spoorstraat). Deze kolomkoppen moeten in de tagtree gemarkeerd zijn met een <TH>-tag. De andere cellen zijn datacellen. Die zijn gemarkeerd met een <TD>-tag. Om te zorgen dat de tabelcellen en de datacellen goed gekoppeld zijn, moet ook het bereik van de kopcellen worden aangegeven. Dit kun je doen door het bereik van deze tabellen aan te geven. In dit geval is het bereik van de kopcellen een kolom.
In de screenreader-preview in PAC ziet de tabel er als volgt uit:
Voorbeeld tabel met rijkoppen en kolomkoppen, lege cel linksboven
Locatie Schoolstraat | Locatie Spoorstraat | |
---|---|---|
AED | nee | ja |
Verbandtrommel | ja | ja |
In een toegankelijke pdf mag je geen lege <TH>-tag aanbieden. De linkercel is daarom opgemaakt met een <TD>-tag. In de Screenreader Preview ziet dit er als volgt uit:
Voorbeeld tabel met rijkoppen en kolomkoppen
In de volgende cel zie je een tabel met rijkoppen en kolomkoppen. De bovenste rij cellen zijn kolomkoppen (<TH>) met een bereik ‘kolom’. De eerste cellen in de tweede en derde rij zijn rijkoppen (<TH>) met een bereik ‘rij’. De andere cellen zijn datacellen (<TD>) .
Aanwezige middelen | Locatie Schoolstraat | Locatie Spoorstraat |
---|---|---|
AED | nee | ja |
Verbandtrommel | ja | ja |
In de Screenreader Preview van de tool PAC ziet dit er als volgt uit:
Verbinden van kopcellen met datacellen
Voor een goede toegankelijkheid van een tabel is het belangrijk dat elke kopcel expliciet gekoppeld is aan datacellen die bij deze kop horen. Dit kan door het bereik van kolomkoppen aan te geven (kolom) en door het bereik van rijkoppen (rij) aan te geven. Je kunt de datacellen ook koppelen aan rijkoppen en kolomkoppen met ID’s en headers.
PAC 2021 zal voor elke kopcel die niet expliciet gekoppeld is aan datacellen een fout melden.
In bijvoorbeeld de Tabeleditor van Acrobat Pro kun je het bereik van een kopcel aangeven. Je kiest hier dan kolom of rij. Je kunt ook kiezen voor het gebruik van Id’s en headers, maar dat is complexer en gebruik je daarom bij handmatig repareren vaak alleen voor complexe tabellen.
Natuurlijk kun je ook andere commerciële software gebruiken in plaats van Acrobat Pro. axesPDF heeft ook een table-editor die makkelijk werkt.
Complexe datatabel
Slecht voorbeeld
Een complexe tabel is mogelijk, maar vraagt vaak veel handmatige reparatie en is niet perse gebruiksvriendelijk. Zoals onderstaande tabel. In de HTML heb ik de eerste en derde kolom met strong gemarkeerd. Dit klopt niet, maar de tabel is ter illustratie.
Als je een dergelijk tabel in pdf toegankelijk wilt krijgen, dan kom je technisch gezien met nabewerking een heel eind. Je gebruikt dan headers en id’s. Zo koppel je elke cel aan de bijbehorende datacel. Dit kun je echter niet automatisch doen vanuit Word.
Daarnaast blijft het een onlogische en gebruiksonvriendelijke keuze. De tabel is eigenlijk zo opgemaakt voor opmaakdoeleinden. Semantisch gezien heeft het geen enkele zin dat de tabel zo opgemaakt is. Dit leidt daarom ook tot ongebruiksvriendelijkheid zelfs als de tabel technisch toegankelijk gemaakt zou zijn.
Agendapunt | 07 | Auteur: | F. Fritsema |
Openbaar/vertrouwelijk | Openbaar | Eindverantwoordelijk: | T. Hugooszoon |
Versienummer | 1.1 | Status: | Definitief |
Zaaknummer | P76_2 | Opmerkingen: | geen |
Goed gebruik
Deze voorbeeld wordt nog verder uitgewerkt (februari 2024).
1 tabel moet getagd zijn als 1 tabel
Als je een tabel maakt die op meerdere pagina staat, dan kan het nog wel eens gebeuren dat de tabel wordt opgeknipt als verschillende tabellen. In de tagtree staan dan aparte tabellen. Dat is niet handig. Als screenreadergebruiker wil je nog steeds door die ene tabel navigeren en zo een overzicht krijgen van de grootte, de indeling en gebruik maken van de rijkoppen en kolomkoppen.
Voor de duidelijkheid: er is geen enkel bezwaar tegen een tabel die doorgaat op vervolgpagina’s. De tabel moet echter wel getagd zijn als 1 tabel. Sommige software maakt hierin fouten.
InDesign
InDesign zet op dit moment tabellen binnen een P-tag. Ik weet niet waarom, maar ik zie regelmatig tabellen die met InDesign zijn gemaakt en in <P>-tag staan. Dit is niet juist. In de comments vind je een work-around. Met dank aan Jelle van Lindenhuizen.
Jelle zegt
Als er in InDesign een tabel wordt gemaakt zal deze altijd ‘inline’ in een tekstregel geplaatst worden. Bij het exporteren wordt deze tabel dus verpakt in het label die is ingesteld voor de betreffende alineastijl.
Mijn workaround is om voor de regel waar tabellen in staan een aparte alineastijl te maken. In Acrobat verander ik dan in het rollenklassenment de label voor een voor een Div-label.”
Eigenlijk zou Adobe hierover moeten nadenken, zodat dit in InDesign al voorkomen kan worden.
Iacobien Riezebosch zegt
Superfijn dat je het nog aangevuld hebt. Ik verwerk het in het artikel. Dank je wel.