> -----Ursprüngliche Nachricht-----
> Von: ntg-context <ntg-context-boun...@ntg.nl> Im Auftrag von Hans Hagen
> via ntg-context
> Gesendet: Donnerstag, 16. Februar 2023 23:45
> An: Denis Maier via ntg-context <ntg-context@ntg.nl>
> Cc: Hans Hagen <j.ha...@freedom.nl>
> Betreff: Re: [NTG-context] Unexpected results with \xmlpos
> 
> On 2/16/2023 10:16 AM, Denis Maier via ntg-context wrote:
> > Hi,
> >
> > I’m getting unexpected results for \xmlpos
> >
> > With the example below, I was expecting to get the following positions:
> >
> > 1 2 3 4
> >
> > However the result is: 2 4 6 8, i.e. each time it’s exactly the double.
> >
> > What am I missing?
> 
> that there are spaces between elements .. you can try:
> 
> \xmlmatch {#1}
> 
> instead
> 
> Hans

Thanks, that does the trick.

However, now I get an error when I try to return a key-value setting via 
xmlmap, see below. Any hints why this does not work

\xmlmapvalue{colgroupalign}{dir: rtl}{align=righttoleft}
\xmlmapvalue{colgroupalign}{dir: ltr}{align=lefttoright}

as opposed to:

\xmlmapvalue{colgroupalignvar}{dir: rtl}{righttoleft}
\xmlmapvalue{colgroupalignvar}{dir: ltr}{lefttoright}

?

Best,
Denis

\startbuffer[test]
<?xml version='1.0' standalone='yes?>
<document>
<table-wrap>
        <table>
           <colgroup>
                  <col/>
                  <col style="dir: rtl"/>
                  <col style="dir: rtl"/>
                  <col/>
           </colgroup>
           <thead>
                  <tr>
                         <th>asdf</th>
                         <th>bsdf</th>
                         <th>csdf</th>
                         <th>dsdf</th>
                  </tr>
           </thead>
           <tbody>
                  <tr>
                         <td>a</td>
                         <td>b</td>
                         <td>c</td>
                         <td>d</td>
                  </tr>
           </tbody>
        </table>
</table-wrap>
</document>
\stopbuffer

\startxmlsetups xml:test
\xmlsetsetup{\xmldocument}{document}{xml:*}
\xmlsetsetup{#1}{table-wrap}{xml:table-wrap}
\xmlsetsetup{#1}{table}{xml:table}
\stopxmlsetups

\xmlregistersetup{xml:test}

\xmlmapvalue{colgroupalign}{dir: rtl}{align=righttoleft}
\xmlmapvalue{colgroupalign}{dir: ltr}{align=lefttoright}

\xmlmapvalue{colgroupalignvar}{dir: rtl}{righttoleft}
\xmlmapvalue{colgroupalignvar}{dir: ltr}{lefttoright}

\startxmlsetups xml:table:colgroup
        \xmlfilter {#1} {/col/command(xml:table:colgroup:col)} % gives errors
        %\xmlfilter {#1} {/col/command(xml:table:colgroup:colvar)} % works
\stopxmlsetups

\startxmlsetups xml:table:colgroup:colvar
  \setupTABLE[c][\xmlmatch 
{#1}][align=\xmlvalue{colgroupalignvar}{\xmlatt{#1}{style}}{lefttoright}]
\stopxmlsetups

\startxmlsetups xml:table:colgroup:col
  \setupTABLE[c][\xmlmatch 
{#1}][\xmlvalue{colgroupalign}{\xmlatt{#1}{style}}{align=lefttoright}]
\stopxmlsetups

\startxmlsetups xml:document
  \xmlflush{#1}
\stopxmlsetups

\startxmlsetups xml:table-wrap
        \startplacetable
            \xmlflush{#1}
    \stopplacetable
\stopxmlsetups

\startxmlsetups xml:table
  \xmlfilter {#1} {/colgroup/command(xml:table:colgroup)}
  \bTABLE
        \xmlfilter{#1}{/thead/command(xml:table:thead)}
        \xmlfilter{#1}{/tbody/command(xml:table:tbody)}
  \eTABLE
\stopxmlsetups

\startxmlsetups xml:table:thead
        \bTABLEhead
                \xmlfilter{#1}{/tr/command(xml:table:thead:tr)}
        \eTABLEhead
\stopxmlsetups

\startxmlsetups xml:table:thead:tr
        \bTR
                \xmlfilter{#1}{/th/command(xml:table:thead:tr:th)}
        \eTR
\stopxmlsetups

\startxmlsetups xml:table:thead:tr:th
        \bTH
                \xmlflush{#1}
        \eTH
\stopxmlsetups

\startxmlsetups xml:table:tbody 
\bTABLEbody\xmlfilter{#1}{/tr/command(xml:table:tbody:tr)}\eTABLEbody
\stopxmlsetups

\startxmlsetups xml:table:tbody:tr
\bTR\xmlfilter{#1}{/td/command(xml:table:tbody:tr:td)}\eTR
\stopxmlsetups

\startxmlsetups xml:table:tbody:tr:td
\bTC \xmlflush{#1} \eTC 
\stopxmlsetups


\starttext
  \xmlprocessbuffer{test}{test}{}
\stoptext

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / https://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : https://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : https://contextgarden.net
___________________________________________________________________________________

Reply via email to