daisy / ace

Ace by DAISY, an Accessibility Checker for EPUB
MIT License
74 stars 22 forks source link

MathML not accepted as valid content for heading (h4) element #410

Open francofaa opened 4 months ago

francofaa commented 4 months ago

Ace 1.3.2, Ace by DAISY app

The error was Minor, Best Practice, empty-heading with the text

The content of the heading (with additional context) was

        <section class="level3" data-cfititle="Rate = k[A] superscript 2" epub:type="level3" id="rev_9781319369859_ch13sectlev3sect01">
          <header id="pijaf13cbae91e8ea35ad1b541f0f663">
            <h4 class="c-head title" epub:type="title" id="qago2378c123cf4da25e836845e9b1d8">
              <span class="math" id="xper68cbdedf377ee0e4de6d4337af88" tabindex="0">
                <math xmlns="http://www.w3.org/1998/Math/MathML" alttext="text Rate  end text equals text italic k  end text not stretchy left square bracket text A  end text not stretchy right square bracket squared" display="inline" id="jphgcf738586b6209c9f961417b2fd63">
                  <semantics id="gjurdc99812fc14bab64e63242193f46">
                    <mrow id="yfkf0ee251bfa4da2c7bd866769f053c">
                      <mstyle id="mxoq80182f3e42bdc05302be6c5d3a19">
                        <mtext id="dxppf250498f426f7efcfbb84befea60">Rate </mtext>
                        <mo id="yjbcf7c22feff82037288ad2cc32c6bc">= </mo>
                        <mtext id="wspba9069b6bea20a7c63ee88c7adcec" mathvariant="italic">k </mtext>
                        <msup id="cxjaade89fe54f36513b87b6eb8be41f">
                          <mrow id="ehdc2d73ee5e303e7cb35fa9411024f5">
                            <mo id="qnhlc9a9497412179387946e0d9b6385" stretchy="false">[ </mo>
                            <mtext id="mlbr6468b7d5201461b8284b5987c4f0">A </mtext>
                            <mo id="kxrc0777fcdfeaa46e954ecf05704ae5" stretchy="false">] </mo>
                          </mrow>
                          <mn id="isfha59ad564151653d0ee82404b19b2">2 </mn>
                        </msup>
                      </mstyle>
                    </mrow>
                    <annotation-xml encoding="application/xhtml+xml" id="naxy4d6f367df4508f767c057d1bfd55" name="alternative-representation">
                      <img xmlns="http://www.w3.org/1999/xhtml" alt="text Rate  end text equals text italic k  end text not stretchy left square bracket text A  end text not stretchy right square bracket squared" id="cyioff1e022e8f06035f24dd16aa6397" src="../images/jphgcf738586b6209c9f961417b2fd63.png"></img>
                    </annotation-xml>
                  </semantics>
                </math>
              </span>
            </h4>
          </header>

It appears that the MathML is being read as no text or as inaccessible text. This may be related to issue 398.

Thank you for any assistance that can be provided.

danielweck commented 3 months ago

This is a known issue with Deque Axe, I have tried to implement missing parts in Axe's code but I am lacking some understanding of Axe's internals (plus, I started exploring this issue from a slightly older revision of the Axe codebase which was used by DAISY Ace at the time). Here is the relevant issue at the Axe GitHub repository: https://github.com/dequelabs/axe-core/issues/3285