My take on this is hard-nosed.  Until we figure out a way to designate the 
required/optional distinction, in **all** its complexity, I cannot consider 
this an improvement whatever other virtues it may bring to the table.  That 
simple column is the most useful thing to me about the ant documentation.  I 
consult it whenever I go to write a build.xml that uses a task with which I am 
unfamiliar.

I know it isn't easy.  A is required unless B, C and D or E is specified.  Not 
fun.  But necessary to any automated solution.

Here's a random thought of dubious utility (especially since I have no idea how 
you're doing this) - isn't this problem similar to designing a DTD?




-----Original Message-----
From:   Erik Hatcher [mailto:[EMAIL PROTECTED]
Sent:   Sat 2/15/2003 4:18 AM
To:     Ant Developers List
Cc:     
Subject:        Re: ant xdocs!  it ran!
On Friday, February 14, 2003, at 08:41  PM, Jesse Stockall wrote:
> On Wednesday, February 12, 2003, at 08:46 PM, Erik Hatcher wrote:
>>
>> What do you folks think?   Where do we go from here with it?
>
> How is the optional vs required, and default values being handed for  
> attributes? Some tasks such as the VSS and Pvcs tasks have:
> "Attribute description; optional, default false."

> Others like CCMReconfigure have "Attribute description (default  
> false)."

Ah, now the fun begins!  :)

The toughest thing about this is the required/optional designations.   
Steve and I punted on this a little by just making the description of  
the attributes say "required" or what the default value is.  See this  
for an example on both attributes:

          
http://nagoya.apache.org/gump/javadoc/ant/proposal/xdocs/build/docs/ 
manual/control/condition.html

It would be easy enough to tag the simple tasks with @ant.attribute  
require="true" (or we could shorten it to @ant.required even).  But it  
gets more complex than that.  Think about the <property> task.  Its so  
overloaded with location/value/file/refid/environment that you have to  
pick exactly one of them, but none of them are required by themselves.   
How would we designate this?

Its a non-trivial issue.

<snip>




Reply via email to