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

AW: Restraining specific words from an element todispl

Subject: AW: Restraining specific words from an element todisplay
From: Markus Abt <abt@xxxxxxxx>
Date: Thu, 21 Aug 2003 16:54:44 +0200
aw words
Hello Joseph,

it's hard to see a logical structure in the XML file. Is every MR870a "starting"
a new record? Or does your whole XML fragment build one record?
How should the output (logically) look like?

Anyway, the for-each loop
<xsl:for-each select="MR870/MR870c[text()!='ONLINELIB'
and text()!='JOURNALS --' and text()!='LIBWEBSITE --'] |
      MR870/MR870a[text()!='ONLINELIB']">
collects the text content of some MR870c and MR870a elements.

It seems to me that the DisplayContent template that you call would
then output these text contents without any structure, more or less in
a single line. Is that what you want?

Apart from that, I can't see why "JOURNAL --" and "LIBWEBSITE --"
appear in your output...
(Maybe you modified the stylesheet fragment prior posting.)


Regards,
Markus
__________________________
Markus Abt
Comet Computer GmbH
http://www.comet.de


----------
Von: 	Joseph Tan
Gesendet: 	Donnerstag, 21. August 2003 15:28
An: 	xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Betreff: 	Re:  Restraining specific words from an element todisplay

Here's the XML input:

- <MR870>
  <MR870a>NORTHLIB</MR870a> 
  </MR870>
- <MR870>
  <MR870b>Location</MR870b> 
  <MR870c>NC-JOURNAL --</MR870c> 
  </MR870>
- <MR870>
  <MR870b>Textual holdings</MR870b> 
  <MR870c>Vol 71-86 1993-2000 Not owned: 71n18(1993)</MR870c> 
  </MR870>
- <MR870>
  <MR870a>ONLINELIB</MR870a> 
  </MR870>
- <MR870>
  <MR870b>Textual holdings</MR870b> 
  <MR870c>Online access; years vary.</MR870c> 
  </MR870>
- <MR870>
  <MR870a>ONLINELIB</MR870a> 
  </MR870>
- <MR870>
  <MR870b>Location</MR870b> 
  <MR870c>LIBWEBSITE --</MR870c> 
  </MR870>
- <MR870>
  <MR870b>Textual holdings</MR870b> 
  <MR870c>Online access; years vary.</MR870c> 
  </MR870>
- <MR870>
  <MR870a>SOUTHLIB</MR870a> 
  </MR870>
- <MR870>
  <MR870b>Location</MR870b> 
  <MR870c>JOURNALS --</MR870c> 
  </MR870>
- <MR870>
  <MR870b>Textual holdings</MR870b> 
  <MR870c>Vol 1- 1958- Not Owned: 84n5c(1999)</MR870c> 
  </MR870>

XSL code:

<xsl:template name="Holdings">
	<xsl:variable name="getHoldings">
		<xsl:for-each select="MR870/MR870c[text()!='ONLINELIB'
and text()!='JOURNALS --' and text()!='LIBWEBSITE --'] |
MR870/MR870a[text()!='ONLINELIB']">
			    <xsl:value-of select="text()"/><xsl:text>
</xsl:text>
		</xsl:for-each>
	</xsl:variable>

	<xsl:if test="$getHoldings != ''">
		<xsl:call-template name="DisplayContent">
			<xsl:with-param name="label"
select="'Option(s)'"/>
			<xsl:with-param name="content"
select="$getHoldings"/>
		</xsl:call-template>
	</xsl:if>
</xsl:template>

I'm able to NOT display "ONLINELIB" but not "JOURNAL --" and
"LIBWEBSITE --"

Thanks!

JT


>>> armmarti@xxxxxxxxx Tuesday, August 19, 2003 1:00:51 AM >>>
Ok Joseph,
try to post both XML doc and the full XSLT stylesheet,
then we'll be able to analyze it in the whole. And
also clarify what you mean by "want to remove": do you
want to copy all the stuff into output except the
elements having the specified content?

Regards,
Armen
--- Joseph Tan <Joseph.Tan@xxxxxxxxxxxxxxxxxx> wrote:
> Tried that but it didn't work.  Weird!
> 
> JT
> 
> >>> armmarti@xxxxxxxxx Saturday, August 16, 2003
> 12:54:24 AM >>>
> 
> --- Joseph Tan <Joseph.Tan@xxxxxxxxxxxxxxxxxx>
> wrote:
> > I would like to remove "ONLINELIB' , 'JOURNALS --'
> > and 'LIBWEBSITE --".  I am able to remove
> ONLINELIB
> > but not the other two.  What's wrong with the
> code?
> 
> ...
> 
> In the following XPath expression you missed the 
> space before dashes: must be "text()!='JOURNALS --'
> and text()!='LIBWEBSITE --'" instead of
> "text()!='JOURNALS--' and text()!='LIBWEBSITE--'"
> 
> > 		<xsl:for-each
> > select="MR870/MR870c[text()!='ONLINELIB' and
> > text()!='JOURNALS--' and text()!='LIBWEBSITE--'] |
> > MR870/MR870a[text()!='ONLINELIB']">
> > 			<xsl:value-of select="."/><xsl:text>
> </xsl:text>
> > 		</xsl:for-each>
> ...
> 
> I think that will solve the problem, since you say
> that it works for "ONLINELIB".
> 
> Regards,
> Armen
> 
> 
> __________________________________
> Do you Yahoo!?
> Yahoo! SiteBuilder - Free, easy-to-use web site
> design software
> http://sitebuilder.yahoo.com 
> 
>  XSL-List info and archive: 
> http://www.mulberrytech.com/xsl/xsl-list 
> 
> 
>  XSL-List info and archive: 
> http://www.mulberrytech.com/xsl/xsl-list 
> 


__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com 

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list 


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


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.