Thanks, Aditya, The first problem is adequately solved by adding []. I'll
prepare an example for the second problem.
A related problem is referring to sections and other blocks.
<section id="sec:cows"><title>Cows</title>
<para>cows cows cows. As I told in <xref linkend="sec:cows"/></para></section>
The title is mapped as follows (lpath):
\xmlsetsetup{#1}{section/title}{xml:section/title}
\startxmlsetups xml:section:title
\section{\xmlflush{#1}}
\stopxmlsetups
The section is not mapped:
\startxmlsetups xml:section
\xmlflush{#1}
\stopxmlsetups
Adding [\xmlatt{#1}{id}] to xml:section:title does not work of course. Using
[\xmlatt{#1}{id}] with xml:section puts the id before the \section command. I
think one of the other commands has to be used in such a way that the id is
flushed forward after the \section command.
Regards,
Robert
Op 20 mrt 2011, om 17:05 heeft Aditya Mahajan het volgende geschreven:
> On Sun, 20 Mar 2011, R. Ermers wrote:
>
>> Dear All,
>>
>> My xml docbook file contains a number of graphics. Some are regular figures,
>> some are edgefigures. I have two questions in this respect.
>
> Understanding these snippets is difficult without a minimal working example.
>
>> A. referring to floats
>>
>> \placeedgefigure
>> [\xmlatt{#1}{id}]
>> {\xmlfirst{#1}{/caption}}
>> {\framed[frame=off]{\setlayer[graphics]{\xmlfirst{#1}{/imageobject}}}}
>>
>> \definefloat[edgefigure][figure]
>> \setupfloat[edgefigure]
>> [leftmargindistance=-\innercombitotal,rightmargindistance=-\outercombitotal,
>> default={outer,low,long}, criterium=.65\textwidth,numbering=no]
>>
>> <mediaobject id="fig:cow" role="edgefigure">
>> <imageobject>
>> <imagedata scale="500" fileref="cow.jpg"/>
>> </imageobject>
>> </mediaobject>
>>
>> I now wonder how to refer to these floats. That is, referring through <xref
>> linkend="cow"/> is not difficult to implement, but for some reason the
>> mapping of the id is not that obvious. I tried it like this:
>>
>> \startxmlsetups xml:mediaobject:edgefigure
>> \placeedgefigure
>> [\xmlatt{#1}{id}]
>> {\xmlfirst{#1}{/caption}}
>> {\framed[frame=off]{\setlayer[graphics]{\xmlfirst{#1}{/imageobject}}}}
>> \stopxmlsetups
>
>
> Try
>
> \placeedgefigure
> []
> [\xmlatt{#1}{id}]
> {....}
> {....}
>> B. edgefigures and regular figures
>>
>> The document contains two types of figures.
>>
>> \xmlsetsetup{#1}{mediaobject[@role='fig']}{xml:mediaobject:fig}
>> \xmlsetsetup{#1}{mediaobject[@role='edgefigure']}{xml:mediaobject:edgefigure}
>>
>> I have noticed that when <mediaobject> contains both the attributes id and
>> role, such as the cow example, the figure is considered a regular figure
>> automatically and will not typeset as an edgefigure.
>
> Please provide a minimal working example.
>
> Aditya
> ___________________________________________________________________________________
> If your question is of interest to others as well, please add an entry to the
> Wiki!
>
> maillist : [email protected] / http://www.ntg.nl/mailman/listinfo/ntg-context
> webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
> archive : http://foundry.supelec.fr/projects/contextrev/
> wiki : http://contextgarden.net
> ___________________________________________________________________________________
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : [email protected] / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
archive : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________