ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* [NTG-context] XML, multiple spaces encoded as %20 get merged into one space
@ 2023-09-06 10:28 denis.maier
  2023-09-06 14:59 ` [NTG-context] " Pablo Rodriguez
  0 siblings, 1 reply; 3+ messages in thread
From: denis.maier @ 2023-09-06 10:28 UTC (permalink / raw)
  To: ntg-context


[-- Attachment #1.1: Type: text/plain, Size: 2428 bytes --]

Hi,

I have the example below that uses the three images in the attachment.
For some reason multiple spaces encoded as %20 get merged into a single %20.

The first image (<test  two20spaces.pdf>) does not get included even though the name is correct.
The second image (<test one space.pdf>) gets included. Filename is correct.
The third image (<test not two space.pdf>) gets included even though the actual file name does not contain two spaces (but @xlink:href does).

Any ideas what is going on here?

Then, in the case of the link, the two %20 end up as a single %20.

Best,
Denis

\setupinteraction[state=start]

\startxmlsetups xml:test
                \xmlsetsetup{#1}{*}{-}
                \xmlsetsetup{#1}{document|fig}{xml:*}
\stopxmlsetups

\xmlregisterdocumentsetup{test}{xml:test}

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

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

\startxmlsetups xml:graphic
  \externalfigure[\xmlfilter{#1}{./url('xlink:href')}]
\stopxmlsetups

\startxmlsetups xml:link
  https://uv-v4.netlify.app/\#?manifest=\xmlfilter{#1}{./url('xlink:href')}
\stopxmlsetups

\startxmlsetups xml:fig
                \startplacefigure[title=Test]
                \startalignment[center]
                               \goto
                               {\xmlfilter{#1}{/graphic/command(xml:graphic)}}
                               [url(\xmlfilter{#1}{/link/command(xml:link)})]
                \stopalignment
                \stopplacefigure

                \goto{test}[url(\xmlfilter{#1}{/link/command(xml:link)})]
\stopxmlsetups


\startbuffer[test]
<?xml version="1.0" encoding="UTF-8"?>
<document>

<fig>
<graphic xlink:href="test%20%20two%20spaces.pdf"/>
<link xlink:href="https://iiif.ub.unibe.ch/presentation/v2.1/berner-inkunabeln/manifest/Inc%20IV%2076%20%20Spiegel%20vorn_Teigstempel"/>
</fig>

<fig>
<graphic xlink:href="test%20one%20space.pdf"/>
<link xlink:href="https://iiif.ub.unibe.ch/presentation/v2.1/berner-inkunabeln/manifest/Inc%20IV%2076%20%20Spiegel%20vorn_Teigstempel"/>
</fig>

<fig>
<graphic xlink:href="test%20%20not%20two%20spaces.pdf"/>
<link xlink:href="https://iiif.ub.unibe.ch/presentation/v2.1/berner-inkunabeln/manifest/Inc%20IV%2076%20%20Spiegel%20vorn_Teigstempel"/>
</fig>
</document>
\stopbuffer


\starttext

\xmlprocessbuffer{test}{test}{}

\stoptext


[-- Attachment #1.2: Type: text/html, Size: 8445 bytes --]

[-- Attachment #2: test  two spaces.pdf --]
[-- Type: application/pdf, Size: 4301 bytes --]

[-- Attachment #3: test one space.pdf --]
[-- Type: application/pdf, Size: 4301 bytes --]

[-- Attachment #4: test not two spaces.pdf --]
[-- Type: application/pdf, Size: 4301 bytes --]

[-- Attachment #5: Type: text/plain, Size: 495 bytes --]

___________________________________________________________________________________
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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-09-06 16:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-06 10:28 [NTG-context] XML, multiple spaces encoded as %20 get merged into one space denis.maier
2023-09-06 14:59 ` [NTG-context] " Pablo Rodriguez
2023-09-06 16:14   ` Hans Hagen via ntg-context

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).