texlive[69612] Master/texmf-dist: tagpdf (27jan24)

commits+karl at tug.org commits+karl at tug.org
Sat Jan 27 21:58:31 CET 2024


Revision: 69612
          https://tug.org/svn/texlive?view=revision&revision=69612
Author:   karl
Date:     2024-01-27 21:58:30 +0100 (Sat, 27 Jan 2024)
Log Message:
-----------
tagpdf (27jan24)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/tagpdf/README.md
    trunk/Master/texmf-dist/doc/latex/tagpdf/ex-AF-file.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/ex-alt-actualtext.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/ex-attribute.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/ex-formula-problem.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/ex-list.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/ex-mc-manual-para-split-obsolete.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/ex-softhyphen.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/ex-spaceglyph-listings.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/ex-structure-obsolete.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/ex-tagpdf-template.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/tagpdf-code.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/tagpdf.pdf
    trunk/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-checks.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-generic.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx
    trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-inline.def
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty
    trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tagpdf/README.md	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/doc/latex/tagpdf/README.md	2024-01-27 20:58:30 UTC (rev 69612)
@@ -1,6 +1,6 @@
 #tagpdf — A package to create tagged pdf
-Packageversion: 0.98s 
-Packagedate: 2024/01/19
+Packageversion: 0.98t 
+Packagedate: 2024/01/26
 Author: Ulrike Fischer, LaTeX Project Team
 
 ## License

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/ex-AF-file.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/ex-alt-actualtext.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/ex-attribute.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/ex-formula-problem.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/ex-list.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/ex-mc-manual-para-split-obsolete.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/ex-softhyphen.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/ex-spaceglyph-listings.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/ex-structure-obsolete.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/ex-tagpdf-template.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/tagpdf-code.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/tagpdf.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex	2024-01-27 20:58:30 UTC (rev 69612)
@@ -16,8 +16,8 @@
  }
 \DebugBlocksOff
 \makeatletter
-\def\UlrikeFischer at package@version{0.98s}
-\def\UlrikeFischer at package@date{2024-01-19}
+\def\UlrikeFischer at package@version{0.98t}
+\def\UlrikeFischer at package@date{2024-01-26}
 \makeatother
 
 \documentclass[bibliography=totoc,a4paper]{article}
@@ -2238,7 +2238,24 @@
 \PDF{} 2.0 in form of a special name space,  with \PDF{} 1.7 or older the 
 tags are role mapped. This is work in progress and bound to change.
 
+\subsection{Fallback RoleMap}
 
+As mentioned above PDF 2.0 support name spaces for tags. This is quite nice. At first because it
+avoid name clashes, but also because it allow to build a cleaner model of the document structure. 
+
+But sadly support for PDF 2.0 is still quite scarce and while most PDF readers have no problems
+to open and render a PDF 2.0 file they don't \enquote{see} the role mapping if name spaces are used.
+Therefore since version 0.98t \pkg{tagpdf} adds in PDF 2.0 files additionally also a global |/RoleMap|
+dictionary as a fallback for  such processors. 
+
+\subsection{Mathml}
+
+In PDF 2.0 mathml tags have their own name space and can be freely used. 
+In PDF 1.7. they can only be used if they are rolemapped to a standard type. 
+By default they are not added to the |/RoleMap| dictionary, but this can be
+forced with |\tagpdfsetup{mathml-tags}|. Please note that this adds mathml at the end of the document and overwrites tag with the same name without warning.
+
+
 \section{Checking parent-child rules}\label{sec:parent-child}
 
 The \PDF{} references formulate various rules about whether a

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -47,13 +47,13 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{implementation}
 %    \begin{macrocode}
 %<@@=tag>
 %<*luatex>
-\ProvidesExplFile {tagpdf-luatex.def} {2024-01-19} {0.98s}
+\ProvidesExplFile {tagpdf-luatex.def} {2024-01-26} {0.98t}
   {tagpdf~driver~for~luatex}
 %    \end{macrocode}
 % \section{Loading the lua}
@@ -158,8 +158,8 @@
 
 local ProvidesLuaModule = {
     name          = "tagpdf",
-    version       = "0.98s",       --TAGVERSION
-    date          = "2024-01-19", --TAGDATE
+    version       = "0.98t",       --TAGVERSION
+    date          = "2024-01-26", --TAGDATE
     description   = "tagpdf lua code",
     license       = "The LATEX Project Public License 1.3c"
 }

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-checks.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-checks.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-checks.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -48,7 +48,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{documentation}
 % \section{Commands}
