This is the mail archive of the docbook-apps@lists.oasis-open.org mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: XSL & xref


On Wed, Feb 05, 2003 at 02:18:42AM +0700, pclouds wrote:
> To save some typos, i used <xref linkend/> without endterm.
> The result was <a href="#q1">Q: Q:</a> (which i expect
> <a href="#q1">Q: Question 1</a>). I can fix it by customizing
> <xsl:template match="question" mode="object.xref.template">.
> But i think "Q: Q:" may be a bug, isn't it?

Ugh, that sounds like a bug.
What settings are you using for the labels?
Are you setting the 'qanda.defaultlabel' parameter
on the command line or customization?
Are you using a 'defaultlabel' attribute on qandaset
in your document, or a <label> element in the
question?  The default cross reference
should be "Q: 1.1" if you are using numbering.

Your xref cross references won't contain the question
text unless you use endterm to point to its para.  It is unlikely
the stylesheets will ever try to print the question text
automatically, because a question can contain multiple block
elements.

Bob Stayton                                 400 Encinal Street
Publications Architect                      Santa Cruz, CA  95060
Technical Publications                      voice: (831) 427-7796
The SCO Group                               fax:   (831) 429-1887
                                            email: bobs@sco.com

> 
> On Wed, Jan 29, 2003 at 12:49:51PM -0800, Bob Stayton wrote:
> > Actually, that wasn't the problem.  I didn't see
> > that you were using the endterm attribute in
> > your <xref>.
> > 
> > When you use endterm, the stylesheet applies its templates
> > to all the children of the element pointed to, which in
> > this case includes the <para> element which generates the
> > <p> tags.
> > 
> > You can avoid this by putting another id on the para child
> > and pointing your endterm to that.  The children of
> > para is just the text.
> > 
> > <qandaset>
> >   <qandaentry>
> >     <question id="q1"><para id="p1">Question 1</para></question>
> >     <answer><para>Here is the 
> >       xref <xref linkend="q1" endterm="p1"/><para></answer>
> >   </qandaentry>
> > </qandaset>
> > 
> > 
> > Bob Stayton                                 400 Encinal Street
> > Publications Architect                      Santa Cruz, CA  95060
> > Technical Publications                      voice: (831) 427-7796
> > The SCO Group                               fax:   (831) 429-1887
> >                                             email: bobs@sco.com
> > 
> > 
> > On Thu, Jan 30, 2003 at 02:07:02AM +0700, pclouds wrote:
> > > Oh, sorry. I used <qandaset defaultlabel='qanda'> instead of
> > > <qandaset>
> > > 
> > > On Wed, Jan 29, 2003 at 09:49:27AM -0800, Bob Stayton wrote:
> > > > On Wed, Jan 29, 2003 at 01:03:31PM +0700, pclouds wrote:
> > > > > Hello
> > > > > I wrote the code like:
> > > > > <qandaset>
> > > > >   <qandaentry>
> > > > >     <question id="q1"><para>Question 1</para></question>
> > > > >     <answer><para>Here is the 
> > > > > xref <xref linkend="q1" endterm="q1"/><para></answer>
> > > > >   </qandaentry>
> > > > > </qandaset>
> > > > > 
> > > > > And <xref> produce: <a href="#q1"><p>Question 1</p></a>
> > > > > It should be: <a href="#q1">Question 1</a>
> > > > > Can you show me how to fix this?
> > > > 
> > > > Are you using a stylesheet customization?
> > > > The default XSL output for an <xref> to a <question> is
> > > > <a href="#q1>Q: 1.1</a>.  That comes from the gentext
> > > > template:
> > > > 
> > > >    <l:context name="xref">
> > > >       <l:template name="question" text="Q:&#160;%n"/>
> > > > 
> > > > in common/en.xml (or whatever lang you are using).
> > > > If you are getting the text of the question, then
> > > > there is a customization somewhere.  
> > > > 
> > > > -- 
> > > > 
> > > > Bob Stayton                                 400 Encinal Street
> > > > Publications Architect                      Santa Cruz, CA  95060
> > > > Technical Publications                      voice: (831) 427-7796
> > > > The SCO Group                               fax:   (831) 429-1887
> > > >                                             email: bobs@sco.com
> > > 
> > > -- 
> > > Bi Ca; Lao
> > 
> > -- 
> > 
> > Bob Stayton                                 400 Encinal Street
> > Publications Architect                      Santa Cruz, CA  95060
> > Technical Publications                      voice: (831) 427-7796
> > The SCO Group                               fax:   (831) 429-1887
> >                                             email: bobs@sco.com
> 
> -- 
> Bi Cờ Lao

-- 

Bob Stayton                                 400 Encinal Street
Publications Architect                      Santa Cruz, CA  95060
Technical Publications                      voice: (831) 427-7796
The SCO Group                               fax:   (831) 429-1887
                                            email: bobs@sco.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]