-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Je Mon September 9 2002 09:56, Hussein Shafie skribis:
> Our strategy for making XXE easy to use for the average user is to let
> ``power users'' customize it for specific XML applications, not to add
> more generic commands or to make generic commands more powerful.

This is a good strategy.  I like the possibilities you described -- very 
powerful.  If your API is open, and clean, I'm sure you'll get a lot of 
contributions for plugins.  Have you looked at jEdit?  Their plugin manager 
is, IMHO, one of the best software management systems in existance today.

> This said, may be your idea is a great one. We need to be rejected by
> average users a certain number of times (with the symptoms you describe)
> before trying to implement it.

I'm afraid you'll never hear from the rejections.  I only rarely write 
software authors to tell them that "I'm not using them because of XXX", and I 
/never/ tell commercial software providers.

> > I'm only talking about adding the direct ancestors which can legally
> > follow in the document.  How deep are the elements being stacked?  10? 
...
> > 10.  I'd be /really/ surprised if you could show that this is common
> > :-)
>
> DocBook example: the caret is inside an emphasis element which is inside
> a para element, which is inside in a section, which is inside... (but
> let's stop here).
>
> After an emphasis, you can insert (i.e. elements that would not make
> your document invalid):

I wasn't clear enough.  *Only* legal ancestors.  Ancestors.  Not ancestors and 
their siblings... just ancestors.  Ancestor's siblings would certainly 
confuse the situation significantly, but *only* the direct ancestors of the 
current element would be beneficial.  Even in your example, there are... 
what... 4 ancestors?  5?

I'm in /chapter/sect1/sect2/sect3/para.  What am I *likely* to want to insert?  
Either another para, or another sect3, sect2, or sect1.  Seriously.  The vast 
majority of the time I'm inserting, I'm either wanting to insert a sibling of 
para, or one of those 3 ancestors.  Considering that para has a couple dozen 
siblings, adding another 3 elements isn't going to significantly add to the 
number of elements that the user can choose from.

If I'm right, and it is the case that it is common to want to insert 
ancestor-or-sibling/self, then adding ancestor's to the list is a benefit.  
If I'm wrong, the users are no worse off than they were before :-)

> Yes. DocBook is a monster. Here we need a DocBook specific menu which
> implements your idea but limiting it, not only to valid elements, but
> also to commonly used elements.

That's what I meant when I said "hobbled by DTD".

> Also note that with an XML Schema, you can have different element types
> having the same element name.

XML Schema is a hack, and a bad one, by a bunch of industry representitives 
who thought they knew what they were doing.  They were wrong.  I'm sorry, but 
XML Schema, basically, sucks.  I was standing in the shower just the other 
day thinking: "W3C XML Schema looks like it was designed by a committee."  
Then I thought "Hey!  It was!"  It has all of the horrible design of DTD, and 
all of the terrible verbosity and bloat of... well... the recent Java APIs.  
Actually, the Java APIs aren't *that* bad, but lord, they aren't getting any 
better.  The 2D API is an exception.  But I digress.

The obvious solution is to just choose the most recent sibling or ancestor in 
the possible solutions.  If there is a sibling of name X, and X also occurs 
in the list of ancestors, choose the sibling... it is "closer".  As long as 
your choice rules are clear, no problem... and, again, the users are no worse 
off than they were before, because choosing ancestors wasn't even an option.

> The Professional Edition (~$200) includes full source code. XXE is not
> intended to be an opaque product.

Hm.  If I may be able to convince my client we need this, and that we need the 
source.  I hope the "personal" edition is less than that.  :-)  I'll buy it 
anyway, of course.  The KWord XML schema stinks, and OpenOffice is barely 
better... and neither supports arbitrary schemas.  Yet.

- --- SER
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)

iD8DBQE9fUrhP0KxygnleI8RAn1qAJ9zWNY2kN5wzA6JsPMcWjJP+0T05wCePo9e
sZAxpGqKF8P89VmR00l//KQ=
=SeKr
-----END PGP SIGNATURE-----

Reply via email to