@@ -327,7 +327,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-checks-code} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-checks-code} {2024-01-26} {0.98t}
  {part of tagpdf - code related to checks, conditionals, debugging and messages}
 %</header>
 %    \end{macrocode}

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -47,7 +47,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{documentation}
 % This files contains a various data files which are read in
@@ -60,7 +60,7 @@
 % It lists the new tag, the rolemap and the namespace of the rolemap.
 %    \begin{macrocode}
 %<*ns-latex>
-%% \ProvidesExplFile {tagpdf-ns-latex.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-latex.def} {2024-01-26} {0.98t}
 %% {latex} {https://www.latex-project.org/ns/dflt/2022}{}
 title,        Title,    pdf2,
 part,         Title,    pdf2,
@@ -92,7 +92,7 @@
 % It is bound to change
 %    \begin{macrocode}
 %<*ns-latex-book>
-%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2024-01-26} {0.98t}
 %% {latex-book} {https://www.latex-project.org/ns/book/2022}{}
 chapter,       H1,pdf2,
 section,       H2,pdf2,
@@ -108,7 +108,7 @@
 % loaded. 
 %    \begin{macrocode}
 %<*ns-latex-inline>
-%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2024-01-26} {0.98t}
 %% {latex-inline} {https://www.latex-project.org/ns/inline/2022}{}
 chapter,       Span, pdf2,    
 section,       Span, pdf2,
@@ -122,7 +122,7 @@
 % \section{The pdf namespace data}
 %    \begin{macrocode}
 %<*ns-pdf>
-%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2024-01-26} {0.98t}
 %%  {pdf}   {http://iso.org/pdf/ssn}{}
 StructTreeRoot,StructTreeRoot,pdf,D,
 Document,Document,pdf,D,   
@@ -190,7 +190,7 @@
 % \section{The pdf 2.0 namespace data}
 %    \begin{macrocode}
 %<*ns-pdf2>
-%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2024-01-19} {0.98s} 
+%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2024-01-26} {0.98t} 
 %%  {pdf2}  {http://iso.org/pdf2/ssn}{}
 StructTreeRoot,StructTreeRoot,pdf2,D,
 Document,Document,pdf2,D,   
@@ -247,7 +247,7 @@
 % \section{The mathml namespace data}
 %    \begin{macrocode}
 %<*ns-mathml>
-%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2024-01-26} {0.98t}
 % {mathml}{http://www.w3.org/1998/Math/MathML}{}
 abs,abs,mathml,
 and,and,mathml,
@@ -482,7 +482,7 @@
 % This will perhaps change in future.
 %    \begin{macrocode}
 %<*parent-child>
-%% \ProvidesExplFile {tagpdf-parent-child.csv} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-parent-child.csv} {2024-01-26} {0.98t}
 ,,,StructTreeRoot,Document,Art,Part,Div,Sect,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,MC
 Document,both,document level,1,0..n,∅,‡,‡,∅,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅
 Art,1.7,grouping,∅,0..n,∅,‡,‡,0..n,0..n,‡,∅,∅,∅,0..n,∅,0..n,∅,∅,∅,0..1,0..1,∅,∅,∅,0..n,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅,∅,0..n,0..n,∅,∅,∅,0..n,0..n,∅,∅
@@ -537,7 +537,7 @@
 % This will perhaps change in future.
 %    \begin{macrocode}
 %<*parent-child-2>
-%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2024-01-26} {0.98t}
 ,,,StructTreeRoot,Document,DocumentFragment,Art,Part,Div,Sect,Aside,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Title,Sub,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Em,Strong,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,FENote,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,math,mathml,Artifact,MC
 Document,both,document level,1,0..n,0..n,∅,‡,‡,∅,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅
 DocumentFragment,2.0,document level,∅,0..n,0..n,0..n,‡,‡,0..n,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅*,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,0..n,∅

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-generic.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-generic.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-generic.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{documentation}
 % \end{documentation}
@@ -55,11 +55,11 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*generic>
-\ProvidesExplPackage {tagpdf-mc-code-generic} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-mc-code-generic} {2024-01-26} {0.98t}
  {part of tagpdf - code related to marking chunks - generic mode}
 %</generic>
 %<*debug>
