At 12:23 10/2/01 +1100, Conor MacNeill wrote: >Pete, > >It is an interesting problem. Whilst we may be able to restrict the use of >project and target, there are a number of other nested elements which we >will find it increasingly difficult to maintain restrictions. For example, >say someone creates a task which takes a <javac> nested element. They >really shouldn't be able to, because that is already used by the <javac> >task.
right - but worse. What if group A creates task foo while group B uses the name foo as a sub-element ;) I think trying to police this or enforce it will become largely impossible. The only solution I believe is to lead by example - we design tasks properly and hope that end users follow our design patterns ;) >So, really an ant file is not guaranteed to be a valid xml file. Conversely >if you generate a DTD, you may be able to create valid xml files which will >not be valid ant files. I wonder how <antstructure> handles these >situations. I am not too fazed about breaking DTD compatability - DTDs are an extremely primitive description mechanism. I much prefer XSchema support which deals perfectly with context sensitive information. XSchema will also be a *much* better way to support editing in future ... now if only the damn tools would catch up ;) Cheers, Pete *-----------------------------------------------------* | "Faced with the choice between changing one's mind, | | and proving that there is no need to do so - almost | | everyone gets busy on the proof." | | - John Kenneth Galbraith | *-----------------------------------------------------*
