[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: RESTful operations on document fragments
"Simon St.Laurent" wrote: > I guess WebDAV looks a lot to me like the recently proposed PATCH. I don't > think adding a huge pile of verbs is the right answer to a problem that > consists primarily of needing to identify nouns more preciesely. Amen. Ten years ago I first joined discussion on this list specifically in response to Peter Murray-Rust quoting Demokritos: "Nothing exists except atoms and empty space - all else is opinion". The fundamental function of markup is to identify--to define--instance atoms, by delineating a run of 'text' and labelling it with a GI. The entity thus identified is, by any functional definition, a noun. It is at once both a single instance noun, anchored in a specific textual context, but also by virtue of the generic identifier which labels it, it is asserted as a member of the class of atoms which bear its label--just as the existence of that class is attested by the presence of the instance atom. The granularity of that atom, however, is a molecular opinion. We see examples of this in every minute we work with markup: your <address> and my <address>, by whatever names we might call them, are congruent atoms, and there is an easy, mechanical mapping between them at that level of atomicity. However, considered as a molecule--that is, as an opinion of granularity--your <address> may require two <street> nouns, and one <city> while having no concept of <state>, and mine may have one required and one optional <street>, as well as required <state> and <postcode>. At that molecular level there is no useful mapping between your syntax and mine. Ten years ago, by severing well-formedness from schematic validity, XML separated the question of existence (the atomic reality) from questions of form (the molecular opinions). Philosophically, REST requires precisely the same distinction: if the resource exists, it can be served in various representations, as appropriate. For the nouns of an XML instance to be manipulated by the verbs of REST (and to become thereby Markup on the Web) requires defining the point of specific intersection between these two philosophically similar technologies. The most useful such mapping is between the atomic (or at least always potentially atomic) parseable entity of XML and the URI-identified resource of REST. Simon began this thread by not wanting to have to transmit round-trip the entire 3.3 MB file of the Old Testament in order to correct a typo in a single verse, but the inescapable fact is that the corrected resource is not the same as the original one. Perhaps it is easier to admit that truth if the corrected version actually marks up the corrected text by inserting a new parseable entity, since it is then clear that the molecular structure--and the atomicity--of the two versions are different, and therefore beyond a simple substitution mapping. Yet even if the only entity in both versions is the document itself--and even if the only purpose of the change was to correct the apparent error of a typo--the original version, once published, has acquired a reality and an integrity which should not be extinguished. This is not a trivial nor a tendentious point. Consider e.g. the Aristotelian taxonomy of life as it has evolved through scientific progress: new hypotheses borne out in experimental results are continually 'correcting errors' in the old understanding, generally by substituting different molecular opinions--and thereby differing granularities--at various points of the taxonomic tree. Yet the older versions cannot be abandoned, because they have attracted scholarship, sometimes over many centuries, which would be orphaned by obliterating the molecular structure in which it is rooted. I consider this a fundamental point of intellectual honesty, and perhaps it is easier to grasp it as such if we understand that substituting one molecular structure--one hypothesis--for another, however better the new version tracks the empirical data, is simply the adoption of a new opinion, which is itself likely to give way to something else in the future, however much scholarship it may attract before doing so. As a practical matter, we need to accept resources as inherently mutable by version while fixed by instance expression. In designing the system that Simon is looking for, we should build a database engine which works like the Subversion delta editor before it invokes the REST verbs to handle the creation and maintenance of URI-identified resources. A versioning filesystem is obviously not a new suggestion. Its appropriateness here, however, is rooted in the philosophical premises which it shares with both REST resources and XML entities about what is the ultimate nature of a noun, or an atom. Respectfully, Walter Perry
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] |
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|