Slashdot Mirror


Netscape Dumps Critical File, Breaks RSS 0.9 Feeds

An anonymous reader writes "In the standard definition of RSS 0.91, there are a couple of lines referring to 'DOCTYPE' and referencing a 'dtd' spec hosted on Netscape's website. According to an article on DeviceForge.com quite a few RSS feeds around the web probably stopped working properly over the past few weeks because Netscape recently stopped hosting the critical rss-0.91.dtd file. Probably someone over at netscape.com simply thought he was cleaning up some insignificant cruft." Some explanation has been offered by a Netscape employee.

36 of 137 comments (clear)

  1. Ack by Cygfrydd · · Score: 4, Funny

    I would've seen this post sooner, but my RSS feed was broken... something about a 404?

  2. Why would this break RSS readers? by eurleif · · Score: 5, Interesting

    I don't see how this would break RSS readers. DTDs pretty much never get read except by validators. Normal SGML and XML parsers just treat the DTD URL as an opaque string, not as something that can be retrieved.

    1. Re:Why would this break RSS readers? by acroyear · · Score: 5, Informative

      Actually the DTD is loaded up by pretty much every proper XML library even if validation is "off".

      The DTD contains more than just the element definitions and hierarchy. Its also used to define entities (&...;) that are non-standard to XML but may be expected in the file. HTML has tons of pre-defined entities but XML only has the core 4. All others are defined in DTDs and loaded on the fly as part of the processing.

      There are ways to turn it off at the lowest levels, but higher-level abstractions/libraries might not give access to that. For example, with JAXP + SAX you can turn off DTD loading, but Jakarta Commons Digester doesn't give a setting where you can trigger that, so Digester tries to load the dtd, and even with validation off you can't change that. My only recourse is to take the DTD lines out of the various config files. (Reason: My JBoss server is deployed in private networks where the server can't reach the internet).

      --
      "But remember, most lynch mobs aren't this nice." (H.Simpson)
      -- Joe
    2. Re:Why would this break RSS readers? by KrisWithAK · · Score: 3, Insightful

      You are right. I wish I would have seen this article earlier so that I could have posted sooner -- and others to get to see the "solution"!

      Ever since I started developing on a laptop during my commute, I discovered that XML-based programs like J2EE servers would simply stop working. I experienced the same thing at work where, by default, your desktop applications (namely Eclipse) do not have access to the internet, and the servers will never have access to the "Internet".

      The proper thing to do is for your application to use an XML catalog for resolving entities/URIs. There is a good article at http://xml.apache.org/commons/components/resolver/ resolver-article.html that helped me out. In addition, if you are using Eclipse with the web tools platform, you can customize the catalog so it resolves DTDs and entities locally. See http://wiki.eclipse.org/index.php/Using_the_XML_Ca talog.

    3. Re:Why would this break RSS readers? by Mithrandir · · Score: 2, Informative

      What you need to implement is org.xml.sax.EntityResolver. There's several methods that need to be implemented that are the different ways the SAX parser could query for stuff. Basically it will give you the Public ID and/or System ID and ask you to return a stream to what that resolves to. Then, in your code, all you do is run a hashmap that maps a given ID to a local resource (eg file or database BLOB) and then do your own stream opening/processing from there. I attempted to post some example code but seems like that trips the lameness filter :( So, just have a look at the interface. The code required is pretty trivial to implement. If that fails, you should be able to work out my email address from the website address under my profile - send me an email and I'll send you the code we use in one of our projects.

      --
      Life is complete only for brief intervals in between toys or projects -- John Dalton
  3. Ugh by SuperBanana · · Score: 4, Insightful

    According to an article on DeviceForge.com quite a few RSS feeds around the probably web stopped working properly over the past few weeks because Netscape recently stopped hosting the critical rss-0.91.dtd file.

    STOP, Grammar time. Ooooh whoooaaa oh oh...

    Probably someone over at netscape.com simply thought he was cleaning up some insignificant cruft."

    Or Netscape got tired of people using their bandwidth. Regardless of the reasons: if you reference a file on someone's site, it's hardly their fault if they move/change/delete it, and it breaks your stuff.

    1. Re:Ugh by fatphil · · Score: 2, Interesting

      But DTD's were designed to be precisely that. Likewise class paths in java.
      Unnecessary hard coding of something that's not necessarily non-ephemeral.
      I never liked the idea, I'm glad to see that some of my worries are well-founded.

      --
      Also FatPhil on SoylentNews, id 863
    2. Re:Ugh by aiken_d · · Score: 2, Insightful

      Well, you're doing pretty good spotting grammar problems, but you're pretty ignorant when it comes to the content of the story.

      RSS is a spec that was created and promoted by Netscape. For proper validation, this remote (Netscape-hosted) file is needed and was supplied by Netscape to facilitate implementation of RSS. Removing it breaks a standard that they promoted. That is, they encouraged people to use this file that they hosted as part of the RSS spec. To reiterate, they told people to use this file and then (presumably accidentally) removed it, thereby breaking some RSS feeds and readers. Got it?

      Maybe you should stick to the grammar nazi stuff on stories you actually understand, or at least leave out the technically ignorant comments and only complain about syntax problems in the story.

      --
      If I wanted a sig I would have filled in that stupid box.
  4. Obligatory Lamport quote on distibuted systems by Programmer_Errant · · Score: 5, Insightful

    "A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable."

  5. SPOF? by basketcase · · Score: 2, Insightful

    Or maybe some smart person at Netscape decided to teach some people a lesson about using a 3rd party as a single point of failure?

  6. Doesn't AOL own Netscape? by gravesb · · Score: 4, Funny

    And if so, why would anyone rely on AOL to make something on the web work?

    --
    http://bgcommonsense.blogspot.com
  7. HAHA by eMbry00s · · Score: 5, Funny

    Suck that, Web 2.0!

  8. The point... by Junta · · Score: 3, Insightful

    Is to have a common component shared among many documents without replication.

    Class paths is java are the perfect example to say how it *should* work. Java CLASSPATHs in every application/installation I have seen are site-local, all paths accessible without going over the internet to another site to get classes.

    To be similar, an RSS site should copy this DTD to their local server, or to a server with which they have a concrete understanding of the relationship. Either a commercial agreement with a peer or at least using a server from an organization who explicitly defines the purpose of hosting to be a common place to promote it as a standard.

    Did netscape promise itself to be an organization sharing that DTD explicitly, or did site developers get in the practice because 'it just always was there'?

    --
    XML is like violence. If it doesn't solve the problem, use more.
  9. Re:Did you think this through? by TheThiefMaster · · Score: 2, Interesting

    A lot of rss readers can't parse a custom dtd, they assume that rss is pretty much fixed, and ignore the dtd line completely.

  10. Host it yourself! by nascarguy27 · · Score: 4, Funny

    This is the precise reason why I host everything myself including my own series of tubes, dubbed the Internets. I host not only every file that my site uses, but I also have a program that regularly crawls the entire Internet and compresses it onto my own distributed system. That way I can browse the Internet by myself without worrying if someone else's system will fail. Although I do need to replace systems every now and then. But that's not a problem, b/c the distributed system has 3-5 copies of the Internet, each copy in a different place. Wait, isn't their some other company that does that? I can't quite place the name.

    Seriously though, relying on some other system so your site will work is a recipe for disaster. It's similar to relying on someone to take you to work everyday. After a while, you get used to that fact that someone else is driving you that you don't even think about it. Then your driver gets deleted somehow. And you're stuck with no way to work.

    --
    Funny createSig(Witty remark, Odd reference)
    {
    return (Funny)remark + (Funny)reference;
    }
  11. DTDs are different by pikine · · Score: 4, Interesting
    A DTD (document type definition) is a file that describes how an SGML document is structured. In this case, the DTD that went missing defines RSS 0.91, which is used by Navigator 4 for "channel" subscription.

    It is expected that DTDs are hotlinked. For example, if you ever look at html source of a web page, you would see:

    <!DOCTYPE ...>
    on the top, and the hotlink goes to somewhere on w3.org. That is because W3 is the authority body that defines the html.

    Since Netscape is the authority body that defines RSS 0.91, it is a bit strange how they stopped hosting the definition.

    In any case, the missing definition won't affect software that processes RSS feeds. It only affects software that checks whether a SGML document is structured properly according to that missing DTD.

    The main interest to this article seems to be the speculation how a deprecated web 1.0 company could end up hiring a clueless webmaster who deletes important files without recognizing its importance.
    --
    I once had a signature.
  12. This is a major problem, by Morky · · Score: 5, Funny

    This could seriously affect both of the guys using Netscape.

  13. Re:Then they're broken! by r00t · · Score: 4, Insightful

    Fetching the spec is idiotic.

    First of all, that's a needless operation. It can take time; don't forget the DNS lookup and all.

    Second of all, it's not as if you could handle any random DTD. Software doesn't work that way. (this is one of the reasons why XML itself is a mostly-lame idea) If the XML doesn't match expectations, you can't convert it to your own internal representation. You probably have a C struct that you need to fill in. Even in some wild interpreted language like perl, you just won't have any use for unexpected data structures and you damn well need the expected data structures.

  14. Netscape Says No RSS 0.91 For You by gastropod · · Score: 5, Informative

    From April 2001, "Netscape removed the RSS 0.91 DTD from their website. This means that all RSS feeds which depend on the RSS 0.91 (many, MANY news sites) cannot be used with a validating parser."

    It seems as though it just took them 5+ years to follow up on the threat? Primary links are broken, but of course the lively /. discussion (which, um, I haven't read) remains.

  15. Sorry about that by christopherfinke · · Score: 5, Informative

    my.netscape.com is undergoing a redesign, and when we announced the redesign about 10 days ago, the DNS entry for my.netscape.com was changed to point to the new server where My Netscape will be living. This had the effect of making anything under the old my.netscape.com unavailable, since the only thing public on the new server is a splash page. (Nobody on the team was especially aware of this DTD file since all of the old Netscape employees were let go last year around the time Netscape.com was redeveloped; anybody working at Netscape now was hired since then.)

    Now, why this file was living under my.netscape.com is anybody's guess, but we'll have it restored ASAP. I only wish that someone had brought it to our attention so that I didn't have to find out about it from Slashdot.

    Christopher Finke
    Netscape Developer

    1. Re:Sorry about that by mmurphy000 · · Score: 4, Informative

      What's the official way to let you know about this sort of thing? I'm not trolling -- the better you can inform folk like us about how to interact with you, the more likely it is you'll get a response when you need it. For example, a quick scan of the Help and FAQ pages linked to off of the Netscape home page shows no mention of how to contact folk like you.

    2. Re:Sorry about that by christopherfinke · · Score: 4, Informative
      What's the official way to let you know about this sort of thing?
      You're correct that contact information appears to be MIA in the Netscape Help pages; I'll make sure to remedy that ASAP.

      For something as serious as this, a user could have checked the profile of one of the Netscape Anchors or developers, where many of them list their screennames or websites, and subsequently, their e-mail addresses. (At least, I know I do.) Alternatively, any Netscape.com member could use Netscape sitemail to contact any of the staff members. Obviously, these are unacceptable for normal circumstances, but I wouldn't call this situation a normal circumstance.
    3. Re:Sorry about that by martyb · · Score: 3, Insightful
      (Nobody on the team was especially aware of this DTD file since all of the old Netscape employees were let go last year around the time Netscape.com was redeveloped; anybody working at Netscape now was hired since then.)

      Now, why this file was living under my.netscape.com is anybody's guess, but we'll have it restored ASAP. I only wish that someone had brought it to our attention so that I didn't have to find out about it from Slashdot.

      Ummm, maybe I'm mising something here, but I would think that your web log would show a spike in 404 errors for this file, right? In my experience, it is helpful to assume that I do not know what I don't know, and to put procedures in place to help make those omissions stick out. So, a scan of your log files not only for this file, but for any others that also have a high number of 404's (especially from a multitude of referers) would be worth investigating.

      BTW, best of luck on the redesign!

    4. Re:Sorry about that by gjuk · · Score: 2, Interesting

      1) Isn't it great that the guy comes on and is open and helpful? There are plenty of organisations could learn from this

      2) I found it amusing that the /. summary states "quite a few RSS feeds around the web probably stopped working properly" - what; so perhaps none stopped working? Would be great to see a list of ones which actually did.... anyont?

    5. Re:Sorry about that by dubl-u · · Score: 3, Interesting

      Hi, Christopher. First off, full marks for stepping up and explaining things honestly. You have done more good for Netscape than a dozen PR people. I'm sure you'll take a lot of crap from my fellow Slashdotters, but don't let it throw you. Listen to and acknowledge their legitimate complaints and you'll do fine.

      I only wish that someone had brought it to our attention so that I didn't have to find out about it from Slashdot.

      If you are looking to learn a lesson from this, how about this one: URLs are forever!

      Whenever I make a change to a live server, my biggest concern is to not break existing usage. If I ever change an URL, I make sure to redirect old usage to new usage that's just as good. And if I'm ever not sure something is used, I generally look back at least three months in the logs. Especially if you've inherited a pile full of mystery, good analytical tools for your server logs are vital. Trying to run even a modestly-sized site without them is like running a large store without tracking your inventory: your life will become a series of unfortunate surprises.

    6. Re:Sorry about that by christopherfinke · · Score: 2, Funny

      Sorry, I meant that it was unacceptable that a member would have to take all of those steps to actually contact someone, not that it was unacceptable for people to contact the emplpoyees.

    7. Re:Sorry about that by christopherfinke · · Score: 4, Informative
      URLs are forever!
      Indeed, words to live by. I wouldn't pin this mistake on one person not checking the right logfile though; in a company as large as AOL, when an entire 150-person workforce is laid off and a new (much smaller) team is brought in to manage the old properties, things sometimes get lost in the shuffle. The entire my.netscape.com service happened to be one of those things. I'm sure that this incident will act as a reminder to never let this type of thing happen again.

      And BTW, it appears that the DTD file will be restored early tomorrow morning at the latest.
    8. Re:Sorry about that by VGPowerlord · · Score: 2, Informative

      They removed every file, causing a spike in 404s for all of them.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
  16. Seriously bad programming by owlstead · · Score: 5, Insightful

    If I would create a reader that was dependent on version 0.91 of the distribution, it sure as hell would include the DTD in local storage. It makes no sense to create a reader that can also use, say, version 0.92 since you would not know what had changed (and there is no such thing as inheritence between versions of a DTD afaik). Actually, as other readers noted, it would be terribly stupid to make your web-server or client rely on a third party computer for which you cannot guarantee the uptime.

    These URL's are mainly there for their Uniqueness, not so much as for a place of quaranteed storage. Of course, they are also a nice place to look for the actual definition, but after that you would need a local repository. This is the first thing an XML library should support, and the first thing a moderately intelligent programmer should look at. I get *very* annoyed if this kind of basic rules are ignored. And I've even seen them ignored by people pointing to the XML digital signature definitions, where security and reliability should be the first requirements in the design.

    Also, what would happen if w3c.org or netscape.com go the way of the Gopher? If they go bust? It's a quickly changing world out there.

  17. You gotta be kidding me... by Sleepy · · Score: 3, Interesting

    This blast is not squarely aimed at you, but you triggered it. Treat this in the spirit it is meant please (if I didn't give a crap at all, I wouldn't comment. Show this to your insulated bosses who don't know the first thing about community and transparency. Kudos to you BTW for showing initiative and acting on a Slashdot post. Honestly, I would not have given the "new Netscape" that much credit.).

    >I only wish that someone had brought it to our attention so that I didn't have to find out about it from Slashdot.

    This rankles.

    Have you EVER tried contacting Netscape from the outside world? Seriously, I can count the number of times:

    *) When my.netscape.com locked out Konqueror (1998?)
    *) When my.netscape.com WITHDREW the ability to embed RSS feed on your "my" page -- actually this was PRE-RSS if I recall. Way before it was commonplace, you could embed Slashdot and Linux Today feeds. Then they killed it, presumably because they got enough users or some pointy haired reason. 1999.
    *) When my.netscape.com adopted a shitty policy of DELETING all your mail if you don't login for 30 days. This did not seem to be publicised by an actual email. They don't seem to delete the mailbox itself, which violates RFCs I'm sure and basically insinuates the mailbox is active. I lost tons of mail from 1996-2003 (yeah yeah backups. Some things I didn't think I would need later). ?? Happened in 2003. Note that mailboxes were only 5MB still, so I quickly bailed for a 100MB Yahoo account.
    *) The 2001 deletion of Netscape Developer. This lost a ton of Netscape copyrighted Javascript documentation.

    Just TRY contacting Netscape from their page. The best you can do is use the WRONG FORM to submit to some contracter who won't forward it. Or, oh yeah - there's a 900 number for by the minute Support.

    Back when it mattered, there was no 'Google Guy' for Netscape, who would act as an unofficial liason. After Jamie Z left, no one internally tried to fill the shoes of a community facing employee.

    While I'll be eternally grateful for Netscape's open sourcing of their browser. What a different world it is now. Too bad that step is something the current management would never have allowed (that's the perception). I can't think of a more opaque Internet company than today's Netscape. I'm sure there are people who disagree or wish it could be changed (you're here..) but that and a $1 gets you a cup of black coffee. Show this to your boss - there are suggestions here :-)

    1. Re:You gotta be kidding me... by christopherfinke · · Score: 4, Informative

      You make several good points that I want to respond to more fully, but I've got to run out, so I'll have to do that later. In the meantime, I'll put this out there: my e-mail address is chris@newnetscape.com; my screenname and other contact information is available at my website. Anyone who wishes to do so can contact me regarding issues with any of the Netscape websites or the Netscape browser; if I can't solve your problem, I can definitely get you connected with the right person.

    2. Re:You gotta be kidding me... by Alphab.fr · · Score: 2, Informative

      ) The 2001 deletion of Netscape Developer. This lost a ton of Netscape copyrighted Javascript documentation. Unless I'm mistaken, this has been (quite some time afterwards) transfered to the mozilla fundation, and can be accessed at http://developer.mozilla.org/en/docs/JavaScript Cheers,

    3. Re:You gotta be kidding me... by christopherfinke · · Score: 2, Interesting

      I can't speak for the pre-2006 Netscape, but as far as the current Netscape organization is concerned, I have to disagree with you regarding transparency.

      * The former GM, Jason Calacanis, blogged extensively about Netscape and encouraged other employees to do the same. He also called out other industry big-wigs for "not having time" to blog about their product.
      * Many Netscape Anchors, Navigators, and developers have an active blog where they write about Netscape and/or are available to discuss it.
      * There is the official Netscape blog where we detail new and/or upcoming features and ask for discussion and feedback.
      * Netscape.com holds a weekly chat when there is guaranteed to be an Anchor in attendance.
      * As developers, we are encouraged to be active in the community; we haven't been given any explicit "gag orders," so we're free to speak for Netscape (as I'm doing now) if the need arises.

      Can the above be said to be true for Digg, del.icio.us, reddit, etc.? I'd have to say that of all the current players in the social news space, Netscape is one of the most (if not the most) forthcoming and transparent about their operations.

  18. Logs? by hhawk · · Score: 2, Interesting

    not trying to be a troll here.. but.. one would think that that file would have been accessed quite often and that would have shown up in the logs...

    If I was a new hire at some old company where everyone else had been let go, I'd at least check out the logs and see what is being used? and then if some file is being hit 1,000's of times a day.. maybe ask a few questions..

    --
    http://www.hawknest.com/
  19. Re:W3C doctype by DavidTC · · Score: 2, Insightful

    It's not any different, except the w3c is run by intelligent people, and Netscape, apparently, is not.

    I've always thought the full paths were a bit stupid too, and they should have some sort of shortcut standard, one that says "Use w3c's HTML4.0 standard", and the web browser knows how to contruct a path to find w3c standards. That way, when "Use netscape's RSS0.91" standard stopped working, web browsers could have a trivial update, or their config could even be changed manually, to tell them where to find netscape's standards.

    Granted, they already have something like this in the DOCTYPE, that's what '-//W3C//DTD HTML 4.01//EN' is, but then they blow it by then including the path after that. The parser should, instead, have to look at W3C and go 'Hey, I know where that is, that's w3c.org' and construct a standardized path using 'DTD HTML 4.01', like 'http://w3c.org/doctype/HTML4.01.dtd'. (And I just realized that string mysteriously doesn't include 'strict' or whatever in it, so now I'm slightly confused as to what good it's for.)

    That way, when something happened to a server, the standard can be trivally updated to say 'W3C now means this domain, instead of w3c.org', and every damn page in existence doesn't have to change. Mandate that every parser should expose these locations to be reconfigured manually if needed, although obviously some sort of automatic updating is a good idea. (Notice, in general, application software doesn't need to be updated, because application software doesn't try to download the stuff in the first place.)

    Now someone's going to host the DTD at some random place, and everyone will manually update everything to load the wrong URL when someone asks for "http://netscape.com/publish/formats/rss-0.91.dtd" then Netscape will move it back, and some applications will change back, and some won't, and it will be a big mess.

    I understand the point of paths, in that, in theory, everyone can produce their own format and publish their own DTD. This has not, and probably is not, going to happen, and at this point all browsers interpet DOCTYPE strings as unparsable strings, and the only ones who actually read the things are the validators.

    --
    If corporations are people, aren't stockholders guilty of slavery?
  20. A rewording... by Shaltenn · · Score: 3, Funny

    Once upon a midnight dreary, while I websurfed, weak and weary, Over many a strange and spurious bookmark of 'free news galore', While I clicked my fav'rite feed, suddenly there came a warning, And my heart was filled with mourning, mourning for my dear amour. "'Tis not possible," I muttered, "give me back my free news source!" Quoth the server, "404".

    --
    If you were offended by anything I said... No, I'm not sorry. Please lighten up.