How to extract xml from rssfeed using xslt

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • sisu
    New Member
    • Feb 2010
    • 16

    How to extract xml from rssfeed using xslt

    I have given rss.xml as input

    below is the rsscode .


    Code:
    <?xml version="1.0" encoding="utf-8"?> 
    
    <?xsl-stylesheet type="text/xsl" href="http://192.168.0.128/testrss/test/mytest.xsl"?> 
    
     <rss version="2.0">
     <channel>
    <!--
      Hey!
      This web page is actually a data file that is meant to be
       read by RSS reader programs.
      See http://interglacial.com/rss/about.html to learn
       more about RSS.
    	
      This data file is meant to be read by RSS reader programs.
      See http://interglacial.com/rss/about.html to learn more about RSS.
    
    -->
    
    
      <title>wholesale</title> 
    
      <link>http://localhost/fusionchart/rssfeed1.aspx</link> 
    
      <description>The latest whole sale report</description> 
    
      <copyright>Copyright 2001 - 2009 Roxy Palace Casino</copyright> 
    
      <language>en-us</language> 
      <guid>http://localhost/fusionchart/rssfeed12.aspx</guid> 
      <url>http://localhost/fusionchart/rssfeed12.aspx</url> 
      <title>wholesale</title> 
      <link>http://localhost/fusionchart/rssfeed12.aspx</link> 
      <description>This shows up in title of link</description> 
     <item>
      <title>XTPNR : 122.0000</title> 
      <description>122.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XTPR0 : 1011.0000</title> 
      <description>1011.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XTPNR1 : 85.0000</title> 
      <description>85.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XXABK5 : 45.0000</title> 
      <description>45.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XXABK6 : 86.0000</title> 
      <description>86.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XXABK2 : 5.0000</title> 
      <description>5.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XXABK20 : 56.0000</title> 
      <description>56.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XXABK4 : 56.0000</title> 
      <description>56.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XTPNR7 : 78.0000</title> 
      <description>78.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XTPNR8 : 3.0000</title> 
      <description>3.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XTPNR9 : 56.0000</title> 
      <description>56.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XTPNR2 : 78.0000</title> 
      <description>78.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XTPNR3 : 28.0000</title> 
      <description>28.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XTPNR4 : 78.0000</title> 
      <description>78.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XTPNR5 : 66.0000</title> 
      <description>66.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XTPNR6 : 98.0000</title> 
      <description>98.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XXABK3 : 87.0000</title> 
      <description>87.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XXABK7 : 56.0000</title> 
      <description>56.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XXABK8 : 567.0000</title> 
      <description>567.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
     <item>
      <title>XXABK9 : 455.0000</title> 
      <description>455.0000</description> 
      <link>http://192.168.0.131/fusionchart/Default.aspx</link> 
      </item>
      </channel>
      </rss>


    I also have done xslt for it


    below is xsl



    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" >
     <xsl:output method="xml" type="text/xsl" />
     <xsl:template match="/rss/channel">
    <!--   <xsl:for-each select="rss/channel"> -->
    
        <title>
         <xsl:copy-of select="title/node()"/>
         <!--layer=Default-->
        </title>
        <description>
         <xsl:copy-of select="description/node()"/>
         <!--layer=Default-->
        </description>
        <xsl:for-each select="item">
    	<item>
    	<title>   
    	<xsl:copy-of select="title/node()"/>
    <new></new>
    	</title>
    	<description>
    	
    	<xsl:copy-of select="description/node()"/>
    	
    	</description>
    	
         </item>
        </xsl:for-each>
    	
    	 <!--layer=Default-->
    
       <!--   </xsl:for-each>
     -->  <!--layer=Default-->
     </xsl:template>
    </xsl:stylesheet>

    Output required shown below



    Code:
    <channel>
      <title>wholesale</title> 
      <description>The latest whole sale report</description> 
    <item>
     <title>XTPNR </title> 
     <description>122.0000</description> 
    </item>
    <item>
     <title>XTPNR0 </title> 
     <description>1011.0000</description> 
    </item>
    <item>
     <title>XTPNR1</title> 
     <description>85.0000</description> 
    </item>
    <item>
     <title>XTPNR1</title> 
     <description>85.0000</description> 
    </item>
    <item>
     <title>XXABK5</title> 
     <description>45.0000</description> 
    </item>
    <item>
     <title>XXABK6</title> 
     <description>86.0000</description> 
    </item>
    <item>
     <title>XXABK2 </title> 
     <description>5.0000</description> 
    </item>
    <item>
     <title>XXABK20 </title> 
     <description>56.0000</description> 
    </item>
    <item>
     <title>XXABK4 </title> 
     <description>56.0000</description> 
    </item>
    <item>
     <title>XTPNR7 </title> 
     <description>78.0000</description> 
    </item>
    <item>
     <title>XTPNR8 </title> 
     <description>3.0000</description> 
    </item>
    <item>
     <title>XTPNR9 </title> 
     <description>56.0000</description> 
    </item>
    <item>
     <title>XTPNR2 </title> 
     <description>78.0000</description> 
    </item>
    <item>
     <title>XTPNR3 </title> 
     <description> 28.0000</description> 
    </item>
    <item>
     <title>XTPNR4  </title> 
     <description> 78.0000</description> 
    </item>
    <item>
     <title>XTPNR5  </title> 
     <description> 66.0000</description> 
    </item>
    <item>
     <title>XTPNR6 </title> 
     <description> 98.0000</description> 
    </item>
    <item>
     <title>XXABK3 </title> 
     <description> 87.0000</description> 
    </item>
    <item>
     <title>XXABK7 </title> 
     <description>56.0000</description> 
    </item>
    <item>
     <title>XXABK8</title> 
     <description>567.0000</description> 
    </item>
    <item>
     <title>XXABK9</title> 
     <description>455.0000</description> 
    </item>
    </channel>


    Here i am getting xml output in an xsl-editor

    but in browser rss feed is displayed


    can anyone help me ?
    Last edited by Dormilich; Feb 15 '10, 08:02 AM. Reason: Please use [code] tags when posting code
  • Dormilich
    Recognized Expert Expert
    • Aug 2008
    • 8694

    #2
    of course, that’s what it is, a feed (in XML format)

    Comment

    • sisu
      New Member
      • Feb 2010
      • 16

      #3
      Can anyone give simple example to extract xml from rssfeed using xslt

      can anyone help me to get xml from rss feed using xslt

      Comment

      • Dormilich
        Recognized Expert Expert
        • Aug 2008
        • 8694

        #4
        RSS is already XML, unless you tell me, what kind of XML you want (and what’s the difference to your previous thread) I don’t see a possibility to help you.

        Comment

        • sisu
          New Member
          • Feb 2010
          • 16

          #5
          i want display only item tag and descripton tag in output

          Comment

          • Dormilich
            Recognized Expert Expert
            • Aug 2008
            • 8694

            #6
            note: threads merged. please don't post the same topic twice.

            MODERATOR

            Comment

            • Dormilich
              Recognized Expert Expert
              • Aug 2008
              • 8694

              #7
              it’s not perfect, but it’s a start.
              Code:
              <?xml version="1.0" encoding="utf-8"?>
              <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" >
              <!-- note that I removed the type attribute, kept throwing errors -->
              <xsl:output method="xml" />
               
              <xsl:template match="/">
              <channel>
                <xsl:copy-of select="/rss/channel/title"/>
                <xsl:copy-of select="/rss/channel/description"/>
                <xsl:apply-templates/>
              </channel>
              </xsl:template>
              
              <xsl:template match="item">
                <xsl:copy>
                  <xsl:copy-of select="title"/>
                  <xsl:copy-of select="description"/>
                </xsl:copy>
              </xsl:template>
              
              </xsl:stylesheet>

              Comment

              Working...