| XML
About
Home
RSS
OPML
XML-RPC
SOAP
|
|
 |
|
RSS 0.91
Previous topic
|
Next topic
|
|
RSS 0.91
started 6/4/2000; 7:23:56 AM - last post 3/4/2001; 9:45:57 AM
|
|
Dave Winer - RSS 0.91 
6/4/2000; 7:23:56 AM (reads: 736130, responses: 52)
|
|
New version available, October 2002 
RSS 2.0 is the current version. It is upward compatible with 0.91, that is any 0.91 source is also a valid 2.0 source.
Changes 
6/9/00: Changed copyright to the IETF-inspired copyright we used for XML-RPC.
6/9/00: Minor changes and clarifications in response to feedback.
4/20/01: Pointed to the RSS 0.92 spec from this page, which is an extension of 0.91.
5/3/01: The Netscape 0.91 spec, written in July 1999, has re-surfaced. Archived here.
Intro 
For a political introduction to this specification, see Scripting News for 6/7/00.
Post comments on the discussion group here, or on the Syndication mail list hosted on eGroups.
Timeline 
A brief history of RSS with pointers.
In December 1997, UserLand began offering Scripting News syndicated in XML, as a public Web resource. Other sites adopted the format, known as <scriptingNews> format.
In March 1999, Netscape opened My.Netscape.Com, based on an XML syndication format known as RSS 0.9.
In April 1999, My.UserLand.Com opened, an aggregator that processed RSS 0.9 content.
In May 1999, My.UserLand.Com supported <scriptingNews> 2.0b1 format.
In July 1999, Netscape introduced RSS 0.91, incorporating most of the features of <scriptingNews> 2.0b1. At the same time My.UserLand.Com supported RSS 0.91.
In December 1999, UserLand shipped the Manila content management system with built-in support for <scriptingNews> 2.0b1.
In March 2000, O'Reilly's aggregation engine, Meerkat, opened, reading all the above formats.
In April 2000, UserLand added built-in RSS 0.91 support to all Manila-authored sites.
About this document 
In June 2000, after a year of active deployment, we've learned a lot about RSS, there are lots of ideas in the community for its evolution, and the ideas are maturing. Editorial tools have improved a lot in the last year, further innovations are possible in the near future.
But we lack a firm foundation to build on, the only specification we have for RSS is on the Netscape website, and it's not being maintained, as far as we know.
Therefore, this document is explains RSS as it's currently practiced.
Questions about the future 
Will RSS remain as-is, to be superceded by new formats? Or will RSS evolve, and if so, how will that happen? We now have at least three 24-by-7 aggregation engines, and a thousand RSS sources. Because RSS is a simple format, and because the community is relatively tight-knit, it seems possible that we could make improvements without disrupting the flow.
Sample file 
For an example please refer to this sample RSS 0.91 file, containing selected links from WriteTheWeb.Com, on its opening day 6/5/00.
It may be helpful to refer to the My.UserLand rendering of its RSS file to see how the XML can be turned into something browsable.
What is RSS? 
There is no consensus on what RSS stands for, so it's not an acronym, it's a name. Later versions of this spec may say it's an acronym, and hopefully this won't break too many applications.
RSS is dialect of XML. All RSS files must conform to the XML 1.0 specification, as published on the World Wide Web Consortium (W3C) website.
At the top level, a RSS document is a <rss> element, with a mandatory attribute called version, that specifies the version of RSS that the document conforms to.
Subordinate to the <rss> element is a single <channel> element, which contains information about the channel (metadata) and its contents.
Required <channel> sub-elements 
Following are the required elements of a <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. Maximum length is 100 characters.
<link> -- A URL pointing to the website named in the <title>. Maximum length is 500 characters.
<description> -- A phrase that describes your channel, your channel's positioning statement. Maximum length is 500 characters.
<language> -- Indicates the language your channel is written in. This allows aggregators to group all Italian language sites, for example, on a single page. A list of allowable values for this element is here.
<image> -- An XML element that contains several sub-elements, explained here.
Optional <channel> sub-elements 
<copyright> -- Copyright notice for content in the channel. Maximum length is 100.
<managingEditor> -- The email address of the managing editor of the channel, the person to contact for editorial inquiries. Maximum length is 100. The suggested format for email addresses in RSS elements is bull@mancuso.com (Bull Mancuso).
<webMaster> -- The email address of the webmaster for the channel, the person to contact if there are technical problems. Maximum length is 100.
<rating> -- The PICS rating for the channel. Maximum length is 500.
<pubDate> -- The publication date for the content in the channel. For example, the New York Times publishes on a daily basis, the publication date flips once every 24 hours. That's when the pubDate of the channel changes. All date-times in RSS conform to the Date and Time Specification of RFC 822.
<lastBuildDate> -- The date-time the last time the content of the channel changed.
<docs> -- A URL, points to the documentation for the format used in the RSS file. It's probably a pointer to this page. It's for people who might stumble across an RSS file on a Web server 25 years from now and wonder what it is. Maximum length is 500.
<textInput> -- An XML element that contains several sub-elements, explained here.
<skipDays> -- An XML element that contains up to seven <day> sub-elements whose value is Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday. Aggregators may not read the channel during hours listed in the skipDays element. (Most aggregators seem to ignore this element.)
<skipHours> -- An XML element that contains up to 24 <hour> sub-elements whose value is a number between 1 and 24, representing a time in GMT, when aggregators, if they support the feature, may not read the channel on days listed in the skipHours element. (Most aggregators seem to ignore this element.)
What is an <image>? 
An <image> is a sub-element of <channel>, which contains three required and three optional sub-elements.
<url> is the URL of a GIF, JPEG or PNG image that represents the channel. Maximum length is 500.
<title> describes the image, it's used in the ALT attribute of the HTML <img> tag when the channel is rendered in HTML. Maximum length is 100.
<link> is the URL of the site, when the channel is rendered, the image is a link to the site. (Note, in practice the image <title> and <link> should have the same value as the channel's <title> and <link>. Maximum length is 500.
Optional elements include <width> and <height>, numbers, indicating the width and height of the image in pixels. <description> contains text that is included in the TITLE attribute of the link formed around the image in the HTML rendering.
Maximum value for width is 144, default value is 88.
Maximum value for height is 400, default value is 31.
What is an <item>? 
A channel may contain any number of <item>s, each of which links to a story, with an optional description.
<title> is the title of the story. Maximum length is 100.
<link> is the URL of the story. Maximum length is 500.
<description> is the story synopsis. Maximum length is 500.
What is a <textInput>? 
A channel may optionally contain a <textInput> sub-element, which contains four required sub-elements.
<title> -- The label of the Submit button in the text input area. Maximum length is 100.
<description> -- Explains the text input area. Maximum length is 500.
<name> -- The name of the text object in the text input area. Maximum length is 20.
<link> -- The URL of the CGI script that processes text input requests. Maximum length is 500.
Comments 
RSS 0.91 places restrictions on the first non-whitespace characters of the data in <link> and <url> elements. The data in these elements must begin with http:// or ftp://. Among others, https:, file:, mailto:, news:, and javascript: are not permitted.
Copyright and disclaimer 
© Copyright 1997-2000 UserLand Software. All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and these paragraphs are included on all such copies and derivative works.
This document may not be modified in any way, such as by removing the copyright notice or references to UserLand or other organizations. Further, while these copyright restrictions apply to the written RSS specification, no claim of ownership is made by UserLand to the format it describes. Any party may, for commercial or non-commercial purposes, implement this protocol without royalty or license fee to UserLand. The limited permissions granted herein are perpetual and will not be revoked by UserLand or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and USERLAND DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

|
|
Dave Winer - Comments on RSS 0.91 spec 
6/7/2000; 7:18:16 AM (reads: 82093, responses: 47)
|
|
|
Post comments on the spec in response to this message.

|
|
Jason Levine - Re: Comments on RSS 0.91 spec 
6/7/2000; 9:49:01 AM (reads: 56887, responses: 7)
|
|
|
The thing that bothers me about Netscape's RSS format, and is maintained in yours, is that an item can only have one link associated with it. Most people don't write that way; frequently, items (as I envision them, admittedly) have multiple links, such as when the first is to the page I would like people to see, and others are to background information, relevant references, and the like.
Is there a way to abolish this requirement?
Is the <scriptingNews> 2.0b1 format, which supports multiple links per item, going to go away?

|
|
Fred Grott - Re: Comments on RSS 0.91 spec 
6/7/2000; 10:54:40 AM (reads: 53850, responses: 14)
|
|
|
Just to let you know I have a question before I dig into over the weekend...(Note: Digging and Keep digging are Dave Winer's direct quotes..)
Why not hook this with WAP?..Let me explain why I am asking...in the next few months we are going to see a expontential leap in non PC device access to internet from phones and palm pilots and other devices..most of these are enable to view web through the WAP protocol..
Now I realize I am talking about different layers here but I d o see specific hooks within the RSS 0.91 that could be used to hook into the WAP Layer..for example we need the alt to image for channel so that non graphic devices can still display something..
Obviously we could use a specific render in Frontier to break up the xml produced into smaller WAP chunks for non PC delivery rather having to resort to a Gateway solution....
I know more when I dive into both specs over the weekend ..just my thinking outloud..off to digg...

|
|
Eugene Pervago - Re: Comments on RSS 0.91 spec 
6/7/2000; 12:14:05 PM (reads: 57684, responses: 13)
|
|
If you are subscribed to RSS list (run by Meerkat's Rael Dornfest) see discussion "Introduction and a few ideas" - it was about extending current RSSX draft to provide ways to specify alternate content, e.g.:
<link>http://news/article.html </link>
<alt-link dc:format="text/vnd.wap.wml">http://news/article.wml </alt-link>
<alt-link dc:description="Discussion">http://news/article_forum.html </alt-link>
etc.
Eugene

|
|
Geoff Allen - Re: Comments on RSS 0.91 spec 
6/8/2000; 7:58:25 AM (reads: 57653, responses: 6)
|
|
|
Actually, I have seen embedded links in RSS 0.91, simply by putting the HTML in the field. I don't know if it's legal or not, but it seems to work just fine. (I use a home-grown aggregator using the Perl XML::RSS module, which seems to be pretty strict about what it will accept, and embedded links get through it just fine.)
One advantage <scriptingNews> has over RSS 0.91 is the idea of items that have NO link. For example, the RSS version of Scripting News is pretty useless, because Dave writes a lot of paragraphs that are narrative, rather than being "news" items with a link. Also, the first link in a paragraph becomes the <title>/<link> pair, and that might not be the MAIN link in the paragraph.
The advantage of RSS over <scriptingNews> is that I have an off-the-shelf parser for RSS. I haven't yet found a Perl-based parser for <scriptingNews>. Yeah, I could write one. I just haven't had/made the time.....

|
|
lrivers@i... - Re: Comments on RSS 0.91 spec 
6/8/2000; 8:16:04 AM (reads: 57691, responses: 1)
|
|
|
RSS means what? Maybe I am a dope, but it doesn't seem to say anywhere what the acronym stands for...

|
|
Dave Jacoby - Image 
6/8/2000; 9:22:37 AM (reads: 54112, responses: 1)
|
|
|
Is there any reason why the image HAS to be JPEG or GIF? I'd much rather start using PNGs for most of my web graphics, but the spec
specifies JPEG and GIF

|
|
Jason Levine - Re: Comments on RSS 0.91 spec 
6/8/2000; 10:41:11 AM (reads: 63942, responses: 0)
|
|
|
(Note: I updated this page when Dave posted an item on Scripting News that had more than one link in it, since it highlights my intial problem with RSS. The irony wasn't lost on me that the item that Dave posted was the one pointing to this page!)
One advantage <scriptingNews> has over RSS 0.91 is the idea of items that have NO link. For example, the RSS version of Scripting News is pretty useless, because Dave writes a lot of paragraphs that are narrative, rather than being "news" items with a link.
I hadn't thought of that one; I just pulled the most recent Scripting News page, looked at the RSS file, and then highlighted the paragraphs that don't appear in the RSS version.
There are two highlight colors: yellow, which means that the item doesn't appear at all in the RSS file, and green, which means that the item contains more than one link, and since RSS only supports one link per item, the RSS version isn't an exact representation of the actual version.
Here's the highlighted version of SN:
|
Themes
Last night Themes shipped! Yay Brent.
All the pointers are on inessential.com, Brent's weblog.
Limits on Microsoft's power
I'm writing this morning, I want to propose that Microsoft put a settlement offer on the table. I don't want to see the draconian punishment prescribed by Jackson imposed on Microsoft and the software industry. It's not fair, and it would be too disruptive.
On the other hand, Microsoft continues to be in denial of the legitimacy of the judgment. There must be limits on their power. If they won't self-impose limits, it totally makes sense for the government to set them.
Imho, the Jackson decision is a signal to settle. I've read all the editorials linked below, but I haven't read any editorials that represent the point of view of the Web. That's what I propose to add to the mix.
What the Web Wants
DaveNet: What the Web Wants.
BTW, this piece will not go out via email. If you know someone who reads DaveNet via email, please send them a pointer.
It's an important piece, imho, but I no longer wish to distribute essays via email. I want to be able to edit as the day goes by, as I do with Scripting News, because I expect to learn a lot as people read it. I want DaveNet to become a way for me to write whitepapers that have more lasting value.
FAQ
Mike Seaman: "Do you really believe that it is possible to create a viable business (BrowserCo) as you described it? Where would it get its revenue from, given that people are used to getting their browser for free and are (it seems to me) pretty unlikely to be willing to start paying?"
Answer: They would be free to go anywhere they want. Think about a browser tightly integrated with Linux, intelligently, thoughtfully, around a vision of the Two Way Web. They could also compete with Yahoo, who desperately needs competition.
Microsoft pointers
Cameron Barrett: A World Without Microsoft.
WSJ: Microsoft damaged its own credibility in court.
MacWEEK has an excellent collection of links on Microsoft.
NY Times editorial: "Judge Jackson sided completely with the government in part because he mistrusts the company."
Washington Post editorial: "Judge Jackson has alleviated the time problem somewhat by imposing interim restrictions on Microsoft's business practices. Microsoft has asked that these be stayed, but they should not be. They should go into effect to provide the public with protection from Microsoft misconduct while the appeals are pending."
Dan Gillmor: "Microsoft and its leaders continue to operate in state of denial. Perhaps they'll turn out to be correct, that the antitrust laws don't apply to what they do. That would be a fearsome finding for competition in the Internet Age, and I find it difficult to believe the higher courts will make such a ruling once they fully understand what's at issue here."
Bruce Ramsay: "McKenzie argues that the browser battle was a sideshow, and that the main battle was over their own turf, the server market. The rivals' aim was to neuter Microsoft, making a hard-driving warrior into a tea-and-crumpets competitor."
SF Chronicle editorial: "Guessing the future is tricky business, a hard challenge for any federal judge to take on in Microsoft's case. Yet that is precisely what federal regulators are asking in this case. Careful thought about the future is missing from the legal equation in drawing up new ground rules."
WSJ: Dividing Microsoft in two isn't just simple arithmetic.
Links
Jason Levine highlights the portions of Scripting News that don't appear in the RSSization of Scripting News.
News.Com: "International financier George Soros today said the Russian Internet is a hot investment and he would consider again investing in the country where he made what he called the worst bet of his career."
Surprise: "In Europe there are no blocks, we simply don't think in blocks. We explain which streets to take and the streets have names, which I don't always remember, but I know how to get there: I remember specific buildings, shops, an old church , a nice little bakery where you can smell the fresh bread from a distance, that is how I find my way through the cities."
Wired: NSI's Webjacking Epidemic. "After several days of wrangling with Network Solutions and Open SRS -- the Canadian registrar to which the stolen domains were transferred -- Meckler has his domains back, but not his confidence in Network Solutions."
Dale Dougherty: Frontier a la Neuberg. "His writing is very accessible to the non-programmer -- he really believes that anyone can learn to program, and a scripting language should make it even easier. Some of this can be explained by the combintation of Matt's interests in the classics and computing, which makes him a kindred spirit of quite a few editors at O'Reilly, including Tim."
Check this out: http://www.spellchecker.net/.
Andrea has discovered the magic flow-building properties of Wiener Schnitzel.
|

|
|
Michael Rose - <skipHours> Question 
6/9/2000; 11:16:16 AM (reads: 56833, responses: 1)
|
|
|
Is there any assumption on the time zone for the skip hours element? Since different aggregators will be in different time zones using the local time zone of the channel or GMT are the two choices. In the local case the channel will have to declare which time zone it's in (e.g. GMT + 2). In the GMT case the spec should state explicitly to use GMT time.

|
|
Dave Winer - Re: <skipHours> Question 
6/9/2000; 9:34:10 PM (reads: 58285, responses: 0)
|
|
|
The times must be in GMT. It's the simplest approach to a feature that's probably not actually being used anywhere.

|
|
Dave Winer - Re: Image 
6/9/2000; 9:56:29 PM (reads: 61999, responses: 0)
|
|
|
I added PNG to the list of allowable types. The Netscape spec didn't say what types were allowed, but it's totally clear it has to fit into an <img> tag, so it's non-controversial, imho, to say what the allowed types are.

|
|
Dave Winer - Re: Comments on RSS 0.91 spec 
6/9/2000; 9:58:26 PM (reads: 59703, responses: 0)
|
|
I did a survey on this. I proposed Really Simple Syndication, and about half the people said they liked it, and the other half said they didn't. I edited the spec to say that RSS is not an acronym, it's a name, but left the door open to it becoming an acronym in further versions. We might as well have fun with this. The answer is that it's changed a few times already, it might as well change again.

|
|
Jason Levine - RSS vs <scriptingNews> 
6/10/2000; 9:38:05 AM (reads: 55442, responses: 4)
|
|
|
Is this evolution of RSS going to mean that the <scriptingNews> format will go away?

|
|
Dave Winer - Re: RSS vs <scriptingNews> 
6/10/2000; 9:44:47 AM (reads: 60673, responses: 3)
|
|
|
I don't think any of these formats can go away.

|
|
Brad Pettit - images in RSS 0.91 spec 
6/10/2000; 9:53:24 AM (reads: 53270, responses: 2)
|
|
Dave said:
...The Netscape spec didn't say anything about graphic types, but it's clear that the graphics must flow through an HTML <img> tag, so basically the list of supported types must be types that can appear in an <img>.
It would be better to support images like the HTML 4.0 <OBJECT > tag allows. Why? The OBJECT tag is not an empty tag like IMG is. It allows the client to choose from graphic formats it supports; it degrades gracefully. One can specify the MIME type as a tag attribute, thus allowing client-side rejection without first querying the server. Plus, it is going to be in the XHTML standard.

|
|
Zac - eGroups mailing list 
6/10/2000; 9:56:48 AM (reads: 53565, responses: 1)
|
|
|
Just curious as to the reasoning behind using eGroups to manage the syndication mailing list? Since there are numerous other options that don't require me providing private information. I'm very interested in participating by am rather leery of providing any information to a for profit entitiy of which I know paractically nothing.

|
|
Dave Winer - Re: images in RSS 0.91 spec 
6/10/2000; 9:56:57 AM (reads: 57744, responses: 0)
|
|
|
There are three aggregators, and as far as I know, two of them do something with the image, and both use the <img> tag for rendering. I have no idea how broad support for the OBJECT tag is, and I doubt if the payoff is big enough to support a diversion, and even then Netscape's aggregator would still be generating IMGs.

|
|
Dave Winer - Re: eGroups mailing list 
6/10/2000; 9:58:42 AM (reads: 59626, responses: 0)
|
|
|
That's just the way it worked out. Mark Nottingham started the list, and once started, I didn't want to be a stinker and say it wasn't good enough; presumably other people felt the same way. eGroups runs good lists, they're fast, and because no one owns them, flames go nowhere. Practical suggestion, if you don't want them to have personal info about you, lie on the form.

|
|
Zac - Re: Comments on RSS 0.91 spec 
6/10/2000; 10:08:18 AM (reads: 62292, responses: 3)
|
|
|
One advantage <scriptingNews> has over RSS 0.91 is the idea of items that have NO link
This is the one thing I really dislike about <scriptingNews>. It seems totally illogical to me to be posting a news item for web syndication that has no link in it.
I can see that places like Scripting News would want to be able to post "comments" and marginalia on the site but that sort of content wouldn't really appeal to anyone getting a syndicated version of the site would it?

|
|
Zac - <lastBuildDate> comment 
6/10/2000; 10:10:57 AM (reads: 53198, responses: 2)
|
|
|
I am still curious as to why this is optional. Aside from the content this is one of the most important elements for anyone trying to build a syndicaion system.
If the lastBuildDate was required then you wouldn't need to actually parse the rest of the file to determine if the content was new. Its a minor point when you are parsing a single file but for a system that parses 100+ files on a regualr basis this is a huge time savings.

|
|
Dave Winer - Re: Comments on RSS 0.91 spec 
6/10/2000; 10:12:21 AM (reads: 67039, responses: 2)
|
|
|
I flip-flop on this myself. The format of Scripting News is evolving. It could be that as far as syndication is concerned, each top-level item would be considered a separate article, with its own URL. I've also considered ways of allowing RSS to contain the content, optionally. This might be a boon for wireless users, or people with intermittent net connections. This leads in some very interesting directions, and my ideas are pretty half-baked right now.

|
|
Dave Winer - Re: <lastBuildDate> comment 
6/10/2000; 10:13:54 AM (reads: 57458, responses: 1)
|
|
|
Let's have a clear line. That spec defines what RSS 0.91 is. In 0.91 <lastBuildDate> is optional. It's possible that in some future spec that it might be mandatory. I certainly see the wisdom in that.

|
|
Zac - Re: RSS vs <scriptingNews> 
6/10/2000; 10:15:29 AM (reads: 60865, responses: 0)
|
|
|
Nor should they really. Once the format has been implimented in a parsing system it doesn't really cause any problem to maintain that format. And the headache it would cause trying to ensure that systems were upgraded would be horrific!

|
|
Zac - Re: <lastBuildDate> comment 
6/10/2000; 10:19:55 AM (reads: 63435, responses: 0)
|
|
|
Point taken and understood.
Consider it a comment on a future version then. :-)

|
|
Zac - Re: Comments on RSS 0.91 spec 
6/10/2000; 10:22:31 AM (reads: 71697, responses: 1)
|
|
|
Perhaps one solution might be to mark the items that don't have a link as a seperate entity? Perhaps <comment> or something similar?

|
|
Jason Levine - Re: RSS vs <scriptingNews> 
6/10/2000; 2:42:02 PM (reads: 61984, responses: 1)
|
|
|
Good -- I'm glad to hear that. Most of my objections to RSS are most important if an alternative, one that will represent everything in a CSS, goes away; for now, <scriptingNews> represents that alternative for someone who writes like I do (and like you do, Dave!).
/jason

|
|
Dave Winer - Re: RSS vs <scriptingNews> 
6/10/2000; 3:52:27 PM (reads: 65906, responses: 0)
|
|
|
It's like a puzzle, there might be some way to migrate the extra power in <scriptingNews> into RSS without too much disruption. It really would be nice to have a single format going forward, but as you skillfully pointed out RSS isn't representing all that's there for Scripting News.

|
|
Lantz Rowland - Thanks for adding PNG 
6/10/2000; 3:55:33 PM (reads: 54182, responses: 0)
|
|
...The Netscape spec didn't say anything about graphic types, but it's clear that the graphics must flow through an HTML <img> tag, so basically the list of supported types must be types that can appear in an <img>.
Ahhh, thank you!
Lantz

|
|
Lantz Rowland - Re: images in RSS 0.91 spec 
6/10/2000; 5:20:52 PM (reads: 61067, responses: 0)
|
|
|
While I am strongly in favor of moving authors towards using the <html:object> element, trying to change the <rss:image> is not a very safe or stable approach.
It would be very nice to add one , optional (and experimental) <rss:channellogo> element which in addition to it's desired information attributes contains one <rss:logoobjectnest> element that envelopes an <html:object> ,with the definition of <html:object> in the namespace and dtd where it belongs at w3. I will see if I can generate the element dtd fragment for this discussion.
Clients of rss could then easily just stick with <rss:image> ( now sporting PNG! ) while the adventures with multiple namespaces and working xhtml clients continues.
Lantz

|
|
Lantz Rowland - Re: Comments on RSS 0.91 spec 
6/12/2000; 12:15:30 PM (reads: 74203, responses: 0)
|
|
|
I am in the camp that prefers a little more semantic content in the element names. How about an optional element &ls;SimpleReview>.

|
|
Stephen Tyler - Missing vital metadata 
6/13/2000; 6:53:31 AM (reads: 52451, responses: 0)
|
|
|
While RSS 0.91 is extremely powerful, it strikes me as missing two vital pieces of metadata:
1) Ordering method
2) Categorisation
Ordering method
------------
RSS defines a list of items, or more specifically an ordered sequence. But what is the ordering criteria?
Weblogs and news are ordered by time. Most current RSS channels fall into this category.
Top 10 lists are ordered by a popularity measure. Some examples might be "Lettermans top 10 reasons for ...", "Top selling CDs", "most popular pages". There are a sprinkling of these channels.
Other lists are ordered by degree of match. For example the results of a search might be presented in this manner.
To allow the encoding of this data, I propose the following:
<ordering>time</ordering>
Other values: none, top, match
A simple example. I gather several RSS streams about computer books. Using this new <ordering> item, I can automatically distinguish "top books" from "new books". I can merge multiple "new books" streams together, removing duplicates. On the other hand, I can merge merge "top books" streams together, weighting elements by duplication and order within each stream.
Categorisation
-----------
Content aggregators need to be able to categorise their content, or risk providing extremely long lists of channels (like userland's :-( ). How is a new user meant to select from a list of 2500 channels, presented as a flat list?
Unfortunately categorisation is EXTREMELY hard to do across a broad range of subjects, in a way that suits most people.
Rather than define the one true categorisation schema and taxonomy, I think we should permit the channel author some flexibility, but still allow content aggregators some real meat to kickstart their categorisation.
I propose the following new element, by way of an example for an RSS channel associate with a book on encryption software:
<category>
<method>yahoo.com</method>
<value>Computers_and_Internet/Internet/World_Wide_Web/Security_and_Encryption</value>
<value>Business_and_Economy/Shopping_and_Services/Books/Booksellers/Computers/Internet/Titles/World_Wide_Web</value>
</category>
<category>
<method>dmoz.org</method>
<value>Computers/Security/Products_and_Tools/Cryptography/</value>
<value>Business/Industries/Publishing/Publishers/Nonfiction/Computers</value>
</category>
notes:
1) You can have multiple <value> items in each category.
2) You can have multiple <category> items.
3) Users can define their own methods. Yahoo and DMOZ are recommended, with DMOZ "more" recommended.
4) the <value> string is a list of "/" seperated values, from broadest to most specific.
Now the pedantic among you will probably disagree with me as to the ideal place in Yahoo and DMOZ to categorise this content. But this is missing the point. The point is that armed with the above data, the job of classifying this RSS document in any new category tree is made vastly simpler.
Even if my category tree does not align precisely with Yahoo or DMOZ, there is going to be some overlap. And the <value> string contains some good keywords, which I can disambigaute using WordNet or similar to automatically align with my own arbitrary hierarchy.
For aggregation portals targetting narrow niches, it is a simple job to find relevant RSS channels using a hand-compiled list of relevant paths on Yahoo and DMOZ.
The presence of these new items should not upset existing RSS clients (I hope they have been coded to ignore unknown elements).
Perhaps it would be clearer with an explaination of what I am trying to do with RSS, and where I have been struggling to apply RSS.
I publish a vertical search portal.
http://www.growinglifestyle.com/h/garden/index.html
Currently it covers 2 topics (more are coming), one of which is gardening.
I scrape the top gardening web sites for articles (and only the articles), and assemble it in a categorised hierarchy. So the user can browse the hierarchy (like Yahoo), or do a full-text search (like Altavista). But no matter which way they look, they will only get quality articles on gardening.
What I have just done is add an RSS file at each node (well a few thousand nodes anyway) on this hierarchy. For example, there is an RSS file for "gardening", for "plants", for "bulbs" and for "tulips" (progressively narrower topics). Each of these RSS files is a weblog, displaying a time ordered sequence of articles being added to the tree. I'm adding about 1000 articles a week at the top level, so as you go down the tree the RSS files get quieter until the final nodes may only get 1 article added per month or two.
Why have I created so many RSS files? Well, not everybody is interested in everything. You in effect customise the RSS feed that suits your needs. If all you are interested in are "Dahlias", then that is all you will get. And publishing it in RSS makes re-purposing the content so much easier.
Actually, I am even thinking of adding an RSS file for every possible search phrase. In this case, the RSS file would be ordered by rank rather than time. Would you subscribe to such an RSS channel? Probably not as it would not change so often, but you might want to fetch it on demand. For example, a shopping site might want to display articles about each of their products. They could create a unique url containing the keywords and phrases, grab the rss file corresponding to that search, and display it using an RSS-reading content module.
So what is the problem?
Well how can I let other sites know the RSS channels I offer?
It is not really a good idea to add several thousand narrow channels to userland, and then have userland hammer my site every hour.
I could (and am) creating an OCS description, but this does not describe the categorisation or even the hierarchy. And I run the risk of having aggregators blindly add every single available RSS channel, and fetch them all hourly.
I could (and am) entering some of the more generally useful channels into xmltree and userland. But unless people actually wander all over my site, they will not be aware of the RSS customisation possibilities available.
Another problem with content syndication by RSS is as follows. I am adding around 1000 items per week, with around 1 update event per week. Ideally it would be better to release the articles in real-time, but alas it is computationally (and mentally) much less burdensome to do my processing in batches.
RSS has an implied length of circa 15 items. I know this is not fixed, but an RSS file with 1000 items is definitely considered unfriendly (My.Netscape requests file sizes below 8kB). The problem is that 990 of these new items will never make it onto my 10 element RSS file. Thus 990 items will miss out on the opportunities for content syndication and repurposing that RSS allows.
I am still thinking about the best way to solve this last problem. Some possibilities:
a) Trickle feed the RSS file. Instead of instantly acknowleding the 1000 new articles, the RSS generator could be spoon fed a steady dribble of articles (say 6 per hour = 1000/week). Clients reading the RSS file every single hour will get a chance to see all the new articles.
b) Track the IP address of clients reading the RSS file. Feed each IP address all the articles added since the last time they read the file, with some upper limit. So after a few big gulps of new articles the RSS file will settle down to a list of 10.
Neither of these approaches strikes me as being particularly clean.
I hope this stimulates some discussion about the application of RSS to search engines, instead of just the traditional areas of blogs and news feeds.
Steve

