Erik Hatcher wrote: >> I think the syntax of the descriptor is pretty important. > > Obviously I disagree, but ngot terribly strongly.
So you believe that anything can go in the XML tags, no design or thinking is needed - because you could translate it with XSL or some tools will process it ? >> The "looseness" is pretty fundamental in ant, and at least IMO >> is one of the reasons it works so well. > > My take is that since we are using XML for build file syntax that we > should embrace all of the features of XML like namespaces and schemas. > Currently we are playing fast and loose with it and tools are not > typically happy with build.xml files. I know in my build file IDEA > hilites tons of "errors" (that are not really errors). You are > proposing that we use Java's standard MANIFEST features, but why not > stick to standard XML features like a schema? Ant can now support namespaces - it just lacks a definition on how to use them. The processor uses SAX2, namespaces are passed to the code that creates the task ( ComponentHelper ), and can be used in any way you want. Schema - you can add ( or generate ) a schema, and use it any way you want. If you want to add 2-3 seconds to the compilation time and restrict ant to Xerces ( is there any other parser that supports XML Schema ? ) - you can even force ant to validate against a schema. > working with Ant. I'm the one that added the DyanmicConfigurator - so > I can be blamed for making schema compliance even more impossible to > obtain. Well, I wrote some of the code in ProjectHelper2, so you can't acuse me I don't want namespaces. >>> Again, lets not get hung up on the descriptor syntax. Working >>> implementation first - then we can debate the details. We can make it >>> the defining goal for an Ant 1.6 release when all the fiddly details >>> have been ironed out! :) >> >> We have had working implementation(s) for quite a while. > > But the current one does not support adding other components like > conditions, mappers, filters, and selectors. Does ant support this ? And what do you mean "does not support adding" ? It can add any component ( as datatype for example), and nothing stops you from using any datatype as anything you want ( condition, mapper, filter or selector ). Costin