احتمالا با واژه RSS Feed يا خوراك سايتها برخورد كردهايد. اين خوراكها يك خروجي ساده از محتويات يك سايت بوده كه هدف از توليد آنها ايجاد امكاني براي كاربران است تا بدون دسترسي به كل محتواي سايت، بتوانند مطالب آن را به صورت كوتاه بخوانند و در صورت نياز به لينك اصل مطلب مراجعه كنند.مورد استفاده خوراكها بيشتر در مورد سايتهاي خبري صدق ميكند. براي نمونه شما ميخواهيد تمامي مطالب سايت را تيتروار بخوانيد. در اين صورت بدون خوراكها شما مجبور به مرور كل محتواي سايت هستيد كه اين كار قدري زمانبر و خستهكننده است، زيرا براي ديدن خبرهاي جديد بايد كل سايت را مشاهده كنيد. البته ديدن كل سايت يك مشكل ديگر هم دارد. فرض كنيد يك سايت خبري در مورد بازار سهام اخبار منتشر ميكند و شما مدام بايد اين اخبار را دنبال كنيد، آيا منطقي است هميشه صفحه وبسايت باز باشد و آخرين اخبار را با Refreshكردن صفحه مطالعه كنيد؟اين كار ممكن است راحت باشد، ولي به مرور خستهكننده خواهد بود. اما راهحل اين است كه به نحوي ساده از اين اخبار مطلع شويد. براي اين كار يك برنامه ساده روي دستگاه موبايل يا رايانه شخصي شما ميتواند شما را از آخرين اخبار مطلع كرده و به شما اطلاعرساني كند. اين برنامهها براي اينكه براحتي اجرا شود نياز به يك RSS Feed دارد كه خوراك آنها را تامين كند و مدام در حال چككردن لينك خبري باشد و بهروزرسانيها را به شما نمايش دهد. شما ميتوانيد بسادگي اين برنامهها را در اينترنت پيدا كنيد. نمونه معروف و آنلاين آن سايت reader.google.com است كه به شما اين امكان را ميدهد تا لينكهاي RSS خود را به آن بدهيد و اين سايت به عنوان يك خواننده خوراك يا RSS Reader عمل كند.اما با پيشرفت فناوري و استفاده از AJAX خيلي از سايتها امكان بهروزرساني درجا را به شما ميدهد و شما ميتوانيد بدون Refreshكردن سايت مطالب آن را بخوانيد. مثلا سايت المپيك كه بايد اخبار لحظهاي را به روز كند يا سايتهايي مثل Twitter و FriendFeed از اين فناوري استفاده ميكند.اما اين خوراكها چگونه توليد ميشود؟روشهاي مختلفي براي توليد خوراك براي يك سايت وجود دارد كه با توجه به زبانهاي برنامهنويسي و چارچوبهاي كاري كه ميخواهيد از آنها استفاده كنيد، فرق ميكند. براي مثال در دات نت امكان توليد RSS و Atom با استفاده WCF وجود دارد و شما ميتوانيد از آن استفاده كنيد. قبل از هر چيز بايد با ساختار RSS آشنا شويد. به ساختار زير دقت كنيد:
«?xml version="1.0" encoding="UTF-8" ?»
«rss version="2.0"»
«channel»
«title»RSS Title«/title»
«description»This is an example of an RSS feed«/description»
«link»http://www.someexamplerssdomain.com/main.html«/link»
«lastBuildDate»Mon, 06 Sep 2010 00:01:00 +0000 «/lastBuildDate»
«pubDate»Mon, 06 Sep 2009 16:45:00 +0000 «/pubDate»
«item»
«title»Example entry«/title»
«description»Here is some text containing an interesting description.«/description»
«link»http://www.wikipedia.org/«/link»
«guid»unique string per item«/guid»
«pubDate»Mon, 06 Sep 2009 16:45:00 +0000 «/pubDate»
«/item»
«/channel»
«/rss»
در قسمت Channel ابتدا مشخصات RSS يك سايت را معلوم ميكنيد؛ مانند اينكه اين RSS براي چه سايتي است و اطلاعات آن در چه تاريخي منتشر شده، اولين خبر مربوط به چه تاريخي است، توضيحات اضافه در مورد سايت، سپس بخش اصلي كه item است. در اين قسمت اطلاعاتي در مورد هر خبر مانند عنوان، توضيحات، لينك مربوط به خبر، رشته منحصر به فرد براي هر item و تاريخ انتشار آن مشخص ميشود. در ساختار بالا كه در قالب xml است مقدار item به صورت يك ارائه در اختيار است، سپس با مرور اين ارائه ميتوانيم به خبرها دسترسي داشته باشيم.به عبارتي سادهتر ميتوانيد اين ساختار را به صورت يك رشته متني در نظر بگيريد و آن را در برنامه خود توليد و براي هر خبر يك item ايجاد كنيد. سپس آن را به بخش Channel اضافه كنيد.