Tutorials Point


  Learning RSS
  RSS References
  RSS Resources
  Selected Reading

Copyright © 2014 by tutorialspoint



  Home     References     Discussion Forums     About TP  

RSS Version 2.0 Tags and Syntax


previous AddThis Social Bookmark Button


Advertisements

RSS Version 2.0 Tags:

Here is the structure of an RSS 2.0 document:

<?xml version="1.0"?>
<rss version="2.0">
   <channel>
      <title>...</title>
      <link>...</link>
      <description>...</description>
      <language>...</language>
      <rating>...</rating>
      <copyright>...</copyright>
      <pubDate>...</pubDate>
      <lastBuildDate>...</lastBuildDate>
      <generator>....</generator>
      <docs>...</docs>
      <cloud>...</cloud>
      <ttl>...</ttl>
      <managingEditor>...</managingEditor>
      <webMaster>...</webMaster>
      <skipHours>
          <hour>...</hour>
      </skipHours>
      <skipDays>
          <day>...</day>
      </skipDays>
      <image>
	  <title>...</title>
	  <url>...</url>
	  <link>...</link>
	  <width>...</width>
	  <height>...</height>
	  <description>...</description>
      </image>
      <item>
          <title>...</title>
          <link>...</link>
          <description>...</description>
          <author>....</author>
          <category>....</category>
          <comments>....</comments>
          <enclosure ..../>
          <guid>....</guid>          
          <pubDate>....</pubDate>
          <source>....</source>
      </item>
      ......More item tags.....
      <textInput>
          <title>...</title>
          <description>...</description>
          <name>...</name>
          <link>...</link>
      </textInput>
   </channel>
</rss>

Here is the detail of all optional and mandatory tags related to RSS 2.0. Check out given example to prepare a RSS v2.0 feed for your website.

NOTE: All the tag are case sensitive and should be used carefully.

XML version identifier:

As an XML application, an RSS document is not required to begin with an XML declaration. It should start with XML version identifier tag.

Syntax:

  • <?xml version="1.0"?> or
  • <?xml version="1.0" encoding="[ encoding code here ]"?>

Here is list of RSS v2.0 Supported Encodings.

Required:

Always and exact. Optional encoding attribute (default is UTF-8).

RSS Version Identifier:

Syntax:

<rss version="2.0">

Required:

Always and exact.


Start Channel Tag:

There should be one channel start tag in each RSS2.0 File.

Syntax:

<channel>

Required:

Required. Maximum 1 per RSS file.

Channel Title:

The name of the channel. It's how people refer to your service. If you have an HTML website that contains the same information as your RSS file, the title of your channel should be the same as the title of your website.

Syntax:

<title>TutorialsPoint</title>

Required:

Required.

Channel Description:

A channel will have a description tag as described below:

Syntax:

<description>Your source for tutorials, references and manuals!</description>

Required:

Required.

Channel Title Link (URL):

This is the link to your home page and required for a channel.

Syntax:

<link>http://www.tutorialspoint.com</link>

Required:

Required.

Channel Language

This specifies the language of your channel (website).

Syntax:

<language>[ language code here ]</language>

Here is list of RSS v2.0 Supported Languages.

Required:

Optional

Channel Rating:

For a complete detail on how to use Channel Rating check Using PICS Ratings

Syntax:

<rating>[ PICS rating here ]</rating>

Required:

Optional

Copyright Identifier:

This tag is allowed in an RSS 2.0 file.

Syntax:

<copyright>Copyright 2007, TutorialsPoint</copyright>

Required:

Optional

Publication Date:

This tag is allowed in an RSS 2.0 file. The publication date for the content in the channel.

Syntax:

<pubDate>Thu, 19 Jul 2007 07:00:00 GMT</pubDate>

Required:

Optional

Last Build Date:

This tag is allowed in an RSS 2.0 file. The last time the content of the channel changed.

Syntax:

<lastBuildDate>Thu, 19 Jul 2007 16:20:26 GMT </lastBuildDate>

Required:

Optional

Channel Category:

Specify one or more categories that the channel belongs to.

Syntax:

<category>Newspapers </category>

Required:

Optional.

Channel docs:

A URL that points to the documentation for the format used in the RSS file. It's probably a pointer to this page.

Syntax:

<docs>http://tutorialspoint.com/rss </docs>

Required:

Optional.

Channel cloud:

Allows processes to register with a cloud to be notified of updates to the channel, implementing a lightweight publish-subscribe protocol for RSS feeds.

Syntax:

<cloud>domain="rpc.sys.com" port="80" path="/RPC2" registerProcedure="myCloud.rssPleaseNotify" protocol="xml-rpc"</cloud>

In this example, to request notification on the channel it appears in, you would send an XML-RPC message to rpc.sys.com on port 80, with a path of /RPC2. The procedure to call is myCloud.rssPleaseNotify.

Required:

Optional.

Channel ttl:

ttl stands for time to live. It's a number of minutes that indicates how long a channel can be cached before refreshing from the source.

