[OpenLayers-Dev] features from Atom
Sean Gillies
sgillies at frii.com
Sun May 4 15:04:31 EDT 2008
Tim Schaub wrote:
> Hey-
>
> So, at some point, I'll update the Atom ticket with a patch that
> includes the parser I've been using. I've also extended this parser in
> an application in a number of ways that might be of general use. I'm
> interested to hear some feedback before making changes to the version
> bound for the trunk.
>
> Basically, this is about a feature model that allows for round-tripping
> (more of) Atom entries.
>
> So, I'm suggesting extending a feature parsed from an Atom entry the
> following properties:
>
> feature: {
> links: array,
> author: {
> name: string,
> uri: string,
> email: string
> },
> published: date,
> updated: date,
> attributes: {
> title: string,
> description: string,
> content: string,
> }
> }
>
> Where each item in the links array would look something like this
>
> link: {
> rel: string,
> href: string
> }
>
> (plus more if you care).
>
> The idea is that things in feature.attributes are more likely things
> that users are editing. Things like dates, author, and links are set
> behind the scenes.
>
> With this, most of the mappings should be obvious (except maybe that
> feature.attributes.description maps to atom:summary). All other
> (unknown) attributes could get written as atom:category elements with a
> scheme like http://xmlns.openlayers.org/atom#key where the term is value
> of attributes[key].
>
> So, a feature with attributes like
>
> {
> "foo": "bar"
> }
>
> would get written out as
>
> <atom:category scheme="http://xmlns.openlayers.org/atom#foo"
> term="bar"/>
>
> This means we loose any optional label. If we want to save labels, then
> we give features a categories array with objects that have scheme, term,
> and label properties. Just depends how far we want to go matching Atom
> entries.
>
> I also would suggest we parse the first element representing a geometry
> and ignore the rest. The new parser structure I'm using is easy enough
> to extent id you want different behavior.
>
> Thanks for any feedback,
> Tim
Atom entry id would be a good thing to keep track of. But yeah, this
otherwise looks a lot like the feedparser.py data structure, which is
what I'm using on the server side of my apps, and that's good.
Sean
More information about the Dev
mailing list