473,837 Members | 1,426 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

RSS feed clarification?

Hi folks,
I'm trying to figure out this whole RSS feed thing.

I've created my .xml file to use for my feed, and my browsers
"recognize" that I have an RSS feed, and you can subscribe, etc., etc.

Here's why I "think" I want to use an RSS feed, and what I'm confused
about.

I have one file (and one file only) on my web site that changes
frequently (weekly), but the file name is always the same. I want to
alert people who subscribe to the feed that this file has changed.

Here's my questions:

1.) Will an RSS feed "work" (automatically notify the subscribers) for
a single file whose name is always the same (although the body content
of the file changes)?
2.) I don't understand how RSS feeds actually work, from the clients
perspective, i.e., how do the subscribers RSS client (Internet
Explorer, Firefox, etc.) actually know that the RSS feed has changed
and download it, etc.? Is it just simply a scheduled task, and the
client checks the feed automatically on a schedule?
3.) Since my feed isn't "news", per se, I don't need to bother with
"syndicatin g" my feed, do I?...or would this somehow benefit me.

Thank you,
Ed

May 14 '07 #1
5 2437
On 14 May, 15:55, Ed Flecko <craigcaugh...@ gmail.comwrote:
I've created my .xml file to use for my feed, and my browsers
"recognize" that I have an RSS feed, and you can subscribe, etc., etc.
It would help if you told us the URL.

It's also better practice (if you can arrnage this, with your hosting)
to give your RSS file a ".rss" extension and most importantly to serve
it with a correct content-type for RSS, not just for XML. RSS is
robust aginst not doing this (most publishers can't get it right), but
it's still good practice if you're hosted on Apache.

I have one file (and one file only) on my web site that changes
frequently (weekly), but the file name is always the same. I want to
alert people who subscribe to the feed that this file has changed.
1.) Will an RSS feed "work" (automatically notify the subscribers) for
a single file whose name is always the same (although the body content
of the file changes)?
Yes. RSS is all about embedding metadata, and that includes the update
timestamps. The names themself are just one piece of the metadata --
so long as _something_ reflects the change, then you can make it all
work.

You might not be able to use the "permalink" feature of some RSS
versions. This is useful, so if you can, then you should use it. As to
whether it's relevant, then that depends on your particular
application and so we don't know that yet.

It's good practice to offer a "permalink" as a URL that will always
retrieve a particular version of the content, even some time after
this was first served. "Last week's news" is still interesting to many
consumers. You can purge these over time if you wish, but it's still
good practice to make the URL namespace a consumed resource that isn't
re-used.

If you can, then keep "last weeks news" and "this weeks news" stored
as separate files on the web server and make the web server respond to
specific requests for each one appropriately. Just giving a filename
with a datestamp in it can be enough to do this. For the "latest
news" URL, send a 302 redirect to the URL for the current file. This
redirect's value will need to be changed as each new file is uploaded.

Possibly it's just not appropriate to serve "last week's news" in your
application (I don't, and can't, know). If so, then just have the
simple one file, one filename, one URL situation. However make sure
that any URL you publish in RSS is _not_ labelled incorrectly as a
"permalink" .

2.) I don't understand how RSS feeds actually work, from the clients
perspective,
Largely you don't and can't know this. You publish the stuff, what
happens next is up to whoever uses it. Don't try to pre-judge what
they can and (especially) what they can't do with it.

how do the subscribers RSS client (Internet
Explorer, Firefox, etc.) actually know that the RSS feed has changed
and download it, etc.?
They'll usually poll it regularly to see (i.e., the client decides).
HTTP polling shoudl be efficient - i.e. a GET or HEAD request should
quickly return a suitable HTTP 304 Not Modified if needs be, or at
least a HTTP 200 with appropriate timestamps. Good clients adjust this
polling time so as not to be a nuisance, to respect any hints you
embed in the syndication information you include inside the RSS
document, and also to fine-tune this on the basis of how often you
actually make changes to the content.

It's important that an RSS server can efficiently serve polling
clients when the content _hasn't_ changed, otherwise it can soon be
overloaded, even when it's not serving any content. This is a real
problem for dumb-coded servers with database-generated content. If
your RSS content is coming from static files, then Apache will get it
right automatically. If you're generating it dynamically, then make
sure your "last updated" timestamps are calculated and returned
quickly, and also that they represent the "last change" not the "last
request" timestamps.

