News
Converting XML Nodes into a Dictionary in Python using SAX
Recently I published a Python script for processing XML that turned a set of XML nodes into a dictionary, where the keys were the element names and all the namespaces were 'fixed'. In this case "fixed" means that 'dc' always maps to the Dublin Core namespace. That code worked but had a drawback that it used the DOM processing facilities on Python, which meant that the whole document had to be parsed and loaded into memory during processing.
News
Hire this man.
That sucks. Eric Vitiello has lost his job. Eric is the developer that produced the awesome 'pixel' skin for Aggie. Best of luck on the job search Eric.
News
Raging Accessibility
Dare I say that raging platypus is the only parody site I've ever seen with an accessibility statement.
News
The littlest web service
Tim Ewald, who works at Microsoft on MSDN, is talking about public web services. How about starting with deploying the tiniest web service for MSDN? Funny you sould mention that. I've talked about this very issue with some MSDN people a few months ago. Apparently, they went nowhere after that. At least we already know how to get what we want without having them lift a finger: http://bitworking.org/RssHarvest.html. BTW, Joe, if you correctly name the edit boxes in your the comments form, IE (and probably other browsers as well) will be able to auto-complete them.
News
XForms and Security
Andrew Watt has raised some questions on the security in XForms:
There are two potential sources of security concern:
1. That a malicious XForms-containing document can upload files from a user's computer without their knowledge
2. A malicious XForms-containing document could download a virus or other nasty to the user's computer.
However, the current CR seems to rely largely on implementers' common sense ... a dangerous commodity where security is concerned .
News
CommentAPI
This version of RESTLog that I am running also supports the CommentAPI. The easiest way to explain it is that you can post a comment via posting an RSS item fragment. Here is how you would do it with cURL:
curl --header "Content-type: text/xml" --data "<item><title>Joe</title><description>Posted via cURL.</description></item>" http://bitworking.org/news/comments/52 Note that the above is typed in as a single command line, just broken up here to fit on the screen better.
News
Comments
Comments are now enabled on this site and on Well-Formed Web. This version of RESTLog also uses the Cheetah templating engine. I will make a new release of the software after a day or two of testing.
Update: Comments now include Sam's Wiki-Like Support by just cutting and pasting his 'sanitize()' function into my code. First post! Posted by Mark on 2003-03-11
News
Wavering on PUT
I am now wavering in my support for the HTTP verb PUT. I used to think that it had wide applicability but now I am beginning to question that. Clemens Vasters talks a little about the applicability of using PUT to create a new resource. From the experimenting with RESTLog I know that creating a resource is better done by a POST and then returning the URL of the created resource in the Location: header.
News
Got a vaccine for that?
With respect to XForms not supporting DELETE, Sam gently points out that I am suffering from foot-in-mouth-disease.
News
Drive By Blogging
Another quick collection of found stuff:
Stigmergy Karl Schroeder picks up, and riffs on, my Stigmergy essay and Joi Ito's Emergent Democracy. wx3pa Sam Ruby has mocked up three paned news aggregator using using ActivePython, wxPython, and Mark's ultra-liberal RSS parser. An amazingly small amount of code. EasyRGB EasyRGB is a web based tool for finding color complements and harmonies. [via Zeldman] MSDN Dare Obasanjo has an article on MSDN entitled Building a Desktop News Aggregator.
News
RSS Security and Aggie RC5
FYI, if you are concerned about RSS security, you will be happy to know that Aggie RC5 strips all script, object and meta tags from text before displaying it. I have constructed an opml file I use for testing. The opml file contains links to five RSS feeds that test security, and other RSS parsing problems. The individual RSS feeds can also be loaded directly from this directory, where the feeds that test security are named securityN.
News
Sans DELETE
XForms doesn't support the DELETE verb. Do you want the long version or the short version?
Long Version I have had it confirmed that XForms does not support the DELETE verb. It does not support any verbs besides GET, PUT and POST. This comes from the specfication trying to be too general. That is, XForms was designed not to just be used on a web page and submit over HTTP but to also work on file: and mailto: URIs.
News
The utility of content negotiation
Sam Ruby has posted some thoughts on content negotiation, in part he says:
I'm also concerned about the implications of this to other caches. Perhaps Aggie should have an option to turn this feature off in case someone is faced with a less than intelligent proxy which caches?
This brought to mind another problem I had encountered with content negotiaion in the context of XML. There is a danger with burying multiple types of documents behing a single URL.
News
RSS and Content Negotiation
Simon has just checked in support for content negotiation for Aggie. Hopefully well see more tools support this. RESTLog has always supported content negotiaion. For example, if you do a GET on the url http://wellformedweb.org/news in a browser you will get the HTML version but an RSS aggregator that supports content negotiation will get the RSS feed from the same URL. Now there are few aggregators that currently support conneg so RESTLog allows you to add a query parameter to over-ride the content type.
News
Beware the unintended consequences
Tim Bray, on his shiny new weblog, while talking about InfoPath, confirms that Microsoft doesn't really have any interest in XForms. This is pretty interesting, and in a way, shortsighted. What happens if you deploy InfoPath, then all your information will be in XML format and probably stored on a server, at the very least accessible by SOAP. What the users of InfoPath are going to want is a way to share that information, with outside customers, with co-workers, etc.
News
More on Regex-able XML
I have received good feedback on my Regex-able XML. Good in this case doesn't mean people agree with me, just that the responses have been very intelligent and helpful. (On a side note, I will get comments working here before the week is out.) To clarify, I do know that conforming parsers will wipe away the distictions in the two example documents I posted. My point in presenting them was to point out the complexity in XML and that the formats complexity requires using such a parser.
News
Regex-able Xml
Is there a Regex-able subset of XML?
Let me explain that question in some more detail, first by giving some background. I have been working with XML a lot recently in different contexts, in Python on server-side CGI scripts, in Windows via C#, and under DOS using the Borland 4.51 compiler (don't ask). I have come to a bold and brazen conclusion: XML Sucks.
I didn't always believe that XML sucks.
News
Swarm Intelligence An Interview with Eric Bonabeau
Swarm Intelligence: An Interview with Eric Bonabeau on applying swarm intelligence to solve real problems in the business world.
News
Small Bits
Maybe I should spend a litte more time paying attention to local politics. I had no idea there was work afoot to get Raleigh a new convention center. After seeing convention centers in other cities including Atlanta and Chicago I can only describe the current Raleigh convention center as pathetic. Wow, and I felt privileged when the print media showed up to the RTP Bloggers lunch. When Jim Lehrer shows up.
News
InfoPath (formerly XDocs)
Jon Udell has Ten things to know about XDocs. It all looks very cool, in part because it looks like I could rewrite Pamphlet very quickly in InfoPath. Another thing that caught my eye in Jon's list was: In an InfoPath document, formatted text is expressed as XHTML (the schema for which must be bound to the document), and all styling is accomplished by means of standard CSS (Cascading Style Sheets).