texlive[68805] Master/texmf-dist: tagpdf (10nov23)

commits+karl at tug.org commits+karl at tug.org
Fri Nov 10 22:41:16 CET 2023


Revision: 68805
          https://tug.org/svn/texlive?view=revision&revision=68805
Author:   karl
Date:     2023-11-10 22:41:15 +0100 (Fri, 10 Nov 2023)
Log Message:
-----------
tagpdf (10nov23)

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/source/latex/tagpdf/tagpdf.ins
    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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/doc/latex/tagpdf/README.md	2023-11-10 21:41:15 UTC (rev 68805)
@@ -1,6 +1,6 @@
 #tagpdf — A package to create tagged pdf
-Packageversion: 0.98m 
-Packagedate: 2023/10/27
+Packageversion: 0.98n 
+Packagedate: 2023/11/10
 Author: Ulrike Fischer
 
 ## 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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex	2023-11-10 21:41:15 UTC (rev 68805)
@@ -16,8 +16,8 @@
  }
 \DebugBlocksOff
 \makeatletter
-\def\UlrikeFischer at package@version{0.98m}
-\def\UlrikeFischer at package@date{2023-10-27}
+\def\UlrikeFischer at package@version{0.98n}
+\def\UlrikeFischer at package@date{2023-11-10}
 \makeatother
 
 \documentclass[bibliography=totoc,a4paper]{article}
@@ -117,27 +117,31 @@
 \tagstructbegin{tag=Div}
 \begin{tcolorbox}[colframe=red,before upper=\tagpdfparaOn]
 