3.) Since my feed isn't "news", per se, I don't need to bother with
"syndicatin g" my feed, do I?.
You don't really ever syndicate your own feed, you offer it up for
syndication and some aggregator might decide to syndicate it elsewhere
if it wishes to. Or else it might not, I cannot be positive which.

May 14 '07 #2
On May 14, 9:00 am, Andy Dingley <ding...@codesm iths.comwrote:
On 14 May, 15:55, Ed Flecko <craigcaugh...@ gmail.comwrote:
I've created my .xml file to use for my feed, and my browsers
"recognize" that I have an RSS feed, and you can subscribe, etc., etc.

It would help if you told us the URL.

It's also better practice (if you can arrnage this, with your hosting)
to give your RSS file a ".rss" extension and most importantly to serve
it with a correct content-type for RSS, not just for XML. RSS is
robust aginst not doing this (most publishers can't get it right), but
it's still good practice if you're hosted on Apache.
I have one file (and one file only) on my web site that changes
frequently (weekly), but the file name is always the same. I want to
alert people who subscribe to the feed that this file has changed.
1.) Will an RSS feed "work" (automatically notify the subscribers) for
a single file whose name is always the same (although the body content
of the file changes)?

Yes. RSS is all about embedding metadata, and that includes the update
timestamps. The names themself are just one piece of the metadata --
so long as _something_ reflects the change, then you can make it all
work.

You might not be able to use the "permalink" feature of some RSS
versions. This is useful, so if you can, then you should use it. As to
whether it's relevant, then that depends on your particular
application and so we don't know that yet.

It's good practice to offer a "permalink" as a URL that will always
retrieve a particular version of the content, even some time after
this was first served. "Last week's news" is still interesting to many
consumers. You can purge these over time if you wish, but it's still
good practice to make the URL namespace a consumed resource that isn't
re-used.

If you can, then keep "last weeks news" and "this weeks news" stored
as separate files on the web server and make the web server respond to
specific requests for each one appropriately. Just giving a filename
with a datestamp in it can be enough to do this. For the "latest
news" URL, send a 302 redirect to the URL for the current file. This
redirect's value will need to be changed as each new file is uploaded.

Possibly it's just not appropriate to serve "last week's news" in your
application (I don't, and can't, know). If so, then just have the
simple one file, one filename, one URL situation. However make sure
that any URL you publish in RSS is _not_ labelled incorrectly as a
"permalink" .
2.) I don't understand how RSS feeds actually work, from the clients
perspective,

Largely you don't and can't know this. You publish the stuff, what
happens next is up to whoever uses it. Don't try to pre-judge what
they can and (especially) what they can't do with it.
how do the subscribers RSS client (Internet
Explorer, Firefox, etc.) actually know that the RSS feed has changed
and download it, etc.?

They'll usually poll it regularly to see (i.e., the client decides).
HTTP polling shoudl be efficient - i.e. a GET or HEAD request should
quickly return a suitable HTTP 304 Not Modified if needs be, or at
least a HTTP 200 with appropriate timestamps. Good clients adjust this
polling time so as not to be a nuisance, to respect any hints you
embed in the syndication information you include inside the RSS
document, and also to fine-tune this on the basis of how often you
actually make changes to the content.

It's important that an RSS server can efficiently serve polling
clients when the content _hasn't_ changed, otherwise it can soon be
overloaded, even when it's not serving any content. This is a real
problem for dumb-coded servers with database-generated content. If
your RSS content is coming from static files, then Apache will get it
right automatically. If you're generating it dynamically, then make
sure your "last updated" timestamps are calculated and returned
quickly, and also that they represent the "last change" not the "last
request" timestamps.
3.) Since my feed isn't "news", per se, I don't need to bother with
"syndicatin g" my feed, do I?.

You don't really ever syndicate your own feed, you offer it up for
syndication and some aggregator might decide to syndicate it elsewhere
if it wishes to. Or else it might not, I cannot be positive which.
Hi Andy,
Hey, thanks for the reply. I'll take all the suggestions and help I
can get! :-)

O.K., I've changed the name of my basic RSS file so it has an .rss
extension.

The site is: www.fivestarbank.com, and the specific file is our CD
rates that I know customers would like to keep current on...that's why
I think the RSS feed would be a smart idea.

Comments? Further suggestions?

Thank you!

May 14 '07 #3
On 14 May, 18:14, Ed Flecko <craigcaugh...@ gmail.comwrote:
O.K., I've changed the name of my basic RSS file so it has an .rss
extension.
It's now served under a content-type of text/plain when it ought to
be application/rss+xml. Fix that if you can (Apache and .htaccess),
otherwise it _might_ be better as .xml and at least served as text/xml
or application/xml. Don't sweat this though: it's good practice, but
RSS is deliberately robust against it being mis-configured.