|
|
Clark Venable - We need a "How To" on using RSS in web sites 
6/23/2000; 3:28:43 PM (reads: 53183, responses: 0)
|
|
Though perhaps not part of the spec, I'd like to see more info (or easier to find info) on how to use the results of the spec (the rss files) to display the contents of RSS files within web pages. Two big questions I have:
- How do you get RSS content to appear in a web page.
- How do you customize the appearance (e.g. width, background color, etc)
Thanks for reading,
Clark Venable

|
|
Jonathan Eisenzopf - Re: Comments on RSS 0.91 spec 
7/8/2000; 8:02:34 AM (reads: 62012, responses: 0)
|
|
>Actually, I have seen embedded links in RSS 0.91,
>simply by putting the HTML in the field. I don't know if it's
>legal or not, but it seems to work just fine. (I use a home-grown
>aggregator using the Perl XML::RSS module, which seems to be >pretty strict about what it will accept, and embedded links get
> through it just fine.)
FYI, the XML::RSS module is pretty forgiving as long as the RSS file is well-formed XML. Unfortunately, many RSS files are not. I actually maintain links and other tags in the RSS items by encoding the < and > characters before I parse it. The next version (which I'm working on now), will have a strict mode which will only allow what's in the spec, and an RSS validator.
IMHO, adding tags in RSS items is not recommended if it's being distributed to the general public.

|
|
Matt Francis - RSS Error on WinNT 4.0 
7/11/2000; 11:32:31 AM (reads: 47808, responses: 1)
|
|
|
I keep getting this error message:
(in cleanup) Unregistered entity: Can't access DESTROY field in object o
f class XML::RSS at C:rssXML-RSS-0.5rss2html.pl line 0

|
|
userland@t... - Suggestion for .92 spec 
10/13/2000; 12:31:08 PM (reads: 59930, responses: 0)
|
|
|
I'd like to suggest a few optional additions to the specification. Here are some ideas I'd like to throw around for discussion:
At the item level:
<date></date>: This would allow us to specify a particular date for an item. I think it would be nice for those of us who have several days' worth of content in their RDF channel.
At the channel level:
These could be encapsulated in to an <external></external> section that would include all links to outside of the channel.
<about></about> : Much like <link></link> points to the page the channel is for <about></about> could point to a page of information about this channel. this could link to a FAQ or more information about the channel.
<wireless></wireless>: Points to a page where wireless devices can go.
<broadband></broadband>: Points to a page where broadband devices can go.
<narrowband></narrowband>: Points to a page where narrowband devices (browsers for blind people, text-only browsers, etc..) can go
<p3></p3>: Points to a P3P page to check the privacy rules
<sound></sound>: Points to either a VXML source file (which can be read by a VXML browser) or a sound file. For example, it could serve up a radio feed related to this story.
<video></video>: Same as above with video or SMIL file.
That said, here's what a source could look like (changes are bolded and URLs are fictional (but I cut and pasted my .91 channel content for speed reasons)):
-------------- Suggested RSS .92 code starts here --------------
<?xml version="1.0" ?>
<!DOCTYPE NewDocTypeLinkGoesHere>
<rss version="0.92">
<channel>
<header>
<managingEditor>tnl@tnl.net</managingEditor>
<copyright>Copyright 1999-present, Me.</copyright>
<title>TNL.net Newsletter</title>
My channel description
<language>en-us</language>
<rating></rating>
</header>
<image>
<title>TNL.net</title>
http://www.tnl.net/images/TNLpalmlogo.gif
<width>125</width>
<height>44</height>
My channel description
</image>
<external>
<link>http://www.tnl.net</link>
<about>http://www.tnl.net/about/</about>
<wireless>http://wap.tnl.net</wireless>
<broadband>http://www.tnl.net/100MBpage.html</broadband>
<narrowband>http://www.tnl.net/under1kpage.html</narrowband>
<p3>http://www.tnl.net/p3p.xml</p3>
<sound>http://www.tnl.net/myvoicebasedchannel.vxml</sound>
<video>http://www.tnl.net/myvideofeed.smil</video>
</external>
<item>
<title>Story 1</title>
<link>http://www.tnl.net/newsletter/anewstory.html</link>
Story 1 is described
<date>10/13/2000</date>
</item>
<item>
<title>Some older story</title>
<link>http://www.tnl.net/newsletter/olderstory.html</link>
Happy New Year
<date>01/01/2000</date>
</item>
</channel>
</rss>
-------------- Suggested RSS .92 code ends here ----------------
As part of the deal, I'd also move the original channel link and image link into the external field under a single link header (unless some people can tell me where they have a different link for the image and the channel.
Your thoughts on this?
TNL
PS: Full disclosure time - My interest in syndication is related to both past and present. For starters, I have my own personal web site that I use to publish a newsletter (and offer a channel). Providing an easy to use format for summary distribution is a great way to increase traffic to it and expose people to my ideas.
Second, I'm starting a company called Moveable Media (http://www.moveablemedia.com), which is trying to bridge the gap between online and offline media. While online syndication is WAY in the future for us (we're first focusing on providing tools that will allow people to deal with freelancers), it is something that we are seeing as a potential future arena for us.
PPS: The email to the syndication list I sent can be found here: http://www.egroups.com/message/syndication/698

|
|
rajneesh - Re: RSS Error on WinNT 4.0 
1/14/2001; 10:10:11 PM (reads: 61756, responses: 0)
|
|
|
dear sir,
I am newly joined system administrator in pgsl company.
I faced this probelum many times, is given below.
1.my hardisk is crased, but there are 3 parations in it (C,D,E)
the paration C is having operting sysytem files,D and E
is having data files.I used stratup disk and format the
C drive, but drive D is become c and E become D. I am sure
that drive c is formated. But why this happend i still tay
to find this ans.. .Please tell me about this reasion.

|
|
Dino Morelli - Re: RSS 0.91 but no DTD?!? 
3/4/2001; 9:45:57 AM (reads: 53877, responses: 0)
|
|
|
I was doing some reading about RSS at these sites:
http://backend.userland.com/rss092
http://backend.userland.com/rss091
Nowhere do I see a DTD for RSS 0.91 or 0.92. And there is no DOCTYPE element in the sample file gratefulDead.xml
Is there a DTD for this file type? I work in XML for a living and I'm quite surprised to not see a DTD at least referenced on the spec pages.

|
|
|
|