-\ProvidesExplPackage {tagpdf-debug-generic} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-debug-generic} {2024-01-26} {0.98t}
  {part of tagpdf - debugging code related to marking chunks - generic mode}
 %</debug>
 %    \end{macrocode}

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{implementation}
 % The code is splitted into three parts: code shared by all engines,
@@ -86,11 +86,11 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*luamode>
-\ProvidesExplPackage {tagpdf-mc-code-lua} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-mc-code-lua} {2024-01-26} {0.98t}
   {tagpdf - mc code only for the luamode }
 %</luamode>
 %<*debug>
-\ProvidesExplPackage {tagpdf-debug-lua} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-debug-lua} {2024-01-26} {0.98t}
  {part of tagpdf - debugging code related to marking chunks - lua mode}
 %</debug>
 %    \end{macrocode}

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{documentation}
 % \section{Public Commands}
@@ -181,7 +181,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-mc-code-shared} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-mc-code-shared} {2024-01-26} {0.98t}
   {part of tagpdf - code related to marking chunks -
    code shared by generic and luamode }
 %</header>

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{documentation}
 % \begin{function}
@@ -98,7 +98,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-roles-code} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-roles-code} {2024-01-26} {0.98t}
  {part of tagpdf - code related to roles and structure names}
 %</header>
 %    \end{macrocode}
@@ -353,14 +353,14 @@
 %    \end{macrocode}
 % \end{variable}
 % Now we setup the standard names spaces. 
-% The mathml space is currently only loaded for pdf 2.0.
+% The mathml space is loaded also for pdf < 2.0
+% but not added to RoleMap unless a boolean is set to true with
+% |tagpdf-setup{mathml-tags}|.
 %    \begin{macrocode}
