::scr Ramblings of a Classic Refugee or How I Learned To Stop Worrying and Love OS X

Andy Wardley scr@thegestalt.org
Tue, 5 Feb 2002 16:04:14 +0000


On Tue, Feb 05, 2002 at 03:15:57PM +0000, Matt Webb wrote:
> A binary file with a separate definition document gets rid of the 
> primary advantage of XML, namely that it can be edited in a standard 
> text editor. In that case, why is a binary file like that better than 
> files being objects? 

I believe the point that Simon is making is that the good thing about XML 
here is not necessarily that it's a text format (which is a Good Thing)
but that each and every part of the file contents is individually 
addressable.

It should allow you to remove the boundaries between directories, files
and file contents.  All file systems suck.  They must die.

For example:

   /home/abw/docs/misc/brainjelly/section2/title

or

   /home/abw/perl/lib/My/FooBar/Module/version/

or

   /home/abw/diary/2002/February/16/1300

Where does the file system specification end and the file contents (xpath)
begin?  It really shouldn't matter - that's an implementation issue.

When we can stop thinking of directories and files and start thinking about
homogenous structured information then we will start getting somewhere.  I 
should be able to ask my file system, er I mean my persistant storage layer, 
to get me a particular piece of information, based on a traversal strategy 
(e.g.  the first name of the author of the FooBar::Blam Perl module) and 
leave it to worry about everything else.

And no more hierachies!  Why should we be forced to think in such unnatural
ways?  The property based path is much preferable, IMHO, to hierarchical
filesystem/xpath like paths.  e.g.

    /module=FooBar::Blam/language=Perl/author

    /language=Perl/module=FooBar::Blam/author

or for another example:

   /appointments/year=2002/month=feb/day=16/time=1300-1900

   /date=today/afternoon/appointments

OK.  Rant over.  Time to get coding.

A