[prev in list] [next in list] [prev in thread] [next in thread] 

List:       koffice
Subject:    Re: kword DTD (was "Koffice file format version numbers?")
From:       David Faure <david () mandrakesoft ! com>
Date:       2000-05-26 21:59:56
[Download RAW message or body]

On Thu, May 25, 2000 at 05:43:50PM +0100, Samuel Penn wrote:
> In message <20000525062955.B8453@mandrakesoft.mandrakesoft.com>
>             David Faure <david@mandrakesoft.com> wrote:
> 
> > On Thu, May 25, 2000 at 02:15:15PM +0100, Shaheed Haque wrote:
> > > BTW, I realise that if we could guarantee that all changes were upwards 
> > > compatible, we might be able to carry on in some failsafe mode, but that 
> > > will depend on things I cannot predict (and do not want to control!). For 
> > > example, let us imagine that the FORMAT section was enhanced in a newer 
> > > version of Kword - an older binary might simply be able to skip 
> > > tags/attributes it does not recognise.
> > 
> > Exactly. That's the strength of XML (compared to binary formats).
> > And that's the reason why I'm personnally not sure we need version
> > numbers at all. I mean, having some doesn't hurt, sure, but I don't see
> > any use for them in the code. If we even completely redesign the way something
> > is modelled, then we simply use new tags and keep the support for reading
> > the old ones (just like KoStore can still read old binary stores but not
> > write them anymore). And if we just add tags or attributes, old code
> > simply skips them.
> 
> Aren't XML parsers supposed to fail if they encounter something they
> don't recognise? You'd have to provide a new DTD for the older app
> to be able to parse the new document format.

Validator parsers rely on the DTD. 'Normal' parsers don't.
And there's not much point in using a validating parser when opening
a file in an application. Does the user want to see "unrecognised attribute BLAH"
or simply that it opens the file and skips the tags it doesn't know.
I'd say the latter.
So the DTDs in KOffice are only for information purposes, they are not used
directly by the programs at all - but the programs implement the format
documented in the DTD, of course.

-- 
David FAURE, david@mandrakesoft.com, faure@kde.org
http://home.clara.net/faure/
KDE, Making The Future of Computing Available Today
See http://www.kde.org/kde1-and-kde2.html for how to set up KDE 2

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic