> I've now researched how conflict resolution works in SGML Open
> Catalogs and want to propose a new wording for the XCatalog proposal
> section 7 based on this.
I have no problem with this in principle.
> The CATALOG extension to the catalog file
> format means that TR 9401:1997 can't be followed directly, since it
> does not have this entry.
How's that? This is no extension: it is documented right in
9401:1997. (Unfortunately, there are neither clause numbers nor
HTML anchors in that document, but search for the string "The CATALOG
entry can be used".)
> 7. Conflict resolution
>
> When more than one catalog entry applies to an entity, the conflict
> can be resolved by using the entry that is comes out first after the
> entries have been sorted in the order specified below.
>
> Entries are sorted by (in this order):
>
> 1) By catalog file, in the order the catalog files were processed
> 2) By the entry type (in this order):
> a) SYSTEM (Remap)
> b) PUBLIC (Map)
> c) DELEGATE (Delegate)
> 3) The order in which the entries appeared in the catalog file
AFAIK the only difference (modulo System) is that Maps are always
processed before Delegates within a single catalog even if the
Maps physically follow. This is probably a good rule.
> (NB: The SYSTEM/Remap entry is not present in the original proposal,
> but I think it should be included. The functionality it provides was
> part of what the PubIdResolver interface of SAX was supposed to
> enable.)
I still have problems with this, as it violates referential
transparency. It means that the processor of a document can
change the content of the document based on a catalog entry,
and independent of the author's declared intent.
> The reason I propose this is that the new wording is more concise,
> and, I think, easier to understand.
I take your point, but it is incomplete, specifically in the
matter of what to do when a Delegate entry is accepted: discard
the rest of the current catalog *and* the entire queue, and start
over.
-- John Cowan http://www.ccil.org/~cowan cowan@ccil.org You tollerday donsk? N. You tolkatiff scowegian? Nn. You spigotty anglease? Nnn. You phonio saxo? Nnnn. Clear all so! 'Tis a Jute.... (Finnegans Wake 16.5)