forrest-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Turner <je...@apache.org>
Subject Re: [PROPOSAL] DTD Versioning (Re: Should href be required on link)
Date Sun, 15 Dec 2002 11:45:37 GMT
On Sun, Dec 15, 2002 at 11:56:04AM +0100, Steven Noels wrote:
> Jeff Turner wrote:
> 
> >On Sun, Dec 15, 2002 at 09:02:10AM +0100, Steven Noels wrote:
> 
> >>Trying to fix the link element, I was thinking to do:
> >>
> >>catalog:
> >>PUBLIC "-//APACHE//ENTITIES Documentation V1.1//EN"
> >>
> >>"http://cvs.apache.org/viewcvs.cgi/*checkout*/xml-forrest/src/resources/schema/dtd/document-v11.mod?rev=1.7"
> >
> >
> >The point of catalogs is to find a *local* DTD, so why would you map it
> >to something over HTTP?
> 
> Of course, but then I was thinking of what to do with the old versions. 
> Should we litter CVS? If we have too much fileage[1], we might even be 
> less motivated to fix and enhance DTDs.

Oh I see.  Yes, that seems sensible if things get cluttered.  Though DTDs
aren't very big and we could keep archiving the things in v10/, v11/,
v12/ etc directories..

[snip *-v1.1-x.dtds extending -v1.1.mod]

> Yes. But I consider this not to be a grammar evolution/modification, it 
> is more of a localisation. If we decide link has to change, it should be 
> done in-place, not in the local declaration subset (even though I just 
> shaved, my beard is itching), and we should have proper versioning as 
> you indicated.

Okay.  So I guess the convention is to keep *.dtd clean and ready for
user 'localisation'.

> I'm not really keen on this particular way of patching the DTD.

Yes it smells funny, and I've never seen anyone else do it.. but it seems
to solve the problem.

> >A disadvantage of this scheme is that it makes extending 1.1.x DTDs a bit
> >yucky.  You'd have to make a verbatim copy of document-v11-x.dtd, and
> >then make any additions.  So whatever is in document-v11-1.dtd must also
> >be in document-v11-2.dtd, and all successors.
> 
> Yep. My point exactly.
> 
> ><snip things I didn't understand>
> 
> I know you can do better ;)

I've re-read that bit with slightly more understanding now.

So we have v1.1, and we create v1.1.1.  What do we do with 1.1?

That depends on whether you treat v1.1 as v1.1.0, or as an alias to
v1.1.x, where 'x' is the latest in the series.

If v1.1 = v1.1.0, then 1.1.1 completely supersedes it, and I can kinda
see why you'd want to 'cvs rm' it.

Alternatively, we can make 1.1 an alias for the latest in the 1.1.x
series.

This allows users to choose the specificity of the DTD they use.  Just
like if I have /lib/libfoo.so.1 symlinked to /lib/libfoo.so.1.4.3, I can
link against either.

[on RNG]
> I'm very much inclined to do so, but still would like to keep both: 
> there are much more grammar-aware editors that understand DTDs.

Yes.  jing error reporting is a bit poor too.

--Jeff

> [1] fileage, as in: mileage, verbiage, foliage
> 
> </Steven>
> -- 
> Steven Noels                            http://outerthought.org/
> Outerthought - Open Source, Java & XML Competence Support Center
> Read my weblog at              http://radio.weblogs.com/0103539/
> stevenn at outerthought.org                stevenn at apache.org
> 

Mime
View raw message