+\bool_new:N \g_@@_role_add_mathml_bool
 \@@_role_NS_new:nnn {pdf}   {http://iso.org/pdf/ssn}{}
 \@@_role_NS_new:nnn {pdf2}  {http://iso.org/pdf2/ssn}{}
-\pdf_version_compare:NnF < {2.0}
-  {    
-    \@@_role_NS_new:nnn {mathml}{http://www.w3.org/1998/Math/MathML}{}
-  }  
+\@@_role_NS_new:nnn {mathml}{http://www.w3.org/1998/Math/MathML}{}
 \@@_role_NS_new:nnn {latex} {https://www.latex-project.org/ns/dflt/2022}{}
 \@@_role_NS_new:nnn {latex-book} {https://www.latex-project.org/ns/book/2022}{}
 \@@_role_NS_new:nnn {latex-inline} {https://www.latex-project.org/ns/inline/2022}{}
@@ -542,7 +542,25 @@
           {
             \prop_gput:cno { g_@@_role_NS_#2_prop } {#1}{\l_@@_tmpa_tl}
           }          
-      }       
+      }
+%    \end{macrocode}
+% We also store into the pdf 1.7 rolemapping so that we can
+% add that as fallback for pdf 1.7 processor
+%    \begin{macrocode}
+     \tl_if_empty:nF { #3 }
+      {
+        \tl_if_eq:nnF{#1}{#3}
+         {
+          \prop_get:NnN \g_@@_role_rolemap_prop {#3}\l_@@_tmpa_tl
+           \quark_if_no_value:NTF \l_@@_tmpa_tl
+            {          
+              \prop_gput:Nne \g_@@_role_rolemap_prop {#1}{\tl_to_str:n{#3}}
+            }
+            {
+              \prop_gput:NnV \g_@@_role_rolemap_prop {#1}\l_@@_tmpa_tl
+            } 
+          }         
+       }
    }
 \cs_generate_variant:Nn \@@_role_add_tag:nnnn {VVVV}
 %    \end{macrocode}
@@ -697,8 +715,7 @@
 %    \begin{macrocode}
 \@@_role_read_namespace:n {pdf}
 \@@_role_read_namespace:n {pdf2}
-\pdf_version_compare:NnF < {2.0}
-  {\@@_role_read_namespace:n {mathml}} 
+\@@_role_read_namespace:n {mathml}
 %    \end{macrocode}
 % in pdf 1.7 the following namespaces should only store
 % the settings for later use:
@@ -1274,7 +1291,8 @@
 
 \keys_define:nn { @@ / setup }
   {
-    add-new-tag .code:n =
+     mathml-tags .bool_gset:N = \g_@@_role_add_mathml_bool
+    ,add-new-tag .code:n =
      {
        \keys_set_known:nnnN
          {@@/tag-role}

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{documentation}
 % \begin{function}{interwordspace (setup-key)}
@@ -64,7 +64,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-space-code} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-space-code} {2024-01-26} {0.98t}
  {part of tagpdf - code related to real space chars}
 %</header>
 %    \end{macrocode}

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{documentation}
 % \section{Public Commands}
@@ -285,7 +285,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-struct-code} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-struct-code} {2024-01-26} {0.98t}
  {part of tagpdf - code related to storing structure}
 %</header>
 %    \end{macrocode}
@@ -1905,7 +1905,7 @@
 % \section{Attributes and attribute classes}
 %    \begin{macrocode}
 %<*header>
-\ProvidesExplPackage {tagpdf-attr-code} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-attr-code} {2024-01-26} {0.98t}
   {part of tagpdf - code related to attributes and attribute classes}
 %</header>
 %    \end{macrocode}

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -47,13 +47,13 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{implementation}
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-tree-code} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-tree-code} {2024-01-26} {0.98t}
  {part of tagpdf - code related to writing trees and dictionaries to the pdf}
 %</header>
 %    \end{macrocode}
@@ -191,49 +191,26 @@
 % \begin{macro}{\@@_tree_write_structtreeroot:}
 % This writes out the root object.
 %    \begin{macrocode}
-\pdf_version_compare:NnTF < {2.0}   
- { 
-   \cs_new_protected:Npn \@@_tree_write_structtreeroot:
-     {
-        \@@_prop_gput:cne
-          { g_@@_struct_0_prop }
-          { ParentTree }
-          { \pdf_object_ref:n { @@/tree/parenttree } }
-        \@@_prop_gput:cne
-          { g_@@_struct_0_prop }
-          { RoleMap }
-          { \pdf_object_ref:n { @@/tree/rolemap } } 
-        \@@_struct_fill_kid_key:n { 0 }   
-        \@@_struct_get_dict_content:nN { 0 } \l_@@_tmpa_tl        
-        \pdf_object_write:nne
-            { @@/struct/0 }
-            {dict}
-            {
-             \l_@@_tmpa_tl            
-            }
-     }
- } 
+\cs_new_protected:Npn \@@_tree_write_structtreeroot:
+  {
+     \@@_prop_gput:cne
+       { g_@@_struct_0_prop }
+       { ParentTree }
+       { \pdf_object_ref:n { @@/tree/parenttree } }
+     \@@_prop_gput:cne
+       { g_@@_struct_0_prop }
+       { RoleMap }
+       { \pdf_object_ref:n { @@/tree/rolemap } } 
+     \@@_struct_fill_kid_key:n { 0 }   
+     \@@_struct_get_dict_content:nN { 0 } \l_@@_tmpa_tl        
+     \pdf_object_write:nne
+         { @@/struct/0 }
+         {dict}
+         {
+          \l_@@_tmpa_tl            
+         }
+  } 
 %    \end{macrocode}
-% no RoleMap in pdf 2.0
-%    \begin{macrocode}
- {
-   \cs_new_protected:Npn \@@_tree_write_structtreeroot:
-     {
-        \@@_prop_gput:cne
-          { g_@@_struct_0_prop }
-          { ParentTree }
-          { \pdf_object_ref:n { @@/tree/parenttree } }
-        \@@_struct_fill_kid_key:n { 0 }  
-        \@@_struct_get_dict_content:nN { 0 } \l_@@_tmpa_tl        
-        \pdf_object_write:nne
-            { @@/struct/0 }
-            {dict}
-            {
-             \l_@@_tmpa_tl            
-            }
-     }  
- } 
-%    \end{macrocode}
 % \end{macro}
 %
 % \begin{macro}{\@@_tree_write_structelements:}
@@ -417,12 +394,10 @@
 % The main part here is handled in the role module, here we only define the
 % command which writes it to the PDF.
 % \begin{variable}{@@/tree/rolemap}
-% At first we reserve again an object.
+% At first we reserve again an object. 
+% Rolemap is also used in PDF 2.0 as a fallback.
 %    \begin{macrocode}
-\pdf_version_compare:NnT < {2.0}
-  {
-    \pdf_object_new:n { @@/tree/rolemap }
-  }  
+\pdf_object_new:n { @@/tree/rolemap }
 %    \end{macrocode}
 % \end{variable}
 %
@@ -430,29 +405,29 @@
 % This writes out the rolemap, basically it simply pushes out
 % the dictionary which has been filled in the role module.
 %    \begin{macrocode}
-\pdf_version_compare:NnTF < {2.0}
-  {
-   \cs_new_protected:Npn \@@_tree_write_rolemap:
-    {     
-      \prop_map_inline:Nn\g_@@_role_rolemap_prop
+\cs_new_protected:Npn \@@_tree_write_rolemap:
+ {     
+   \bool_if:NT \g_@@_role_add_mathml_bool 
+     { 
+       \prop_map_inline:Nn \g_@@_role_NS_mathml_prop
         {
-          \tl_if_eq:nnF {##1}{##2}
-           {
-             \pdfdict_gput:nne {g_@@_role/RoleMap_dict}
-              {##1}
-              {\pdf_name_from_unicode_e:n{##2}}
-           }   
+          \prop_gput:Nnn \g_@@_role_rolemap_prop {##1}{Span}
         }
-      \pdf_object_write:nne  { @@/tree/rolemap }{dict}
-       {
-        \pdfdict_use:n{g_@@_role/RoleMap_dict}
-       }
+     }
+   \prop_map_inline:Nn\g_@@_role_rolemap_prop
+     {
+       \tl_if_eq:nnF {##1}{##2}
+        {
+          \pdfdict_gput:nne {g_@@_role/RoleMap_dict}
+           {##1}
+           {\pdf_name_from_unicode_e:n{##2}}
+        }   
+     }
+   \pdf_object_write:nne  { @@/tree/rolemap }{dict}
+    {
+     \pdfdict_use:n{g_@@_role/RoleMap_dict}
     }
-  }
-  {
-    \cs_new_protected:Npn \@@_tree_write_rolemap:{}
-  }
-    
+ }
 %    \end{macrocode}
 % \end{macro}
 %

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98s, released 2024-01-19}
+% \date{Version 0.98t, released 2024-01-26}
 % \maketitle
 % \begin{documentation}
 % \section{Setup commands}
@@ -303,7 +303,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-user} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-user} {2024-01-26} {0.98t}
   {tagpdf - user commands}
 %</header>
 %    \end{macrocode}

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx	2024-01-27 20:58:30 UTC (rev 69612)
@@ -84,7 +84,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*package>
-\ProvidesExplPackage {tagpdf} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf} {2024-01-26} {0.98t}
   { A package to experiment with pdf tagging }
 
 \bool_if:nF
@@ -110,7 +110,7 @@
 %    \end{macrocode}
 %<*debug>
 %    \begin{macrocode}
-\ProvidesExplPackage {tagpdf-debug} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-debug} {2024-01-26} {0.98t}
   { debug code for tagpdf }
 \@ifpackageloaded{tagpdf}{}{\PackageWarning{tagpdf-debug}{tagpdf~not~loaded,~quitting}\endinput}
 %    \end{macrocode}
@@ -133,7 +133,7 @@
 % we define a base package with dummy functions
 %    \begin{macrocode}
 %<*base>
-\ProvidesExplPackage {tagpdf-base} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-base} {2024-01-26} {0.98t}
   {part of tagpdf - provide base, no-op versions of the user commands }
 %</base>
 %    \end{macrocode} 

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty	2024-01-27 20:58:30 UTC (rev 69612)
@@ -25,7 +25,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf.dtx
-\ProvidesExplPackage {tagpdf-base} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-base} {2024-01-26} {0.98t}
   {part of tagpdf - provide base, no-op versions of the user commands }
 \AddToHook{begindocument}
  {

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-mc-generic.dtx
-\ProvidesExplPackage {tagpdf-debug-generic} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-debug-generic} {2024-01-26} {0.98t}
  {part of tagpdf - debugging code related to marking chunks - generic mode}
 \cs_set_protected:Npn \tag_mc_begin:n #1 %#1 keyval
   {

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-mc-luacode.dtx
-\ProvidesExplPackage {tagpdf-debug-lua} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-debug-lua} {2024-01-26} {0.98t}
  {part of tagpdf - debugging code related to marking chunks - lua mode}
 \cs_set_protected:Npn \__tag_mc_handle_stash:n #1 %1 mcidnum
   {

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty	2024-01-27 20:58:30 UTC (rev 69612)
@@ -26,7 +26,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf.dtx
-\ProvidesExplPackage {tagpdf-debug} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-debug} {2024-01-26} {0.98t}
   { debug code for tagpdf }
 \@ifpackageloaded{tagpdf}{}{\PackageWarning{tagpdf-debug}{tagpdf~not~loaded,~quitting}\endinput}
 \prop_gput:Nnn \g_msg_module_type_prop { tag / debug} {}

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-backend.dtx
-\ProvidesExplFile {tagpdf-luatex.def} {2024-01-19} {0.98s}
+\ProvidesExplFile {tagpdf-luatex.def} {2024-01-26} {0.98t}
   {tagpdf~driver~for~luatex}
 {
   \fontencoding{TU}\fontfamily{lmr}\fontseries{m}\fontshape{n}\fontsize{10pt}{10pt}\selectfont

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-mc-generic.dtx
-\ProvidesExplPackage {tagpdf-mc-code-generic} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-mc-code-generic} {2024-01-26} {0.98t}
  {part of tagpdf - code related to marking chunks - generic mode}
 \tl_new:N \l__tag_mc_ref_abspage_tl
 

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-mc-luacode.dtx
-\ProvidesExplPackage {tagpdf-mc-code-lua} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf-mc-code-lua} {2024-01-26} {0.98t}
   {tagpdf - mc code only for the luamode }
 \hook_gput_code:nnn{begindocument}{tagpdf/mc}
   {

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2024-01-26} {0.98t}
 %% {latex-book} {https://www.latex-project.org/ns/book/2022}{}
 chapter,       H1,pdf2,
 section,       H2,pdf2,

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-inline.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-inline.def	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-inline.def	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2024-01-26} {0.98t}
 %% {latex-inline} {https://www.latex-project.org/ns/inline/2022}{}
 chapter,       Span, pdf2,
 section,       Span, pdf2,

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-latex.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-latex.def} {2024-01-26} {0.98t}
 %% {latex} {https://www.latex-project.org/ns/dflt/2022}{}
 title,        Title,    pdf2,
 part,         Title,    pdf2,

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2024-01-26} {0.98t}
 abs,abs,mathml,
 and,and,mathml,
 annotation,annotation,mathml,

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2024-01-26} {0.98t}
 %%  {pdf}   {http://iso.org/pdf/ssn}{}
 StructTreeRoot,StructTreeRoot,pdf,D,
 Document,Document,pdf,D,

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2024-01-26} {0.98t}
 %%  {pdf2}  {http://iso.org/pdf2/ssn}{}
 StructTreeRoot,StructTreeRoot,pdf2,D,
 Document,Document,pdf2,D,

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2024-01-26} {0.98t}
 ,,,StructTreeRoot,Document,DocumentFragment,Art,Part,Div,Sect,Aside,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Title,Sub,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Em,Strong,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,FENote,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,math,mathml,Artifact,MC
 Document,both,document level,1,0..n,0..n,∅,‡,‡,∅,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅
 DocumentFragment,2.0,document level,∅,0..n,0..n,0..n,‡,‡,0..n,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅*,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,0..n,∅

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv	2024-01-27 20:58:30 UTC (rev 69612)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-parent-child.csv} {2024-01-19} {0.98s}
+%% \ProvidesExplFile {tagpdf-parent-child.csv} {2024-01-26} {0.98t}
 ,,,StructTreeRoot,Document,Art,Part,Div,Sect,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,MC
 Document,both,document level,1,0..n,∅,‡,‡,∅,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅
 Art,1.7,grouping,∅,0..n,∅,‡,‡,0..n,0..n,‡,∅,∅,∅,0..n,∅,0..n,∅,∅,∅,0..1,0..1,∅,∅,∅,0..n,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅,∅,0..n,0..n,∅,∅,∅,0..n,0..n,∅,∅

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua	2024-01-27 20:58:30 UTC (rev 69612)
@@ -24,8 +24,8 @@
 
 local ProvidesLuaModule = {
     name          = "tagpdf",
-    version       = "0.98s",       --TAGVERSION
-    date          = "2024-01-19", --TAGDATE
+    version       = "0.98t",       --TAGVERSION
+    date          = "2024-01-26", --TAGDATE
     description   = "tagpdf lua code",
     license       = "The LATEX Project Public License 1.3c"
 }

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty	2024-01-27 20:58:30 UTC (rev 69612)
@@ -28,7 +28,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf.dtx
-\ProvidesExplPackage {tagpdf} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf} {2024-01-26} {0.98t}
   { A package to experiment with pdf tagging }
 
 \bool_if:nF
@@ -799,45 +799,25 @@
           { IDTree }
           { \pdf_object_ref_last: }
    }
-\pdf_version_compare:NnTF < {2.0}
- {
-   \cs_new_protected:Npn \__tag_tree_write_structtreeroot:
-     {
-        \__tag_prop_gput:cne
-          { g__tag_struct_0_prop }
-          { ParentTree }
-          { \pdf_object_ref:n { __tag/tree/parenttree } }
-        \__tag_prop_gput:cne
-          { g__tag_struct_0_prop }
-          { RoleMap }
-          { \pdf_object_ref:n { __tag/tree/rolemap } }
-        \__tag_struct_fill_kid_key:n { 0 }
-        \__tag_struct_get_dict_content:nN { 0 } \l__tag_tmpa_tl
-        \pdf_object_write:nne
-            { __tag/struct/0 }
-            {dict}
-            {
-             \l__tag_tmpa_tl
-            }
-     }
- }
- {
-   \cs_new_protected:Npn \__tag_tree_write_structtreeroot:
-     {
-        \__tag_prop_gput:cne
-          { g__tag_struct_0_prop }
-          { ParentTree }
-          { \pdf_object_ref:n { __tag/tree/parenttree } }
-        \__tag_struct_fill_kid_key:n { 0 }
-        \__tag_struct_get_dict_content:nN { 0 } \l__tag_tmpa_tl
-        \pdf_object_write:nne
-            { __tag/struct/0 }
-            {dict}
-            {
-             \l__tag_tmpa_tl
-            }
-     }
- }
+\cs_new_protected:Npn \__tag_tree_write_structtreeroot:
+  {
+     \__tag_prop_gput:cne
+       { g__tag_struct_0_prop }
+       { ParentTree }
+       { \pdf_object_ref:n { __tag/tree/parenttree } }
+     \__tag_prop_gput:cne
+       { g__tag_struct_0_prop }
+       { RoleMap }
+       { \pdf_object_ref:n { __tag/tree/rolemap } }
+     \__tag_struct_fill_kid_key:n { 0 }
+     \__tag_struct_get_dict_content:nN { 0 } \l__tag_tmpa_tl
+     \pdf_object_write:nne
+         { __tag/struct/0 }
+         {dict}
+         {
+          \l__tag_tmpa_tl
+         }
+  }
 \cs_new_protected:Npn \__tag_tree_write_structelements:
   {
     \int_step_inline:nnnn {1}{1}{\c at g__tag_struct_abs_int}
@@ -947,33 +927,30 @@
         /Nums\c_space_tl [\l__tag_parenttree_content_tl]
       }
   }
-\pdf_version_compare:NnT < {2.0}
-  {
-    \pdf_object_new:n { __tag/tree/rolemap }
-  }
-\pdf_version_compare:NnTF < {2.0}
-  {
-   \cs_new_protected:Npn \__tag_tree_write_rolemap:
-    {
-      \prop_map_inline:Nn\g__tag_role_rolemap_prop
+\pdf_object_new:n { __tag/tree/rolemap }
+\cs_new_protected:Npn \__tag_tree_write_rolemap:
+ {
+   \bool_if:NT \g__tag_role_add_mathml_bool
+     {
+       \prop_map_inline:Nn \g__tag_role_NS_mathml_prop
         {
-          \tl_if_eq:nnF {##1}{##2}
-           {
-             \pdfdict_gput:nne {g__tag_role/RoleMap_dict}
-              {##1}
-              {\pdf_name_from_unicode_e:n{##2}}
-           }
+          \prop_gput:Nnn \g__tag_role_rolemap_prop {##1}{Span}
         }
-      \pdf_object_write:nne  { __tag/tree/rolemap }{dict}
-       {
-        \pdfdict_use:n{g__tag_role/RoleMap_dict}
-       }
+     }
+   \prop_map_inline:Nn\g__tag_role_rolemap_prop
+     {
+       \tl_if_eq:nnF {##1}{##2}
+        {
+          \pdfdict_gput:nne {g__tag_role/RoleMap_dict}
+           {##1}
+           {\pdf_name_from_unicode_e:n{##2}}
+        }
+     }
+   \pdf_object_write:nne  { __tag/tree/rolemap }{dict}
+    {
+     \pdfdict_use:n{g__tag_role/RoleMap_dict}
     }
-  }
-  {
-    \cs_new_protected:Npn \__tag_tree_write_rolemap:{}
-  }
-
+ }
 \cs_new_protected:Npn \__tag_tree_write_classmap:
   {
     \tl_clear:N \l__tag_tmpa_tl
@@ -1155,12 +1132,10 @@
     \int_to_Hex:n{\int_rand:n {16777215}}
     \int_to_Hex:n{\int_rand:n {16777215}}
   }
+\bool_new:N \g__tag_role_add_mathml_bool
 \__tag_role_NS_new:nnn {pdf}   {http://iso.org/pdf/ssn}{}
 \__tag_role_NS_new:nnn {pdf2}  {http://iso.org/pdf2/ssn}{}
-\pdf_version_compare:NnF < {2.0}
-  {
-    \__tag_role_NS_new:nnn {mathml}{http://www.w3.org/1998/Math/MathML}{}
-  }
+\__tag_role_NS_new:nnn {mathml}{http://www.w3.org/1998/Math/MathML}{}
 \__tag_role_NS_new:nnn {latex} {https://www.latex-project.org/ns/dflt/2022}{}
 \__tag_role_NS_new:nnn {latex-book} {https://www.latex-project.org/ns/book/2022}{}
 \__tag_role_NS_new:nnn {latex-inline} {https://www.latex-project.org/ns/inline/2022}{}
@@ -1290,6 +1265,20 @@
             \prop_gput:cno { g__tag_role_NS_#2_prop } {#1}{\l__tag_tmpa_tl}
           }
       }
+     \tl_if_empty:nF { #3 }
+      {
+        \tl_if_eq:nnF{#1}{#3}
+         {
+          \prop_get:NnN \g__tag_role_rolemap_prop {#3}\l__tag_tmpa_tl
+           \quark_if_no_value:NTF \l__tag_tmpa_tl
+            {
+              \prop_gput:Nne \g__tag_role_rolemap_prop {#1}{\tl_to_str:n{#3}}
+            }
+            {
+              \prop_gput:NnV \g__tag_role_rolemap_prop {#1}\l__tag_tmpa_tl
+            }
+          }
+       }
    }
 \cs_generate_variant:Nn \__tag_role_add_tag:nnnn {VVVV}
 \pdf_version_compare:NnF < {2.0}
@@ -1400,8 +1389,7 @@
   }
 \__tag_role_read_namespace:n {pdf}
 \__tag_role_read_namespace:n {pdf2}
-\pdf_version_compare:NnF < {2.0}
-  {\__tag_role_read_namespace:n {mathml}}
+\__tag_role_read_namespace:n {mathml}
 \bool_set_false:N\l__tag_role_update_bool
 \__tag_role_read_namespace:n {latex-inline}
 \__tag_role_read_namespace:n {latex-book}
@@ -1763,7 +1751,8 @@
 
 \keys_define:nn { __tag / setup }
   {
-    add-new-tag .code:n =
+     mathml-tags .bool_gset:N = \g__tag_role_add_mathml_bool
+    ,add-new-tag .code:n =
      {
        \keys_set_known:nnnN
          {__tag/tag-role}

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty	2024-01-27 20:58:13 UTC (rev 69611)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty	2024-01-27 20:58:30 UTC (rev 69612)
@@ -1,5 +1,5 @@
 %\RequirePackage[enable-debug]{expl3}[2018/06/14]
-\ProvidesExplPackage {tagpdfdocu-patches} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdfdocu-patches} {2024-01-26} {0.98t}
  {patches/commands for the tagpdf documentation}
 \RequirePackage{etoolbox,xpatch}
 



More information about the tex-live-commits mailing list.