Also validate it with feed validator
http://feedvalidator.org/check.cgi?u....com%2Ffsb.rss

As it stands, it's valid but still needs a couple of tweaks.

You're using RSS 2.0, which is probably the best choice for you,
although the spec is unfortunately badly written and ambiguous. Worth
reading anyway though:
<http://cyber.law.harva rd.edu/rss/rss.html>
Line by line:

<title>Welcom e to the Five Star Bank RSS feed</title>
Don't welcome people, tell them what it is. It's not a web site, it's
an RSS feed. They don't "visit" this, they have it delivered to them.
Remeber that they might be reading this on their fridge screen
display, along with the morning's news and last night's baseball
result.
<link>http://www.fivestarban k.com</link>
Good. This should be to the human-readable website, not any part of
the feed
<description>Wh ere Excellence Exceeds Expectations</description>
Lose the marketing flannel. Put some content here. Try "Five Star Bank
CD rates at 15th May 2007, valid for the next 5 days" or similar
<item>
One item. It's all you need. Not common practice, but entirely valid
in your application.

<title>Curren t CD Rates</title>
Be careful with words like "current" in any syndicatable protocol (it
might not still be current when yourr reader gets to see it). Only use
them with items that are clearly timestamped, otherwise you will
confuse users.

<link>http://www.fivestarban k.com/documents/Current_Rates.p df</link>

I would still be happier if this pointed to a series of files called
"rates at 2007-05-15" etc. Delete them as soon as they're obsolete if
you wish, but at least it avoids confusion of mapping an old
"currrent" onto a new file with a changed rate. If you don't do this
then you are losing most of the advantages of RSS.

You can still make "current" 302 redirect to this week's file.

There's a separate commercial decision to be made as to whether you
want to have your historical rate history visible so easily (by
leaving the old files available). It's your call (but if you ever
make this information publically visible even temporarily, someone
will make a business out of recording it and selling histories of it).
Obviously a single filename kills this anyway.

<description> </description>
Put something in there. Probably (for this one-item case) a
restatement of the channel's description.

There are several elements missing from <channel>. Some are important.

<pubDate>
This is vital, because it's how an aggregator identifies the channel /
item as having been updated. If you don't have it, and you don't
change the item link URL, then most correct aggregators will simply
see your content as stale and unchanging, even if the PDF contents
themselves are changing. Put this on both channel and item -- channel
is just the latest pubDate across all <item>s, so in your case they're
currently the same.
<skipHours& <ttl>
This is poorly done in RSS 2.0, but you should still use it. It's part
of how they hint at the update schedule for the channel. Personally
I'd use the RSS 1.0 syndication module instead, or as well.
<http://web.resource.or g/rss/1.0/modules/syndication/>

<copyright>
This can be important, particularly if you wish to indicate that
financial information brokers can't republish your content. I suggest
reading the Creative Commons site for advice on indicating this.

<managingEditor >
It's now a legal requirement for UK commercial feeds to include this
(with some wiggle room for the technical details of "how"), so as to
identify the legal entity publishing this business communication. I'm
sure US retail banking laws have similar requirements.
There are also elements missing from <item>. Some are already
described, some important.

Remember that many syndication / aggregation environments syndicate
_items_, not _channels_. They'll strip out the items they want from
several sources of channel, then republish them as an aggregation. If
you want to swim in this world, make sure that your <item>s carry the
appropriate metadata, don't just stick it once one the overall channel
and hope.

<guid>
This is essential if you expect any syndication to work. It's how they
recognise <item>s that are different or (in conjunction with pubDate)
have been updated. Don't use isPermaLink=tru e though unless you're
disambiguated between each weeks' set of rates (as I suggest anyway).

<enclosure>
Your linked content is a PDF, so it's unclear as to whether it ought
to be addressed via a <linkor via <enclosure>. It's possible to use
either. It's better to not use a PDF at all, but to use HTML (with my
Semantic Web pointy hat on). In that case you'd clearly use a <link>
and we'd all start building a world of automatically machine-readable
smart content, intelligent agents and all the rest of it.

