Re: Comments on XPP draft o2 24 January 2013

On Oct 16, 2013, at 3:25 PM, Henry S. Thompson wrote:

> C. M. Sperberg-McQueen writes:
> ...
> 
>> You have a report from one reader (who has also read the XML
>> spec) who found the unexplained usage confusing.
> 
> Fair enough.  Would it be sufficient to add a note after the 3rd
> para. of section 7 (or whereever that ends up after the rewrite that
> is coming in response to another of your comments) as follows:
> 
>  Note: For the distinction between 'read' and 'process' and how
>  processors might do one but not the other, see the definition of
>  'process' in the XML specification
>  [ref. http://www.w3.org/TR/REC-xml/#dt-use-mdecl] and the sentence
>  immediately following it.
> 
> Trying instead of the above to actually reexpress what is referenced
> there would, I feel, require huge amounts of technical terminology
> from the XML spec to be explained in turn, and would be out of all
> proportion to the importance of this sentence.

What is it in the XProc spec that depends upon the distinction
between reading and processing?

If (as I believe, without wanting to re-check the spec to be sure)
the answer is "nothing", then it would seem to me that the note you
suggest is already out of proportion, and a simpler approach would
be to say "process" instead of "read and process", thus avoiding the
question we started with (which was, for the nth time of asking
[I've lost count] "what do you mean by the terms 'reading' and
'processing'?")

Whether saying what the terms mean would be out of proportion to
their importance in the spec is not something I can currently form
an opinion on, since the authors of the spec seem to be determined
to do anything at all rather than actually answer the question.

The note you suggest doesn't seem to me to work very well, since it
suggests that the reader who follows the link will find a discussion
in the XML spec of how processors can read without processing, or
process without reading, external declarations.  I for one don't see
any such discussion there -- I see only a paragraph which seems to
rely on some such distinction without defining or explaining it.

The note also adds a second puzzlement to the first, since a careful
reader will now have clear evidence in the note that the XPP spec
believes itself to be relying on a distinction between reading and
processing external declarations inherited from the XML
specification, and the reader will search in vain for any trace of
that distinction elsewhere in the spec.  Search for the string
"read" and you will find eight occurrences in the 24 January draft.
Of these,

  - 1 relates to reading XML documents
  - 1 relates to reading and interpreting external entities (or not)
  - 2 relate to processors which MUST NOT read external 
    declarations (and which in consequence cannot, I think,
    process those declarations) 
  - 3 relate to processors which MUST both read and process 
    all external declarations
  - 1 explains how to read the omitted label on a circle in the
    figure in section 4
  - 0 relate to processors which read but do not process, or process
    but do not read, external declarations

In this context, the reader of your note must suspect a failure of
comprehension on the reader's part, or a failure of some other kind
on the part of the authors.

The absence of any passage in XPP where a possible distinction
between "reading" and "processing" external declarations makes a
difference also suggests (alas) that XPP provides no way to describe
the fairly common class of non-validating DTD-aware processors,
which process external entity declarations and read other external
declarations but do not use (or process) them.  The failure to
anticipate such a class and provide a name for it is one of the most
obvious mistakes made by those who wrote the XML specification.  If
XPP provided a way to distinguish such processors from others, then
XPP would be providing a real if minor service, and the distinction
between reading and processing used in the XML specification
(however badly expressed there) would have some work to do in XPP.



-- 
****************************************************************
* C. M. Sperberg-McQueen, Black Mesa Technologies LLC
* http://www.blackmesatech.com 
* http://cmsmcq.com/mib                 
* http://balisage.net
****************************************************************

Received on Monday, 28 October 2013 18:38:02 UTC