Open matthew-carroll opened 10 months ago
Hi @matthew-carroll, can I take up this issue?
@toseefkhan403 I'm already working on it. If you also need this work to be done, please be sure to describe the situation you're facing and why this change would be useful for you.
While working on RSS 1.0 serialization, I discovered that the data model seems to be wrong and incomplete. We should fix the data model so that it captures all information from an RSS 1.0 document.
Here's a copy of what I found during working on serialization:
I think the existing RSS 1.0 data model is incorrect. Here's an RSS 1.0 basic example from the test directory:
Here's the spec for RSS 1.0: https://validator.w3.org/feed/docs/rss1.html#s5.5
Yet, here's the property list from
rss1_feed.dart
:The parsing behavior is as follows:
We can see that this object parses the whole document, so it should capture enough information to recover the document, but it doesn't.
We can see that the parser pulls the
title
,description
andlink
from the top-level RDF element, as it should.We can see that the parse collects and parses all the top-level
item
s within the RDF element, as it should.However, the top-level
image
is reduced to a single attribute, despite the fact that theimage
can contain atitle
,link
, andurl
. So we seem to be losing information. Based on a quick check of the spec, it looks like this parser might be confusing two different images. There's animage
element under theRDF
element, which is the one we want. Then there's animage
element under thechannel
element. This parser is treating theimage
like achannel
version, but it should be treating it like anRDF
element.Also, the
textinput
top-level element isn't parsed at all, despite being a part of the specification.