However you probably have a corporate brand manager who forces you to
use a PDF so that they can control the exact choice of corporate
typeface. This is a Bad and Wrong policy and the sooner these
dinosaurs are put out to grass the better, but I appreciate that it
happens. So is a PDF a piece of "web content" (use <link>) or is it a
monstrous great piece of opaque brochureware that's only fit to be
downloaded and printed, with no hope of ever being automatically read
and used by agents (use <enclosure>).
May 15 '07 #4
On May 15, 4:38 am, Andy Dingley <ding...@codesm iths.comwrote:
On 14 May, 18:14, Ed Flecko <craigcaugh...@ gmail.comwrote:
O.K., I've changed the name of my basic RSS file so it has an .rss
extension.

It's now served under a content-type of text/plain when it ought to
be application/rss+xml. Fix that if you can (Apache and .htaccess),
otherwise it _might_ be better as .xml and at least served as text/xml
or application/xml. Don't sweat this though: it's good practice, but
RSS is deliberately robust against it being mis-configured.

Also validate it with feed validatorhttp://feedvalidator.o rg/check.cgi?url=h ttp%3A%2F%2Fwww .fivestarbank.. ..

As it stands, it's valid but still needs a couple of tweaks.

You're using RSS 2.0, which is probably the best choice for you,
although the spec is unfortunately badly written and ambiguous. Worth
reading anyway though:
<http://cyber.law.harva rd.edu/rss/rss.html>

Line by line:

<title>Welcom e to the Five Star Bank RSS feed</title>
Don't welcome people, tell them what it is. It's not a web site, it's
an RSS feed. They don't "visit" this, they have it delivered to them.
Remeber that they might be reading this on their fridge screen
display, along with the morning's news and last night's baseball
result.

<link>http://www.fivestarban k.com</link>
Good. This should be to the human-readable website, not any part of
the feed

<description>Wh ere Excellence Exceeds Expectations</description>
Lose the marketing flannel. Put some content here. Try "Five Star Bank
CD rates at 15th May 2007, valid for the next 5 days" or similar

<item>
One item. It's all you need. Not common practice, but entirely valid
in your application.

<title>Curren t CD Rates</title>
Be careful with words like "current" in any syndicatable protocol (it
might not still be current when yourr reader gets to see it). Only use
them with items that are clearly timestamped, otherwise you will
confuse users.

<link>http://www.fivestarban k.com/documents/Current_Rates.p df</link>

I would still be happier if this pointed to a series of files called
"rates at 2007-05-15" etc. Delete them as soon as they're obsolete if
you wish, but at least it avoids confusion of mapping an old
"currrent" onto a new file with a changed rate. If you don't do this
then you are losing most of the advantages of RSS.

You can still make "current" 302 redirect to this week's file.

There's a separate commercial decision to be made as to whether you
want to have your historical rate history visible so easily (by
leaving the old files available). It's your call (but if you ever
make this information publically visible even temporarily, someone
will make a business out of recording it and selling histories of it).
Obviously a single filename kills this anyway.

<description> </description>
Put something in there. Probably (for this one-item case) a
restatement of the channel's description.

There are several elements missing from <channel>. Some are important.

<pubDate>
This is vital, because it's how an aggregator identifies the channel /
item as having been updated. If you don't have it, and you don't
change the item link URL, then most correct aggregators will simply
see your content as stale and unchanging, even if the PDF contents
themselves are changing. Put this on both channel and item -- channel
is just the latest pubDate across all <item>s, so in your case they're
currently the same.

<skipHours& <ttl>
This is poorly done in RSS 2.0, but you should still use it. It's part
of how they hint at the update schedule for the channel. Personally
I'd use the RSS 1.0 syndication module instead, or as well.
<http://web.resource.or g/rss/1.0/modules/syndication/>

<copyright>
This can be important, particularly if you wish to indicate that
financial information brokers can't republish your content. I suggest
reading the Creative Commons site for advice on indicating this.

<managingEditor >
It's now a legal requirement for UK commercial feeds to include this
(with some wiggle room for the technical details of "how"), so as to
identify the legal entity publishing this business communication. I'm
sure US retail banking laws have similar requirements.

There are also elements missing from <item>. Some are already
described, some important.

Remember that many syndication / aggregation environments syndicate
_items_, not _channels_. They'll strip out the items they want from
several sources of channel, then republish them as an aggregation. If
you want to swim in this world, make sure that your <item>s carry the
appropriate metadata, don't just stick it once one the overall channel
and hope.

<guid>
This is essential if you expect any syndication to work. It's how they
recognise <item>s that are different or (in conjunction with pubDate)
have been updated. Don't use isPermaLink=tru e though unless you're
disambiguated between each weeks' set of rates (as I suggest anyway).