Syntax:

<ttl>60</ttl>

Required:

Optional.

Managing Editor:

Email address for person responsible for editorial content.

Syntax:

<managingEditor>mohtashim@tutorialspoint.com</managingEditor>

Required:

Optional

Webmaster:

Email address for person responsible for technical issues relating to channel.

Syntax:

<webMaster>mohtashim@tutorialspoint.com</webMaster>

Required:

Optional

Start Skip Hours Tag:

A list of <hour>s indicating the hours in the day, GMT, when the channel is unlikely to be updated. If this sub-item is omitted, the channel is assumed to be updated hourly.

Syntax:

<skipHours>

Required:

Optional

Hour:

If you are using skipHours tag then it is required to use this tag as well.

Syntax:

<hour>7</hour>

Required:

Required, if <skipHours>. Maximum 24 per <skipHours>. element.

Max Length

Numeric Value: 0 - 23

End Skip Hours:

If you are using skipHours tag then it is required to use this tag as well.

Syntax:

</skipHours>

Required:

Required, if <skipHours>

Start Skip Days Tag:

A list of <day>s of the week, in English, indicating the days of the week when your channel will not be updated. As with activeHours, if you know your channel will never be updated on Saturday or Sunday, for example.

Syntax:

<skipDays>

Required:

Optional

Day:

If you are using skipDays tag then it is required to use this tag as well.

Syntax:

<day>Monday</day>

Required:

Required, if <skipDays>. Maximum 7 per <skipDays>. element.

Max Length

1-10 characters

End Skip Days:

If you are using skipDays tag then it is required to use this tag as well.

Syntax:

</skipDays>

Required:

Required, if <skipDays>


Start Image Tag

You can have one image start tag inside a channel. Syntax is as follows

Syntax:

<image>

Required:

Optional.

Image ALT Text:

If you are using image tag then it is required to use this tag as well.

Syntax:

<title>TutorialsPoint Logo</title>

Required:

Required, if <image> tag is available.

Image Location (URL):

Location to load a resource from. Note that this is slightly different from the link tag, which specifies where a user should be re-directed to if a resource is selected.

Syntax:

<url>http://www.tutorialspoint.com/images/to-logo.gif</url>

Required:

Required, if <image> tag is available.

Image Link (URL):

If you are using image tag then it is required to use this tag as well.

Syntax:

<link>http://www.tutorialspoint.com/</link>

Required:

Optional, if <image> tag is available.

Image Width:

If you are using image tag then it is optional to use this tag as well.

Syntax:

<width>[ numeric value here ]</width>

Required:

Optional, if <image> tag is available.

Max Length

Numeric Value: 1-144 (Default is 88)

Image Height:

If you are using image tag then it is optional to use this tag as well.

Syntax:

<height>[ numeric value here ]</height>

Required:

Optional, if <image> tag is available.

Max Length

Numeric Value: 1-400 (Default is 31)

Image Description:

If you are using image tag then it is optional to use this tag as well.

Syntax:

<description>Articles, discussions, builds, and more...</description>

Required:

Optional, if <image> tag is available.

End Image Tag:

If you are using image tag then it is required to use this tag as well.

Syntax:

</image>

Required:

Required, if <image> tag is available.


Start Item Tag:

This is an optional tag and you can have any number of item tags with-in a channel tag.

Syntax:

<item>

Required:

Optional.

Item Title:

The title of the item. It is optional to use this tag.

Syntax:

<title>Learning RSS</title>

Required:

Optional , but better to use if <title> tag is available.

Item Link (URL):

The URL of the item. It is optional to use this tag.

Syntax:

<link>http://www.tutorialspoint.com/rss/index.htm</link>

Required:

Optional, but better to use if <title> tag is available.

Item Description:

The item synopsis. It is optional to use this tag.

Syntax:

<description>RSS Tutorials Online. Read more about it in this discussion...>/description>

Required:

Optional, but better to use if <title> tag is available.

Item Author:

It's the email address of the author of the item. If you are using title tag then it is optional to use this tag.

Syntax:

<author>AmberYasin@hotmail.com</author>

Required:

Optional, but better to use if <title> tag is available.

Item Category:

Includes the item in one or more categories. This is an optional sub-element of item.

It has one optional attribute, domain, a string that identifies a categorization taxonomy.

Syntax:

<category>Grateful Dead</category>

<category omain="http://www.fool.com/cusips">Grateful Dead</category>

Required:

Optional, You may include as many category elements as you need to, for different domains, and to have an item cross-referenced in different parts of the same domain.

Item Comments:

This is an optional sub-element of item. If present, it is the url of the comments page for the item.

Syntax:

<comments>http://example.com/rss/comments</comments>

Required:

Optional

Item enclosure:

<enclosure> is an optional sub-element of item. It has three required attributes. url says where the enclosure is located, length says how big it is in bytes, and type says what its type is, a standard MIME type.

Syntax:

