[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: Defining a key on a RTF inside a Template

Subject: RE: Defining a key on a RTF inside a Template
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 8 Dec 2004 10:15:20 -0000
key exslt node set
The value of the match attribute must be a valid pattern

match="exslt:node-set($projectSum)/projectsum"

should simply be

match="projectsum"

The xsl:key declaration doesn't define which document the key is referring
to; that's decided at the time you use the key() function.

Michael Kay
http://www.saxonica.com/ 

> -----Original Message-----
> From: Ranjan K. Baisak [mailto:ranjanbaisak@xxxxxxxxx] 
> Sent: 08 December 2004 09:05
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: RE:  Defining a key on a RTF inside a Template 
> 
> I am quite agree with Michael because my key depends
> upon an RTF. So I can take that RTF is the context
> node for declaring key.
> 
> In either case, I am getting error during processing.
> In XALAN : "Incorrect place of defining key"
> In SAXON 8.1.1: XPath syntax error at char 0 in
> {exslt:node-set($}:;     The only functions allowed in
> a pattern are id() and key()
> 
> I too tried to declare the key at the top of my
> stylesheet but it still throw error.
> 
> 
> regards,
> Ranjan
> 
> --- Michael Kay <mike@xxxxxxxxxxxx> wrote:
> 
> > > According to XSLT 1.0 specificatoion ( 
> > > http://www.w3.org/TR/1999/REC-xslt-19991116 ),
> > xsl:key is a
> > > top-level element. Therefore you cannot place it
> > outside a 
> > > xsl:stylesheet/xsl:transform .
> > > The easiest solution: do not use keys.
> > 
> > No, it's perfectly OK to use keys to search within
> > an RTF.
> > 
> > Michael Kay
> > http://www.saxonica.com/
> > 
> > > 
> > > --- "Ranjan K. Baisak" <ranjanbaisak@xxxxxxxxx>
> > wrote:
> > > 
> > > > I am creating  a key inside a template with RTF
> > as
> > > > below:
> > > > <xsl:variable name="projectSum">
> > > > 	<xsl:for-each select="//project">
> > > > 		<xsl:variable name="projectname"
> > select="./@name"/>
> > > > 		<xsl:variable name="projectid" select="@id"/>
> > > > 		<xsl:variable name="projectref"
> > > > select="projectelement/@ref"/>
> > > > 		<xsl:copy>
> > > > 			<xsl:copy-of select="./@name"/>
> > > > 			<xsl:copy-of select="./@id"/>
> > > > 			<projectsum>
> > > > 				<xsl:copy-of
> > > >
> >
> select="count(key('ProjectPartNumber',$projectref))"/>
> > > > 			</projectsum>
> > > > 		</xsl:copy>
> > > > 	</xsl:for-each>
> > > > </xsl:variable>
> > > > 
> > > > <xsl:key name="countDetail"
> > > > match="exslt:node-set($projectSum)/projectsum"
> > > > use="./@id"/>
> > > > 
> > > > In XALAN it throws error with message "Incorrect
> > place
> > > > of defining Key".
> > > > I am not sure whether it is possible to create a
> > key
> > > > with RTF within a template?
> > > > If not possible, is there any otherway to achive
> > the
> > > > same functionality?
> > > > 
> > > > regards,
> > > > Ranjan
> > > > 
> > > > 
> > > > 
> > > > 		
> > > > __________________________________ 
> > > > Do you Yahoo!? 
> > > > Yahoo! Mail - now with 250MB free storage. Learn
> > more.
> > > > http://info.mail.yahoo.com/mail_250
> > > > 
> > > > 
> > > 
> > > 
> > > =====
> > > Marian
> > > http://www.utdallas.edu/~mgo031000/
> > > 
> > > 
> > > 		
> > > __________________________________ 
> > > Do you Yahoo!? 
> > > Yahoo! Mail - Find what you need with new enhanced
> > search.
> > > http://info.mail.yahoo.com/mail_250
> > 
> > 
> 
> 
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around 
> http://mail.yahoo.com 

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.