Re: questions about element declarations

At 7:59 PM 9/24/96, Tim Bray wrote:
>At 12:32 PM 24/09/96 CDT, Paul Grosso wrote:
>>For example, if I'm given an XML document and partial declarations
>>equivalent to the following:
>[I've moved Paul's example down because it's really not what I'm addressing]
>>1.  Am I right that the logical equivalent of what I describe is what's
>>    expected by an XML editing tool?
>I think it is outside the scope of this work to define what the expectations
>should be for an XML editing tool.  I don't think that experience or wisdom
>exists in this group or the world at large to understand that question, let
>alone write it into a standard.  My personal bias would be that if there
>is no DTD, all the tool could possibly do would be to test "well-formed-ness",
>i.e. no syntax errors nor mis-nested elements.  If there is a DTD, the
>problem is well-understood.
This all seems right to me. You can't validate without a DTD, so you
shouldn't try.

>  Trying to adduce grammars from instances is
>very far from easy and of questionable utility.

I disagree with this, though. I think that there is a good case to be made
for requiring (or at least encouraging) XML processors to generate a DTD
when applied to a file lacking one. I think that for a certain sort of
"word-processing" DTD for one-off documents, this could be very useful. And
for those unwilling to create DTDs, the automatic DTD would at least keep
the issue open, and perhaps even make the process less arcane-seeming.
Perhaps this should only be a suggestion rather than a requirement. Some
software, like a browser,  is most frequently run on documents where the
user is _not_ an author, and could care less about having a DTD.

    I changed my mind on this after heariong about how some users use
OCLC's Fred to assist the process of DTD development (rather than to patch
a DTD onto any old crap).

   In other words, I expect the kind of DTD-less processing Paul fears
(users will indeed do anything they are allowed to do), but I think it may
be an opportunity to educate people.

   I do agree that grammar induction is a hard problem, and would
discourage any specification of _what DTD_ a tool should create, except
that it should validate the one instance in question. This will allow
implementations to compete on the qulaity of grammar induction (if people
care about it), and not be too inconvenient for lazy parsers: "create an
ANY delcaration for every element you see".

>-Cheers, Tim

   RE delenda est.

  -- David

David Durand                  dgd@cs.bu.edu | david@dynamicDiagrams.com
Boston University Computer Science          | Dynamic Diagrams
http://www.cs.bu.edu/students/grads/dgd/    | http://dynamicDiagrams.com/