<enclosure
url="http://www.tutorialspoint.com/mp3s/tutorial.mp3"
length="12216320" type="audio/mpeg" />

Required:

Optional

Item guid :

<guid> is an optional sub-element of item. The guid stands for globally unique identifier. It's a string that uniquely identifies the item. When present, an aggregator may choose to use this string to determine if an item is new.

Syntax:

<guid>http://some.server.com/weblogItem3207</pubDate>

There are no rules for the syntax of a guid. Aggregators must view them as a string. It's up to the source of the feed to establish the uniqueness of the string.

Required:

Optional

Item Publication Date:

<pubDate> is an optional sub-element of item. Its value is a date, indicating when the item was published. If it's a date in the future, aggregators may choose to not display the item until that date.

Syntax:

<pubDate>Sun, 22 July 2007 15:21:36 GMT</pubDate>

Required:

Optional

Item Source:

<source> is an optional sub-element of item. Its value is the name of the RSS channel that the item came from, derived from its <title>. It has one required attribute, url, which links to the XMLization of the source.

The purpose of this element is to propagate credit for links, to publicize the sources of news items. It can be used in the Post command of an aggregator. It should be generated automatically when forwarding an item from an aggregator to a weblog authoring tool.

Syntax:

<source url="http://www.tomalak.org/links2.xml">Tomalak's Realm</source>

Required:

Optional

End Item Tag:

If you are using title tag then it is required to use this tag as well.

Syntax:

</item>


Start Text Input Tag:

A channel may optionally contain a <textInput> sub-element, which contains four required sub-elements.

The purpose of the <textInput> element is something of a mystery. You can use it to specify a search engine box. Or to allow a reader to provide feedback. Most aggregators ignore it.

Syntax:

<textInput>

Required:

Optional. Maximum 1 per channel.

Text Input Title (Label of Submit Button):

If you are using textInput tag then it is required to use this tag as well.

Syntax:

<title>Send</title>

Required:

Required, if <textInput> tag is available.

Text Input Description:

If you are using textInput tag then it is required to use this tag as well.

Syntax:

<description>Comments about TutorialsPoint?</description>

Required:

Required, if <textInput> tag is available.

Text Input Name:

If you are using textInput tag then it is required to use this tag as well.

Syntax:

<name>[ value of name= attribute of input tag here ]</name>

Required:

Required, if <textInput> tag is available.

Text Input Link:

This is the link to thr script which will process passed data. If you are using textInput tag then it is required to use this tag as well.

Syntax:

<link>http://www.tutorialspoint.com/cgi-bin/sampleonly.cgi</link>

Required:

Required, if <textInput> tag is available.

End Text Input Tag:

If you are using textInput tag then it is required to use this tag as well.

Syntax:

<textInput>

Required:

Required, if <textInput> tag is available.


End Channel Tag:

One end channel is required for a channel start tag.

Syntax:

</channel>

Required:

Required

End RSS Tag:

This is closing tag for an RSS0.91 document.

Syntax:

</rss>

Required:

Required


Using Special Characters and HTML Entities:

Although an RSS 2.0 file is an XML document, RSS 2.0 extends XML by supporting a full set of HTML entities. If you want to use special characters such as ampersands (&) in <url> or <link> tags, you must substitute the appropriate decimal or HTML entities for those characters.

Check for a complete set of HTML entities.


RSS version 2.0 Example Feed:

Here is the example feed files which shows how to write RSS Feed using version 2.0

<?xml version="1.0"?>
<rss version="2.0">
   <channel>
      <title>TutorialsPoint</title>
      <link>http://www.tutorialspoint.com</link>
      <description>Tutorials and Reference Manuals</description>
      <language>en-us</language>
      <pubDate>Fri, 30 May 2003 11:06:42 GMT</pubDate>
      <lastBuildDate>Fri, 30 May 2003 11:06:42 GMT</lastBuildDate>
      <docs>http://www.tutorialspoint.com/rss</docs>
      <generator>Weblog Editor 2.0</generator>
      <managingEditor>mohtashim@tutorialspoint.com</managingEditor>
      <webMaster>webmaster@tutorialspoint.com</webMaster>
      <item>

         <title>RSS Tutorial</title>
         <link>http://www.tutorialspoint.com/rss</link>
         <description>Learn RSS in simple steps</description>
         <pubDate>Fri, 30 May 2003 11:06:42 GMT</pubDate>
         <guid>
         http://www.tutorialspoint.com/rss/rss-feed-formats.htm#v0.91
         </guid>

      </item>
      <item>
         <description>RSS Feed Formats</description>
         <pubDate>Fri, 30 May 2003 11:06:42 GMT</pubDate>
         <guid>
         http://www.tutorialspoint.com/rss/rss-feed-formats.htm#v2.0
         </guid>

      </item>
    </channel>
</rss>

RSS 2.0 File Extension:

A specific file-extension for an RSS 2.0 document is not required. Either .rdf or .xml is recommended, the former being preferred.



previous Printer Friendly

Advertisements


  

Advertisements