<enclosure>
Your linked content is a PDF, so it's unclear as to whether it ought
to be addressed via a <linkor via <enclosure>. It's possible to use
either. It's better to not use a PDF at all, but to use HTML (with my
Semantic Web pointy hat on). In that case you'd clearly use a <link>
and we'd all start building a world of automatically machine-readable
smart content, intelligent agents and all the rest of it.

However you probably have a corporate brand manager who forces you to
use a PDF so that they can control the exact choice of corporate
typeface. This is a Bad and Wrong policy and the sooner these
dinosaurs are put out to grass the better, but I appreciate that it
happens. So is a PDF a piece of "web content" (use <link>) or is it a
monstrous great piece of opaque brochureware that's only fit to be
downloaded and printed, with no hope of ever being automatically read
and used by agents (use <enclosure>).
Thank you, Andy.

I'll try your suggestions!

:-)

May 17 '07 #5
Quick reminder, not directed only at Ed: Please remember to trim quotes!
Reposting a hundred lines of text just to add seven words of thanks is
not a very good use of Internet resources (or of readers' time).

In general, your new text should be larger than what you're quoting,
with a *bit* of leeway allowed when the quote itself is also short.
May 17 '07 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
1427
by: Kraft Bernhard | last post by:
Hallo list, I don't know if this is a apropriate Newsgroup for this thread but I found it via google and there are already some RSS question in here so I'm just asking: I have written a RSS Feed which fetches the list of new Extensions for the CMS Typo3 (www.typo3.org) and stores them in a database. Whenever somebody requests the RSS Feed the Feed XML is generated out of the database.
8
1851
by: Sai Kit Tong | last post by:
In the article, the description for "Modiy DLL That Contains Consumers That Use Managed Code and DLL Exports or Managed Entry Points" suggests the creation of the class ManagedWrapper. If I need to build multiple mixed mode dll's used by a consumer application, do I have to implement multiple ManagedWrapper's (each embedded in indiviudal DLL project) and call all of them in my consumer application?
1
2577
by: Steve | last post by:
I have a script that has been modified from one that I found on the internet to display RSS feeds in html. The script works fine for most RSS feeds but there are a number that it fails on with the error "End tag 'head' does not match the start tag 'meta'". Does any one on here have any experience with this? The script is shown below, the Neowin feed works but the google feed does not. Any help would be appreciated.
6
2373
by: affiliateian | last post by:
Total newbie here for this so please be patient. We manually update our XML feed when we publish an article on our website. Can we add a javascript tracking pixel (from phpadsnew) into the XML file to track how many times our feed was accessed? Just to get a rough idea how manyh subscribers we have? Not sure if copying and pasting a javascript into the XML source would work.
4
4236
by: Florian Lindner | last post by:
Hello, I'm looking for python RSS feed parser library. Feedparser http://feedparser.org/ does not seem to maintained anymore. What alternatives are recommendable? Thanks, Florian
1
1652
by: paul.hester | last post by:
Hi all, I work for a classified-type site and am planning on having an RSS feed for each category. I understand the basics of RSS, but I can't decide how often to update each RSS feed. Each category will probably have several new listings every hour. What's generally the recommended update frequency for an RSS feed? Also, in each update, do you exclude content that was in previous feeds, or do you leave it up to the reader to sort out...
4
1971
by: Blake Garner | last post by:
I'm looking for suggestions on how to approach generating rss feed ..xml files using python. What modules to people recommend I start with? Thanks! Blake
10
2399
by: bhass | last post by:
From my other post I am making a simple program that creates an RSS feed with Python. Now when I run my program so far, I get errors. It says "something is not defined". The word something is replaced by the name of the function I'm trying to use. my article function when ran, comes up with "article is not defined" etc. Here's my code: What is wrong with it? #!/usr/bin/env python import ftplib import getpass def mainfeed(): ...
2
3234
jamwil
by: jamwil | last post by:
What's up guys. I'm having some issues... I've created a method as part of my lifestreaming class which takes an rss feed, and puts the data into a database... It's fairly simple... Check it....///// // feed // // LOADS THE RSS FEED FOR // LOOPS THROUGH AND FORMATS/FILTERS POSTS // PULLS THE TIMESTAMP OF THE LATEST UPDATE FROM THE DB // IF THERE ARE NEW POSTS, ADD THEM TO THE DATABASE ///// public function feed($feed,$type) { if...
0
10577
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
10275
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
7811
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
7005
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5670
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5851
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4476
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
4045
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
3126
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.