Re: 3.1.a All linkage info in markup not data?

In message <> Tim Bray writes:
> The ERB schedule calls for voting on Feb. 26 on these items.
> 3.1.a Should we have a principle that all linkage information is encoded in 
> GIs and/or attribute values, never in character data? 

As someone not familiar with the current representation of links (other
than HTML) but who is almost certainly going to have to think about
implementing the decisions :-) I'd like to make some general points which
I hope the ERB will know what to do with.

I hope very much that whatever comes out of Phase II will not limit the
expressibility of the language (i.e. that we are not deliberately 
constraining authors from doing desirable things - sorry that's so woolly).
As I have developed my DTDs I have kept finding the need to add more 
attributes for expressivity and I think that in novel applications of XML
that will certainly be the case.   Diversity of expression is a valuable
creative outlet.

On the other hand, everything in this spec has to be implemented, and fast.
One possible choice is between:
(1) <XML-LINK ...>
(2) <FOO XML-LINK="...">

In the first case we could create a class XMLLINK.java whilst in the
second we would inherit LINKability:
public class FOO implements XMLLINK {...}

There would be a significant, but manageable coding overhead (I think) if both
were allowed.  (In systems with multiple inheritance, like C++, it 
might be possible to do it with less effort, but MI has its own problems).
The overhead would (I think) be small compared with the implementation
of XMLLINK itself, but in (2) there could be a greater burden on the
programmer who will have to implement XMLLINK (though they can borrow
code).  It is easiest if *all* GIs may have XML-LINK attributes because then
they can all be subclassed from XMLLINK.java.

So my gut feeling to all these questions is that a general flexible solution
is desirable and manageable, but that it's important to remember 
implementation whilst making these decisions.



Peter Murray-Rust, domestic net connection
Virtual School of Molecular Sciences