Hi!

I've noticed that <nantschema> task is broken, so I sat down and fixed it
(Scott - I hope you don't mind ;-).

I've attached the result of my work for you to review.

Changes/new features:

1. Basically I've rewritten most of NAntSchemaGenerator, simplified the code
and removed unused functions.

2. The produced schema is now valid (previously it didn't validate because
of duplicate names) and can be used as an input to xsd.exe for example. XSD
can generate correct C# code that will parse the NAnt file back into memory.

3. The resulting NAnt.xsd works like a charm in Visual Studio.NET 2003
allowing for full autocomplete. Just place it in:

"C:\Program Files\Microsoft Visual Studio .NET
2003\Common7\Packages\schemas\xml\NAnt.xsd" or something similar and add
xmlns to your <project>:

<project ... xmlns="http://nant.sf.net/schemas/nant-0.85.win32.net-1.0.xsd";>

4. I've simplified the resulting XSD also - instead of a bunch of nested
<xs:sequence> I use <xs:choice> which takes much less space. The schema size
is 86 KB (previously was over 100KB)

The only problem I've noticed is <documenters> tag on NDocTask, but
obviously this cannot be generated automatically from the current code
because it's not structured.

Jarek

Attachment: nant_schema_patch.zip
Description: Zip compressed data

Reply via email to