473,396 Members | 2,154 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

XSL and XML

I have an XSL file that grabs objects to form a table from an XML file.
However I only want it to grab certain objects with a certain tag on
them.
For example:
XML file has:
<infoObject>
<infoObjectDetail title='Field'>Test Field</infoObjectDetail>
<infoObjectDetail title='Description'>Test Desc</infoObjectDetail>
<infoObjectDetail title='Object'>Test Object</infoObjectDetail>
<infoObjectDetail title='Source'>Test Source</infoObjectDetail>
</infoObject>
XSL file:
<xsl:for-each select="infoObjectDetail">
<td><xsl:value-of select="." / </td>
</xsl:for-each>
I want it so that it skips over the field of "Description" and moves
onto the next field.
I've looked for a for loop to do this but havent had any luck.
Any ideas?

Oct 13 '06 #1
1 1209

RigasMinho wrote:
However I only want it to grab certain objects with a
certain tag on them.
And the problem is..?
XML file has:

<infoObject>
<infoObjectDetail title='Field'>Test
Field</infoObjectDetail>
<infoObjectDetail title='Description'>Test
Desc</infoObjectDetail>
<infoObjectDetail title='Object'>Test
Object</infoObjectDetail>
<infoObjectDetail title='Source'>Test
Source</infoObjectDetail>
</infoObject>

XSL file:

<xsl:for-each select="infoObjectDetail">
<td><xsl:value-of select="." / </td>
</xsl:for-each>

I want it so that it skips over the field of
"Description" and moves onto the next field. I've looked
for a for loop to do this but havent had any luck.

Any ideas?
Lots, actually. First of all, I would recommend reading
some XSLT and XPath tutorials.

As to your problem, you could either persist in your
attempts to stick imperative paradigm to XSLT and use the
following:

<xsl:if test="@title!='Description'">
<td><xsl:value-of select="." / </td>
</xsl:if>

....or you could try to adapt and do the Right Thing. Drop
for-each, define a template:

<xsl:template match="infoObjectDetail">
<td><xsl:value-of select="."/> </td>
</xsl:template>

Then use apply-templates to process the nodes you need.

<xsl:apply-templates
select="//infoObjectDetail[@title!='Description']"/>

Or even better, select all the nodes, and use predicates to
define corresponding templates (empty template for
infoObjectDetail[@title='Description'] etc.)

And the last thing: read some XSLT and XPath tutorials.
Toying with Lisp or Scheme or [foo nctional language of
your choice] is also highly recommended.

Oh, and forget the 'for loops'.

Did I mention tutorials?

--
Pavel Lepin

Oct 13 '06 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
by: William C. White | last post by:
Does anyone know of a way to use PHP /w Authorize.net AIM without using cURL? Our website is hosted on a shared drive and the webhost company doesn't installed additional software (such as cURL)...
2
by: Albert Ahtenberg | last post by:
Hello, I don't know if it is only me but I was sure that header("Location:url") redirects the browser instantly to URL, or at least stops the execution of the code. But appearantely it continues...
3
by: James | last post by:
Hi, I have a form with 2 fields. 'A' 'B' The user completes one of the fields and the form is submitted. On the results page I want to run a query, but this will change subject to which...
0
by: Ollivier Robert | last post by:
Hello, I'm trying to link PHP with Oracle 9.2.0/OCI8 with gcc 3.2.3 on a Solaris9 system. The link succeeds but everytime I try to run php, I get a SEGV from inside the libcnltsh.so library. ...
1
by: Richard Galli | last post by:
I want viewers to compare state laws on a single subject. Imagine a three-column table with a drop-down box on the top. A viewer selects a state from the list, and that state's text fills the...
4
by: Albert Ahtenberg | last post by:
Hello, I have two questions. 1. When the user presses the back button and returns to a form he filled the form is reseted. How do I leave there the values he inserted? 2. When the...
1
by: inderjit S Gabrie | last post by:
Hi all Here is the scenerio ...is it possibly to do this... i am getting valid course dates output on to a web which i have designed ....all is okay so far , look at the following web url ...
2
by: Jack | last post by:
Hi All, What is the PHP equivilent of Oracle bind variables in a SQL statement, e.g. select x from y where z=:parameter Which in asp/jsp would be followed by some statements to bind a value...
3
by: Sandwick | last post by:
I am trying to change the size of a drawing so they are all 3x3. the script below is what i was trying to use to cut it in half ... I get errors. I can display the normal picture but not the...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.