Re: Public Identifiers, and CATALOGS

In message <199704021502.KAA05518@bruno.techno.com> "Steven R. Newcomb" writes:
> 
> 
> Here's a truth table summarizing the above paragraphs:

I think this goes to the heart of the problem.

> 
>                XML docs are portable      XML docs are for Web only
>                ---------------------      -------------------------
                                                         ^^^^^^^^^^^^
                                                         ^^^^^^^^^^^^
> 
> XML needs
> PUBLIC, catalogs         yes                      no
> 
> 

It's important to realise what this phrase means, and it's very restrictive.

***It means that these documents cannot interact with anything outside a very 
limited environment unless rigorous protocols are put in place.***

For example, when I receive a document(A) which references a relative URL(B)
(e.g. "html.dtd"), then the identity of B depends on the context(A).  If the
only operation is transfer of documents between the client and the server
then the integrity is maintained.  If, however, I want to *save the documents
to local filestore* the integrity is lost.  A document called "html.dtd" in
filestore is broken, unless there is some mechanism for preserving its
orginal context.  A similar problem occurs when resources are mounted
client-side (e.g. in the way that DTDs might be distributed with XML systems).

Interestly this model is very similar to the way that Java applets work
(although the reason - security - is different).  There is a precise 
environment which includes the server and only *part* of the client.  You are 
not allowed to save files to local store (unless you relax security).  
By similar logic, 'for Web only' could mean that XML can only be used for
*viewing* files (which could include printing), or transformation to non-XML
files but not for re-use in an XML manner (since the context may be lost).

Of course with careful client-side maintenance this restriction can be 
relaxed, but the likelihood of inexpert users breaking the integrity is
considerable.  A (?the) primary role of PUBLIC is thus to act as an integrity
check at the client side, even if it's not used for resolution.

	P.

-- 
Peter Murray-Rust, domestic net connection
Virtual School of Molecular Sciences
http://www.vsms.nottingham.ac.uk/

Received on Wednesday, 2 April 1997 13:27:58 UTC