Robert Scholte wrote: > Well, where is the need for additional namespaces and how they be handled? > The reader has a strict mode, should it fail or ignore unknown tags? > I am aware of one request: adding a namespace on plugins configuration (to > validate its content), however the configuration-element is part of the maven > namespace, so I don't think this will work.
Yes, unless you want namespace prefixes, which is awkward for <configuration> children. However, there is one area where I would have liked better namespace support in the past, namely when plugins need free-form XML <configuration> elements. The most well-known use case is the maven-antrun-plugin's <target> configuration element, which is of type PlexusConfiguration. AFAIK, the following won't work with a PlexusConfiguration target: <configuration xmlns:ex="http://example.org/"> <target> <ex:example>42</ex:example> </target> </configuration> The PlexusConfiguration would only give you access to the QName "ex:example" with no way to determine what URI the "ex" namespace prefix is bound to. You would have to write it like this: <configuration> <target xmlns:ex="http://example.org/"> <ex:example>42</ex:example> </target> </configuration> Now that might not seem like a big difference, but remember that you could move the xmlns:ex declaration all the way up to the project <project> element and thereby sharing it among multiple <configuration> elements. FYI, the use case I had in the past was configuring XQuery/XSLT engines, whose external variables and configuration options are namespaced: <configuration> <variables xmlns:ex="http://example.org/" xmlsns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <ex:example xsi:type="xs:decimal">42</ex:example> </variables> </configuration> Not being able to place those namespace declarations on the root element really hurts, in particular as the XMLSchema-instance namespace is normally already declared there -- but you cannot "see" that from your PlexusConfiguration. Note that this is *not* an argument in favour of dropping Modello; it is just an argument in favour of better namespace support (or rather awareness) in something like PlexusConfiguration. Best wishes, Andreas Sewe
OpenPGP_signature
Description: OpenPGP digital signature