And by the way, as of the writing of this I’m not aware of any APP server implementations that get green check-marks all the way down the line from the Ape.
You can run the APE against my apptestsite:
http://bitworking.org/projects/apptestsite/app.cgi/service/;service_document
No name or password are required. You will see that some things don't look quite right:
I do have one bug to fix and that is the relative URI being returned in the Location: header upon a successful create.
Fixed.
Posted by eric on 2007-03-13
Ok, I fixed the text-title escaping problems, so now were down to just warnings about dropped categories and foreign markup. Those I don't plan on fixing those since it's the client that SHOULD round-trip the foreign markup, not the server.
The one last problem is interesting:
Posted by Joe on 2007-03-13
The atom:author/atom:name is hard coded into the templates. I suppose if 1812 was designed to be a multi-author blogging platform then that would end up being configurable.
As for atom:updated, I consider that a server controlled element and I set that to the local time when an entry is edited for any reason, because I sort entries by atom:updated when generating the collection feed. Now if collections were sorted by atom:edited, then I could let atom:updated revert to being client controlled.
Posted by Joe on 2007-03-13
I decided that Joe was right and the Ape was wrong about the Slug. Who cares if the slug shows up in the edit-URI? The reason it exists is to personalize the URI the world sees, especially the search-engine bots. So I just checked in a change where it runs through all the rel="alt" links (including those with no rel=) and if it finds the slug in one of the hrefs it's happy.
Also, fixing up the conditional-PUT thing has convinced me that the first sentence of 9.5 in draft-14 isn't strong enough. The etag stuff isn't there to make editing easier, it's there to help allow safe concurrent editing, and the spec should say so.
Posted by Tim on 2007-03-13
2007-03-12
Hey, cool stuff. Fixed #1.
On #11, at the moment the '?' means "something that an implementor might well need to know about". I'm not sure that introducing more granularity corresponding to SHOULD-or-not would be helpful to the potential implementor who I see as the Ape's most common user.
On #12, there was a problem, but it's not what you think. The problem was that the Ape was treating white-space between <content type="xhtml"> and the enclosed <xhtml:div> as significant in the comparison... the spec maybe gives a little wiggle room on this, but I think that restricting the comparison to the div gives a more useful result.
Conditional-PUT now works. Having now actually read 9.5 in draft-14 carefully, I urge all other potential implementors to do the same.
Posted by Tim on 2007-03-12