I did not succeed in on-the-fly loading data from an xml-buffer and 
subsequently executing its content.
The accompanying minimal example of a <document> shows what I strive to 
accomplish.
The node <buffer> contains the buffered data (abc meant to be set in bold) and 
node <getbuffer> executing the typesetting. As can be seen the output the 
<b>xyz</b> outside <buffer> is correctly set in bold, but the contents of 
<buffer> is not processed: the xml is just reproduced. Obviously there is some 
misunderstanding on my part.
I would like to be pointed in the right direction.

Hans van der Meer

\startbuffer[demo-xml]
<?xml version="1.0" encoding="UTF-8"?>
<document>
<buffer name="name">
<b>abc</b>
</buffer>
<!-- other stuff in real application -->
<getbuffer name="name"/>
<b>xyz</b>
</document>
\stopbuffer

\enabletrackers[lxml.loading,lxml.setups]

\startxmlsetups xml:demo:base
        \xmlsetsetup{#1}{document|buffer|getbuffer|execbuffer|b}{xml:demo:*}
\stopxmlsetups
\xmlregisterdocumentsetup{demo}{xml:demo:base}

\startxmlsetups xml:demo:buffer
        ... enter <buffer> for "\xmlatt{#1}{name}"\crlf
        \xmltobuffer{#1}{.}{\xmlatt{#1}{name}}
\stopxmlsetups

\startxmlsetups xml:demo:getbuffer
        ... enter <getbuffer> for "\xmlatt{#1}{name}"\crlf
        \xmlprocessbuffer{}{\xmlatt{#1}{name}}{xml:demo:execbuffer}
\stopxmlsetups

\startxmlsetups xml:demo:execbuffer
        ... enter <execbuffer>\crlf
        \xmlall{#1}{buffer/*}
\stopxmlsetups

\startxmlsetups xml:demo:b
        \xmlstripnolines{#1}{.}
        {\bf\xmlflush{#1}}
\stopxmlsetups

\startxmlsetups xml:demo:document
\writestatus{TEST}{start document}
        start document "\xmldocument"\blank
        \xmlflush{#1}\blank
        stop document "\xmldocument"\blank
\writestatus{TEST}{stop document}
\stopxmlsetups

\starttext
        \textrule{Demo of buffer: demo.xml}
        ==========\crlf
        \xmlprocessbuffer{demo}{demo-xml}{}
        ==========\crlf
\stoptext




Attachment: demo2.pdf
Description: demo2.pdf

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

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to