Understanding RSS - Part Nine - Rounding Out The Multi-Media - The CDATA Command

The Controversial CDATA programming construct has caused somewhat of a love-hate relationship among RSS programmers. What is CDATA? Well to put it in very easy terms, it allows us to place within the description sub-element of Item, HTML commands and language. In other words it extends the description by allowing us to create links, references and the like within what is purely a text element created to describe the item. Remember that within the Item element, the sub-element of description will look like this. <description>Here is where I describe the item in my RSS feed</description> Let us say I want to extend this piece and I wanted to get a Bold command <B> </B> or italics <I> </I> command or something else within it. Or perhaps I would want to place a break in the lines <BR> dividing it up? Or maybe I want to get more sophisticated? Let me give you an example. Remember Randy Pandy and his Perfumery at randypandy.com? Well now not only does his wife Sandy want to describe the HeavenScent Skunk Perfume but she wants a picture of the bottle with the description. So, hold on, you say. Easy as pie. Use the enclosure command. Well right and not right. Sure you can put a picture of the perfume bottle in the enclosure command, but it will NOT appear WITH the description. It will appear alone and then the user will have to read the description. So while this is GREAT for audio and video a plain visual that I want next to a description kind of gets left alone if I just put in an enclosure. So we have the description, and for the sake of all I will repeat it here. <description>Heaven Scent Perfume the Smell your lover will die for. Created especially by Skunk Perfumes it is their newest and best selling perfume on the market today. Purchase a beautifully shaped skunk bottle with this incredible perfume and get a whopping 50% off! And if you purchase over $100 we will throw in Free overnight delivery as well!</description> Okay now Sandy wants a picture to go right into that description and when the user sees the text in their aggregator they will also get a visual. Thus the CDATA command. First lets look at it in action and then we will explain. <description>[CDATA[<img border="0" src="http://www.randypandy.com/perfumes/heaven.JPG" width="138" height="180"/><p> Heaven Scent Perfume the Smell your lover will die for. Created especially by Skunk Perfumes it is their newest and best selling perfume on the market today. Purchase a beautifully shaped skunk bottle with this incredible perfume and get a whopping 50% off! And if you purchase over $100 we will throw in Free overnight delivery as well! </p><p>randypandy.com - All Perfumes You Can Ever desire</p> </p><br clear=all>]]</description> Notice first what we did? First we set the tag description. Then within it immediately we tell the file "Hey get ready for some good old HTML", and thus we add the [CDATA[ Next we want our picture of the perfume. So for those of you who know HTML this is simple. We give it the image information. <img border="0" src="http://www.randypandy.com/perfumes/heaven.JPG" width="138" height="180"/> After that we continue with our description. Get in a few line breaks with either the <p> </p> or <BR> </BR> constructs. Then finally before the end we close it off with ]] tag. You can get fairly sophisticated with CDATA. The thing is many programmers do NOT like it, as it allows too many rooms for mistakes, and it is a throwback to old HTML. The purity of the XML is kind of compromised here. But it serves a purpose and allows us to get a picture with the words, which is incredibly important. Many, many RSS feeds use it, and it is a very useful tool to get the "picture" across to the user. You can combine it as well with enclosure, to get an audio out, a description, and say a picture of the Album. In other words a full media experience of text + picture + audio. Well that is it. Our next article will put it all together and give you a look at the final well formed XML file which will act as our template for rss.xml. It will lay it all out for you with a couple of items, so you can grab it and use it for your RSS feed. This Article was Part Nine of the series - RSS Mania Understanding RSS. All of this series is available at Ezine Articles (ezinearticles.com)
  1. RSS Mania Addiction - An Introduction to RSS and the Terminology
  2. Outline of How to Create an RSS Feed
  3. The Template File
  4. The Basic Elements of the Channel Element
  5. How The RSS Feed Works & Some Programming Constructs
  6. RSS Channel Sub-Elements Specifically Image & How To Use It
  7. Understanding RSS - Part Seven - The Elements Within the "Item" Element
  8. Understanding RSS - Part Eight - Podcasting, VideoCasting & The Magic of the Enclosure Sub-Element
Copyright