Какво е RSS
Кратка история
Програмистите, внимавайте! Под термина "RSS" се крие във формат, който е разделен на няколко различни версии на най-малко два различни (но съществуващи едновременно) формати. Източник RSS, версия 0.90, разработена в компанията Netscape. Този формат е проектиран, за да създадете новинарски портали водещи новинарски компании. Както мнозина смятаха, че е твърде сложно, Netscape е разработила опростена версия - 0.91, което, обаче, изоставени, загубил интерес към бизнес портали. Но версия 0.91 са отпуснати за спасяване на компанията UserLand софтуер, който ще се използва този формат като основа за техните уеблог продукти и други уеб-базирано приложение.
В същото време, третият, вече е организация с нестопанска цел, които са разделени от общия поток, да създадете нов формат, който се смята, че да бъде в съответствие с духа и принципите на RSS формат източник 0.90 (тоест, преди тя да е опростена до 0.91). Този формат е базиран на езика RDF, наречена RSS 1.0. За съжаление, UserLand компанията не е участвал в разработването на този нов формат, както и като застъпник на опростена версия на 0.90, че не е щастлив, когато се появи формат RSS 1.0. Вместо да този формат UserLand е решил да се развива и да се създаде клон на 0,9 версия 0.92, след това 0.93, 0.94, и в крайна сметка 2.0.
Ето една салата.
Така че какъв формат да ме използва?
RSS версии и препоръки
Какво е RSS?
Да речем, че искате да напишете програма, която чете RSS емисии, например, да се публикуват заглавия на новини на сайта си, или да се създаде портал за новини и така нататък. Как RSS-файл? Всичко зависи от това какъв вид RSS версии става въпрос. Ето един пример файл във формат RSS 0.91 (олекотена версия на новините от www.xml.com):
Сега нека да разгледаме как изглежда една и съща информация в 1.0 формат RSS:
Въпреки факта, че RSS 1.0 е смес от RDF, XML, както и структурно е подобно на предишните версии на RSS - достатъчно, че ние го видите като обикновен XML файл подобни. Следователно можем да се напише програма, която може да се извлече информация от двата формата: RSS 0.91 и от и от RSS 1.0. Въпреки това, все още има някои различия, които вашата програма трябва да знаят:
- корен елемент в RSS 1.0 е отпадъчното гориво: RDF, отколкото RSS. Или трябва изрично да се справят и двата елемента, или просто да ги игнорира и сляпо изтегляте само информацията, която ви трябва.
Можете да отидете два начина: Ако вашият XML-анализатора разбира от имена, може просто да се предположи, че файлът използва елементи с представки и сляпо търсене на продукти в техните елементи и DC: създател. Този метод ще работи в повечето случаи, тъй като 1.0 формат новини RSS е най-често се използва само на пространство от имена, по подразбиране, а пространството на Dublin Core пространство от имена. Разбира се, този метод - не елегантен, тъй като няма гаранция, че в някаква новина не е друго пространство от имена ще бъдат използвани (който е правен по отношение на RDF и XML). И си анализатора ще пропусне всички новини.
Ако вашият XML-анализатора разбира от имена, може да се изгради по-елегантно решение, което ще бъде в състояние да направи от новината и формата 0.91 и 1.0 формат.
И изглежда, че форматът RSS 2.0? За щастие, програми, които разбират формати RSS 0.91 и 1.0, формат RSS 2.0 ще бъде едно парче от тортата.
Тъй като този пример показва, в RSS 2.0 също използва именни пространства, както и в RSS 1.0. Но това не е RDF. Както и в RSS 0.91, без пространство от имена, по подразбиране, както и новини (в позиция ") са поставени обратно в канала клетка.