xsl-list
[Top] [All Lists]

Re: [xsl] Consolidating three xml requests in xsl

2009-11-11 16:09:39
At 2009-11-11 12:22 -0800, Anonymous Anonymous wrote:
I'm consolidating three xml requests into one page
using the curl library. The curl php is working fine but I'm having trouble
with the xsl. How should I properly structure the code below so that it pulls
the xml from three sources?

Using the document() function.

Only the tourism photos section is
displaying right now. Note that the hotels and cars xml files have a similar structure.

You can take advantage of common code fragments after pulling the nodes from each file.

I hope the example below helps.

. . . . . . . . Ken

t:\ftemp>type hotels.xml
<catalog>
 <hotels>
   <hotel>
     <name>Hotel Name</name>
     <description>Hotel Description</description>
   </hotel>
 </hotels>
</catalog>

t:\ftemp>type cars.xml
<catalog>
 <cars>
   <car>
     <company_name>Car Name</company_name>
     <description>Car Description</description>
   </car>
 </cars>
</catalog>

t:\ftemp>type photos.xml
<!-- photos xsl -->
<rsp>
 <photos>
   <photo>url</photo>
 </photos>
</rsp>

t:\ftemp>call xslt anon.xsl anon.xsl
<?xml version="1.0" encoding="utf-8"?><tr>
     Hotel Name
     Hotel Description
   </tr><tr>
     Car Name
     Car Description
   </tr><tr><img src="url"/></tr>
t:\ftemp>type anon.xsl
<?xml version="1.0" encoding="US-ASCII"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
                version="1.0">

<xsl:template match="/">

  <!-- hotels -->
  <xsl:for-each
      select="document('hotels.xml')/catalog/hotels/hotel">
    <tr><xsl:value-of
    select="."/></tr>
  </xsl:for-each>

  <!-- cars -->
  <xsl:for-each
      select="document('cars.xml')/catalog/cars/car">
    <tr><xsl:value-of
    select="."/></tr>
  </xsl:for-each>

  <!-- photos -->
  <xsl:for-each
      select="document('photos.xml')/rsp/photos/photo">
    <tr><img
    src="{.}"/></tr>
  </xsl:for-each>

</xsl:template>

</xsl:stylesheet>
t:\ftemp>

--
Vote for your XML training:   http://www.CraneSoftwrights.com/s/i/
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video
Video lesson:    http://www.youtube.com/watch?v=PrNjJCh7Ppg&fmt=18
Video overview:  http://www.youtube.com/watch?v=VTiodiij6gE&fmt=18
G. Ken Holman                 mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Male Cancer Awareness Nov'07  http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>