-This package is not meant for normal document production. It is mainly a tool to \emph{research}
-tagging.
+This package is not meant for normal use in a document. It is on one mainly a tool to \emph{research}
+tagging. On the other side it is the base of the code developed in the \texttt{latex-lab} bundle for the
+Tagged PDF project \url{https://www.latex-project.org/publications/indexbytopic/pdf/}.
 
-You need a very current \LaTeX{} format.
-You need a very current L3 programming layer.
-You need the new \LaTeX{} PDF management bundle.
+The package develops together with the code in the \texttt{latex-lab} bundle, in the 
+\LaTeX{} format, in the \texttt{pdfmanagement-testphase} package (the \LaTeX{} PDF management bundle)
+and the L3 programming layer. 
+That means you should ensure that all these components are up-to-date and in sync which each 
+other. 
 
-This package is incomplete, experimental and quite probably contains bugs. It is in parts
-quite slow as the code prefers readability over speed.
+This package quite probably contains bugs. It is in parts
+quite slow as the code currently prefers readability over speed.
 At some time it will disappear when the code has been integrated into the \LaTeX{} format.
 
-This package can change in an incompatible way.
+This package can still change in an incompatible way.
 
 You need some knowledge about \TeX, \PDF{} and perhaps even lua to use it.
 
 \medskip
 
-Issues, comments, suggestions should be added as issues to the github tracker:
+Issues, comments, suggestions can be added as issues to these two github tracker:
 
 \medskip
 \centering
+\url{https://github.com/latex3/tagging-project}\par
 \url{https://github.com/u-fischer/tagpdf}
 
 \end{tcolorbox}

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -47,13 +47,13 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \maketitle
 % \begin{implementation}
 %    \begin{macrocode}
 %<@@=tag>
 %<*luatex>
-\ProvidesExplFile {tagpdf-luatex.def} {2023-10-27} {0.98m}
+\ProvidesExplFile {tagpdf-luatex.def} {2023-11-10} {0.98n}
   {tagpdf~driver~for~luatex}
 %    \end{macrocode}
 % \section{Loading the lua}
@@ -158,8 +158,8 @@
 
 local ProvidesLuaModule = {
     name          = "tagpdf",
-    version       = "0.98m",       --TAGVERSION
-    date          = "2023-10-27", --TAGDATE
+    version       = "0.98n",       --TAGVERSION
+    date          = "2023-11-10", --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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-checks.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -48,7 +48,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \maketitle
 % \begin{documentation}
 % \section{Commands}
@@ -313,7 +313,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-checks-code} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-checks-code} {2023-11-10} {0.98n}
  {part of tagpdf - code related to checks, conditionals, debugging and messages}
 %</header>
 %    \end{macrocode}
@@ -681,7 +681,7 @@
   {
     \prop_if_in:NoF \g_@@_role_tags_NS_prop {#1}
       {
-        \msg_warning:nnx { tag } {role-unknown-tag} {#1}
+        \msg_warning:nne { tag } {role-unknown-tag} {#1}
       }
   }
 %    \end{macrocode}
@@ -698,7 +698,7 @@
       }
   }
 
-\cs_generate_variant:Nn \@@_check_info_closing_struct:n {o,x}
+\cs_generate_variant:Nn \@@_check_info_closing_struct:n {o,e}
 %    \end{macrocode}
 % \end{macro}
 % \begin{macro}{\@@_check_no_open_struct:}
@@ -785,7 +785,7 @@
   {
     \@@_mc_if_in:T
       {
-        \msg_warning:nnx { tag } {mc-nested} { \@@_get_mc_abs_cnt: }
+        \msg_warning:nne { tag } {mc-nested} { \@@_get_mc_abs_cnt: }
       }
   }
 
@@ -793,7 +793,7 @@
   {
     \@@_mc_if_in:F
       {
-        \msg_warning:nnx { tag } {mc-not-open} { \@@_get_mc_abs_cnt: }
+        \msg_warning:nne { tag } {mc-not-open} { \@@_get_mc_abs_cnt: }
       }
   }
 %    \end{macrocode}
@@ -807,11 +807,11 @@
   {
     \int_compare:nNnT
       { \l_@@_loglevel_int } ={ 2 }
-      { \msg_info:nnx {tag}{mc-#1}{#2} }
+      { \msg_info:nne {tag}{mc-#1}{#2} }
     \int_compare:nNnT
       { \l_@@_loglevel_int } > { 2 }
       {
-        \msg_info:nnx {tag}{mc-#1}{#2}
+        \msg_info:nne {tag}{mc-#1}{#2}
         \seq_log:N \g_@@_mc_stack_seq
       }
   }
@@ -824,11 +824,11 @@
   {
     \tl_if_empty:NT #1
       {
-        \msg_error:nnx { tag } {mc-tag-missing} { \@@_get_mc_abs_cnt: }
+        \msg_error:nne { tag } {mc-tag-missing} { \@@_get_mc_abs_cnt: }
       }
    \prop_if_in:NoF \g_@@_role_tags_NS_prop {#1}
      {
-       \msg_warning:nnx { tag } {role-unknown-tag} {#1}
+       \msg_warning:nne { tag } {role-unknown-tag} {#1}
      }
   }
 %    \end{macrocode}
@@ -882,7 +882,7 @@
 %    \begin{macrocode}
 \cs_new_protected:Npn \@@_check_show_MCID_by_page:
   {
-    \tl_set:Nx \l_@@_tmpa_tl
+    \tl_set:Ne \l_@@_tmpa_tl
       {
         \@@_property_ref_lastpage:nn
           {abspage}
@@ -913,7 +913,7 @@
                 ##1
              }
              {
-               \seq_gput_right:Nx \l_tmpa_seq
+               \seq_gput_right:Ne \l_tmpa_seq
                  {
                    Page##1-####1-
                    \@@_property_ref:enn
@@ -1081,7 +1081,7 @@
            {#1}
            {\exp_last_unbraced:NV\use_i:nn \l_@@_tmpa_tl}      
            {
-             \msg_warning:nnxx { tag/debug }{ struct-end-wrong } 
+             \msg_warning:nnee { tag/debug }{ struct-end-wrong } 
               {#1}
               {\exp_last_unbraced:NV\use_i:nn \l_@@_tmpa_tl}
            }                    

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -47,7 +47,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \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} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-latex.def} {2023-11-10} {0.98n}
 %% {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} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2023-11-10} {0.98n}
 %% {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} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2023-11-10} {0.98n}
 %% {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} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2023-11-10} {0.98n}
 %%  {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} {2023-10-27} {0.98m} 
+%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2023-11-10} {0.98n} 
 %%  {pdf2}  {http://iso.org/pdf2/ssn}{}
 Document,Document,pdf2,D,   
 Part,Part,pdf2,G,       
@@ -246,7 +246,7 @@
 % \section{The mathml namespace data}
 %    \begin{macrocode}
 %<*ns-mathml>
-%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2023-11-10} {0.98n}
 % {mathml}{http://www.w3.org/1998/Math/MathML}{}
 abs,abs,mathml,
 and,and,mathml,
@@ -481,7 +481,7 @@
 % This will perhaps change in future.
 %    \begin{macrocode}
 %<*parent-child>
-%% \ProvidesExplFile {tagpdf-parent-child.csv} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-parent-child.csv} {2023-11-10} {0.98n}
 ,,,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,∅,∅
@@ -536,7 +536,7 @@
 % This will perhaps change in future.
 %    \begin{macrocode}
 %<*parent-child-2>
-%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2023-11-10} {0.98n}
 ,,,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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-generic.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \maketitle
 % \begin{documentation}
 % \end{documentation}
@@ -55,11 +55,11 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*generic>
-\ProvidesExplPackage {tagpdf-mc-code-generic} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-mc-code-generic} {2023-11-10} {0.98n}
  {part of tagpdf - code related to marking chunks - generic mode}
 %</generic>
 %<*debug>
-\ProvidesExplPackage {tagpdf-debug-generic} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-debug-generic} {2023-11-10} {0.98n}
  {part of tagpdf - debugging code related to marking chunks - generic mode}
 %</debug>
 %    \end{macrocode}
@@ -212,10 +212,10 @@
 %    \begin{macrocode}
 \cs_new_protected:Npn \@@_mc_get_marks:
  {
-   \exp_args:NNx
+   \exp_args:NNe
    \seq_set_from_clist:Nn \l_@@_mc_firstmarks_seq
      { \tex_firstmarks:D \g_@@_mc_marks }
-   \exp_args:NNx
+   \exp_args:NNe
    \seq_set_from_clist:Nn \l_@@_mc_botmarks_seq
      { \tex_botmarks:D   \g_@@_mc_marks }
  }
@@ -235,16 +235,16 @@
     %\prop_show:N \g_@@_struct_cont_mc_prop
     \prop_get:NnNTF \g_@@_struct_cont_mc_prop {#1} \l_@@_tmpa_tl
       {
-        \prop_gput:Nnx \g_@@_struct_cont_mc_prop {#1}{ \l_@@_tmpa_tl \@@_struct_mcid_dict:n {#2}}
+        \prop_gput:Nne \g_@@_struct_cont_mc_prop {#1}{ \l_@@_tmpa_tl \@@_struct_mcid_dict:n {#2}}
       }
       {
-        \prop_gput:Nnx \g_@@_struct_cont_mc_prop {#1}{ \@@_struct_mcid_dict:n {#2}}
+        \prop_gput:Nne \g_@@_struct_cont_mc_prop {#1}{ \@@_struct_mcid_dict:n {#2}}
       }
-    \prop_gput:Nxx \g_@@_mc_parenttree_prop
+    \prop_gput:Nee \g_@@_mc_parenttree_prop
       {#2}
       {#3}
   }
-\cs_generate_variant:Nn \@@_mc_store:nnn {xxx}
+\cs_generate_variant:Nn \@@_mc_store:nnn {eee}
 %    \end{macrocode}
 % \end{macro}
 %
@@ -272,11 +272,11 @@
          %test if artifact
          \int_compare:nNnTF { \seq_item:cn { g_@@_mc_#1_marks_seq } {3} } = {-1}
            {
-              \tl_set:Nx \l_@@_tmpa_tl { \seq_item:cn { g_@@_mc_#1_marks_seq } {4} }
+              \tl_set:Ne \l_@@_tmpa_tl { \seq_item:cn { g_@@_mc_#1_marks_seq } {4} }
               \@@_mc_handle_artifact:N \l_@@_tmpa_tl
            }
            {
-              \exp_args:Nx
+              \exp_args:Ne
               \@@_mc_bdc_mcid:n
                 {
                   \seq_item:cn { g_@@_mc_#1_marks_seq } {4}
@@ -288,7 +288,7 @@
                 {}
                 {
                   %store
-                  \@@_mc_store:xxx
+                  \@@_mc_store:eee
                     {
                       \seq_item:cn { g_@@_mc_#1_marks_seq } {2}
                     }
@@ -422,7 +422,7 @@
 %    bottom split marks set up. We use this to set up
 %    \cs{l_@@_mc_firstmarks_seq}
 %    \begin{macrocode}
-    \exp_args:NNx
+    \exp_args:NNe
     \seq_set_from_clist:Nn \l_@@_mc_firstmarks_seq
         { \tex_splitfirstmarks:D \g_@@_mc_marks }
 %    \end{macrocode}
@@ -465,7 +465,7 @@
             {
               Pick~ up~ new~ bot~ mark!
             }
-          \exp_args:NNx
+          \exp_args:NNe
           \seq_set_from_clist:Nn \l_@@_mc_botmarks_seq
               { \tex_splitbotmarks:D   \g_@@_mc_marks }
         }
@@ -569,7 +569,7 @@
    \msg_warning:nn { tagpdf} { old-engine }   
    \@@_prop_new:N \g_@@_MCID_byabspage_prop
    \int_new:N \g_@@_MCID_tmp_bypage_int
-   \cs_generate_variant:Nn \@@_mc_bdc:nn {nx}
+   \cs_generate_variant:Nn \@@_mc_bdc:nn {ne}
 %    \end{macrocode}
 % revert the attribute:
 %    \begin{macrocode}
@@ -578,7 +578,7 @@
    \cs_new_protected:Npn \@@_mc_bdc_mcid:nn #1 #2
      {
        \int_gincr:N \c at g_@@_MCID_abs_int
-       \tl_set:Nx \l_@@_mc_ref_abspage_tl
+       \tl_set:Ne \l_@@_mc_ref_abspage_tl
          {
            \@@_property_ref:enn %3 args
              {
@@ -596,7 +596,7 @@
          {
            %key already present, use value for MCID and add 1 for the next
            \int_gset:Nn \g_@@_MCID_tmp_bypage_int { \l_@@_mc_tmpa_tl }
-           \@@_prop_gput:Nxx
+           \@@_prop_gput:Nee
              \g_@@_MCID_byabspage_prop
              { \l_@@_mc_ref_abspage_tl }
              { \int_eval:n {\l_@@_mc_tmpa_tl +1} }
@@ -604,7 +604,7 @@
          {
            %key not present, set MCID to 0 and insert 1
            \int_gzero:N \g_@@_MCID_tmp_bypage_int
-           \@@_prop_gput:Nxx
+           \@@_prop_gput:Nee
              \g_@@_MCID_byabspage_prop
              { \l_@@_mc_ref_abspage_tl }
              {1}
@@ -614,7 +614,7 @@
            mcid-\int_use:N \c at g_@@_MCID_abs_int
          }
          \c_@@_property_mc_clist
-        \@@_mc_bdc:nx
+        \@@_mc_bdc:ne
           {#1}
           { /MCID~\int_eval:n { \g_@@_MCID_tmp_bypage_int }~ \exp_not:n { #2 } }
       }        
@@ -633,7 +633,7 @@
 %    \end{macrocode}
 % \end{macro}
 
-% \begin{macro}{\@@_mc_handle_stash:n,\@@_mc_handle_stash:x}
+% \begin{macro}{\@@_mc_handle_stash:n,\@@_mc_handle_stash:e}
 % This is the handler which puts a mc into the
 % the current structure. The argument is the number of the mc.
 % Beside storing the mc into the structure, it also has to record the
@@ -648,11 +648,11 @@
     \@@_struct_kid_mc_gput_right:nn
       { \g_@@_struct_stack_current_tl }
       {#1}
-   \prop_gput:Nxx \g_@@_mc_parenttree_prop
+   \prop_gput:Nee \g_@@_mc_parenttree_prop
      {#1}
      { \g_@@_struct_stack_current_tl }
   }
-\cs_generate_variant:Nn \@@_mc_handle_stash:n { x }
+\cs_generate_variant:Nn \@@_mc_handle_stash:n { e }
 %    \end{macrocode}
 % \end{macro}
 
@@ -761,7 +761,7 @@
                      { g_@@_struct_ \g_@@_struct_stack_current_tl _prop}
                      {S}
                      \l_@@_tmpa_tl
-                    \msg_warning:nnxxx 
+                    \msg_warning:nneee 
                      { tag } 
                      {role-parent-child} 
                      { \l_@@_get_parent_tmpa_tl/\l_@@_get_parent_tmpb_tl  } 
@@ -770,7 +770,7 @@
                        (struct~\g_@@_struct_stack_current_tl,~\l_@@_tmpa_tl)
                      }  
                  }    
-                \@@_mc_handle_stash:x { \int_use:N \c at g_@@_MCID_abs_int }
+                \@@_mc_handle_stash:e { \int_use:N \c at g_@@_MCID_abs_int }
               }
           }
         \group_end:
@@ -830,12 +830,12 @@
   {
     tag .code:n = % the name (H,P,Span) etc
       {
-        \tl_set:Nx   \l_@@_mc_key_tag_tl { #1 }
-        \tl_gset:Nx  \g_@@_mc_key_tag_tl { #1 }
+        \tl_set:Ne   \l_@@_mc_key_tag_tl { #1 }
+        \tl_gset:Ne  \g_@@_mc_key_tag_tl { #1 }
       },
     raw  .code:n =
       {
-        \tl_put_right:Nx \l_@@_mc_key_properties_tl { #1 }
+        \tl_put_right:Ne \l_@@_mc_key_properties_tl { #1 }
       },
     alt .code:n      = % Alt property
       {
@@ -864,7 +864,7 @@
     label .tl_set:N        = \l_@@_mc_key_label_tl,
     artifact .code:n       =
       {
-        \exp_args:Nnx
+        \exp_args:Nne
           \keys_set:nn
             { @@ / mc }
             { __artifact-bool, __artifact-type=#1 }

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \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} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-mc-code-lua} {2023-11-10} {0.98n}
   {tagpdf - mc code only for the luamode }
 %</luamode>
 %<*debug>
-\ProvidesExplPackage {tagpdf-debug-lua} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-debug-lua} {2023-11-10} {0.98n}
  {part of tagpdf - debugging code related to marking chunks - lua mode}
 %</debug>
 %    \end{macrocode}
@@ -194,7 +194,7 @@
 \cs_new:Nn \@@_mc_lua_set_mc_type_attr:n % #1 is a tag name
   {
     %TODO ltx.@@.func.get_num_from("#1") seems not to return a suitable number??
-    \tl_set:Nx\l_@@_tmpa_tl{\lua_now:e{ltx.@@.func.output_num_from ("#1")} }
+    \tl_set:Ne\l_@@_tmpa_tl{\lua_now:e{ltx.@@.func.output_num_from ("#1")} }
     \lua_now:e
       {
         tex.setattribute
@@ -261,7 +261,7 @@
 %    \end{macrocode}
 % \end{macro}
 %
-%\begin{macro}{\@@_mc_handle_stash:n,\@@_mc_handle_stash:x}
+%\begin{macro}{\@@_mc_handle_stash:n,\@@_mc_handle_stash:e}
 % This is the lua variant for the command to
 % put an mcid absolute number in the current structure.
 %    \begin{macrocode}
@@ -290,7 +290,7 @@
             \g_@@_struct_stack_current_tl,#1
           )
       }
-    \prop_gput:Nxx
+    \prop_gput:Nee
       \g_@@_mc_parenttree_prop
       { #1 }
       { \g_@@_struct_stack_current_tl }
@@ -297,7 +297,7 @@
   }
 %</luamode|debug>
 %<*luamode>
-\cs_generate_variant:Nn \@@_mc_handle_stash:n { x }
+\cs_generate_variant:Nn \@@_mc_handle_stash:n { e }
 %    \end{macrocode}
 % \end{macro}
 %
@@ -355,7 +355,7 @@
                     { g_@@_struct_ \g_@@_struct_stack_current_tl _prop}
                     {S}
                     \l_@@_tmpa_tl
-                   \msg_warning:nnxxx 
+                   \msg_warning:nneee 
                      { tag } 
                      {role-parent-child} 
                      { \l_@@_get_parent_tmpa_tl/\l_@@_get_parent_tmpb_tl  } 
@@ -365,7 +365,7 @@
                        (struct~\g_@@_struct_stack_current_tl,~\l_@@_tmpa_tl)
                      } 
                  }    
-                \@@_mc_handle_stash:x { \@@_get_mc_abs_cnt: }
+                \@@_mc_handle_stash:e { \@@_get_mc_abs_cnt: }
               }
           }
         \group_end:
@@ -432,8 +432,8 @@
   {
     tag .code:n = %
       {
-        \tl_set:Nx   \l_@@_mc_key_tag_tl { #1 }
-        \tl_gset:Nx  \g_@@_mc_key_tag_tl { #1 }
+        \tl_set:Ne   \l_@@_mc_key_tag_tl { #1 }
+        \tl_gset:Ne  \g_@@_mc_key_tag_tl { #1 }
         \lua_now:e
           {
             ltx.@@.func.store_mc_data(\@@_get_mc_abs_cnt:,"tag","#1")
@@ -441,7 +441,7 @@
       },
     raw .code:n =
       {
-        \tl_put_right:Nx \l_@@_mc_key_properties_tl { #1 }
+        \tl_put_right:Ne \l_@@_mc_key_properties_tl { #1 }
         \lua_now:e
           {
             ltx.@@.func.store_mc_data(\@@_get_mc_abs_cnt:,"raw","#1")
@@ -513,11 +513,11 @@
       },
     artifact .code:n       =
       {
-        \exp_args:Nnx
+        \exp_args:Nne
           \keys_set:nn
             { @@ / mc}
             { __artifact-bool, __artifact-type=#1, tag=Artifact }
-        \exp_args:Nnx
+        \exp_args:Nne
           \keys_set:nn
             { @@ / mc }
             { __artifact-store=\l_@@_mc_artifact_type_tl }

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \maketitle
 % \begin{documentation}
 % \section{Public Commands}
@@ -181,7 +181,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-mc-code-shared} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-mc-code-shared} {2023-11-10} {0.98n}
   {part of tagpdf - code related to marking chunks -
    code shared by generic and luamode }
 %</header>
@@ -328,7 +328,7 @@
   {
     \@@_check_if_active_struct:T
       {
-        \tl_set:Nx  \l_@@_tmpa_tl { \@@_property_ref:nnn{tagpdf-#1}{tagmcabs}{} }
+        \tl_set:Ne  \l_@@_tmpa_tl { \@@_property_ref:nnn{tagpdf-#1}{tagmcabs}{} }
         \tl_if_empty:NTF\l_@@_tmpa_tl
           {
             \msg_warning:nnn {tag} {mc-label-unknown} {#1}
@@ -336,7 +336,7 @@
           {
             \cs_if_free:cTF { g_@@_mc_label_\tl_to_str:n{#1}_used_tl }
               {
-                \@@_mc_handle_stash:x { \l_@@_tmpa_tl }
+                \@@_mc_handle_stash:e { \l_@@_tmpa_tl }
                 \@@_mc_set_label_used:n {#1}
               }
               {
@@ -395,7 +395,7 @@
       {
         \@@_mc_if_in:TF
           {
-            \seq_gpush:Nx \g_@@_mc_stack_seq { \tag_get:n {mc_tag} }
+            \seq_gpush:Ne \g_@@_mc_stack_seq { \tag_get:n {mc_tag} }
             \@@_check_mc_pushed_popped:nn
               { pushed }
               { \tag_get:n {mc_tag} }

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \maketitle
 % \begin{documentation}
 % \begin{function}
@@ -98,7 +98,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-roles-code} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-roles-code} {2023-11-10} {0.98n}
  {part of tagpdf - code related to roles and structure names}
 %</header>
 %    \end{macrocode}
@@ -292,7 +292,7 @@
     {
       \prop_new:c { g_@@_role_NS_#1_prop }
       \prop_new:c { g_@@_role_NS_#1_class_prop }
-      \prop_gput:Nnx \g_@@_role_NS_prop {#1}{}
+      \prop_gput:Nne \g_@@_role_NS_prop {#1}{}
     }
  }
  {
@@ -311,7 +311,7 @@
       \pdf_string_from_unicode:nnN{utf8/string}{#2}\l_@@_tmpa_str
       \tl_if_empty:NF \l_@@_tmpa_str
         {
-          \pdfdict_gput:nnx
+          \pdfdict_gput:nne
             {g_@@_role/Namespace_#1_dict}
             {NS}
             {\l_@@_tmpa_str}
@@ -319,10 +319,10 @@
       %RoleMapNS is added in tree
       \tl_if_empty:nF  {#3}
        {
-         \pdfdict_gput:nnx{g_@@_role/Namespace_#1_dict}
+         \pdfdict_gput:nne{g_@@_role/Namespace_#1_dict}
           {Schema}{#3}
        }
-      \prop_gput:Nnx \g_@@_role_NS_prop {#1}{\pdf_object_ref:n{tag/NS/#1}~}
+      \prop_gput:Nne \g_@@_role_NS_prop {#1}{\pdf_object_ref:n{tag/NS/#1}~}
     }
  }  
 %    \end{macrocode}
@@ -334,7 +334,7 @@
 %
 % \begin{variable}{\c_@@_role_userNS_id_str}
 %    \begin{macrocode}
-\str_const:Nx \c_@@_role_userNS_id_str
+\str_const:Ne \c_@@_role_userNS_id_str
   { data:,
     \int_to_Hex:n{\int_rand:n {65535}}
     \int_to_Hex:n{\int_rand:n {65535}}
@@ -362,7 +362,7 @@
 \@@_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}{}
-\exp_args:Nnx
+\exp_args:Nne
   \@@_role_NS_new:nnn {user}{\c_@@_role_userNS_id_str}{}
 %    \end{macrocode}
 %
@@ -462,7 +462,7 @@
         \prop_get:NnN \g_@@_role_rolemap_prop {#2}\l_@@_tmpa_tl
         \quark_if_no_value:NTF \l_@@_tmpa_tl
           {          
-            \prop_gput:Nnx \g_@@_role_rolemap_prop {#1}{\tl_to_str:n{#2}}
+            \prop_gput:Nne \g_@@_role_rolemap_prop {#1}{\tl_to_str:n{#2}}
           }
           {
             \prop_gput:NnV \g_@@_role_rolemap_prop {#1}\l_@@_tmpa_tl
@@ -516,7 +516,7 @@
 %    \begin{macrocode}
     \tl_if_in:nnF {-pdf-pdf2-mathml-}{-#2-} 
      {
-       \pdfdict_gput:nnx {g_@@_role/RoleMapNS_#2_dict}{#1}
+       \pdfdict_gput:nne {g_@@_role/RoleMapNS_#2_dict}{#1}
           {
             [
               \pdf_name_from_unicode_e:n{#3}
@@ -534,7 +534,7 @@
         \prop_get:cnN { g_@@_role_NS_#4_prop } {#3}\l_@@_tmpa_tl
         \quark_if_no_value:NTF \l_@@_tmpa_tl
           {          
-            \prop_gput:cnx { g_@@_role_NS_#2_prop } {#1}
+            \prop_gput:cne { g_@@_role_NS_#2_prop } {#1}
               {{\tl_to_str:n{#3}}{\tl_to_str:n{#4}}}
           }
           {
@@ -560,8 +560,8 @@
     {
       \prop_get:cnNTF {g_@@_role_NS_#2_prop} {#1}\l_@@_tmpa_tl
         {
-         \tl_set:Nx #3 {\exp_last_unbraced:NV\use_i:nn   \l_@@_tmpa_tl}         
-         \tl_set:Nx #4 {\exp_last_unbraced:NV\use_ii:nn  \l_@@_tmpa_tl}
+         \tl_set:Ne #3 {\exp_last_unbraced:NV\use_i:nn   \l_@@_tmpa_tl}         
+         \tl_set:Ne #4 {\exp_last_unbraced:NV\use_ii:nn  \l_@@_tmpa_tl}
         } 
         {
          \tl_set:Nn #3 {#1}
@@ -807,7 +807,7 @@
           {         
             \seq_map_indexed_inline:Nn \l_@@_tmpa_seq
               {
-                \prop_gput:Nnx\g_@@_role_index_prop 
+                \prop_gput:Nne\g_@@_role_index_prop 
                   {##2}
                   {\int_compare:nNnT{##1}<{10}{0}##1}           
               }  
@@ -836,7 +836,7 @@
 %    \begin{macrocode}
            \seq_map_indexed_inline:Nn \l_@@_tmpa_seq 
              {       
-               \exp_args:Nnx 
+               \exp_args:Nne 
                \@@_store_parent_child_rule:nnn {##1}{\l_@@_tmpb_tl}{ ##2 }       
              }        
          }
@@ -851,19 +851,19 @@
 % Hn and mathml tags are special and need to be added explicitly
 %    \begin{macrocode}
 \prop_get:NnN\g_@@_role_index_prop{StructTreeRoot}\l_@@_tmpa_tl
-\prop_gput:Nnx\g_@@_role_index_prop{Root}{\l_@@_tmpa_tl}
+\prop_gput:Nne\g_@@_role_index_prop{Root}{\l_@@_tmpa_tl}
 \prop_get:NnN\g_@@_role_index_prop{Hn}\l_@@_tmpa_tl
 \pdf_version_compare:NnTF < {2.0}
   {
     \int_step_inline:nn{6}
       {
-        \prop_gput:Nnx\g_@@_role_index_prop{H#1}{\l_@@_tmpa_tl}
+        \prop_gput:Nne\g_@@_role_index_prop{H#1}{\l_@@_tmpa_tl}
       }
   }
   {
     \int_step_inline:nn{10}
       {
-        \prop_gput:Nnx\g_@@_role_index_prop{H#1}{\l_@@_tmpa_tl}
+        \prop_gput:Nne\g_@@_role_index_prop{H#1}{\l_@@_tmpa_tl}
       }
 %    \end{macrocode}
 % all mathml tags are currently handled identically
@@ -908,7 +908,7 @@
 %    \end{macrocode}
 % Get the rule from the intarray
 %    \begin{macrocode}
-         \tl_set:Nx#4 
+         \tl_set:Ne#4 
            { 
              \intarray_item:Nn 
               \g_@@_role_parent_child_intarray 
@@ -938,7 +938,7 @@
                  \tl_set:Nn \l_@@_tmpa_tl {unknown}
                }
              \tl_set:Nn \l_@@_tmpb_tl {#1}
-             \msg_note:nnxxx 
+             \msg_note:nneee 
                { tag } 
                { role-parent-child } 
                { #1 } 
@@ -953,7 +953,7 @@
        }
        {         
          \tl_set:Nn#4 {0}
-         \msg_warning:nnxxx 
+         \msg_warning:nneee 
            { tag } 
            {role-parent-child} 
            { #1 } 
@@ -1025,7 +1025,7 @@
          }   
          {
            \tl_set:Nn #5 {0}
-           \msg_warning:nnxxx 
+           \msg_warning:nneee 
             { tag } 
             {role-parent-child} 
             { #1 } 
@@ -1061,7 +1061,7 @@
          }        
          {
            \tl_set:Nn #3 {0}
-           \msg_warning:nnxxx 
+           \msg_warning:nneee 
             { tag } 
             {role-parent-child} 
             { #1 } 
@@ -1090,7 +1090,7 @@
                {#1}
                \l_@@_tmpa_tl
                {
-                 \tl_set:Nx \l_@@_tmpa_tl {\tl_head:N\l_@@_tmpa_tl}
+                 \tl_set:Ne \l_@@_tmpa_tl {\tl_head:N\l_@@_tmpa_tl}
                  \tl_if_empty:NT\l_@@_tmpa_tl
                    {
                      \tl_set:Nn \l_@@_tmpa_tl {#1}
@@ -1115,7 +1115,7 @@
               {#3}
               \l_@@_tmpb_tl
               {
-                \tl_set:Nx \l_@@_tmpb_tl { \tl_head:N\l_@@_tmpb_tl }
+                \tl_set:Ne \l_@@_tmpb_tl { \tl_head:N\l_@@_tmpb_tl }
                 \tl_if_empty:NT\l_@@_tmpb_tl
                   {
                     \tl_set:Nn \l_@@_tmpb_tl {#3}
@@ -1139,7 +1139,7 @@
          }   
          {
            \tl_set:Nn #5 {0}
-           \msg_warning:nnxxx 
+           \msg_warning:nneee 
             { tag } 
             {role-parent-child} 
             { #1 } 
@@ -1220,11 +1220,11 @@
       {
         \prop_get:cVNT { g_@@_role_NS_latex-inline_prop }\l_@@_role_remap_tag_tl\l_@@_tmpa_tl
           {
-            \tl_set:Nx\l_@@_role_remap_tag_tl
+            \tl_set:Ne\l_@@_role_remap_tag_tl
               {
                 \exp_last_unbraced:NV\use_i:nn \l_@@_tmpa_tl
               }
-            \tl_set:Nx\l_@@_role_remap_NS_tl 
+            \tl_set:Ne\l_@@_role_remap_NS_tl 
               {
                 \exp_last_unbraced:NV\use_ii:nn \l_@@_tmpa_tl
               }
@@ -1231,7 +1231,7 @@
           }
         \int_compare:nNnT {\l_@@_loglevel_int} > { 0 }
           {
-            \msg_note:nnx { tag } { role-remapping }{ \l_@@_role_remap_tag_tl }
+            \msg_note:nne { tag } { role-remapping }{ \l_@@_role_remap_tag_tl }
           }  
       }
   }
@@ -1244,7 +1244,7 @@
           }
         \int_compare:nNnT {\l_@@_loglevel_int} > { 0 }
           {
-            \msg_note:nnx { tag } { role-remapping }{ \l_@@_role_remap_tag_tl/latex-inline }
+            \msg_note:nne { tag } { role-remapping }{ \l_@@_role_remap_tag_tl/latex-inline }
           }  
       }    
   }    
@@ -1284,8 +1284,8 @@
        \tl_if_empty:NF \l_tmpa_tl
          {
            \exp_args:NNno \seq_set_split:Nnn \l_tmpa_seq { / } {\l_tmpa_tl/}
-           \tl_set:Nx \l_@@_role_tag_tmpa_tl  { \seq_item:Nn \l_tmpa_seq {1} }
-           \tl_set:Nx \l_@@_role_role_tmpa_tl { \seq_item:Nn \l_tmpa_seq {2} }
+           \tl_set:Ne \l_@@_role_tag_tmpa_tl  { \seq_item:Nn \l_tmpa_seq {1} }
+           \tl_set:Ne \l_@@_role_role_tmpa_tl { \seq_item:Nn \l_tmpa_seq {2} }
          }
       \tl_if_empty:NT \l_@@_role_role_namespace_tmpa_tl
          {

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \maketitle
 % \begin{documentation}
 % \begin{function}{interwordspace (setup-key)}
@@ -64,7 +64,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-space-code} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-space-code} {2023-11-10} {0.98n}
  {part of tagpdf - code related to real space chars}
 %</header>
 %    \end{macrocode}
@@ -79,9 +79,9 @@
 \keys_define:nn { @@ / setup }
   {
     interwordspace .choices:nn = { true, on }
-      { \msg_warning:nnx {tag}{sys-no-interwordspace}{\c_sys_engine_str}  },
+      { \msg_warning:nne {tag}{sys-no-interwordspace}{\c_sys_engine_str}  },
     interwordspace .choices:nn = { false, off }
-      { \msg_warning:nnx {tag}{sys-no-interwordspace}{\c_sys_engine_str}  },
+      { \msg_warning:nne {tag}{sys-no-interwordspace}{\c_sys_engine_str}  },
     interwordspace .default:n = true,
     show-spaces .bool_set:N = \l_@@_showspaces_bool
   }

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \maketitle
 % \begin{documentation}
 % \section{Public Commands}
@@ -247,7 +247,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-struct-code} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-struct-code} {2023-11-10} {0.98n}
  {part of tagpdf - code related to storing structure}
 %</header>
 %    \end{macrocode}
@@ -663,7 +663,7 @@
 %<package>\cs_new_protected:Npn \@@_struct_kid_mc_gput_right:nn #1 #2 %#1 structure num, #2 MCID absnum%
 %<debug>\cs_set_protected:Npn \@@_struct_kid_mc_gput_right:nn #1 #2 %#1 structure num, #2 MCID absnum%
   {
-    \@@_seq_gput_right:cx
+    \@@_seq_gput_right:ce
       { g_@@_struct_kids_#1_seq }
       {
         \@@_struct_mcid_dict:n {#2}
@@ -692,7 +692,7 @@
 %<package>\cs_new_protected:Npn\@@_struct_kid_struct_gput_right:nn #1 #2 %#1 num of parent struct, #2 kid struct
 %<debug>\cs_set_protected:Npn\@@_struct_kid_struct_gput_right:nn #1 #2 %#1 num of parent struct, #2 kid struct
   {
-    \@@_seq_gput_right:cx
+    \@@_seq_gput_right:ce
       { g_@@_struct_kids_#1_seq }
       {
         \pdf_object_ref:n { @@/struct/#2 }
@@ -725,7 +725,7 @@
       {
         /Type/OBJR/Obj~#2/Pg~#3
       }
-    \@@_seq_gput_right:cx
+    \@@_seq_gput_right:ce
       { g_@@_struct_kids_#1_seq }
       {
         \pdf_object_ref_last:
@@ -940,7 +940,7 @@
 % \begin{verbatim}
 %         \tag_struct_begin:n { tag=Link }
 %         \tag_mc_begin:n { tag=Link }
-% (1)     \pdfannot_dict_put:nnx
+% (1)     \pdfannot_dict_put:nne
 %           { link/URI }
 %           { StructParent }
 %           { \int_use:N\c at g_@@_parenttree_obj_int }
@@ -1212,7 +1212,7 @@
         \int_gincr:N \g_@@_struct_AFobj_int
         \pdf_object_if_exist:eF {@@/fileobj\int_use:N\g_@@_struct_AFobj_int}
           {
-            \pdffile_embed_stream:nxx
+            \pdffile_embed_stream:nee
               {#1}
               {tag-AFfile\int_use:N\g_@@_struct_AFobj_int.#2}
               {@@/fileobj\int_use:N\g_@@_struct_AFobj_int}
@@ -1233,13 +1233,13 @@
       }  
    }  
    {
-     \cs_generate_variant:Nn \pdffile_embed_stream:nnN {nxN}
+     \cs_generate_variant:Nn \pdffile_embed_stream:nnN {neN}
      \cs_new_protected:Npn \@@_struct_add_inline_AF:nn #1 #2  
      % #1 content, #2 extension
       {
         \group_begin:
         \int_gincr:N \g_@@_struct_AFobj_int
-        \pdffile_embed_stream:nxN
+        \pdffile_embed_stream:neN
           {#1}
           {tag-AFfile\int_use:N\g_@@_struct_AFobj_int.#2}
           \l_@@_tmpa_tl          
@@ -1318,7 +1318,7 @@
 %    \end{macrocode}
 % we set the mime type as pdfresources uses currently text/plain
 %    \begin{macrocode}
-      \pdfdict_put:nnx 
+      \pdfdict_put:nne 
         { l_pdffile }{Subtype} 
         { \pdf_name_from_unicode_e:n{application/x-tex} }
       \@@_struct_add_inline_AF:on {#1}{tex}
@@ -1625,7 +1625,7 @@
               { \g_@@_struct_stack_current_tl }
               { \@@_property_ref:enn{tagpdfstruct-#1}{tagstruct}{0} }
             %add the current structure to the labeled one as parents
-            \@@_prop_gput:cnx
+            \@@_prop_gput:cne
               { g_@@_struct_\@@_property_ref:enn{tagpdfstruct-#1}{tagstruct}{0}_prop }
               { P }
               {
@@ -1699,11 +1699,11 @@
               {
                 \msg_warning:nnn { tag } {struct-used-twice} {#1}
               }
-            %add the label structure as kid to the current structure (can be the root)
+            %add the \#1 structure as kid to the current structure (can be the root)
             \@@_struct_kid_struct_gput_right:ee
               { \g_@@_struct_stack_current_tl }
               { #1 }
-            %add the current structure to the labeled one as parents
+            %add the current structure to \#1 as parent
              \@@_struct_prop_gput:nne
               { #1 }            
               { P }
@@ -1812,7 +1812,7 @@
 % \begin{macro}
 %   {
 %     \tag_struct_insert_annot:nn,
-%     \tag_struct_insert_annot:xx,
+%     \tag_struct_insert_annot:ee,
 %     \tag_struct_insert_annot:ee
 %   }
 % \begin{macro}[EXP]
@@ -1848,7 +1848,7 @@
 % \section{Attributes and attribute classes}
 %    \begin{macrocode}
 %<*header>
-\ProvidesExplPackage {tagpdf-attr-code} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-attr-code} {2023-11-10} {0.98n}
   {part of tagpdf - code related to attributes and attribute classes}
 %</header>
 %    \end{macrocode}
@@ -1882,6 +1882,9 @@
 % two brace group, the name and the content. The content typically
 % needs an |/O| key for the owner. An example look like
 % this.
+% 
+% TODO: consider to put them directly in the ClassMap, that is perhaps
+% more effective. 
 % \begin{verbatim}
 %  \tagpdfsetup
 %   {
@@ -1907,18 +1910,6 @@
   }
 %    \end{macrocode}
 % \end{macro}
-% TEMP!!!!
-% we temporarly use an internal function for the mapping. This can go 
-% at the next update
-%    \begin{macrocode}
-\cs_if_free:NTF \seq_set_map_e:NNn
-  {
-    \cs_new_eq:NN \@@_seq_set_map_e:NNn \seq_set_map_x:NNn
-  }
-  {
-    \cs_new_eq:NN \@@_seq_set_map_e:NNn \seq_set_map_e:NNn
-  }  
-%    \end{macrocode}
 %
 % \begin{macro}{attribute-class (struct-key)}
 % attribute-class has to store the used attribute names so that
@@ -1933,7 +1924,7 @@
 %    \end{macrocode}
 %    we convert the names into pdf names with slash
 %    \begin{macrocode}
-       \@@_seq_set_map_e:NNn \l_@@_tmpa_seq \l_@@_tmpb_seq
+       \seq_set_map_e:NNn \l_@@_tmpa_seq \l_@@_tmpb_seq
          {
            \pdf_name_from_unicode_e:n {##1}
          }
@@ -1976,7 +1967,7 @@
 %    \end{macrocode}
 %    we convert the names into pdf names with slash
 %    \begin{macrocode}
-           \@@_seq_set_map_e:NNn \l_@@_tmpa_seq \l_@@_tmpb_seq
+           \seq_set_map_e:NNn \l_@@_tmpa_seq \l_@@_tmpb_seq
              {
                \pdf_name_from_unicode_e:n {##1}
              }

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -47,13 +47,13 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \maketitle
 % \begin{implementation}
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-tree-code} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-tree-code} {2023-11-10} {0.98n}
  {part of tagpdf - code related to writing trees and dictionaries to the pdf}
 %</header>
 %    \end{macrocode}
@@ -111,7 +111,7 @@
     \bool_if:NT \g_@@_active_tree_bool
       {
         \pdfmanagement_add:nnn { Catalog / MarkInfo } { Marked } { true }
-        \pdfmanagement_add:nnx
+        \pdfmanagement_add:nne
           { Catalog }
           { StructTreeRoot }
           { \pdf_object_ref:n { @@/struct/0 } }
@@ -152,17 +152,17 @@
     \int_step_inline:nn {\c at g_@@_struct_abs_int}
       {     
         \int_incr:N\l_@@_tmpa_int
-        \tl_put_right:Nx \l_@@_tmpa_tl
+        \tl_put_right:Ne \l_@@_tmpa_tl
           {
             \@@_struct_get_id:n{##1}~\pdf_object_ref:n{@@/struct/##1}~
           }        
         \int_compare:nNnF {\l_@@_tmpa_int}<{50} %
           {
-            \pdf_object_unnamed_write:nx {dict}
+            \pdf_object_unnamed_write:ne {dict}
               { /Limits~[\@@_struct_get_id:n{##1-\l_@@_tmpa_int+1}~\@@_struct_get_id:n{##1}]
                 /Names~[\l_@@_tmpa_tl]
               }
-            \tl_put_right:Nx\l_@@_tmpb_tl {\pdf_object_ref_last:\c_space_tl}   
+            \tl_put_right:Ne\l_@@_tmpb_tl {\pdf_object_ref_last:\c_space_tl}   
             \int_zero:N \l_@@_tmpa_int
             \tl_clear:N \l_@@_tmpa_tl
           }
@@ -169,7 +169,7 @@
       }
      \tl_if_empty:NF \l_@@_tmpa_tl
       {
-        \pdf_object_unnamed_write:nx {dict}
+        \pdf_object_unnamed_write:ne {dict}
           {
            /Limits~
              [\@@_struct_get_id:n{\c at g_@@_struct_abs_int-\l_@@_tmpa_int+1}~
@@ -176,10 +176,10 @@
               \@@_struct_get_id:n{\c at g_@@_struct_abs_int}]
            /Names~[\l_@@_tmpa_tl]
           }
-        \tl_put_right:Nx\l_@@_tmpb_tl {\pdf_object_ref_last:}     
+        \tl_put_right:Ne\l_@@_tmpb_tl {\pdf_object_ref_last:}     
       }
-      \pdf_object_unnamed_write:nx {dict}{/Kids~[\l_@@_tmpb_tl]}
-      \@@_prop_gput:cnx
+      \pdf_object_unnamed_write:ne {dict}{/Kids~[\l_@@_tmpb_tl]}
+      \@@_prop_gput:cne
           { g_@@_struct_0_prop }
           { IDTree }
           { \pdf_object_ref_last: }
@@ -195,17 +195,17 @@
  { 
    \cs_new_protected:Npn \@@_tree_write_structtreeroot:
      {
-        \@@_prop_gput:cnx
+        \@@_prop_gput:cne
           { g_@@_struct_0_prop }
           { ParentTree }
           { \pdf_object_ref:n { @@/tree/parenttree } }
-        \@@_prop_gput:cnx
+        \@@_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:nnx
+        \pdf_object_write:nne
             { @@/struct/0 }
             {dict}
             {
@@ -219,13 +219,13 @@
  {
    \cs_new_protected:Npn \@@_tree_write_structtreeroot:
      {
-        \@@_prop_gput:cnx
+        \@@_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:nnx
+        \pdf_object_write:nne
             { @@/struct/0 }
             {dict}
             {
@@ -291,7 +291,7 @@
 %    \begin{macrocode}
 \cs_new_protected:Npn \@@_parenttree_add_objr:nn #1 #2 %#1 StructParent number, #2 objref
   {
-    \tl_gput_right:Nx \g_@@_parenttree_objr_tl
+    \tl_gput_right:Ne \g_@@_parenttree_objr_tl
       {
         #1 \c_space_tl #2 ^^J
       }
@@ -322,13 +322,13 @@
             \int_compare:nT
               {\@@_property_ref:enn{mcid-####1}{tagabspage}{-1}=##1} %mcid is on current page
               {% yes
-                \prop_put:Nxx
+                \prop_put:Nee
                   \l_@@_tmpa_prop
                   {\@@_property_ref:enn{mcid-####1}{tagmcid}{-1}}
                   {\prop_item:Nn \g_@@_mc_parenttree_prop {####1}}
               }
           }
-        \tl_put_right:Nx\l_@@_parenttree_content_tl
+        \tl_put_right:Ne\l_@@_parenttree_content_tl
           {
             \int_eval:n {##1-1}\c_space_tl
             [\c_space_tl %]
@@ -340,7 +340,7 @@
           {
             \prop_get:NnNTF \l_@@_tmpa_prop {####1} \l_@@_tmpa_tl
               {% page#1:mcid##1:\l_@@_tmpa_tl :content
-                \tl_put_right:Nx \l_@@_parenttree_content_tl
+                \tl_put_right:Ne \l_@@_parenttree_content_tl
                   {
                     \pdf_object_if_exist:eTF { @@/struct/\l_@@_tmpa_tl }
                      {
@@ -404,7 +404,7 @@
       }
     \@@_tree_parenttree_rerun_msg:  
     \tl_put_right:NV \l_@@_parenttree_content_tl\g_@@_parenttree_objr_tl
-    \pdf_object_write:nnx  { @@/tree/parenttree }{dict}
+    \pdf_object_write:nne  { @@/tree/parenttree }{dict}
       {
         /Nums\c_space_tl [\l_@@_parenttree_content_tl]
       }
@@ -438,12 +438,12 @@
         {
           \tl_if_eq:nnF {##1}{##2}
            {
-             \pdfdict_gput:nnx {g_@@_role/RoleMap_dict}
+             \pdfdict_gput:nne {g_@@_role/RoleMap_dict}
               {##1}
               {\pdf_name_from_unicode_e:n{##2}}
            }   
         }
-      \pdf_object_write:nnx  { @@/tree/rolemap }{dict}
+      \pdf_object_write:nne  { @@/tree/rolemap }{dict}
        {
         \pdfdict_use:n{g_@@_role/RoleMap_dict}
        }
@@ -474,7 +474,7 @@
             {##1}
         >>
       }
-    \tl_set:Nx \l_@@_tmpa_tl
+    \tl_set:Ne \l_@@_tmpa_tl
       {
         \seq_use:Nn
           \l_@@_tmpa_seq
@@ -484,11 +484,11 @@
       \l_@@_tmpa_tl
       {
         \pdf_object_new:n { @@/tree/classmap }
-        \pdf_object_write:nnx
+        \pdf_object_write:nne
           { @@/tree/classmap }
           {dict}
           { \l_@@_tmpa_tl }
-        \@@_prop_gput:cnx
+        \@@_prop_gput:cne
           { g_@@_struct_0_prop }
           { ClassMap }
           { \pdf_object_ref:n { @@/tree/classmap }  }
@@ -514,19 +514,19 @@
         {
           \pdfdict_if_empty:nF {g_@@_role/RoleMapNS_##1_dict}
             {
-              \pdf_object_write:nnx {@@/RoleMapNS/##1}{dict}
+              \pdf_object_write:nne {@@/RoleMapNS/##1}{dict}
                 {
                   \pdfdict_use:n {g_@@_role/RoleMapNS_##1_dict}
                 }
-              \pdfdict_gput:nnx{g_@@_role/Namespace_##1_dict}
+              \pdfdict_gput:nne{g_@@_role/Namespace_##1_dict}
                 {RoleMapNS}{\pdf_object_ref:n {@@/RoleMapNS/##1}}
             }
-          \pdf_object_write:nnx{tag/NS/##1}{dict}
+          \pdf_object_write:nne{tag/NS/##1}{dict}
             {
                \pdfdict_use:n {g_@@_role/Namespace_##1_dict}
             }
         }
-      \pdf_object_write:nnx {@@/tree/namespaces}{array}
+      \pdf_object_write:nne {@@/tree/namespaces}{array}
         {
           \prop_map_tokens:Nn \g_@@_role_NS_prop{\use_ii:nn}
         }
@@ -568,7 +568,7 @@
       {
        \hook_gput_code:nnn{shipout/before} { tagpdf/structparents }
          {
-           \pdfmanagement_add:nnx
+           \pdfmanagement_add:nne
              { Page }
              { StructParents }
              { \int_eval:n { \g_shipout_readonly_int} }

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -46,7 +46,7 @@
 %    }^^A
 % }
 %
-% \date{Version 0.98m, released 2023-10-27}
+% \date{Version 0.98n, released 2023-11-10}
 % \maketitle
 % \begin{documentation}
 % \section{Setup commands}
@@ -250,7 +250,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*header>
-\ProvidesExplPackage {tagpdf-user} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-user} {2023-11-10} {0.98n}
   {tagpdf - user commands}
 %</header>
 %    \end{macrocode}
@@ -523,7 +523,7 @@
       {
         \int_step_inline:nnn{#1}{\c at g__tag_struct_abs_int}
            {
-            \msg_term:nnxxxx 
+            \msg_term:nneeee 
                    { tag/debug } { show-struct }
                    { ##1 }
                    { 
@@ -532,7 +532,7 @@
                        \msg_show_item_unbraced:nn 
                    }
                    { } { }
-            \msg_term:nnxxxx  
+            \msg_term:nneeee  
                    { tag/debug } { show-kids }
                    {  ##1 }
                    { 
@@ -760,7 +760,7 @@
       }  
     \int_compare:nNnF {\g_@@_para_main_begin_int}={\g_@@_para_main_end_int}
          {
-           \msg_error:nnxxx
+           \msg_error:nneee
              {tag}
              {para-hook-count-wrong}
              {\int_use:N\g_@@_para_main_begin_int}
@@ -769,7 +769,7 @@
          }
     \int_compare:nNnF {\g_@@_para_begin_int}={\g_@@_para_end_int}
          {
-           \msg_error:nnxxx
+           \msg_error:nneee
              {tag}
              {para-hook-count-wrong}
              {\int_use:N\g_@@_para_begin_int}
@@ -992,7 +992,7 @@
     \tag_mc_end_push:
     \tag_struct_begin:n { tag=Link }
     \tag_mc_begin:n { tag=Link }
-    \pdfannot_dict_put:nnx
+    \pdfannot_dict_put:nne
       { link/URI }
       { StructParent }
       { \tag_struct_parent_int: }
@@ -1002,7 +1002,7 @@
   {pdfannot/link/URI/after}
   {tagpdf}
   {
-     \tag_struct_insert_annot:xx {\pdfannot_link_ref_last:}{\tag_struct_parent_int:}
+     \tag_struct_insert_annot:ee {\pdfannot_link_ref_last:}{\tag_struct_parent_int:}
      \tag_mc_end:
      \tag_struct_end:
      \tag_mc_begin_pop:n{}
@@ -1015,7 +1015,7 @@
      \tag_mc_end_push:
      \tag_struct_begin:n{tag=Link}
      \tag_mc_begin:n{tag=Link}
-     \pdfannot_dict_put:nnx
+     \pdfannot_dict_put:nne
        { link/GoTo }
        { StructParent }
        { \tag_struct_parent_int: }
@@ -1025,7 +1025,7 @@
   {pdfannot/link/GoTo/after}
   {tagpdf}
   {
-    \tag_struct_insert_annot:xx {\pdfannot_link_ref_last:}{\tag_struct_parent_int:}
+    \tag_struct_insert_annot:ee {\pdfannot_link_ref_last:}{\tag_struct_parent_int:}
     \tag_mc_end:
     \tag_struct_end:
     \tag_mc_begin_pop:n{}

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx	2023-11-10 21:41:15 UTC (rev 68805)
@@ -93,7 +93,7 @@
 %    \begin{macrocode}
 %<@@=tag>
 %<*package>
-\ProvidesExplPackage {tagpdf} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf} {2023-11-10} {0.98n}
   { A package to experiment with pdf tagging }
 
 \bool_if:nF
@@ -119,7 +119,7 @@
 %    \end{macrocode}
 %<*debug>
 %    \begin{macrocode}
-\ProvidesExplPackage {tagpdf-debug} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-debug} {2023-11-10} {0.98n}
   { debug code for tagpdf }
 \@ifpackageloaded{tagpdf}{}{\PackageWarning{tagpdf-debug}{tagpdf~not~loaded,~quitting}\endinput}
 %    \end{macrocode}
@@ -142,7 +142,7 @@
 % we define a base package with dummy functions
 %    \begin{macrocode}
 %<*base>
-\ProvidesExplPackage {tagpdf-base} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-base} {2023-11-10} {0.98n}
   {part of tagpdf - provide base, no-op versions of the user commands }
 %</base>
 %    \end{macrocode} 
@@ -206,7 +206,7 @@
      {
        \legacy_if:nT { @filesw }
          {
-           \exp_args:NNnx \exp_args:NNx\iow_now:Nn \@auxout
+           \exp_args:NNne \exp_args:NNe\iow_now:Nn \@auxout
               {
                 \token_to_str:N \new at label@record
                   {@tag at LastPage}
@@ -224,7 +224,7 @@
      {
        \legacy_if:nT { @filesw }
          {
-           \exp_args:NNnx \exp_args:NNx\iow_now:Nn \@auxout
+           \exp_args:NNne \exp_args:NNe\iow_now:Nn \@auxout
               {
                 \token_to_str:N \newlabeldata
                   {@tag at LastPage}
@@ -358,10 +358,10 @@
 %     \begin{macrocode}
 \prg_generate_conditional_variant:Nnn \pdf_object_if_exist:n {e}{T,F,TF}
 \cs_generate_variant:Nn \pdf_object_ref:n {e}
-\cs_generate_variant:Nn \pdfannot_dict_put:nnn {nnx}
-\cs_generate_variant:Nn \pdffile_embed_stream:nnn {nxx,oxx}
-\cs_generate_variant:Nn \prop_gput:Nnn {Nxx,Nen}
-\cs_generate_variant:Nn \prop_put:Nnn  {Nxx}
+\cs_generate_variant:Nn \pdfannot_dict_put:nnn {nne}
+\cs_generate_variant:Nn \pdffile_embed_stream:nnn {nee,oee}
+\cs_generate_variant:Nn \prop_gput:Nnn {Nee,Nen}
+\cs_generate_variant:Nn \prop_put:Nnn  {Nee}
 \cs_generate_variant:Nn \prop_item:Nn {No,Ne}
 \cs_generate_variant:Nn \seq_set_split:Nnn{Nne}
 \cs_generate_variant:Nn \str_set_convert:Nnnn {Nonn, Noon, Nnon }
@@ -528,8 +528,8 @@
 \cs_set_eq:NN \@@_seq_show:N        \seq_show:N
 \cs_set_eq:NN \@@_prop_show:N       \prop_show:N
 
-\cs_generate_variant:Nn \@@_prop_gput:Nnn      { Nxn , Nxx, Nnx , cnn, cxn, cnx, cno}
-\cs_generate_variant:Nn \@@_seq_gput_right:Nn  { Nx  , No, cn, cx }
+\cs_generate_variant:Nn \@@_prop_gput:Nnn      { Nen , Nee, Nne , cnn, cen, cne, cno}
+\cs_generate_variant:Nn \@@_seq_gput_right:Nn  { Ne  , No, cn, ce }
 \cs_generate_variant:Nn \@@_prop_new:N   { c }
 \cs_generate_variant:Nn \@@_seq_new:N    { c }
 \cs_generate_variant:Nn \@@_seq_show:N   { c }
@@ -645,7 +645,7 @@
     log / v         .code:n =
       {
         \int_set:Nn \l_@@_loglevel_int { 1 }
-        \cs_set_protected:Nn \@@_check_typeout_v:n { \iow_term:x {##1} }
+        \cs_set_protected:Nn \@@_check_typeout_v:n { \iow_term:e {##1} }
       },
     log / vv        .code:n = {\int_set:Nn \l_@@_loglevel_int { 2 }},
     log / vvv       .code:n = {\int_set:Nn \l_@@_loglevel_int { 3 }},

Modified: trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf.ins	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/source/latex/tagpdf/tagpdf.ins	2023-11-10 21:41:15 UTC (rev 68805)
@@ -34,7 +34,7 @@
 \let\MetaPrefix\relax
 \preamble
 
-Copyright (C) 2019-2022 Ulrike Fischer
+Copyright (C) 2019-2023 Ulrike Fischer
 
 It may be distributed and/or modified under the conditions of
 the LaTeX Project Public License (LPPL), either version 1.3c of

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty	2023-11-10 21:41:15 UTC (rev 68805)
@@ -12,7 +12,7 @@
 %% tagpdf-user.dtx  (with options: `base')
 %% tagpdf-roles.dtx  (with options: `base')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -25,7 +25,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf.dtx
-\ProvidesExplPackage {tagpdf-base} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-base} {2023-11-10} {0.98n}
   {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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-mc-generic.dtx  (with options: `debug')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-mc-generic.dtx
-\ProvidesExplPackage {tagpdf-debug-generic} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-debug-generic} {2023-11-10} {0.98n}
  {part of tagpdf - debugging code related to marking chunks - generic mode}
 \cs_set_protected:Npn \tag_mc_begin:n #1 %#1 keyval
   {
@@ -66,7 +66,7 @@
                      { g__tag_struct_ \g__tag_struct_stack_current_tl _prop}
                      {S}
                      \l__tag_tmpa_tl
-                    \msg_warning:nnxxx
+                    \msg_warning:nneee
                      { tag }
                      {role-parent-child}
                      { \l__tag_get_parent_tmpa_tl/\l__tag_get_parent_tmpb_tl  }
@@ -75,7 +75,7 @@
                        (struct~\g__tag_struct_stack_current_tl,~\l__tag_tmpa_tl)
                      }
                  }
-                \__tag_mc_handle_stash:x { \int_use:N \c at g__tag_MCID_abs_int }
+                \__tag_mc_handle_stash:e { \int_use:N \c at g__tag_MCID_abs_int }
               }
           }
         \group_end:

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-mc-luacode.dtx  (with options: `debug')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-mc-luacode.dtx
-\ProvidesExplPackage {tagpdf-debug-lua} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-debug-lua} {2023-11-10} {0.98n}
  {part of tagpdf - debugging code related to marking chunks - lua mode}
 \cs_set_protected:Npn \__tag_mc_handle_stash:n #1 %1 mcidnum
   {
@@ -43,7 +43,7 @@
             \g__tag_struct_stack_current_tl,#1
           )
       }
-    \prop_gput:Nxx
+    \prop_gput:Nee
       \g__tag_mc_parenttree_prop
       { #1 }
       { \g__tag_struct_stack_current_tl }

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty	2023-11-10 21:41:15 UTC (rev 68805)
@@ -13,7 +13,7 @@
 %% tagpdf-struct.dtx  (with options: `debug')
 %% tagpdf-space.dtx  (with options: `debug')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -26,7 +26,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf.dtx
-\ProvidesExplPackage {tagpdf-debug} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-debug} {2023-11-10} {0.98n}
   { debug code for tagpdf }
 \@ifpackageloaded{tagpdf}{}{\PackageWarning{tagpdf-debug}{tagpdf~not~loaded,~quitting}\endinput}
 \prop_gput:Nnn \g_msg_module_type_prop { tag / debug} {}
@@ -143,7 +143,7 @@
            {#1}
            {\exp_last_unbraced:NV\use_i:nn \l__tag_tmpa_tl}
            {
-             \msg_warning:nnxx { tag/debug }{ struct-end-wrong }
+             \msg_warning:nnee { tag/debug }{ struct-end-wrong }
               {#1}
               {\exp_last_unbraced:NV\use_i:nn \l__tag_tmpa_tl}
            }
@@ -162,7 +162,7 @@
       {
         \int_step_inline:nnn{#1}{\c at g__tag_struct_abs_int}
            {
-            \msg_term:nnxxxx
+            \msg_term:nneeee
                    { tag/debug } { show-struct }
                    { ##1 }
                    {
@@ -171,7 +171,7 @@
                        \msg_show_item_unbraced:nn
                    }
                    { } { }
-            \msg_term:nnxxxx
+            \msg_term:nneeee
                    { tag/debug } { show-kids }
                    {  ##1 }
                    {
@@ -203,7 +203,7 @@
 \prop_gremove:cn { g__tag_struct_debug_0_prop }{Namespaces}
 \cs_set_protected:Npn \__tag_struct_kid_mc_gput_right:nn #1 #2 %#1 structure num, #2 MCID absnum%
   {
-    \__tag_seq_gput_right:cx
+    \__tag_seq_gput_right:ce
       { g__tag_struct_kids_#1_seq }
       {
         \__tag_struct_mcid_dict:n {#2}
@@ -221,7 +221,7 @@
   }
 \cs_set_protected:Npn\__tag_struct_kid_struct_gput_right:nn #1 #2 %#1 num of parent struct, #2 kid struct
   {
-    \__tag_seq_gput_right:cx
+    \__tag_seq_gput_right:ce
       { g__tag_struct_kids_#1_seq }
       {
         \pdf_object_ref:n { __tag/struct/#2 }
@@ -240,7 +240,7 @@
       {
         /Type/OBJR/Obj~#2/Pg~#3
       }
-    \__tag_seq_gput_right:cx
+    \__tag_seq_gput_right:ce
       { g__tag_struct_kids_#1_seq }
       {
         \pdf_object_ref_last:
@@ -466,7 +466,7 @@
               { \g__tag_struct_stack_current_tl }
               { \__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{0} }
             %add the current structure to the labeled one as parents
-            \__tag_prop_gput:cnx
+            \__tag_prop_gput:cne
               { g__tag_struct_\__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{0}_prop }
               { P }
               {
@@ -521,11 +521,11 @@
               {
                 \msg_warning:nnn { tag } {struct-used-twice} {#1}
               }
-            %add the label structure as kid to the current structure (can be the root)
+            %add the \#1 structure as kid to the current structure (can be the root)
             \__tag_struct_kid_struct_gput_right:ee
               { \g__tag_struct_stack_current_tl }
               { #1 }
-            %add the current structure to the labeled one as parents
+            %add the current structure to \#1 as parent
              \__tag_struct_prop_gput:nne
               { #1 }
               { P }

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-backend.dtx  (with options: `luatex')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-backend.dtx
-\ProvidesExplFile {tagpdf-luatex.def} {2023-10-27} {0.98m}
+\ProvidesExplFile {tagpdf-luatex.def} {2023-11-10} {0.98n}
   {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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-mc-generic.dtx  (with options: `generic')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-mc-generic.dtx
-\ProvidesExplPackage {tagpdf-mc-code-generic} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-mc-code-generic} {2023-11-10} {0.98n}
  {part of tagpdf - code related to marking chunks - generic mode}
 \tl_new:N \l__tag_mc_ref_abspage_tl
 
@@ -95,10 +95,10 @@
  }
 \cs_new_protected:Npn \__tag_mc_get_marks:
  {
-   \exp_args:NNx
+   \exp_args:NNe
    \seq_set_from_clist:Nn \l__tag_mc_firstmarks_seq
      { \tex_firstmarks:D \g__tag_mc_marks }
-   \exp_args:NNx
+   \exp_args:NNe
    \seq_set_from_clist:Nn \l__tag_mc_botmarks_seq
      { \tex_botmarks:D   \g__tag_mc_marks }
  }
@@ -107,16 +107,16 @@
     %\prop_show:N \g__tag_struct_cont_mc_prop
     \prop_get:NnNTF \g__tag_struct_cont_mc_prop {#1} \l__tag_tmpa_tl
       {
-        \prop_gput:Nnx \g__tag_struct_cont_mc_prop {#1}{ \l__tag_tmpa_tl \__tag_struct_mcid_dict:n {#2}}
+        \prop_gput:Nne \g__tag_struct_cont_mc_prop {#1}{ \l__tag_tmpa_tl \__tag_struct_mcid_dict:n {#2}}
       }
       {
-        \prop_gput:Nnx \g__tag_struct_cont_mc_prop {#1}{ \__tag_struct_mcid_dict:n {#2}}
+        \prop_gput:Nne \g__tag_struct_cont_mc_prop {#1}{ \__tag_struct_mcid_dict:n {#2}}
       }
-    \prop_gput:Nxx \g__tag_mc_parenttree_prop
+    \prop_gput:Nee \g__tag_mc_parenttree_prop
       {#2}
       {#3}
   }
-\cs_generate_variant:Nn \__tag_mc_store:nnn {xxx}
+\cs_generate_variant:Nn \__tag_mc_store:nnn {eee}
 \cs_new_protected:Npn \__tag_mc_insert_extra_tmb:n #1 % #1 stream: e.g. main or footnote
   {
      \__tag_check_typeout_v:n {=>~ first~ \seq_use:Nn \l__tag_mc_firstmarks_seq {,~}}
@@ -127,11 +127,11 @@
          %test if artifact
          \int_compare:nNnTF { \seq_item:cn { g__tag_mc_#1_marks_seq } {3} } = {-1}
            {
-              \tl_set:Nx \l__tag_tmpa_tl { \seq_item:cn { g__tag_mc_#1_marks_seq } {4} }
+              \tl_set:Ne \l__tag_tmpa_tl { \seq_item:cn { g__tag_mc_#1_marks_seq } {4} }
               \__tag_mc_handle_artifact:N \l__tag_tmpa_tl
            }
            {
-              \exp_args:Nx
+              \exp_args:Ne
               \__tag_mc_bdc_mcid:n
                 {
                   \seq_item:cn { g__tag_mc_#1_marks_seq } {4}
@@ -143,7 +143,7 @@
                 {}
                 {
                   %store
-                  \__tag_mc_store:xxx
+                  \__tag_mc_store:eee
                     {
                       \seq_item:cn { g__tag_mc_#1_marks_seq } {2}
                     }
@@ -205,7 +205,7 @@
     \vbadness\maxdimen
     \box_set_eq:NN \l__tag_tmpa_box #1
     \vbox_set_split_to_ht:NNn \l__tag_tmpa_box \l__tag_tmpa_box \c_max_dim
-    \exp_args:NNx
+    \exp_args:NNe
     \seq_set_from_clist:Nn \l__tag_mc_firstmarks_seq
         { \tex_splitfirstmarks:D \g__tag_mc_marks }
     \seq_if_empty:NTF \l__tag_mc_firstmarks_seq
@@ -223,7 +223,7 @@
             {
               Pick~ up~ new~ bot~ mark!
             }
-          \exp_args:NNx
+          \exp_args:NNe
           \seq_set_from_clist:Nn \l__tag_mc_botmarks_seq
               { \tex_splitbotmarks:D   \g__tag_mc_marks }
         }
@@ -275,13 +275,13 @@
    \msg_warning:nn { tagpdf} { old-engine }
    \__tag_prop_new:N \g__tag_MCID_byabspage_prop
    \int_new:N \g__tag_MCID_tmp_bypage_int
-   \cs_generate_variant:Nn \__tag_mc_bdc:nn {nx}
+   \cs_generate_variant:Nn \__tag_mc_bdc:nn {ne}
    \__tag_property_gset:nnnn {tagmcid } { now }
        {0}  { \int_use:N \g__tag_MCID_tmp_bypage_int }
    \cs_new_protected:Npn \__tag_mc_bdc_mcid:nn #1 #2
      {
        \int_gincr:N \c at g__tag_MCID_abs_int
-       \tl_set:Nx \l__tag_mc_ref_abspage_tl
+       \tl_set:Ne \l__tag_mc_ref_abspage_tl
          {
            \__tag_property_ref:enn %3 args
              {
@@ -299,7 +299,7 @@
          {
            %key already present, use value for MCID and add 1 for the next
            \int_gset:Nn \g__tag_MCID_tmp_bypage_int { \l__tag_mc_tmpa_tl }
-           \__tag_prop_gput:Nxx
+           \__tag_prop_gput:Nee
              \g__tag_MCID_byabspage_prop
              { \l__tag_mc_ref_abspage_tl }
              { \int_eval:n {\l__tag_mc_tmpa_tl +1} }
@@ -307,7 +307,7 @@
          {
            %key not present, set MCID to 0 and insert 1
            \int_gzero:N \g__tag_MCID_tmp_bypage_int
-           \__tag_prop_gput:Nxx
+           \__tag_prop_gput:Nee
              \g__tag_MCID_byabspage_prop
              { \l__tag_mc_ref_abspage_tl }
              {1}
@@ -317,7 +317,7 @@
            mcid-\int_use:N \c at g__tag_MCID_abs_int
          }
          \c__tag_property_mc_clist
-        \__tag_mc_bdc:nx
+        \__tag_mc_bdc:ne
           {#1}
           { /MCID~\int_eval:n { \g__tag_MCID_tmp_bypage_int }~ \exp_not:n { #2 } }
       }
@@ -340,11 +340,11 @@
     \__tag_struct_kid_mc_gput_right:nn
       { \g__tag_struct_stack_current_tl }
       {#1}
-   \prop_gput:Nxx \g__tag_mc_parenttree_prop
+   \prop_gput:Nee \g__tag_mc_parenttree_prop
      {#1}
      { \g__tag_struct_stack_current_tl }
   }
-\cs_generate_variant:Nn \__tag_mc_handle_stash:n { x }
+\cs_generate_variant:Nn \__tag_mc_handle_stash:n { e }
 
 \cs_new_protected:Npn  \__tag_mc_bmc_artifact:
   {
@@ -408,7 +408,7 @@
                      { g__tag_struct_ \g__tag_struct_stack_current_tl _prop}
                      {S}
                      \l__tag_tmpa_tl
-                    \msg_warning:nnxxx
+                    \msg_warning:nneee
                      { tag }
                      {role-parent-child}
                      { \l__tag_get_parent_tmpa_tl/\l__tag_get_parent_tmpb_tl  }
@@ -417,7 +417,7 @@
                        (struct~\g__tag_struct_stack_current_tl,~\l__tag_tmpa_tl)
                      }
                  }
-                \__tag_mc_handle_stash:x { \int_use:N \c at g__tag_MCID_abs_int }
+                \__tag_mc_handle_stash:e { \int_use:N \c at g__tag_MCID_abs_int }
               }
           }
         \group_end:
@@ -439,12 +439,12 @@
   {
     tag .code:n = % the name (H,P,Span) etc
       {
-        \tl_set:Nx   \l__tag_mc_key_tag_tl { #1 }
-        \tl_gset:Nx  \g__tag_mc_key_tag_tl { #1 }
+        \tl_set:Ne   \l__tag_mc_key_tag_tl { #1 }
+        \tl_gset:Ne  \g__tag_mc_key_tag_tl { #1 }
       },
     raw  .code:n =
       {
-        \tl_put_right:Nx \l__tag_mc_key_properties_tl { #1 }
+        \tl_put_right:Ne \l__tag_mc_key_properties_tl { #1 }
       },
     alt .code:n      = % Alt property
       {
@@ -473,7 +473,7 @@
     label .tl_set:N        = \l__tag_mc_key_label_tl,
     artifact .code:n       =
       {
-        \exp_args:Nnx
+        \exp_args:Nne
           \keys_set:nn
             { __tag / mc }
             { __artifact-bool, __artifact-type=#1 }

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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-mc-luacode.dtx  (with options: `luamode')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-mc-luacode.dtx
-\ProvidesExplPackage {tagpdf-mc-code-lua} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf-mc-code-lua} {2023-11-10} {0.98n}
   {tagpdf - mc code only for the luamode }
 \hook_gput_code:nnn{begindocument}{tagpdf/mc}
   {
@@ -94,7 +94,7 @@
 \cs_new:Nn \__tag_mc_lua_set_mc_type_attr:n % #1 is a tag name
   {
     %TODO ltx.__tag.func.get_num_from("#1") seems not to return a suitable number??
-    \tl_set:Nx\l__tag_tmpa_tl{\lua_now:e{ltx.__tag.func.output_num_from ("#1")} }
+    \tl_set:Ne\l__tag_tmpa_tl{\lua_now:e{ltx.__tag.func.output_num_from ("#1")} }
     \lua_now:e
       {
         tex.setattribute
@@ -164,12 +164,12 @@
             \g__tag_struct_stack_current_tl,#1
           )
       }
-    \prop_gput:Nxx
+    \prop_gput:Nee
       \g__tag_mc_parenttree_prop
       { #1 }
       { \g__tag_struct_stack_current_tl }
   }
-\cs_generate_variant:Nn \__tag_mc_handle_stash:n { x }
+\cs_generate_variant:Nn \__tag_mc_handle_stash:n { e }
 \cs_set_protected:Nn \tag_mc_begin:n
   {
     \__tag_check_if_active_mc:T
@@ -216,7 +216,7 @@
                     { g__tag_struct_ \g__tag_struct_stack_current_tl _prop}
                     {S}
                     \l__tag_tmpa_tl
-                   \msg_warning:nnxxx
+                   \msg_warning:nneee
                      { tag }
                      {role-parent-child}
                      { \l__tag_get_parent_tmpa_tl/\l__tag_get_parent_tmpb_tl  }
@@ -226,7 +226,7 @@
                        (struct~\g__tag_struct_stack_current_tl,~\l__tag_tmpa_tl)
                      }
                  }
-                \__tag_mc_handle_stash:x { \__tag_get_mc_abs_cnt: }
+                \__tag_mc_handle_stash:e { \__tag_get_mc_abs_cnt: }
               }
           }
         \group_end:
@@ -259,8 +259,8 @@
   {
     tag .code:n = %
       {
-        \tl_set:Nx   \l__tag_mc_key_tag_tl { #1 }
-        \tl_gset:Nx  \g__tag_mc_key_tag_tl { #1 }
+        \tl_set:Ne   \l__tag_mc_key_tag_tl { #1 }
+        \tl_gset:Ne  \g__tag_mc_key_tag_tl { #1 }
         \lua_now:e
           {
             ltx.__tag.func.store_mc_data(\__tag_get_mc_abs_cnt:,"tag","#1")
@@ -268,7 +268,7 @@
       },
     raw .code:n =
       {
-        \tl_put_right:Nx \l__tag_mc_key_properties_tl { #1 }
+        \tl_put_right:Ne \l__tag_mc_key_properties_tl { #1 }
         \lua_now:e
           {
             ltx.__tag.func.store_mc_data(\__tag_get_mc_abs_cnt:,"raw","#1")
@@ -340,11 +340,11 @@
       },
     artifact .code:n       =
       {
-        \exp_args:Nnx
+        \exp_args:Nne
           \keys_set:nn
             { __tag / mc}
             { __artifact-bool, __artifact-type=#1, tag=Artifact }
-        \exp_args:Nnx
+        \exp_args:Nne
           \keys_set:nn
             { __tag / mc }
             { __artifact-store=\l__tag_mc_artifact_type_tl }

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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-data.dtx  (with options: `ns-latex-book')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2023-11-10} {0.98n}
 %% {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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-inline.def	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-data.dtx  (with options: `ns-latex-inline')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2023-11-10} {0.98n}
 %% {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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-data.dtx  (with options: `ns-latex')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-latex.def} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-latex.def} {2023-11-10} {0.98n}
 %% {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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-data.dtx  (with options: `ns-mathml')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2023-11-10} {0.98n}
 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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-data.dtx  (with options: `ns-pdf')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2023-11-10} {0.98n}
 %%  {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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-data.dtx  (with options: `ns-pdf2')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2023-11-10} {0.98n}
 %%  {pdf2}  {http://iso.org/pdf2/ssn}{}
 Document,Document,pdf2,D,
 Part,Part,pdf2,G,

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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-data.dtx  (with options: `parent-child-2')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2023-11-10} {0.98n}
 ,,,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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 %%
 %% tagpdf-data.dtx  (with options: `parent-child')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-parent-child.csv} {2023-10-27} {0.98m}
+%% \ProvidesExplFile {tagpdf-parent-child.csv} {2023-11-10} {0.98n}
 ,,,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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua	2023-11-10 21:41:15 UTC (rev 68805)
@@ -6,7 +6,7 @@
 -- 
 --  tagpdf-backend.dtx  (with options: `lua')
 --  
---  Copyright (C) 2019-2022 Ulrike Fischer
+--  Copyright (C) 2019-2023 Ulrike Fischer
 --  
 --  It may be distributed and/or modified under the conditions of
 --  the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -24,8 +24,8 @@
 
 local ProvidesLuaModule = {
     name          = "tagpdf",
-    version       = "0.98m",       --TAGVERSION
-    date          = "2023-10-27", --TAGDATE
+    version       = "0.98n",       --TAGVERSION
+    date          = "2023-11-10", --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	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty	2023-11-10 21:41:15 UTC (rev 68805)
@@ -15,7 +15,7 @@
 %% tagpdf-space.dtx  (with options: `package')
 %% tagpdf-user.dtx  (with options: `package')
 %% 
-%% Copyright (C) 2019-2022 Ulrike Fischer
+%% Copyright (C) 2019-2023 Ulrike Fischer
 %% 
 %% It may be distributed and/or modified under the conditions of
 %% the LaTeX Project Public License (LPPL), either version 1.3c of
@@ -28,7 +28,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: tagpdf.dtx
-\ProvidesExplPackage {tagpdf} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdf} {2023-11-10} {0.98n}
   { A package to experiment with pdf tagging }
 
 \bool_if:nF
@@ -73,7 +73,7 @@
      {
        \legacy_if:nT { @filesw }
          {
-           \exp_args:NNnx \exp_args:NNx\iow_now:Nn \@auxout
+           \exp_args:NNne \exp_args:NNe\iow_now:Nn \@auxout
               {
                 \token_to_str:N \new at label@record
                   {@tag at LastPage}
@@ -91,7 +91,7 @@
      {
        \legacy_if:nT { @filesw }
          {
-           \exp_args:NNnx \exp_args:NNx\iow_now:Nn \@auxout
+           \exp_args:NNne \exp_args:NNe\iow_now:Nn \@auxout
               {
                 \token_to_str:N \newlabeldata
                   {@tag at LastPage}
@@ -136,10 +136,10 @@
 \bool_new:N \g__tag_tagunmarked_bool
 \prg_generate_conditional_variant:Nnn \pdf_object_if_exist:n {e}{T,F,TF}
 \cs_generate_variant:Nn \pdf_object_ref:n {e}
-\cs_generate_variant:Nn \pdfannot_dict_put:nnn {nnx}
-\cs_generate_variant:Nn \pdffile_embed_stream:nnn {nxx,oxx}
-\cs_generate_variant:Nn \prop_gput:Nnn {Nxx,Nen}
-\cs_generate_variant:Nn \prop_put:Nnn  {Nxx}
+\cs_generate_variant:Nn \pdfannot_dict_put:nnn {nne}
+\cs_generate_variant:Nn \pdffile_embed_stream:nnn {nee,oee}
+\cs_generate_variant:Nn \prop_gput:Nnn {Nee,Nen}
+\cs_generate_variant:Nn \prop_put:Nnn  {Nee}
 \cs_generate_variant:Nn \prop_item:Nn {No,Ne}
 \cs_generate_variant:Nn \seq_set_split:Nnn{Nne}
 \cs_generate_variant:Nn \str_set_convert:Nnnn {Nonn, Noon, Nnon }
@@ -235,8 +235,8 @@
 \cs_set_eq:NN \__tag_seq_show:N        \seq_show:N
 \cs_set_eq:NN \__tag_prop_show:N       \prop_show:N
 
-\cs_generate_variant:Nn \__tag_prop_gput:Nnn      { Nxn , Nxx, Nnx , cnn, cxn, cnx, cno}
-\cs_generate_variant:Nn \__tag_seq_gput_right:Nn  { Nx  , No, cn, cx }
+\cs_generate_variant:Nn \__tag_prop_gput:Nnn      { Nen , Nee, Nne , cnn, cen, cne, cno}
+\cs_generate_variant:Nn \__tag_seq_gput_right:Nn  { Ne  , No, cn, ce }
 \cs_generate_variant:Nn \__tag_prop_new:N   { c }
 \cs_generate_variant:Nn \__tag_seq_new:N    { c }
 \cs_generate_variant:Nn \__tag_seq_show:N   { c }
@@ -299,7 +299,7 @@
     log / v         .code:n =
       {
         \int_set:Nn \l__tag_loglevel_int { 1 }
-        \cs_set_protected:Nn \__tag_check_typeout_v:n { \iow_term:x {##1} }
+        \cs_set_protected:Nn \__tag_check_typeout_v:n { \iow_term:e {##1} }
       },
     log / vv        .code:n = {\int_set:Nn \l__tag_loglevel_int { 2 }},
     log / vvv       .code:n = {\int_set:Nn \l__tag_loglevel_int { 3 }},
@@ -435,7 +435,7 @@
   {
     \prop_if_in:NoF \g__tag_role_tags_NS_prop {#1}
       {
-        \msg_warning:nnx { tag } {role-unknown-tag} {#1}
+        \msg_warning:nne { tag } {role-unknown-tag} {#1}
       }
   }
 \cs_new_protected:Npn \__tag_check_info_closing_struct:n #1 %#1 struct num
@@ -446,7 +446,7 @@
       }
   }
 
-\cs_generate_variant:Nn \__tag_check_info_closing_struct:n {o,x}
+\cs_generate_variant:Nn \__tag_check_info_closing_struct:n {o,e}
 \cs_new_protected:Npn \__tag_check_no_open_struct:
   {
     \msg_error:nn { tag } {struct-faulty-nesting}
@@ -504,7 +504,7 @@
   {
     \__tag_mc_if_in:T
       {
-        \msg_warning:nnx { tag } {mc-nested} { \__tag_get_mc_abs_cnt: }
+        \msg_warning:nne { tag } {mc-nested} { \__tag_get_mc_abs_cnt: }
       }
   }
 
@@ -512,7 +512,7 @@
   {
     \__tag_mc_if_in:F
       {
-        \msg_warning:nnx { tag } {mc-not-open} { \__tag_get_mc_abs_cnt: }
+        \msg_warning:nne { tag } {mc-not-open} { \__tag_get_mc_abs_cnt: }
       }
   }
 \cs_new_protected:Npn \__tag_check_mc_pushed_popped:nn #1 #2
@@ -519,11 +519,11 @@
   {
     \int_compare:nNnT
       { \l__tag_loglevel_int } ={ 2 }
-      { \msg_info:nnx {tag}{mc-#1}{#2} }
+      { \msg_info:nne {tag}{mc-#1}{#2} }
     \int_compare:nNnT
       { \l__tag_loglevel_int } > { 2 }
       {
-        \msg_info:nnx {tag}{mc-#1}{#2}
+        \msg_info:nne {tag}{mc-#1}{#2}
         \seq_log:N \g__tag_mc_stack_seq
       }
   }
@@ -531,11 +531,11 @@
   {
     \tl_if_empty:NT #1
       {
-        \msg_error:nnx { tag } {mc-tag-missing} { \__tag_get_mc_abs_cnt: }
+        \msg_error:nne { tag } {mc-tag-missing} { \__tag_get_mc_abs_cnt: }
       }
    \prop_if_in:NoF \g__tag_role_tags_NS_prop {#1}
      {
-       \msg_warning:nnx { tag } {role-unknown-tag} {#1}
+       \msg_warning:nne { tag } {role-unknown-tag} {#1}
      }
   }
 \cs_new_protected:Npn \__tag_check_init_mc_used:
@@ -564,7 +564,7 @@
   }
 \cs_new_protected:Npn \__tag_check_show_MCID_by_page:
   {
-    \tl_set:Nx \l__tag_tmpa_tl
+    \tl_set:Ne \l__tag_tmpa_tl
       {
         \__tag_property_ref_lastpage:nn
           {abspage}
@@ -595,7 +595,7 @@
                 ##1
              }
              {
-               \seq_gput_right:Nx \l_tmpa_seq
+               \seq_gput_right:Ne \l_tmpa_seq
                  {
                    Page##1-####1-
                    \__tag_property_ref:enn
@@ -658,7 +658,7 @@
   {
     \__tag_check_if_active_struct:T
       {
-        \tl_set:Nx  \l__tag_tmpa_tl { \__tag_property_ref:nnn{tagpdf-#1}{tagmcabs}{} }
+        \tl_set:Ne  \l__tag_tmpa_tl { \__tag_property_ref:nnn{tagpdf-#1}{tagmcabs}{} }
         \tl_if_empty:NTF\l__tag_tmpa_tl
           {
             \msg_warning:nnn {tag} {mc-label-unknown} {#1}
@@ -666,7 +666,7 @@
           {
             \cs_if_free:cTF { g__tag_mc_label_\tl_to_str:n{#1}_used_tl }
               {
-                \__tag_mc_handle_stash:x { \l__tag_tmpa_tl }
+                \__tag_mc_handle_stash:e { \l__tag_tmpa_tl }
                 \__tag_mc_set_label_used:n {#1}
               }
               {
@@ -694,7 +694,7 @@
       {
         \__tag_mc_if_in:TF
           {
-            \seq_gpush:Nx \g__tag_mc_stack_seq { \tag_get:n {mc_tag} }
+            \seq_gpush:Ne \g__tag_mc_stack_seq { \tag_get:n {mc_tag} }
             \__tag_check_mc_pushed_popped:nn
               { pushed }
               { \tag_get:n {mc_tag} }
@@ -804,7 +804,7 @@
     \bool_if:NT \g__tag_active_tree_bool
       {
         \pdfmanagement_add:nnn { Catalog / MarkInfo } { Marked } { true }
-        \pdfmanagement_add:nnx
+        \pdfmanagement_add:nne
           { Catalog }
           { StructTreeRoot }
           { \pdf_object_ref:n { __tag/struct/0 } }
@@ -826,17 +826,17 @@
     \int_step_inline:nn {\c at g__tag_struct_abs_int}
       {
         \int_incr:N\l__tag_tmpa_int
-        \tl_put_right:Nx \l__tag_tmpa_tl
+        \tl_put_right:Ne \l__tag_tmpa_tl
           {
             \__tag_struct_get_id:n{##1}~\pdf_object_ref:n{__tag/struct/##1}~
           }
         \int_compare:nNnF {\l__tag_tmpa_int}<{50} %
           {
-            \pdf_object_unnamed_write:nx {dict}
+            \pdf_object_unnamed_write:ne {dict}
               { /Limits~[\__tag_struct_get_id:n{##1-\l__tag_tmpa_int+1}~\__tag_struct_get_id:n{##1}]
                 /Names~[\l__tag_tmpa_tl]
               }
-            \tl_put_right:Nx\l__tag_tmpb_tl {\pdf_object_ref_last:\c_space_tl}
+            \tl_put_right:Ne\l__tag_tmpb_tl {\pdf_object_ref_last:\c_space_tl}
             \int_zero:N \l__tag_tmpa_int
             \tl_clear:N \l__tag_tmpa_tl
           }
@@ -843,7 +843,7 @@
       }
      \tl_if_empty:NF \l__tag_tmpa_tl
       {
-        \pdf_object_unnamed_write:nx {dict}
+        \pdf_object_unnamed_write:ne {dict}
           {
            /Limits~
              [\__tag_struct_get_id:n{\c at g__tag_struct_abs_int-\l__tag_tmpa_int+1}~
@@ -850,10 +850,10 @@
               \__tag_struct_get_id:n{\c at g__tag_struct_abs_int}]
            /Names~[\l__tag_tmpa_tl]
           }
-        \tl_put_right:Nx\l__tag_tmpb_tl {\pdf_object_ref_last:}
+        \tl_put_right:Ne\l__tag_tmpb_tl {\pdf_object_ref_last:}
       }
-      \pdf_object_unnamed_write:nx {dict}{/Kids~[\l__tag_tmpb_tl]}
-      \__tag_prop_gput:cnx
+      \pdf_object_unnamed_write:ne {dict}{/Kids~[\l__tag_tmpb_tl]}
+      \__tag_prop_gput:cne
           { g__tag_struct_0_prop }
           { IDTree }
           { \pdf_object_ref_last: }
@@ -862,17 +862,17 @@
  {
    \cs_new_protected:Npn \__tag_tree_write_structtreeroot:
      {
-        \__tag_prop_gput:cnx
+        \__tag_prop_gput:cne
           { g__tag_struct_0_prop }
           { ParentTree }
           { \pdf_object_ref:n { __tag/tree/parenttree } }
-        \__tag_prop_gput:cnx
+        \__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:nnx
+        \pdf_object_write:nne
             { __tag/struct/0 }
             {dict}
             {
@@ -883,13 +883,13 @@
  {
    \cs_new_protected:Npn \__tag_tree_write_structtreeroot:
      {
-        \__tag_prop_gput:cnx
+        \__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:nnx
+        \pdf_object_write:nne
             { __tag/struct/0 }
             {dict}
             {
@@ -915,7 +915,7 @@
 \tl_new:N \g__tag_parenttree_objr_tl
 \cs_new_protected:Npn \__tag_parenttree_add_objr:nn #1 #2 %#1 StructParent number, #2 objref
   {
-    \tl_gput_right:Nx \g__tag_parenttree_objr_tl
+    \tl_gput_right:Ne \g__tag_parenttree_objr_tl
       {
         #1 \c_space_tl #2 ^^J
       }
@@ -933,13 +933,13 @@
             \int_compare:nT
               {\__tag_property_ref:enn{mcid-####1}{tagabspage}{-1}=##1} %mcid is on current page
               {% yes
-                \prop_put:Nxx
+                \prop_put:Nee
                   \l__tag_tmpa_prop
                   {\__tag_property_ref:enn{mcid-####1}{tagmcid}{-1}}
                   {\prop_item:Nn \g__tag_mc_parenttree_prop {####1}}
               }
           }
-        \tl_put_right:Nx\l__tag_parenttree_content_tl
+        \tl_put_right:Ne\l__tag_parenttree_content_tl
           {
             \int_eval:n {##1-1}\c_space_tl
             [\c_space_tl %]
@@ -951,7 +951,7 @@
           {
             \prop_get:NnNTF \l__tag_tmpa_prop {####1} \l__tag_tmpa_tl
               {% page#1:mcid##1:\l__tag_tmpa_tl :content
-                \tl_put_right:Nx \l__tag_parenttree_content_tl
+                \tl_put_right:Ne \l__tag_parenttree_content_tl
                   {
                     \pdf_object_if_exist:eTF { __tag/struct/\l__tag_tmpa_tl }
                      {
@@ -1001,7 +1001,7 @@
       }
     \__tag_tree_parenttree_rerun_msg:
     \tl_put_right:NV \l__tag_parenttree_content_tl\g__tag_parenttree_objr_tl
-    \pdf_object_write:nnx  { __tag/tree/parenttree }{dict}
+    \pdf_object_write:nne  { __tag/tree/parenttree }{dict}
       {
         /Nums\c_space_tl [\l__tag_parenttree_content_tl]
       }
@@ -1018,12 +1018,12 @@
         {
           \tl_if_eq:nnF {##1}{##2}
            {
-             \pdfdict_gput:nnx {g__tag_role/RoleMap_dict}
+             \pdfdict_gput:nne {g__tag_role/RoleMap_dict}
               {##1}
               {\pdf_name_from_unicode_e:n{##2}}
            }
         }
-      \pdf_object_write:nnx  { __tag/tree/rolemap }{dict}
+      \pdf_object_write:nne  { __tag/tree/rolemap }{dict}
        {
         \pdfdict_use:n{g__tag_role/RoleMap_dict}
        }
@@ -1046,7 +1046,7 @@
             {##1}
         >>
       }
-    \tl_set:Nx \l__tag_tmpa_tl
+    \tl_set:Ne \l__tag_tmpa_tl
       {
         \seq_use:Nn
           \l__tag_tmpa_seq
@@ -1056,11 +1056,11 @@
       \l__tag_tmpa_tl
       {
         \pdf_object_new:n { __tag/tree/classmap }
-        \pdf_object_write:nnx
+        \pdf_object_write:nne
           { __tag/tree/classmap }
           {dict}
           { \l__tag_tmpa_tl }
-        \__tag_prop_gput:cnx
+        \__tag_prop_gput:cne
           { g__tag_struct_0_prop }
           { ClassMap }
           { \pdf_object_ref:n { __tag/tree/classmap }  }
@@ -1075,19 +1075,19 @@
         {
           \pdfdict_if_empty:nF {g__tag_role/RoleMapNS_##1_dict}
             {
-              \pdf_object_write:nnx {__tag/RoleMapNS/##1}{dict}
+              \pdf_object_write:nne {__tag/RoleMapNS/##1}{dict}
                 {
                   \pdfdict_use:n {g__tag_role/RoleMapNS_##1_dict}
                 }
-              \pdfdict_gput:nnx{g__tag_role/Namespace_##1_dict}
+              \pdfdict_gput:nne{g__tag_role/Namespace_##1_dict}
                 {RoleMapNS}{\pdf_object_ref:n {__tag/RoleMapNS/##1}}
             }
-          \pdf_object_write:nnx{tag/NS/##1}{dict}
+          \pdf_object_write:nne{tag/NS/##1}{dict}
             {
                \pdfdict_use:n {g__tag_role/Namespace_##1_dict}
             }
         }
-      \pdf_object_write:nnx {__tag/tree/namespaces}{array}
+      \pdf_object_write:nne {__tag/tree/namespaces}{array}
         {
           \prop_map_tokens:Nn \g__tag_role_NS_prop{\use_ii:nn}
         }
@@ -1115,7 +1115,7 @@
       {
        \hook_gput_code:nnn{shipout/before} { tagpdf/structparents }
          {
-           \pdfmanagement_add:nnx
+           \pdfmanagement_add:nne
              { Page }
              { StructParents }
              { \int_eval:n { \g_shipout_readonly_int} }
@@ -1166,7 +1166,7 @@
     {
       \prop_new:c { g__tag_role_NS_#1_prop }
       \prop_new:c { g__tag_role_NS_#1_class_prop }
-      \prop_gput:Nnx \g__tag_role_NS_prop {#1}{}
+      \prop_gput:Nne \g__tag_role_NS_prop {#1}{}
     }
  }
  {
@@ -1185,7 +1185,7 @@
       \pdf_string_from_unicode:nnN{utf8/string}{#2}\l__tag_tmpa_str
       \tl_if_empty:NF \l__tag_tmpa_str
         {
-          \pdfdict_gput:nnx
+          \pdfdict_gput:nne
             {g__tag_role/Namespace_#1_dict}
             {NS}
             {\l__tag_tmpa_str}
@@ -1193,13 +1193,13 @@
       %RoleMapNS is added in tree
       \tl_if_empty:nF  {#3}
        {
-         \pdfdict_gput:nnx{g__tag_role/Namespace_#1_dict}
+         \pdfdict_gput:nne{g__tag_role/Namespace_#1_dict}
           {Schema}{#3}
        }
-      \prop_gput:Nnx \g__tag_role_NS_prop {#1}{\pdf_object_ref:n{tag/NS/#1}~}
+      \prop_gput:Nne \g__tag_role_NS_prop {#1}{\pdf_object_ref:n{tag/NS/#1}~}
     }
  }
-\str_const:Nx \c__tag_role_userNS_id_str
+\str_const:Ne \c__tag_role_userNS_id_str
   { data:,
     \int_to_Hex:n{\int_rand:n {65535}}
     \int_to_Hex:n{\int_rand:n {65535}}
@@ -1222,7 +1222,7 @@
 \__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}{}
-\exp_args:Nnx
+\exp_args:Nne
   \__tag_role_NS_new:nnn {user}{\c__tag_role_userNS_id_str}{}
 \pdf_version_compare:NnTF < {2.0}
   {
@@ -1291,7 +1291,7 @@
         \prop_get:NnN \g__tag_role_rolemap_prop {#2}\l__tag_tmpa_tl
         \quark_if_no_value:NTF \l__tag_tmpa_tl
           {
-            \prop_gput:Nnx \g__tag_role_rolemap_prop {#1}{\tl_to_str:n{#2}}
+            \prop_gput:Nne \g__tag_role_rolemap_prop {#1}{\tl_to_str:n{#2}}
           }
           {
             \prop_gput:NnV \g__tag_role_rolemap_prop {#1}\l__tag_tmpa_tl
@@ -1327,7 +1327,7 @@
     \__tag_role_alloctag:nnV {#1}{#2}\l__tag_tmpa_tl
     \tl_if_in:nnF {-pdf-pdf2-mathml-}{-#2-}
      {
-       \pdfdict_gput:nnx {g__tag_role/RoleMapNS_#2_dict}{#1}
+       \pdfdict_gput:nne {g__tag_role/RoleMapNS_#2_dict}{#1}
           {
             [
               \pdf_name_from_unicode_e:n{#3}
@@ -1341,7 +1341,7 @@
         \prop_get:cnN { g__tag_role_NS_#4_prop } {#3}\l__tag_tmpa_tl
         \quark_if_no_value:NTF \l__tag_tmpa_tl
           {
-            \prop_gput:cnx { g__tag_role_NS_#2_prop } {#1}
+            \prop_gput:cne { g__tag_role_NS_#2_prop } {#1}
               {{\tl_to_str:n{#3}}{\tl_to_str:n{#4}}}
           }
           {
@@ -1359,8 +1359,8 @@
     {
       \prop_get:cnNTF {g__tag_role_NS_#2_prop} {#1}\l__tag_tmpa_tl
         {
-         \tl_set:Nx #3 {\exp_last_unbraced:NV\use_i:nn   \l__tag_tmpa_tl}
-         \tl_set:Nx #4 {\exp_last_unbraced:NV\use_ii:nn  \l__tag_tmpa_tl}
+         \tl_set:Ne #3 {\exp_last_unbraced:NV\use_i:nn   \l__tag_tmpa_tl}
+         \tl_set:Ne #4 {\exp_last_unbraced:NV\use_ii:nn  \l__tag_tmpa_tl}
         }
         {
          \tl_set:Nn #3 {#1}
@@ -1518,7 +1518,7 @@
           {
             \seq_map_indexed_inline:Nn \l__tag_tmpa_seq
               {
-                \prop_gput:Nnx\g__tag_role_index_prop
+                \prop_gput:Nne\g__tag_role_index_prop
                   {##2}
                   {\int_compare:nNnT{##1}<{10}{0}##1}
               }
@@ -1531,7 +1531,7 @@
            \seq_pop_left:NN\l__tag_tmpa_seq\l__tag_tmpa_tl
            \seq_map_indexed_inline:Nn \l__tag_tmpa_seq
              {
-               \exp_args:Nnx
+               \exp_args:Nne
                \__tag_store_parent_child_rule:nnn {##1}{\l__tag_tmpb_tl}{ ##2 }
              }
          }
@@ -1539,19 +1539,19 @@
   }
 \ior_close:N\g_tmpa_ior
 \prop_get:NnN\g__tag_role_index_prop{StructTreeRoot}\l__tag_tmpa_tl
-\prop_gput:Nnx\g__tag_role_index_prop{Root}{\l__tag_tmpa_tl}
+\prop_gput:Nne\g__tag_role_index_prop{Root}{\l__tag_tmpa_tl}
 \prop_get:NnN\g__tag_role_index_prop{Hn}\l__tag_tmpa_tl
 \pdf_version_compare:NnTF < {2.0}
   {
     \int_step_inline:nn{6}
       {
-        \prop_gput:Nnx\g__tag_role_index_prop{H#1}{\l__tag_tmpa_tl}
+        \prop_gput:Nne\g__tag_role_index_prop{H#1}{\l__tag_tmpa_tl}
       }
   }
   {
     \int_step_inline:nn{10}
       {
-        \prop_gput:Nnx\g__tag_role_index_prop{H#1}{\l__tag_tmpa_tl}
+        \prop_gput:Nne\g__tag_role_index_prop{H#1}{\l__tag_tmpa_tl}
       }
     \prop_get:NnN\g__tag_role_index_prop {mathml}\l__tag_tmpa_tl
     \prop_get:NnN\g__tag_role_index_prop {math}\l__tag_tmpb_tl
@@ -1572,7 +1572,7 @@
        { ! \quark_if_no_value_p:N \l__tag_tmpa_tl }
        { ! \quark_if_no_value_p:N \l__tag_tmpb_tl }
        {
-         \tl_set:Nx#4
+         \tl_set:Ne#4
            {
              \intarray_item:Nn
               \g__tag_role_parent_child_intarray
@@ -1591,7 +1591,7 @@
                  \tl_set:Nn \l__tag_tmpa_tl {unknown}
                }
              \tl_set:Nn \l__tag_tmpb_tl {#1}
-             \msg_note:nnxxx
+             \msg_note:nneee
                { tag }
                { role-parent-child }
                { #1 }
@@ -1606,7 +1606,7 @@
        }
        {
          \tl_set:Nn#4 {0}
-         \msg_warning:nnxxx
+         \msg_warning:nneee
            { tag }
            {role-parent-child}
            { #1 }
@@ -1653,7 +1653,7 @@
          }
          {
            \tl_set:Nn #5 {0}
-           \msg_warning:nnxxx
+           \msg_warning:nneee
             { tag }
             {role-parent-child}
             { #1 }
@@ -1683,7 +1683,7 @@
          }
          {
            \tl_set:Nn #3 {0}
-           \msg_warning:nnxxx
+           \msg_warning:nneee
             { tag }
             {role-parent-child}
             { #1 }
@@ -1705,7 +1705,7 @@
                {#1}
                \l__tag_tmpa_tl
                {
-                 \tl_set:Nx \l__tag_tmpa_tl {\tl_head:N\l__tag_tmpa_tl}
+                 \tl_set:Ne \l__tag_tmpa_tl {\tl_head:N\l__tag_tmpa_tl}
                  \tl_if_empty:NT\l__tag_tmpa_tl
                    {
                      \tl_set:Nn \l__tag_tmpa_tl {#1}
@@ -1725,7 +1725,7 @@
               {#3}
               \l__tag_tmpb_tl
               {
-                \tl_set:Nx \l__tag_tmpb_tl { \tl_head:N\l__tag_tmpb_tl }
+                \tl_set:Ne \l__tag_tmpb_tl { \tl_head:N\l__tag_tmpb_tl }
                 \tl_if_empty:NT\l__tag_tmpb_tl
                   {
                     \tl_set:Nn \l__tag_tmpb_tl {#3}
@@ -1746,7 +1746,7 @@
          }
          {
            \tl_set:Nn #5 {0}
-           \msg_warning:nnxxx
+           \msg_warning:nneee
             { tag }
             {role-parent-child}
             { #1 }
@@ -1783,11 +1783,11 @@
       {
         \prop_get:cVNT { g__tag_role_NS_latex-inline_prop }\l__tag_role_remap_tag_tl\l__tag_tmpa_tl
           {
-            \tl_set:Nx\l__tag_role_remap_tag_tl
+            \tl_set:Ne\l__tag_role_remap_tag_tl
               {
                 \exp_last_unbraced:NV\use_i:nn \l__tag_tmpa_tl
               }
-            \tl_set:Nx\l__tag_role_remap_NS_tl
+            \tl_set:Ne\l__tag_role_remap_NS_tl
               {
                 \exp_last_unbraced:NV\use_ii:nn \l__tag_tmpa_tl
               }
@@ -1794,7 +1794,7 @@
           }
         \int_compare:nNnT {\l__tag_loglevel_int} > { 0 }
           {
-            \msg_note:nnx { tag } { role-remapping }{ \l__tag_role_remap_tag_tl }
+            \msg_note:nne { tag } { role-remapping }{ \l__tag_role_remap_tag_tl }
           }
       }
   }
@@ -1807,7 +1807,7 @@
           }
         \int_compare:nNnT {\l__tag_loglevel_int} > { 0 }
           {
-            \msg_note:nnx { tag } { role-remapping }{ \l__tag_role_remap_tag_tl/latex-inline }
+            \msg_note:nne { tag } { role-remapping }{ \l__tag_role_remap_tag_tl/latex-inline }
           }
       }
   }
@@ -1833,8 +1833,8 @@
        \tl_if_empty:NF \l_tmpa_tl
          {
            \exp_args:NNno \seq_set_split:Nnn \l_tmpa_seq { / } {\l_tmpa_tl/}
-           \tl_set:Nx \l__tag_role_tag_tmpa_tl  { \seq_item:Nn \l_tmpa_seq {1} }
-           \tl_set:Nx \l__tag_role_role_tmpa_tl { \seq_item:Nn \l_tmpa_seq {2} }
+           \tl_set:Ne \l__tag_role_tag_tmpa_tl  { \seq_item:Nn \l_tmpa_seq {1} }
+           \tl_set:Ne \l__tag_role_role_tmpa_tl { \seq_item:Nn \l_tmpa_seq {2} }
          }
       \tl_if_empty:NT \l__tag_role_role_namespace_tmpa_tl
          {
@@ -2047,7 +2047,7 @@
   }
 \cs_new_protected:Npn \__tag_struct_kid_mc_gput_right:nn #1 #2 %#1 structure num, #2 MCID absnum%
   {
-    \__tag_seq_gput_right:cx
+    \__tag_seq_gput_right:ce
       { g__tag_struct_kids_#1_seq }
       {
         \__tag_struct_mcid_dict:n {#2}
@@ -2061,7 +2061,7 @@
 \cs_generate_variant:Nn \__tag_struct_kid_mc_gput_right:nn {ne}
 \cs_new_protected:Npn\__tag_struct_kid_struct_gput_right:nn #1 #2 %#1 num of parent struct, #2 kid struct
   {
-    \__tag_seq_gput_right:cx
+    \__tag_seq_gput_right:ce
       { g__tag_struct_kids_#1_seq }
       {
         \pdf_object_ref:n { __tag/struct/#2 }
@@ -2078,7 +2078,7 @@
       {
         /Type/OBJR/Obj~#2/Pg~#3
       }
-    \__tag_seq_gput_right:cx
+    \__tag_seq_gput_right:ce
       { g__tag_struct_kids_#1_seq }
       {
         \pdf_object_ref_last:
@@ -2397,7 +2397,7 @@
         \int_gincr:N \g__tag_struct_AFobj_int
         \pdf_object_if_exist:eF {__tag/fileobj\int_use:N\g__tag_struct_AFobj_int}
           {
-            \pdffile_embed_stream:nxx
+            \pdffile_embed_stream:nee
               {#1}
               {tag-AFfile\int_use:N\g__tag_struct_AFobj_int.#2}
               {__tag/fileobj\int_use:N\g__tag_struct_AFobj_int}
@@ -2418,13 +2418,13 @@
       }
    }
    {
-     \cs_generate_variant:Nn \pdffile_embed_stream:nnN {nxN}
+     \cs_generate_variant:Nn \pdffile_embed_stream:nnN {neN}
      \cs_new_protected:Npn \__tag_struct_add_inline_AF:nn #1 #2
      % #1 content, #2 extension
       {
         \group_begin:
         \int_gincr:N \g__tag_struct_AFobj_int
-        \pdffile_embed_stream:nxN
+        \pdffile_embed_stream:neN
           {#1}
           {tag-AFfile\int_use:N\g__tag_struct_AFobj_int.#2}
           \l__tag_tmpa_tl
@@ -2497,7 +2497,7 @@
     {
       \group_begin:
       \pdfdict_put:nnn { l_pdffile/Filespec }{AFRelationship} { /Source }
-      \pdfdict_put:nnx
+      \pdfdict_put:nne
         { l_pdffile }{Subtype}
         { \pdf_name_from_unicode_e:n{application/x-tex} }
       \__tag_struct_add_inline_AF:on {#1}{tex}
@@ -2716,7 +2716,7 @@
               { \g__tag_struct_stack_current_tl }
               { \__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{0} }
             %add the current structure to the labeled one as parents
-            \__tag_prop_gput:cnx
+            \__tag_prop_gput:cne
               { g__tag_struct_\__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{0}_prop }
               { P }
               {
@@ -2764,11 +2764,11 @@
               {
                 \msg_warning:nnn { tag } {struct-used-twice} {#1}
               }
-            %add the label structure as kid to the current structure (can be the root)
+            %add the \#1 structure as kid to the current structure (can be the root)
             \__tag_struct_kid_struct_gput_right:ee
               { \g__tag_struct_stack_current_tl }
               { #1 }
-            %add the current structure to the labeled one as parents
+            %add the current structure to \#1 as parent
              \__tag_struct_prop_gput:nne
               { #1 }
               { P }
@@ -2860,13 +2860,6 @@
         \__tag_attr_new_entry:nn #1
       }
   }
-\cs_if_free:NTF \seq_set_map_e:NNn
-  {
-    \cs_new_eq:NN \__tag_seq_set_map_e:NNn \seq_set_map_x:NNn
-  }
-  {
-    \cs_new_eq:NN \__tag_seq_set_map_e:NNn \seq_set_map_e:NNn
-  }
 \keys_define:nn { __tag / struct }
   {
     attribute-class .code:n =
@@ -2873,7 +2866,7 @@
      {
        \clist_set:Ne \l__tag_tmpa_clist { #1 }
        \seq_set_from_clist:NN \l__tag_tmpb_seq \l__tag_tmpa_clist
-       \__tag_seq_set_map_e:NNn \l__tag_tmpa_seq \l__tag_tmpb_seq
+       \seq_set_map_e:NNn \l__tag_tmpa_seq \l__tag_tmpb_seq
          {
            \pdf_name_from_unicode_e:n {##1}
          }
@@ -2909,7 +2902,7 @@
         \clist_if_empty:NF \l__tag_tmpa_clist
          {
             \seq_set_from_clist:NN \l__tag_tmpb_seq \l__tag_tmpa_clist
-           \__tag_seq_set_map_e:NNn \l__tag_tmpa_seq \l__tag_tmpb_seq
+           \seq_set_map_e:NNn \l__tag_tmpa_seq \l__tag_tmpb_seq
              {
                \pdf_name_from_unicode_e:n {##1}
              }
@@ -2955,9 +2948,9 @@
 \keys_define:nn { __tag / setup }
   {
     interwordspace .choices:nn = { true, on }
-      { \msg_warning:nnx {tag}{sys-no-interwordspace}{\c_sys_engine_str}  },
+      { \msg_warning:nne {tag}{sys-no-interwordspace}{\c_sys_engine_str}  },
     interwordspace .choices:nn = { false, off }
-      { \msg_warning:nnx {tag}{sys-no-interwordspace}{\c_sys_engine_str}  },
+      { \msg_warning:nne {tag}{sys-no-interwordspace}{\c_sys_engine_str}  },
     interwordspace .default:n = true,
     show-spaces .bool_set:N = \l__tag_showspaces_bool
   }
@@ -3293,7 +3286,7 @@
       }
     \int_compare:nNnF {\g__tag_para_main_begin_int}={\g__tag_para_main_end_int}
          {
-           \msg_error:nnxxx
+           \msg_error:nneee
              {tag}
              {para-hook-count-wrong}
              {\int_use:N\g__tag_para_main_begin_int}
@@ -3302,7 +3295,7 @@
          }
     \int_compare:nNnF {\g__tag_para_begin_int}={\g__tag_para_end_int}
          {
-           \msg_error:nnxxx
+           \msg_error:nneee
              {tag}
              {para-hook-count-wrong}
              {\int_use:N\g__tag_para_begin_int}
@@ -3462,7 +3455,7 @@
     \tag_mc_end_push:
     \tag_struct_begin:n { tag=Link }
     \tag_mc_begin:n { tag=Link }
-    \pdfannot_dict_put:nnx
+    \pdfannot_dict_put:nne
       { link/URI }
       { StructParent }
       { \tag_struct_parent_int: }
@@ -3472,7 +3465,7 @@
   {pdfannot/link/URI/after}
   {tagpdf}
   {
-     \tag_struct_insert_annot:xx {\pdfannot_link_ref_last:}{\tag_struct_parent_int:}
+     \tag_struct_insert_annot:ee {\pdfannot_link_ref_last:}{\tag_struct_parent_int:}
      \tag_mc_end:
      \tag_struct_end:
      \tag_mc_begin_pop:n{}
@@ -3485,7 +3478,7 @@
      \tag_mc_end_push:
      \tag_struct_begin:n{tag=Link}
      \tag_mc_begin:n{tag=Link}
-     \pdfannot_dict_put:nnx
+     \pdfannot_dict_put:nne
        { link/GoTo }
        { StructParent }
        { \tag_struct_parent_int: }
@@ -3495,7 +3488,7 @@
   {pdfannot/link/GoTo/after}
   {tagpdf}
   {
-    \tag_struct_insert_annot:xx {\pdfannot_link_ref_last:}{\tag_struct_parent_int:}
+    \tag_struct_insert_annot:ee {\pdfannot_link_ref_last:}{\tag_struct_parent_int:}
     \tag_mc_end:
     \tag_struct_end:
     \tag_mc_begin_pop:n{}

Modified: trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty	2023-11-10 21:40:59 UTC (rev 68804)
+++ trunk/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty	2023-11-10 21:41:15 UTC (rev 68805)
@@ -1,5 +1,5 @@
 %\RequirePackage[enable-debug]{expl3}[2018/06/14]
-\ProvidesExplPackage {tagpdfdocu-patches} {2023-10-27} {0.98m}
+\ProvidesExplPackage {tagpdfdocu-patches} {2023-11-10} {0.98n}
  {patches/commands for the tagpdf documentation}
 \RequirePackage{etoolbox,xpatch}
 



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