Re: What to do given both SYSTEM and PUBLIC?

> From: lee@sq.com
> Date: Sat, 15 Feb 97 13:30:28 EST

> If we open the can of PUBLIC worms, we have to say:
> * what to do if you are givena PUBLIC Id and no SYSTEM Id
> * what to do if you are given both
> * what to do if you are given both and the resulting files are different
> * give at least one way in which I can put an XML file on the web and
>   someone else 6 months in the future with some new application can
>   use that file, whether or not it has a PUBLIC Identifier.

Net the fact that the XML catalog proposal left practically everything
optional/recommended--we could make things required, but the
subcommittee got the sense that the ERB and WG didn't want to set any
hard requirements in this area--I thought the XML catalog proposal did
answer the first three questions above (and your fourth question isn't
a question to be answered by a catalog proposal--it's not even clear
it's a real question at all).  Given the application has decided to
use the XML catalog in the external identifier resolution process,
the proposal gives (or meant to give) the following answers:

> * what to do if you are given a PUBLIC Id and no SYSTEM Id

Use the PUBLIC id--what wlse would you expect?

> * what to do if you are given both

Use the PUBLIC id.  (If that fails, the proposal doesn't forbid
trying the system id--the proposal doesn't discuss fallback/recovery
mechanisms.)  If the proposal fails to make this clear, we can reword
it.  If the ERB decides to prefer system ids, we can change this decision
easily without affecting any of the rest of the catalog proposal, but
there are many good arguments for preferring public ids, and the
subcommittee decided to write the proposal so as to prefer public ids.

> * what to do if you are given both and the resulting files are different

Why are you asking this question?  How did you discover the "resulting
files" are different?  You must have retrieved both--why?  Though nothing
prevents an application from retrieving both (perhaps some "external id
consistency checking application might want to do this), this is a red
herring as far as resolution is concerned.  Once you've successfully
retrieved something, you've resolved it--end of resolution.

So the answer is the same as the answer to the second question.

> Otherwise...
> 
> Some people will implement systms that ignore the PUBLIC ID, as
> David Durand and Paul Prescod suggest, and always require a SYSTEM Id.
> 
> Some people will implement systems in which the SYSTEM Id is ignored,
> as Paul Grosso suggests, when both are given.
> 
> . . .

I'll let Durand and Prescod speak for themselves, though given that
both of them as well as myself were on the subcommittee that produced
the proposal, it seems a simplification at best to make the above
characterizations of our positions.

I can say that your characterization of my position is inaccurate.
For external identifiers in which both a PUBLIC and SYSTEM id are
given, I suggest that the application first attempt to resolve the
PUBLIC id.  In the event that this resolution fails, I would want
the SYSTEM id to be tried, though the XML catalog proposal does not
require this behavior.  We could explicitly recommend this behavior
in the proposal if we wish.

paul

Received on Monday, 17 February 1997 11:21:07 UTC