[NTG-context] Accessibility and Tagged PDFs: Bugs and Feature Requests

Hans Hagen pragma at wxs.nl
Wed Jul 1 19:02:08 CEST 2015

On 6/28/2015 12:59 PM, Dr. Dominik Klein wrote:

> 3.) Tag names of the resulting tag structure:
> Section 14.8.4 of [1] defines standard structure types, such as <H>,
> <P>, <Sect> etc. Context creates a tag-tree that uses names directly
> representing the structure names of the context laguage, such as
> <sectiontitle>. This should however be mapped to something standard,
> such as <H>. Interestingly these mappings seem to have been considered
> in strc-tag.mkiv but I was unable to generate such a tagged pdf.
> Editing/Outcommenting things in strc-tag.mkiv didn't work for me. It
> would be nice if there was a switch somewhere, i.e.
> \setuptagging[state=start,tagnames=pdf17] - or maybe I overlooked
> something?

The set of those standard tags is rather limited and imo one of the 
craziest things in pdf as we then end up with abuse of those html tags 
(and probably endless discussions on what to map onto what). I don't 
even have a clue what it would add to the concept either. Reflow is a 
braindead thing anyway.

> 4.) Acrobat Pro always complains that the language for the whole
> document is not set.

I don't have the latest version of pro (a bit expensive for the few 
times that i need it - when we have to produce pdf it always has to be 
rather old fashioned as printing houses want pdf from the previous 

> 5.) Tables
> The generated structure looks something like this:
> <table>
>   <tablerow>
>     <tablecell>
>     ...
>   <tablerow>
>     <tablecell>
>   ...
> Here, not only are the tag names non-compliant, also the tag structure
> should distinguish between the table header (THead), and table rows
> (TBody), c.f. Section of [1]. A simple heuristic would be
> to always put the first line into THead tags, and the rest of the able
> into TBody.

Hm. It's just structure so I'm not sure what compliant means. If someone 
wants an html representation then it's better to use the export and 
apply some transformation on the generic structures (one that matches 
expections, that can differ).

When we start tagging tables in details in pdf we probably also need to 
add all kind of extra attributes and then we need to do that for more 
than tables. It's not so much impossible (as most info is present) but 
more an extremely boring thing to do and no (free) application uses that 
info anyway.

> 6.) It would be nice if a flat tag structure could be created
> optionally. This is not a required feature according to [1], and in fact
> a properly nested structure is surely preferable for the final output;
> for debugging or checking during document creation however, a flat
> structure tree sometimes is easier to browse through.

I'm not sure what is meant with flat.

> All in all, these seem to be the only issues that prevent accessible PDF
> documents with context. For those within an organization where
> accessibility is required legally for all publications, compliance to at
> least Acrobat Pro's checks is a huge issue. I do not know how difficult
> these things are to implement in Context (personally I am just lost in
> the code), but looking at e.g. tex.stackexchange
> for question related to accessibility, this is indeed a major obstacle
> for several people.

In fact adding pdf tagging to context was rather easy. Some time was 
spend on getting it done efficiently but it's a rather non-intrusive bit 
of code. When I'd done it I only cleaned it up a bit when the export 
option was added (as some code is shared) but I have to admit that I 
never use it. Luigi and I did look into properties a whiel ago and that 
was added then.

So, it's not that difficult to add features, more a matter of priorities 
and motivation (apart from the fact that my acrobat is a bit old by now 
so I cannot really test).


                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
     tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
                                              | www.pragma-pod.nl

More information about the ntg-context mailing list