Bug 15574. XML deserialization recursion: add array type to known_types?
[mono.git] / mcs / tools / xbuild / xbuild / MSBuild / Microsoft.Build.CommonTypes.xsd
1 <?xml version="1.0" encoding="utf-8"?>
2 <xs:schema targetNamespace="http://schemas.microsoft.com/developer/msbuild/2003" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msb="http://schemas.microsoft.com/developer/msbuild/2003"
3 elementFormDefault="qualified">
4
5     <!-- =================== INCLUDE COMMON SCHEMA =========================== -->
6     <xs:include schemaLocation="Microsoft.Build.Core.xsd"/>
7     
8     <!-- ======================== ITEMS =====================================-->
9     <!-- Possible Types include SimpleItemType (no meta-data subelements), GenericItemType (any meta-data), or something more specific.-->
10     <xs:element name="Reference" substitutionGroup="msb:Item">
11         <xs:annotation>
12             <xs:documentation>Reference to an assembly</xs:documentation>
13         </xs:annotation>
14         <xs:complexType>
15             <xs:complexContent>
16                 <xs:extension base="msb:SimpleItemType">
17                     <xs:sequence minOccurs="0" maxOccurs="unbounded">
18                         <xs:choice>
19                             <xs:element name="HintPath">
20                                 <xs:annotation>
21                                     <xs:documentation>Relative or absolute path to the assembly (optional)</xs:documentation>
22                                 </xs:annotation>
23                             </xs:element>
24                             <xs:element name="Name">
25                                 <xs:annotation>
26                                     <xs:documentation>Friendly display name (optional)</xs:documentation>
27                                 </xs:annotation>
28                             </xs:element>
29                             <xs:element name="FusionName">
30                                 <xs:annotation>
31                                     <xs:documentation>Fusion name of the assembly (optional)</xs:documentation>
32                                 </xs:annotation>
33                             </xs:element>                            
34                             <xs:element name="SpecificVersion">
35                                 <xs:annotation>
36                                     <xs:documentation>Whether only the version in the fusion name should be referenced (optional, boolean)</xs:documentation>
37                                 </xs:annotation>
38                             </xs:element>
39                             <xs:element name="Aliases">
40                                 <xs:annotation>
41                                     <xs:documentation>Aliases for the reference (optional)</xs:documentation>
42                                 </xs:annotation>
43                             </xs:element>
44                             <xs:element name="Private">
45                                 <xs:annotation>
46                                     <xs:documentation>Whether the reference should be copied to the output folder (optional, boolean)</xs:documentation>
47                                 </xs:annotation>
48                             </xs:element>                                
49                         </xs:choice>
50                     </xs:sequence>
51                     <!-- redefine Include just to give a specific description -->
52                     <xs:attribute name="Include" type="xs:string" use="required">
53                         <xs:annotation>
54                             <xs:documentation>Assembly name or filename</xs:documentation>
55                         </xs:annotation>
56                     </xs:attribute>
57                 </xs:extension>
58             </xs:complexContent>
59         </xs:complexType>
60     </xs:element>
61     <xs:element name="COMReference" substitutionGroup="msb:Item">
62         <xs:annotation>
63             <xs:documentation>Reference to a COM component</xs:documentation>
64         </xs:annotation>
65         <xs:complexType>
66             <xs:complexContent>
67                 <xs:extension base="msb:SimpleItemType">
68                     <xs:sequence minOccurs="0" maxOccurs="unbounded">
69                         <xs:choice>
70                             <xs:element name="Name">
71                                 <xs:annotation>
72                                     <xs:documentation>Friendly display name (optional)</xs:documentation>
73                                 </xs:annotation>
74                             </xs:element>
75                             <xs:element name="Guid">
76                                 <xs:annotation>
77                                     <xs:documentation>GUID in the form {00000000-0000-0000-0000-000000000000}</xs:documentation>
78                                 </xs:annotation>
79                             </xs:element>
80                             <xs:element name="VersionMajor">
81                                 <xs:annotation>
82                                     <xs:documentation>Major part of the version number</xs:documentation>
83                                 </xs:annotation>
84                             </xs:element>
85                             <xs:element name="VersionMinor">
86                                 <xs:annotation>
87                                     <xs:documentation>Minor part of the version number</xs:documentation>
88                                 </xs:annotation>
89                             </xs:element>
90                             <xs:element name="Lcid">
91                                 <xs:annotation>
92                                     <xs:documentation>Locale ID</xs:documentation>
93                                 </xs:annotation>
94                             </xs:element>
95                             <xs:element name="WrapperTool">
96                                 <xs:annotation>
97                                     <xs:documentation>Wrapper tool, such as tlbimp</xs:documentation>
98                                 </xs:annotation>
99                             </xs:element>
100                             <xs:element name="Isolated">
101                                 <xs:annotation>
102                                     <xs:documentation>Is it isolated (boolean)</xs:documentation>
103                                 </xs:annotation>
104                             </xs:element>
105                         </xs:choice>
106                     </xs:sequence>
107                     <!-- redefine Include just to give a specific description -->
108                     <xs:attribute name="Include" type="xs:string" use="required">
109                         <xs:annotation>
110                             <xs:documentation>COM component name</xs:documentation>
111                         </xs:annotation>
112                     </xs:attribute>
113                 </xs:extension>
114             </xs:complexContent>
115         </xs:complexType>
116     </xs:element>
117     <xs:element name="COMFileReference" substitutionGroup="msb:Item">
118         <xs:complexType>
119             <xs:complexContent>
120                 <xs:extension base="msb:SimpleItemType">
121                     <xs:sequence minOccurs="0" maxOccurs="unbounded">
122                         <xs:choice>
123                             <xs:element name="WrapperTool"/>
124                         </xs:choice>
125                     </xs:sequence>
126                 </xs:extension>
127             </xs:complexContent>
128         </xs:complexType>
129     </xs:element>
130     <xs:element name="NativeReference" substitutionGroup="msb:Item">
131         <xs:complexType>
132             <xs:complexContent>
133                 <xs:extension base="msb:SimpleItemType">
134                     <xs:sequence minOccurs="0" maxOccurs="unbounded">
135                         <xs:choice>
136                             <xs:element name="Name"/>
137                             <xs:element name="HintPath"/>
138                         </xs:choice>
139                     </xs:sequence>
140                     <!-- redefine Include just to give a specific description -->
141                     <xs:attribute name="Include" type="xs:string" use="required">
142                         <xs:annotation>
143                             <xs:documentation>Path to native reference</xs:documentation>
144                         </xs:annotation>
145                     </xs:attribute>                    
146                 </xs:extension>
147             </xs:complexContent>
148         </xs:complexType>
149     </xs:element>
150     <xs:element name="ProjectReference" substitutionGroup="msb:Item">
151         <xs:annotation>
152             <xs:documentation>Reference to another project</xs:documentation>
153         </xs:annotation>
154         <xs:complexType>
155             <xs:complexContent>
156                 <xs:extension base="msb:SimpleItemType">
157                     <xs:sequence minOccurs="0" maxOccurs="unbounded">
158                         <xs:choice>
159                             <xs:element name="Name">
160                                 <xs:annotation>
161                                     <xs:documentation>Friendly display name (optional)</xs:documentation>
162                                 </xs:annotation>
163                             </xs:element>
164                             <xs:element name="Project">
165                                 <xs:annotation>
166                                     <xs:documentation>Project GUID, in the form {00000000-0000-0000-0000-000000000000}</xs:documentation>
167                                 </xs:annotation>
168                             </xs:element>                                
169                             <xs:element name="Package"/>
170                         </xs:choice>
171                     </xs:sequence>
172                     <!-- redefine Include just to give a specific description -->
173                     <xs:attribute name="Include" type="xs:string" use="required">
174                         <xs:annotation>
175                             <xs:documentation>Path to project file</xs:documentation>
176                         </xs:annotation>
177                     </xs:attribute>
178                 </xs:extension>
179             </xs:complexContent>
180         </xs:complexType>
181     </xs:element>    
182     <xs:element name="Compile" substitutionGroup="msb:Item">
183         <xs:annotation>
184             <xs:documentation>Source files for compiler</xs:documentation>
185         </xs:annotation>        
186         <xs:complexType>           
187             <xs:complexContent>
188                 <xs:extension base="msb:SimpleItemType">
189                     <xs:sequence minOccurs="0" maxOccurs="unbounded">                       
190                         <xs:choice>
191                             <xs:element name="SubType"/>
192                             <xs:element name="DependentUpon"/>
193                             <xs:element name="AutoGen">
194                                 <xs:annotation>
195                                     <xs:documentation>Whether file was generated from another file (boolean)</xs:documentation>
196                                 </xs:annotation>
197                             </xs:element>                                 
198                             <xs:element name="DesignTime"/>
199                             <xs:element name="Link">
200                                 <xs:annotation>
201                                     <xs:documentation>Notional path within project to display if the file is physically located outside of the project file's cone (optional)</xs:documentation>
202                                 </xs:annotation>
203                             </xs:element>
204                             <xs:element name="DesignTimeSharedInput"/>
205                             <xs:element name="InProject">
206                                 <xs:annotation>
207                                     <xs:documentation>Display in user interface (optional, boolean)</xs:documentation>
208                                 </xs:annotation>
209                             </xs:element>                                
210                         </xs:choice>
211                     </xs:sequence>
212                     <!-- redefine Include just to give a specific description -->
213                     <xs:attribute name="Include" type="xs:string" use="required">
214                         <xs:annotation>
215                             <xs:documentation>Semi-colon separated list of source files (wildcards are allowed)</xs:documentation>
216                         </xs:annotation>
217                     </xs:attribute>                    
218                 </xs:extension>
219             </xs:complexContent>
220         </xs:complexType>
221     </xs:element>
222     <xs:element name="EmbeddedResource" substitutionGroup="msb:Item">
223         <xs:annotation>
224             <xs:documentation>Resources to be embedded in the generated assembly</xs:documentation>
225         </xs:annotation>        
226         <xs:complexType>
227             <xs:complexContent>
228                 <xs:extension base="msb:SimpleItemType">
229                     <xs:sequence minOccurs="0" maxOccurs="unbounded">
230                         <xs:choice>
231                             <xs:element name="DependentUpon"/>
232                             <xs:element name="Generator">
233                                 <xs:annotation>
234                                     <xs:documentation>Name of any file generator that is run on this item</xs:documentation>
235                                 </xs:annotation>
236                             </xs:element>                               
237                             <xs:element name="LastGenOutput">
238                                 <xs:annotation>
239                                     <xs:documentation>File that was created by any file generator that was run on this item</xs:documentation>
240                                 </xs:annotation>
241                             </xs:element>                                 
242                             <xs:element name="CustomToolNamespace">
243                                 <xs:annotation>
244                                     <xs:documentation>Namespace into which any file generator that is run on this item should create code</xs:documentation>
245                                 </xs:annotation>
246                             </xs:element>                                
247                             <xs:element name="Link">
248                                 <xs:annotation>
249                                     <xs:documentation>Notional path within project to display if the file is physically located outside of the project file's cone (optional)</xs:documentation>
250                                 </xs:annotation>
251                             </xs:element>                                
252                             <xs:element name="InProject">
253                                 <xs:annotation>
254                                     <xs:documentation>Display in user interface (optional, boolean)</xs:documentation>
255                                 </xs:annotation>
256                             </xs:element>                                
257                             <xs:element name="SubType"/>
258                         </xs:choice>
259                     </xs:sequence>
260                     <!-- redefine Include just to give a specific description -->
261                     <xs:attribute name="Include" type="xs:string" use="required">
262                         <xs:annotation>
263                             <xs:documentation>Semi-colon separated list of resource files (wildcards are allowed)</xs:documentation>
264                         </xs:annotation>
265                     </xs:attribute>                    
266                 </xs:extension>
267             </xs:complexContent>
268         </xs:complexType>
269     </xs:element>
270     <xs:element name="Content" substitutionGroup="msb:Item">
271         <xs:annotation>
272             <xs:documentation>Files that are not compiled, but may be embedded or published</xs:documentation>
273         </xs:annotation>
274         <xs:complexType>
275             <xs:complexContent>
276                 <xs:extension base="msb:SimpleItemType">
277                     <xs:sequence minOccurs="0" maxOccurs="unbounded">
278                         <xs:choice>
279                             <xs:element name="DependentUpon"/>
280                             <xs:element name="Generator">
281                                 <xs:annotation>
282                                     <xs:documentation>Name of any file generator that is run on this item</xs:documentation>
283                                 </xs:annotation>
284                             </xs:element>                                  
285                             <xs:element name="LastGenOutput"/>
286                             <xs:element name="CustomToolNamespace"/>
287                             <xs:element name="Link">
288                                 <xs:annotation>
289                                     <xs:documentation>Notional path within project to display if the file is physically located outside of the project file's cone (optional)</xs:documentation>
290                                 </xs:annotation>
291                             </xs:element>                                
292                             <xs:element name="Group"/>
293                             <xs:element name="PublishState">
294                             <xs:annotation>
295                                 <xs:documentation>Default, Included, Excluded, DataFile, or Prerequisite</xs:documentation>
296                             </xs:annotation>
297                             </xs:element>
298                             <xs:element name="IsAssembly"/>
299                             <xs:element name="InProject">
300                                 <xs:annotation>
301                                     <xs:documentation>Display in user interface (optional, boolean)</xs:documentation>
302                                 </xs:annotation>
303                             </xs:element>
304                             <xs:element name="SubType"/>
305                             <xs:element name="CopyToOutputDirectory">
306                                 <xs:annotation>
307                                     <xs:documentation>Copy file to output directory (optional, boolean, default false)</xs:documentation>
308                                 </xs:annotation>
309                             </xs:element>                                    
310                         </xs:choice>
311                     </xs:sequence>
312                     <!-- redefine Include just to give a specific description -->
313                     <xs:attribute name="Include" type="xs:string" use="required">
314                         <xs:annotation>
315                             <xs:documentation>Semi-colon separated list of content files (wildcards are allowed)</xs:documentation>
316                         </xs:annotation>
317                     </xs:attribute>
318                 </xs:extension>
319             </xs:complexContent>
320         </xs:complexType>
321     </xs:element>    
322     <xs:element name="None" substitutionGroup="msb:Item">
323         <xs:annotation>
324             <xs:documentation>Files that should have no role in the build process</xs:documentation>
325         </xs:annotation>
326         <xs:complexType>
327             <xs:complexContent>
328                 <xs:extension base="msb:SimpleItemType">
329                     <xs:sequence minOccurs="0" maxOccurs="unbounded">
330                         <xs:choice>
331                             <!-- UNDONE. Remove all but Link when #318721 is fixed-->
332                             <xs:element name="DependentUpon"/>
333                             <xs:element name="Generator">
334                                 <xs:annotation>
335                                     <xs:documentation>Name of any file generator that is run on this item</xs:documentation>
336                                 </xs:annotation>
337                             </xs:element>                                  
338                             <xs:element name="LastGenOutput"/>
339                             <xs:element name="CustomToolNamespace"/>
340                             <xs:element name="Link">
341                                 <xs:annotation>
342                                     <xs:documentation>Notional path within project to display if the file is physically located outside of the project file's cone (optional)</xs:documentation>
343                                 </xs:annotation>
344                             </xs:element>                                
345                             <xs:element name="InProject">
346                                 <xs:annotation>
347                                     <xs:documentation>Display in user interface (optional, boolean)</xs:documentation>
348                                 </xs:annotation>
349                             </xs:element>                                
350                         </xs:choice>
351                     </xs:sequence>
352                 </xs:extension>
353             </xs:complexContent>
354         </xs:complexType>
355     </xs:element>
356     <xs:element name="Folder" type="msb:SimpleItemType" substitutionGroup="msb:Item">
357         <xs:annotation>
358             <xs:documentation>Folder on disk</xs:documentation>
359         </xs:annotation>
360     </xs:element>
361     <xs:element name="Import" type="msb:SimpleItemType" substitutionGroup="msb:Item">
362         <xs:annotation>
363             <xs:documentation>Assemblies whose namespaces should be imported by the Visual Basic compiler</xs:documentation>
364         </xs:annotation>
365     </xs:element>        
366     <xs:element name="Service" type="msb:SimpleItemType" substitutionGroup="msb:Item"/>
367     <xs:element name="WebReferences" type="msb:SimpleItemType" substitutionGroup="msb:Item">
368         <xs:annotation>
369             <xs:documentation>Name of Web References folder to display in user interface</xs:documentation>
370         </xs:annotation>
371     </xs:element>        
372     <xs:element name="WebReferenceUrl" substitutionGroup="msb:Item">
373         <xs:annotation>
374             <xs:documentation>Represents a reference to a web service</xs:documentation>
375         </xs:annotation>        
376             <xs:complexType>
377                 <xs:complexContent>
378                     <xs:extension base="msb:SimpleItemType">
379                         <xs:sequence minOccurs="0" maxOccurs="unbounded">
380                             <xs:choice>
381                                 <xs:element name="UrlBehavior"/>
382                                 <xs:element name="RelPath"/>
383                                 <xs:element name="UpdateFromURL"/>
384                                 <xs:element name="ServiceLocationURL"/>
385                                 <xs:element name="CachedDynamicPropName"/>
386                                 <xs:element name="CachedAppSettingsObjectName"/>
387                                 <xs:element name="CachedSettingsPropName"/>
388                             </xs:choice>
389                         </xs:sequence>
390                         <!-- redefine Include just to give a specific description -->
391                         <xs:attribute name="Include" type="xs:string" use="required">
392                             <xs:annotation>
393                                 <xs:documentation>URL to web service</xs:documentation>
394                             </xs:annotation>
395                         </xs:attribute>                        
396                     </xs:extension>
397                 </xs:complexContent>
398             </xs:complexType>
399     </xs:element>
400     <xs:element name="BootstrapperFile" substitutionGroup="msb:Item">
401         <xs:complexType>
402             <xs:complexContent>
403                 <xs:extension base="msb:SimpleItemType">
404                     <xs:sequence minOccurs="0" maxOccurs="unbounded">
405                         <xs:choice>
406                             <xs:element name="InProject">
407                                 <xs:annotation>
408                                     <xs:documentation>Display in user interface (optional, boolean)</xs:documentation>
409                                 </xs:annotation>
410                             </xs:element>                                
411                             <xs:element name="ProductName"/>
412                             <xs:element name="Install"/>
413                         </xs:choice>
414                     </xs:sequence>
415                 </xs:extension>
416             </xs:complexContent>
417         </xs:complexType>
418     </xs:element>
419     <xs:element name="PublishFile" substitutionGroup="msb:Item">
420         <xs:complexType>
421             <xs:complexContent>
422                 <xs:extension base="msb:SimpleItemType">
423                     <xs:sequence minOccurs="0" maxOccurs="unbounded">
424                         <xs:choice>
425                             <xs:element name="InProject">
426                                 <xs:annotation>
427                                     <xs:documentation>Display in user interface (optional, boolean)</xs:documentation>
428                                 </xs:annotation>
429                             </xs:element>                                
430                             <xs:element name="Group"/>
431                             <xs:element name="IsAssembly">
432                                 <xs:annotation>
433                                     <xs:documentation>(boolean)</xs:documentation>
434                                 </xs:annotation>
435                             </xs:element>
436                             <xs:element name="PublishState">
437                                 <xs:annotation>
438                                     <xs:documentation>Default, Included, Excluded, DataFile, or Prerequisite</xs:documentation>
439                                 </xs:annotation>
440                             </xs:element>                            
441                         </xs:choice>
442                     </xs:sequence>
443                 </xs:extension>
444             </xs:complexContent>
445         </xs:complexType>
446     </xs:element>
447     <!-- ======================== PROPERTIES =====================================-->
448     <!-- Possible Types include StringPropertyType (text with no subelements), GenericPropertyType (any content), or something more specific.-->
449     <xs:element name="AllowUnsafeBlocks" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
450     <xs:element name="ApplicationIcon" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
451     <xs:element name="ApplicationRevision" type="msb:StringPropertyType" substitutionGroup="msb:Property">
452         <xs:annotation>
453             <xs:documentation>integer</xs:documentation>
454         </xs:annotation>
455     </xs:element>
456     <xs:element name="ApplicationVersion" type="msb:StringPropertyType" substitutionGroup="msb:Property">
457         <xs:annotation>
458             <xs:documentation>Matches the expression "\d\.\d\.\d\.(\d|\*)"</xs:documentation>
459         </xs:annotation>
460     </xs:element>
461     <xs:element name="AppDesignerFolder" type="msb:StringPropertyType" substitutionGroup="msb:Property">
462         <xs:annotation>
463             <xs:documentation>Name of folder for Application Designer</xs:documentation>
464         </xs:annotation>
465     </xs:element>
466     <xs:element name="AssemblyKeyContainerName" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
467     <xs:element name="AssemblyKeyProviderName" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
468     <xs:element name="AssemblyName" type="msb:StringPropertyType" substitutionGroup="msb:Property">
469         <xs:annotation>
470             <xs:documentation>Name of output assembly</xs:documentation>
471         </xs:annotation>
472     </xs:element>           
473     <xs:element name="AssemblyOriginatorKeyFile" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
474     <xs:element name="AssemblyOriginatorKeyFileType" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
475     <xs:element name="AssemblyOriginatorKeyMode" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
476     <xs:element name="AssemblyType" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
477     <xs:element name="AutorunEnabled" type="msb:StringPropertyType" substitutionGroup="msb:Property">
478         <xs:annotation>
479             <xs:documentation>boolean</xs:documentation>
480         </xs:annotation>
481     </xs:element>         
482     <xs:element name="BaseAddress" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
483     <xs:element name="BootstrapperComponentsLocation" type="msb:StringPropertyType" substitutionGroup="msb:Property">
484         <xs:annotation>
485             <xs:documentation>HomeSite, Relative, or Absolute</xs:documentation>
486         </xs:annotation>
487     </xs:element>        
488     <xs:element name="BootstrapperComponentsUrl" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
489     <xs:element name="BootstrapperEnabled" type="msb:StringPropertyType" substitutionGroup="msb:Property">
490         <xs:annotation>
491             <xs:documentation>boolean</xs:documentation>
492         </xs:annotation>
493     </xs:element>
494     <xs:element name="CheckForOverflowUnderflow" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
495     <xs:element name="CodePage" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
496     <xs:element name="Configuration" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
497     <xs:element name="ConfigurationOverrideFile" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
498     <xs:element name="CreateWebPageOnPublish" type="msb:StringPropertyType" substitutionGroup="msb:Property">
499         <xs:annotation>
500             <xs:documentation>boolean</xs:documentation>
501         </xs:annotation>
502     </xs:element>
503     <xs:element name="DebugSecurityZoneURL" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
504     <xs:element name="DebugSymbols" type="msb:StringPropertyType" substitutionGroup="msb:Property">
505         <xs:annotation>
506             <xs:documentation>Whether to emit symbols (boolean)</xs:documentation>
507         </xs:annotation>
508     </xs:element>        
509     <xs:element name="DebugType" type="msb:StringPropertyType" substitutionGroup="msb:Property">   
510         <xs:annotation>
511             <xs:documentation>none, pdbonly, or full</xs:documentation>
512         </xs:annotation>
513     </xs:element>         
514     <xs:element name="DefaultClientScript" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
515     <xs:element name="DefaultHTMLPageLayout" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
516     <xs:element name="DefaultTargetSchema" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
517     <xs:element name="DefineConstants" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
518     <xs:element name="DefineDebug" type="msb:StringPropertyType" substitutionGroup="msb:Property">   
519         <xs:annotation>
520             <xs:documentation>Whether DEBUG is defined (boolean)</xs:documentation>
521         </xs:annotation>
522     </xs:element>          
523     <xs:element name="DefineTrace" type="msb:StringPropertyType" substitutionGroup="msb:Property">
524         <xs:annotation>
525             <xs:documentation>Whether TRACE is defined (boolean)</xs:documentation>
526         </xs:annotation>
527     </xs:element>          
528     <xs:element name="DelaySign" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
529     <xs:element name="DisableLangXtns" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
530     <xs:element name="DisallowUrlActiviation" type="msb:StringPropertyType" substitutionGroup="msb:Property">
531         <xs:annotation>
532             <xs:documentation>boolean</xs:documentation>
533         </xs:annotation>
534     </xs:element>
535     <xs:element name="DeployDirSuffix" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
536     <xs:element name="DocumentationFile" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
537     <xs:element name="EnableASPDebugging" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
538     <xs:element name="EnableASPXDebugging" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
539     <xs:element name="EnableSQLServerDebugging" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
540     <xs:element name="EnableSecurityDebugging" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
541     <xs:element name="EnableUnmanagedDebugging" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
542     <xs:element name="ErrorReport" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
543     <xs:element name="ExcludedPermissions" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
544     <xs:element name="FallbackCulture" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
545     <xs:element name="FileAlignment" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
546     <xs:element name="FileUpgradeFlags" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
547     <xs:element name="FormFactorID" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
548     <xs:element name="FxCopLogFile" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
549     <xs:element name="FxCopProjectFile" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
550     <xs:element name="FxCopRules" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
551     <xs:element name="GenerateManifests" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
552     <xs:element name="GenerateSerializationAssemblies" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
553     <xs:element name="Install" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
554     <xs:element name="InstallFrom" type="msb:StringPropertyType" substitutionGroup="msb:Property">
555         <xs:annotation>
556             <xs:documentation>Web, Unc, or Disk</xs:documentation>
557         </xs:annotation>
558     </xs:element>
559     <xs:element name="InstallUrl" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
560     <xs:element name="IsWebBootstrapper" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
561     <xs:element name="JCPA" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
562     <xs:element name="LangVersion" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
563     <xs:element name="ManifestCertificateThumbprint" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
564     <xs:element name="ManifestKeyFile" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
565     <xs:element name="MapFileExtensions" type="msb:StringPropertyType" substitutionGroup="msb:Property">
566         <xs:annotation>
567             <xs:documentation>boolean</xs:documentation>
568         </xs:annotation>
569     </xs:element>                
570     <xs:element name="MinimumRequiredVersion" type="msb:StringPropertyType" substitutionGroup="msb:Property">
571         <xs:annotation>
572             <xs:documentation>Matches the expression "\d\.\d\.\d\.\d"</xs:documentation>
573         </xs:annotation>
574     </xs:element>                
575     <xs:element name="MyType" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
576     <xs:element name="NoConfig" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>    
577     <xs:element name="NoStandardLibraries" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
578     <xs:element name="NoStdLib" type="msb:StringPropertyType" substitutionGroup="msb:Property">
579         <xs:annotation>
580             <xs:documentation>Whether standard libraries (such as mscorlib) should be referenced automatically (boolean)</xs:documentation>
581         </xs:annotation>
582     </xs:element>          
583     <xs:element name="NoWarn" type="msb:StringPropertyType" substitutionGroup="msb:Property">
584         <xs:annotation>
585             <xs:documentation>Comma separated list of disabled warnings</xs:documentation>
586         </xs:annotation>
587     </xs:element>        
588     <xs:element name="OpenBrowserOnPublish" type="msb:StringPropertyType" substitutionGroup="msb:Property">
589         <xs:annotation>
590             <xs:documentation>boolean</xs:documentation>
591         </xs:annotation>
592     </xs:element>                
593     <xs:element name="Optimize" type="msb:StringPropertyType" substitutionGroup="msb:Property">
594         <xs:annotation>
595             <xs:documentation>Should compiler optimize output (boolean)</xs:documentation>
596         </xs:annotation>
597     </xs:element>     
598     <xs:element name="OptionCompare" type="msb:StringPropertyType" substitutionGroup="msb:Property">
599         <xs:annotation>
600             <xs:documentation>Option Compare setting (Text or Binary)</xs:documentation>
601         </xs:annotation>
602     </xs:element>         
603     <xs:element name="OptionExplicit" type="msb:StringPropertyType" substitutionGroup="msb:Property">
604         <xs:annotation>
605             <xs:documentation>Should Option Explicit be set (On or Off)</xs:documentation>
606         </xs:annotation>
607     </xs:element>         
608     <xs:element name="OptionStrict" type="msb:StringPropertyType" substitutionGroup="msb:Property">
609         <xs:annotation>
610             <xs:documentation>Should Option Strict be set (On or Off)</xs:documentation>
611         </xs:annotation>
612     </xs:element>            
613     <xs:element name="OSVersion" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
614     <xs:element name="OutputPath" type="msb:StringPropertyType" substitutionGroup="msb:Property">
615         <xs:annotation>
616             <xs:documentation>Path to output folder, with trailing slash</xs:documentation>
617         </xs:annotation>
618     </xs:element>        
619     <xs:element name="OutputType" type="msb:StringPropertyType" substitutionGroup="msb:Property">
620         <xs:annotation>
621             <xs:documentation>Type of output to generate (WinExe, Exe, or Library)</xs:documentation>
622         </xs:annotation>
623     </xs:element>
624     <xs:element name="Platform" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
625     <xs:element name="PlatformFamilyName" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>    
626     <xs:element name="PlatformID" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>    
627     <xs:element name="PlatformTarget" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
628     <xs:element name="PostBuildEvent" type="msb:StringPropertyType" substitutionGroup="msb:Property">
629         <xs:annotation>
630             <xs:documentation>Command line to be run at the end of build</xs:documentation>
631         </xs:annotation>
632     </xs:element>          
633     <xs:element name="PreBuildEvent" type="msb:StringPropertyType" substitutionGroup="msb:Property">
634         <xs:annotation>
635             <xs:documentation>Command line to be run at the start of build</xs:documentation>
636         </xs:annotation>
637     </xs:element>        
638     <xs:element name="ProductName" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
639     <xs:element name="ProductVersion" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
640     <xs:element name="ProjectGuid" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
641     <xs:element name="ProjectType" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
642     <xs:element name="ProjectTypeGuids" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
643     <xs:element name="PublisherName" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
644     <xs:element name="PublishUrl" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
645     <xs:element name="RecursePath" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
646     <xs:element name="ReferencePath" type="msb:StringPropertyType" substitutionGroup="msb:Property">
647         <xs:annotation>
648             <xs:documentation>Semi-colon separated list of folders to search during reference resolution</xs:documentation>
649         </xs:annotation>
650     </xs:element>        
651     <xs:element name="RegisterForComInterop" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
652     <xs:element name="RemoteDebugEnabled" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
653     <xs:element name="RemoteDebugMachine" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
654     <xs:element name="RemoveIntegerChecks" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
655     <xs:element name="ResponseFile" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
656     <xs:element name="RootNamespace" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
657     <xs:element name="RunFxCop" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
658     <xs:element name="RunPostBuildEvent" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
659     <xs:element name="SchemaVersion" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
660     <xs:element name="SecureScoping" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
661     <xs:element name="SignAssembly" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
662     <xs:element name="SignManifests" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
663     <xs:element name="StartAction" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
664     <xs:element name="StartArguments" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
665     <xs:element name="StartPage" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
666     <xs:element name="StartProgram" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
667     <xs:element name="StartURL" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
668     <xs:element name="StartWithIE" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
669     <xs:element name="StartWorkingDirectory" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
670     <xs:element name="StartupObject" type="msb:StringPropertyType" substitutionGroup="msb:Property">
671         <xs:annotation>
672             <xs:documentation>Type that contains the main entry point</xs:documentation>
673         </xs:annotation>
674     </xs:element>        
675     <xs:element name="SupportUrl" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
676     <xs:element name="TargetCulture" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
677     <xs:element name="TargetZone" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
678     <xs:element name="TreatWarningsAsErrors" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
679     <xs:element name="TrustUrlParameters" type="msb:StringPropertyType" substitutionGroup="msb:Property">
680         <xs:annotation>
681             <xs:documentation>boolean</xs:documentation>
682         </xs:annotation>
683     </xs:element>                
684     <xs:element name="TypeComplianceDiagnostics" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
685     <xs:element name="UpdateEnabled" type="msb:StringPropertyType" substitutionGroup="msb:Property">
686         <xs:annotation>
687             <xs:documentation>boolean</xs:documentation>
688         </xs:annotation>
689     </xs:element>                
690     <xs:element name="UpdateInterval" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
691     <xs:element name="UpdateIntervalUnits" type="msb:StringPropertyType" substitutionGroup="msb:Property">
692         <xs:annotation>
693             <xs:documentation>Hours, Days, or Weeks</xs:documentation>
694         </xs:annotation>
695     </xs:element>
696     <xs:element name="UpdateMode" type="msb:StringPropertyType" substitutionGroup="msb:Property">
697         <xs:annotation>
698             <xs:documentation>Foreground or Background</xs:documentation>
699         </xs:annotation>
700     </xs:element>
701     <xs:element name="UpdatePeriodically" type="msb:StringPropertyType" substitutionGroup="msb:Property">
702         <xs:annotation>
703             <xs:documentation>boolean</xs:documentation>
704         </xs:annotation>
705     </xs:element>        
706     <xs:element name="UpdateRequired" type="msb:StringPropertyType" substitutionGroup="msb:Property">
707         <xs:annotation>
708             <xs:documentation>boolean</xs:documentation>
709         </xs:annotation>
710     </xs:element>                
711     <xs:element name="UpdateUrl" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>    
712     <xs:element name="UTF8OutPut" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
713     <xs:element name="UseVSHostingProcess" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
714     <xs:element name="VSTO_TrustAssembliesLocation" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
715     <xs:element name="WarningLevel" type="msb:StringPropertyType" substitutionGroup="msb:Property">
716         <xs:annotation>
717             <xs:documentation>integer between 0 and 4 inclusive</xs:documentation>
718         </xs:annotation>
719     </xs:element>        
720     <xs:element name="WarningsAsErrors" type="msb:StringPropertyType" substitutionGroup="msb:Property">
721         <xs:annotation>
722             <xs:documentation>Comma separated list of warning numbers to treat as errors</xs:documentation>
723         </xs:annotation>
724     </xs:element>          
725     <xs:element name="WebPage" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
726     <xs:element name="Win32ResourceFile" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>
727     <!-- ======================== TASKS =====================================-->
728     <xs:element name="AL" substitutionGroup="msb:Task">
729         <xs:complexType>
730             <xs:complexContent>
731                 <xs:extension base="msb:TaskType">
732                     <xs:attribute name="OutputAssembly" use="required" />
733                     <xs:attribute name="AlgorithmId" />
734                     <xs:attribute name="BaseAddress" />
735                     <xs:attribute name="CompanyName" />
736                     <xs:attribute name="Configuration" />
737                     <xs:attribute name="Copyright" />
738                     <xs:attribute name="Culture" />
739                     <xs:attribute name="DelaySign" />
740                     <xs:attribute name="Description" />
741                     <xs:attribute name="EmbedResources" />
742                     <xs:attribute name="EvidenceFile" />
743                     <xs:attribute name="FileVersion" />
744                     <xs:attribute name="Flags" />
745                     <xs:attribute name="GenerateFullPaths" />
746                     <xs:attribute name="KeyContainer" />
747                     <xs:attribute name="KeyFile" />
748                     <xs:attribute name="LinkResources" />
749                     <xs:attribute name="MainEntryPoint" />
750                     <xs:attribute name="Platform" />
751                     <xs:attribute name="ProductName" />
752                     <xs:attribute name="ProductVersion" />
753                     <xs:attribute name="ResponseFiles" />
754                     <xs:attribute name="SourceModules" />
755                     <xs:attribute name="TargetType" />
756                     <xs:attribute name="TemplateFile" />
757                     <xs:attribute name="Timeout" />
758                     <xs:attribute name="Title" />
759                     <xs:attribute name="ToolPath" />
760                     <xs:attribute name="Trademark" />
761                     <xs:attribute name="Version" />
762                     <xs:attribute name="Win32Icon" />
763                     <xs:attribute name="Win32Resource" />
764                 </xs:extension>
765             </xs:complexContent>
766         </xs:complexType>
767     </xs:element>
768     <xs:element name="AspNetCompiler" substitutionGroup="msb:Task">
769         <xs:complexType>
770             <xs:complexContent>
771                 <xs:extension base="msb:TaskType">
772                     <xs:attribute name="Clean" />
773                     <xs:attribute name="Debug" />
774                     <xs:attribute name="Force" />
775                     <xs:attribute name="MetabasePath" />
776                     <xs:attribute name="PhysicalPath" />
777                     <xs:attribute name="TargetPath" />
778                     <xs:attribute name="Timeout" />
779                     <xs:attribute name="ToolPath" />
780                     <xs:attribute name="Updateable" />
781                     <xs:attribute name="VirtualPath" />
782                 </xs:extension>
783             </xs:complexContent>
784         </xs:complexType>
785     </xs:element>
786     <xs:element name="AssignCulture" substitutionGroup="msb:Task">
787         <xs:complexType>
788             <xs:complexContent>
789                 <xs:extension base="msb:TaskType">
790                     <xs:attribute name="Files" />
791                 </xs:extension>
792             </xs:complexContent>
793         </xs:complexType>
794     </xs:element>
795     <xs:element name="AssignTargetPath" substitutionGroup="msb:Task">
796         <xs:complexType>
797             <xs:complexContent>
798                 <xs:extension base="msb:TaskType">
799                     <xs:attribute name="RootFolder" use="required" />
800                     <xs:attribute name="Files" />
801                 </xs:extension>
802             </xs:complexContent>
803         </xs:complexType>
804     </xs:element>
805     <xs:element name="Copy" substitutionGroup="msb:Task">
806         <xs:complexType>
807             <xs:complexContent>
808                 <xs:extension base="msb:TaskType">
809                     <xs:attribute name="DestinationFiles" />
810                     <xs:attribute name="DestinationFolder" />
811                     <xs:attribute name="SkipUnchangedFiles" />
812                     <xs:attribute name="SourceFiles" />
813                 </xs:extension>
814             </xs:complexContent>
815         </xs:complexType>
816     </xs:element>
817     <xs:element name="CreateCSharpManifestResourceName" substitutionGroup="msb:Task">
818         <xs:complexType>
819             <xs:complexContent>
820                 <xs:extension base="msb:TaskType">
821                     <xs:attribute name="ResourceFiles" use="required" />
822                     <xs:attribute name="RootNamespace" />
823                 </xs:extension>
824             </xs:complexContent>
825         </xs:complexType>
826     </xs:element>
827     <xs:element name="CreateItem" substitutionGroup="msb:Task">
828         <xs:complexType>
829             <xs:complexContent>
830                 <xs:extension base="msb:TaskType">
831                     <xs:attribute name="AdditionalMetadata" />
832                     <xs:attribute name="Exclude" />
833                     <xs:attribute name="Include" />
834                 </xs:extension>
835             </xs:complexContent>
836         </xs:complexType>
837     </xs:element>
838     <xs:element name="CreateJSharpManifestResourceName" substitutionGroup="msb:Task">
839         <xs:complexType>
840             <xs:complexContent>
841                 <xs:extension base="msb:TaskType">
842                     <xs:attribute name="ResourceFiles" use="required" />
843                     <xs:attribute name="RootNamespace" />
844                 </xs:extension>
845             </xs:complexContent>
846         </xs:complexType>
847     </xs:element>
848     <xs:element name="CreateProperty" substitutionGroup="msb:Task">
849         <xs:complexType>
850             <xs:complexContent>
851                 <xs:extension base="msb:TaskType">
852                     <xs:attribute name="Value" />
853                     <xs:attribute name="ValueSetByTask" />
854                 </xs:extension>
855             </xs:complexContent>
856         </xs:complexType>
857     </xs:element>
858     <xs:element name="CreateVisualBasicManifestResourceName" substitutionGroup="msb:Task">
859         <xs:complexType>
860             <xs:complexContent>
861                 <xs:extension base="msb:TaskType">
862                     <xs:attribute name="ResourceFiles" use="required" />
863                     <xs:attribute name="RootNamespace" />
864                 </xs:extension>
865             </xs:complexContent>
866         </xs:complexType>
867     </xs:element>
868     <xs:element name="Csc" substitutionGroup="msb:Task">
869         <xs:complexType>
870             <xs:complexContent>
871                 <xs:extension base="msb:TaskType">
872                     <xs:attribute name="AdditionalLibPaths" />
873                     <xs:attribute name="AddModules" />
874                     <xs:attribute name="AllowUnsafeBlocks" />
875                     <xs:attribute name="BaseAddress" />
876                     <xs:attribute name="CheckForOverflowUnderflow" />
877                     <xs:attribute name="CodePage" />
878                     <xs:attribute name="DebugType" />
879                     <xs:attribute name="DefineConstants" />
880                     <xs:attribute name="DelaySign" />
881                     <xs:attribute name="DisabledWarnings" />
882                     <xs:attribute name="DocumentationFile" />
883                     <xs:attribute name="EmitDebugInformation" />
884                     <xs:attribute name="ErrorReport" />
885                     <xs:attribute name="FileAlignment" />
886                     <xs:attribute name="GenerateFullPaths" />
887                     <xs:attribute name="KeyContainer" />
888                     <xs:attribute name="KeyFile" />
889                     <xs:attribute name="LangVersion" />
890                     <xs:attribute name="LinkResources" />
891                     <xs:attribute name="MainEntryPoint" />
892                     <xs:attribute name="NoConfig" />
893                     <xs:attribute name="NoLogo" />
894                     <xs:attribute name="NoStandardLib" />
895                     <xs:attribute name="Optimize" />
896                     <xs:attribute name="OutputAssembly" />
897                     <xs:attribute name="Platform" />
898                     <xs:attribute name="References" />
899                     <xs:attribute name="Resources" />
900                     <xs:attribute name="ResponseFiles" />
901                     <xs:attribute name="Sources" />
902                     <xs:attribute name="TargetType" />
903                     <xs:attribute name="Timeout" />
904                     <xs:attribute name="ToolPath" />
905                     <xs:attribute name="TreatWarningsAsErrors" />
906                     <xs:attribute name="UseHostCompilerIfAvailable" />
907                     <xs:attribute name="Utf8Output" />
908                     <xs:attribute name="WarningLevel" />
909                     <xs:attribute name="WarningsAsErrors" />
910                     <xs:attribute name="WarningsNotAsErrors" />
911                     <xs:attribute name="Win32Icon" />
912                     <xs:attribute name="Win32Resource" />
913                 </xs:extension>
914             </xs:complexContent>
915         </xs:complexType>
916     </xs:element>
917     <xs:element name="Delete" substitutionGroup="msb:Task">
918         <xs:complexType>
919             <xs:complexContent>
920                 <xs:extension base="msb:TaskType">
921                     <xs:attribute name="Files" use="required" />
922                     <xs:attribute name="DeletedFiles" />
923                     <xs:attribute name="TreatErrorsAsWarnings" />
924                 </xs:extension>
925             </xs:complexContent>
926         </xs:complexType>
927     </xs:element>
928     <xs:element name="Error" substitutionGroup="msb:Task">
929         <xs:complexType>
930             <xs:complexContent>
931                 <xs:extension base="msb:TaskType">
932                     <xs:attribute name="Text" />
933                 </xs:extension>
934             </xs:complexContent>
935         </xs:complexType>
936     </xs:element>
937     <xs:element name="Exec" substitutionGroup="msb:Task">
938         <xs:complexType>
939             <xs:complexContent>
940                 <xs:extension base="msb:TaskType">
941                     <xs:attribute name="Command" use="required" />
942                     <xs:attribute name="IgnoreExitCode" />
943                     <xs:attribute name="Outputs" />
944                     <xs:attribute name="StandardErrorEncoding" />
945                     <xs:attribute name="StandardOutputEncoding" />
946                     <xs:attribute name="Timeout" />
947                     <xs:attribute name="WorkingDirectory" />
948                 </xs:extension>
949             </xs:complexContent>
950         </xs:complexType>
951     </xs:element>
952     <xs:element name="FindUnderPath" substitutionGroup="msb:Task">
953         <xs:complexType>
954             <xs:complexContent>
955                 <xs:extension base="msb:TaskType">
956                     <xs:attribute name="Path" use="required" />
957                     <xs:attribute name="Files" />
958                     <xs:attribute name="InPath" />
959                     <xs:attribute name="OutOfPath" />
960                 </xs:extension>
961             </xs:complexContent>
962         </xs:complexType>
963     </xs:element>
964     <xs:element name="FormatUrl" substitutionGroup="msb:Task">
965         <xs:complexType>
966             <xs:complexContent>
967                 <xs:extension base="msb:TaskType">
968                     <xs:attribute name="InputUrl" />
969                     <xs:attribute name="OutputUrl" />
970                 </xs:extension>
971             </xs:complexContent>
972         </xs:complexType>
973     </xs:element>
974     <xs:element name="FormatVersion" substitutionGroup="msb:Task">
975         <xs:complexType>
976             <xs:complexContent>
977                 <xs:extension base="msb:TaskType">
978                     <xs:attribute name="FormatType" />
979                     <xs:attribute name="OutputVersion" />
980                     <xs:attribute name="Revision" />
981                     <xs:attribute name="Version" />
982                 </xs:extension>
983             </xs:complexContent>
984         </xs:complexType>
985     </xs:element>
986     <xs:element name="FxCop" substitutionGroup="msb:Task">
987         <xs:complexType>
988             <xs:complexContent>
989                 <xs:extension base="msb:TaskType">
990                     <xs:attribute name="ApplyLogFileXsl" />
991                     <xs:attribute name="Assemblies" />
992                     <xs:attribute name="ConsoleXsl" />
993                     <xs:attribute name="DependentAssemblyPaths" />
994                     <xs:attribute name="Imports" />
995                     <xs:attribute name="LogFile" />
996                     <xs:attribute name="LogFileXsl" />
997                     <xs:attribute name="OutputToConsole" />
998                     <xs:attribute name="PlatformPath" />
999                     <xs:attribute name="Project" />
1000                     <xs:attribute name="RuleAssemblies" />
1001                     <xs:attribute name="Rules" />
1002                     <xs:attribute name="Summary" />
1003                     <xs:attribute name="ToolPath" />
1004                     <xs:attribute name="UpdateProjectFile" />
1005                     <xs:attribute name="Verbose" />
1006                 </xs:extension>
1007             </xs:complexContent>
1008         </xs:complexType>
1009     </xs:element>
1010     <xs:element name="GenerateApplicationManifest" substitutionGroup="msb:Task">
1011         <xs:complexType>
1012             <xs:complexContent>
1013                 <xs:extension base="msb:TaskType">
1014                     <xs:attribute name="AssemblyName" />
1015                     <xs:attribute name="AssemblyVersion" />
1016                     <xs:attribute name="ClrVersion" />
1017                     <xs:attribute name="ConfigFile" />
1018                     <xs:attribute name="Dependencies" />
1019                     <xs:attribute name="Description" />
1020                     <xs:attribute name="EntryPoint" />
1021                     <xs:attribute name="Files" />
1022                     <xs:attribute name="IconFile" />
1023                     <xs:attribute name="InputManifest" />
1024                     <xs:attribute name="IsolatedComReferences" />
1025                     <xs:attribute name="ManifestType" />
1026                     <xs:attribute name="MaxTargetPath" />
1027                     <xs:attribute name="OSVersion" />
1028                     <xs:attribute name="OutputManifest" />
1029                     <xs:attribute name="Platform" />
1030                     <xs:attribute name="TargetCulture" />
1031                     <xs:attribute name="TrustInfoFile" />
1032                 </xs:extension>
1033             </xs:complexContent>
1034         </xs:complexType>
1035     </xs:element>
1036     <xs:element name="GenerateBootstrapper" substitutionGroup="msb:Task">
1037         <xs:complexType>
1038             <xs:complexContent>
1039                 <xs:extension base="msb:TaskType">
1040                     <xs:attribute name="ApplicationFile" />
1041                     <xs:attribute name="ApplicationName" />
1042                     <xs:attribute name="ApplicationUrl" />
1043                     <xs:attribute name="BootstrapperComponentFiles" />
1044                     <xs:attribute name="BootstrapperItems" />
1045                     <xs:attribute name="BootstrapperKeyFile" />
1046                     <xs:attribute name="ComponentsLocation" />
1047                     <xs:attribute name="ComponentsUrl" />
1048                     <xs:attribute name="CopyComponents" />
1049                     <xs:attribute name="Culture" />
1050                     <xs:attribute name="FallbackCulture" />
1051                     <xs:attribute name="OutputPath" />
1052                     <xs:attribute name="Path" />
1053                     <xs:attribute name="SupportUrl" />
1054                     <xs:attribute name="Validate" />
1055                 </xs:extension>
1056             </xs:complexContent>
1057         </xs:complexType>
1058     </xs:element>
1059     <xs:element name="GenerateDeploymentManifest" substitutionGroup="msb:Task">
1060         <xs:complexType>
1061             <xs:complexContent>
1062                 <xs:extension base="msb:TaskType">
1063                     <xs:attribute name="AssemblyName" />
1064                     <xs:attribute name="AssemblyVersion" />
1065                     <xs:attribute name="DeploymentUrl" />
1066                     <xs:attribute name="Description" />
1067                     <xs:attribute name="DisallowUrlActivation" />
1068                     <xs:attribute name="EntryPoint" />
1069                     <xs:attribute name="InputManifest" />
1070                     <xs:attribute name="Install" />
1071                     <xs:attribute name="MaxTargetPath" />
1072                     <xs:attribute name="MapFileExtensions" />
1073                     <xs:attribute name="MinimumRequiredVersion" />
1074                     <xs:attribute name="OutputManifest" />
1075                     <xs:attribute name="Platform" />
1076                     <xs:attribute name="Product" />
1077                     <xs:attribute name="Publisher" />
1078                     <xs:attribute name="SupportUrl" />
1079                     <xs:attribute name="TargetCulture" />
1080                     <xs:attribute name="TrustUrlParameters" />
1081                     <xs:attribute name="UpdateEnabled" />
1082                     <xs:attribute name="UpdateInterval" />
1083                     <xs:attribute name="UpdateMode" />
1084                     <xs:attribute name="UpdateUnit" />
1085                 </xs:extension>
1086             </xs:complexContent>
1087         </xs:complexType>
1088     </xs:element>
1089     <xs:element name="GenerateResource" substitutionGroup="msb:Task">
1090         <xs:complexType>
1091             <xs:complexContent>
1092                 <xs:extension base="msb:TaskType">
1093                     <xs:attribute name="Sources" use="required" />
1094                     <xs:attribute name="FilesWritten" />
1095                     <xs:attribute name="NeverLockTypeAssemblies" />
1096                     <xs:attribute name="OutputResources" />
1097                     <xs:attribute name="References" />
1098                     <xs:attribute name="StateFile" />
1099                     <xs:attribute name="Timeout" />
1100                     <xs:attribute name="UseSourcePath" />
1101                 </xs:extension>
1102             </xs:complexContent>
1103         </xs:complexType>
1104     </xs:element>
1105     <xs:element name="GetAssemblyIdentity" substitutionGroup="msb:Task">
1106         <xs:complexType>
1107             <xs:complexContent>
1108                 <xs:extension base="msb:TaskType">
1109                     <xs:attribute name="AssemblyFiles" use="required" />
1110                     <xs:attribute name="Assemblies" />
1111                 </xs:extension>
1112             </xs:complexContent>
1113         </xs:complexType>
1114     </xs:element>
1115     <xs:element name="GetFrameworkPath" substitutionGroup="msb:Task">
1116         <xs:complexType>
1117             <xs:complexContent>
1118                 <xs:extension base="msb:TaskType">
1119                     <xs:attribute name="Path" />
1120                 </xs:extension>
1121             </xs:complexContent>
1122         </xs:complexType>
1123     </xs:element>
1124     <xs:element name="GetFrameworkSdkPath" substitutionGroup="msb:Task">
1125         <xs:complexType>
1126             <xs:complexContent>
1127                 <xs:extension base="msb:TaskType">
1128                     <xs:attribute name="Path" />
1129                 </xs:extension>
1130             </xs:complexContent>
1131         </xs:complexType>
1132     </xs:element>
1133     <xs:element name="GetLinkedFilesFromResX" substitutionGroup="msb:Task">
1134         <xs:complexType>
1135             <xs:complexContent>
1136                 <xs:extension base="msb:TaskType">
1137                     <xs:attribute name="Sources" use="required" />
1138                     <xs:attribute name="StateFile" />
1139                     <xs:attribute name="UseSourcePath" />
1140                 </xs:extension>
1141             </xs:complexContent>
1142         </xs:complexType>
1143     </xs:element>
1144     <xs:element name="LC" substitutionGroup="msb:Task">
1145         <xs:complexType>
1146             <xs:complexContent>
1147                 <xs:extension base="msb:TaskType">
1148                     <xs:attribute name="LicenseTarget" use="required" />
1149                     <xs:attribute name="Sources" use="required" />
1150                     <xs:attribute name="NoLogo" />
1151                     <xs:attribute name="OutputDirectory" />
1152                     <xs:attribute name="OutputLicense" />
1153                     <xs:attribute name="ReferencedAssemblies" />
1154                     <xs:attribute name="Timeout" />
1155                     <xs:attribute name="ToolPath" />
1156                 </xs:extension>
1157             </xs:complexContent>
1158         </xs:complexType>
1159     </xs:element>
1160     <xs:element name="MakeDir" substitutionGroup="msb:Task">
1161         <xs:complexType>
1162             <xs:complexContent>
1163                 <xs:extension base="msb:TaskType">
1164                     <xs:attribute name="Directories" use="required" />
1165                 </xs:extension>
1166             </xs:complexContent>
1167         </xs:complexType>
1168     </xs:element>
1169     <xs:element name="Message" substitutionGroup="msb:Task">
1170         <xs:complexType>
1171             <xs:complexContent>
1172                 <xs:extension base="msb:TaskType">
1173                     <xs:attribute name="Importance" />
1174                     <xs:attribute name="Text" />
1175                 </xs:extension>
1176             </xs:complexContent>
1177         </xs:complexType>
1178     </xs:element>
1179     <xs:element name="MSBuild" substitutionGroup="msb:Task">
1180         <xs:complexType>
1181             <xs:complexContent>
1182                 <xs:extension base="msb:TaskType">
1183                     <xs:attribute name="Projects" use="required" />
1184                     <xs:attribute name="RebaseOutputs" />
1185                     <xs:attribute name="StopOnFirstFailure" />
1186                     <xs:attribute name="RunEachTargetSeparately" />
1187                     <xs:attribute name="Targets" />
1188                     <xs:attribute name="Properties" />
1189                 </xs:extension>
1190             </xs:complexContent>
1191         </xs:complexType>
1192     </xs:element>
1193     <xs:element name="ReadLinesFromFile" substitutionGroup="msb:Task">
1194         <xs:complexType>
1195             <xs:complexContent>
1196                 <xs:extension base="msb:TaskType">
1197                     <xs:attribute name="File" use="required" />
1198                     <xs:attribute name="Lines" />
1199                 </xs:extension>
1200             </xs:complexContent>
1201         </xs:complexType>
1202     </xs:element>
1203     <xs:element name="RegisterAssembly" substitutionGroup="msb:Task">
1204         <xs:complexType>
1205             <xs:complexContent>
1206                 <xs:extension base="msb:TaskType">
1207                     <xs:attribute name="Assemblies" use="required" />
1208                     <xs:attribute name="CreateCodeBase" />
1209                     <xs:attribute name="StateFile" />
1210                     <xs:attribute name="TypeLibFiles" />
1211                 </xs:extension>
1212             </xs:complexContent>
1213         </xs:complexType>
1214     </xs:element>
1215     <xs:element name="RemoveDir" substitutionGroup="msb:Task">
1216         <xs:complexType>
1217             <xs:complexContent>
1218                 <xs:extension base="msb:TaskType">
1219                     <xs:attribute name="Directories" use="required" />
1220                     <xs:attribute name="RemovedDirectories" />
1221                 </xs:extension>
1222             </xs:complexContent>
1223         </xs:complexType>
1224     </xs:element>
1225     <xs:element name="RemoveDuplicates" substitutionGroup="msb:Task">
1226         <xs:complexType>
1227             <xs:complexContent>
1228                 <xs:extension base="msb:TaskType">
1229                     <xs:attribute name="Filtered" />
1230                     <xs:attribute name="Inputs" />
1231                 </xs:extension>
1232             </xs:complexContent>
1233         </xs:complexType>
1234     </xs:element>
1235     <xs:element name="ResGen" substitutionGroup="msb:Task">
1236         <xs:complexType>
1237             <xs:complexContent>
1238                 <xs:extension base="msb:TaskType">
1239                     <xs:attribute name="Sources" use="required" />
1240                     <xs:attribute name="FilesWritten" />
1241                     <xs:attribute name="OutputResources" />
1242                     <xs:attribute name="References" />
1243                     <xs:attribute name="StateFile" />
1244                     <xs:attribute name="Timeout" />
1245                     <xs:attribute name="ToolPath" />
1246                     <xs:attribute name="UseSourcePath" />
1247                 </xs:extension>
1248             </xs:complexContent>
1249         </xs:complexType>
1250     </xs:element>
1251     <xs:element name="ResolveAssemblyReference" substitutionGroup="msb:Task">
1252         <xs:complexType>
1253             <xs:complexContent>
1254                 <xs:extension base="msb:TaskType">
1255                     <xs:attribute name="SearchPaths" use="required" />
1256                     <xs:attribute name="AppConfigFile" />
1257                     <xs:attribute name="Assemblies" />
1258                     <xs:attribute name="AssemblyFiles" />
1259                     <xs:attribute name="AutoUnify" />
1260                     <xs:attribute name="CandidateAssemblyFiles" />
1261                     <xs:attribute name="FilesWritten" />
1262                     <xs:attribute name="FindDependencies" />
1263                     <xs:attribute name="FindRelatedFiles" />
1264                     <xs:attribute name="FindSatellites" />
1265                     <xs:attribute name="InstalledAssemblyTables" />
1266                     <xs:attribute name="Silent" />
1267                     <xs:attribute name="StateFile" />
1268                     <xs:attribute name="TargetFrameworkDirectory" />
1269                     <xs:attribute name="TargetProcessorArchitecture" />
1270                 </xs:extension>
1271             </xs:complexContent>
1272         </xs:complexType>
1273     </xs:element>
1274     <xs:element name="ResolveComReference" substitutionGroup="msb:Task">
1275         <xs:complexType>
1276             <xs:complexContent>
1277                 <xs:extension base="msb:TaskType">
1278                     <xs:attribute name="DelaySign" />
1279                     <xs:attribute name="KeyContainer" />
1280                     <xs:attribute name="KeyFile" />
1281                     <xs:attribute name="NoClassMembers" />
1282                     <xs:attribute name="ResolvedAssemblyReferences" />
1283                     <xs:attribute name="ResolvedFiles" />
1284                     <xs:attribute name="ResolvedModules" />
1285                     <xs:attribute name="StateFile" />
1286                     <xs:attribute name="TypeLibFiles" />
1287                     <xs:attribute name="TypeLibNames" />
1288                     <xs:attribute name="WrapperOutputDirectory" />
1289                 </xs:extension>
1290             </xs:complexContent>
1291         </xs:complexType>
1292     </xs:element>
1293     <xs:element name="ResolveKeySource" substitutionGroup="msb:Task">
1294         <xs:complexType>
1295             <xs:complexContent>
1296                 <xs:extension base="msb:TaskType">
1297                     <xs:attribute name="AutoClosePasswordPromptShow" />
1298                     <xs:attribute name="AutoClosePasswordPromptTimeout" />
1299                     <xs:attribute name="CertificateFile" />
1300                     <xs:attribute name="CertificateThumbprint" />
1301                     <xs:attribute name="KeyFile" />
1302                     <xs:attribute name="ResolvedKeyContainer" />
1303                     <xs:attribute name="ResolvedKeyFile" />
1304                     <xs:attribute name="ResolvedThumbprint" />
1305                     <xs:attribute name="SuppressAutoClosePasswordPrompt" />
1306                 </xs:extension>
1307             </xs:complexContent>
1308         </xs:complexType>
1309     </xs:element>
1310     <xs:element name="GenerateTrustInfo" substitutionGroup="msb:Task">
1311         <xs:complexType>
1312             <xs:complexContent>
1313                 <xs:extension base="msb:TaskType">
1314                     <xs:attribute name="BaseManifest" />
1315                     <xs:attribute name="ExcludedPermissions" />
1316                     <xs:attribute name="TargetZone" use="required" />
1317                     <xs:attribute name="TrustInfoFile" use="required" />
1318                 </xs:extension>
1319             </xs:complexContent>
1320         </xs:complexType>
1321     </xs:element>
1322     <xs:element name="ResolveManifestFiles" substitutionGroup="msb:Task">
1323         <xs:complexType>
1324             <xs:complexContent>
1325                 <xs:extension base="msb:TaskType">
1326                     <xs:attribute name="EntryPoint" />
1327                     <xs:attribute name="TrustInfoFile" />
1328                     <xs:attribute name="Dependencies" /> <!-- obsolete -->
1329                     <xs:attribute name="ExtraFiles" />
1330                     <xs:attribute name="Files" />
1331                     <xs:attribute name="ManagedAssemblies" />
1332                     <xs:attribute name="NativeAssemblies" />
1333                     <xs:attribute name="OutputAssemblies" />
1334                     <xs:attribute name="OutputDependencies" /> <!-- obsolete -->
1335                     <xs:attribute name="OutputFiles" />
1336                     <xs:attribute name="OutputPrerequisites" /> <!-- obsolete -->
1337                     <xs:attribute name="OutputSatellites" /> <!-- obsolete -->
1338                     <xs:attribute name="PublishFiles" />
1339                     <xs:attribute name="Satellites" /> <!-- obsolete -->
1340                     <xs:attribute name="SatelliteAssemblies" />
1341                     <xs:attribute name="TargetCulture" />
1342                 </xs:extension>
1343             </xs:complexContent>
1344         </xs:complexType>
1345     </xs:element>
1346     <xs:element name="ResolveNativeReference" substitutionGroup="msb:Task">
1347         <xs:complexType>
1348             <xs:complexContent>
1349                 <xs:extension base="msb:TaskType">
1350                     <xs:attribute name="NativeReferences" use="required" />
1351                     <xs:attribute name="ContainedComComponents" />
1352                     <xs:attribute name="ContainedLooseEtcFiles" />
1353                     <xs:attribute name="ContainedLooseTlbFiles" />
1354                     <xs:attribute name="ContainedNetAssemblies" />
1355                     <xs:attribute name="ContainedTypeLibraries" />
1356                     <xs:attribute name="ContainingReferenceFiles" />
1357                 </xs:extension>
1358             </xs:complexContent>
1359         </xs:complexType>
1360     </xs:element>
1361     <xs:element name="ResolveVCProjectOutput" substitutionGroup="msb:Task">
1362         <xs:complexType>
1363             <xs:complexContent>
1364                 <xs:extension base="msb:TaskType">
1365                     <xs:attribute name="ProjectReferences" use="required" />
1366                     <xs:attribute name="Configuration" />
1367                     <xs:attribute name="PreresolvedVCOutputs" />
1368                     <xs:attribute name="ResolvedOutputPaths" />
1369                 </xs:extension>
1370             </xs:complexContent>
1371         </xs:complexType>
1372     </xs:element>
1373     <xs:element name="SGen" substitutionGroup="msb:Task">
1374         <xs:complexType>
1375             <xs:complexContent>
1376                 <xs:extension base="msb:TaskType">
1377                     <xs:attribute name="BuildAssemblyName" use="required" />
1378                     <xs:attribute name="BuildAssemblyPath" use="required" />
1379                     <xs:attribute name="ShouldGenerateSerializer" use="required" />
1380                     <xs:attribute name="DelaySign" />
1381                     <xs:attribute name="KeyContainer" />
1382                     <xs:attribute name="KeyFile" />
1383                     <xs:attribute name="References" />
1384                     <xs:attribute name="SerializationAssembly" />
1385                     <xs:attribute name="Timeout" />
1386                     <xs:attribute name="ToolPath" />
1387                 </xs:extension>
1388             </xs:complexContent>
1389         </xs:complexType>
1390     </xs:element>
1391     <xs:element name="SignFile" substitutionGroup="msb:Task">
1392         <xs:complexType>
1393             <xs:complexContent>
1394                 <xs:extension base="msb:TaskType">
1395                     <xs:attribute name="CertificateThumbprint" use="required" />
1396                     <xs:attribute name="SigningTarget" use="required" />
1397                     <xs:attribute name="TimestampUrl" />
1398                 </xs:extension>
1399             </xs:complexContent>
1400         </xs:complexType>
1401     </xs:element>
1402     <xs:element name="Touch" substitutionGroup="msb:Task">
1403         <xs:complexType>
1404             <xs:complexContent>
1405                 <xs:extension base="msb:TaskType">
1406                     <xs:attribute name="Files" use="required" />
1407                     <xs:attribute name="AlwaysCreate" />
1408                     <xs:attribute name="ForceTouch" />
1409                     <xs:attribute name="Time" />
1410                     <xs:attribute name="TouchedFiles" />
1411                 </xs:extension>
1412             </xs:complexContent>
1413         </xs:complexType>
1414     </xs:element>
1415     <xs:element name="UnregisterAssembly" substitutionGroup="msb:Task">
1416         <xs:complexType>
1417             <xs:complexContent>
1418                 <xs:extension base="msb:TaskType">
1419                     <xs:attribute name="Assemblies" />
1420                     <xs:attribute name="StateFile" />
1421                     <xs:attribute name="TypeLibFiles" />
1422                 </xs:extension>
1423             </xs:complexContent>
1424         </xs:complexType>
1425     </xs:element>
1426     <xs:element name="UpdateManifest" substitutionGroup="msb:Task">
1427         <xs:complexType>
1428             <xs:complexContent>
1429                 <xs:extension base="msb:TaskType">
1430                     <xs:attribute name="InputManifest" use="required" />
1431                     <xs:attribute name="ApplicationManifest" />
1432                     <xs:attribute name="ApplicationPath" />
1433                     <xs:attribute name="OutputManifest" />
1434                 </xs:extension>
1435             </xs:complexContent>
1436         </xs:complexType>
1437     </xs:element>
1438     <xs:element name="Vbc" substitutionGroup="msb:Task">
1439         <xs:complexType>
1440             <xs:complexContent>
1441                 <xs:extension base="msb:TaskType">
1442                     <xs:attribute name="AdditionalLibPaths" />
1443                     <xs:attribute name="AddModules" />
1444                     <xs:attribute name="BaseAddress" />
1445                     <xs:attribute name="CodePage" />
1446                     <xs:attribute name="DebugType" />
1447                     <xs:attribute name="DefineConstants" />
1448                     <xs:attribute name="DelaySign" />
1449                     <xs:attribute name="DisabledWarnings" />
1450                     <xs:attribute name="DocumentationFile" />
1451                     <xs:attribute name="EmitDebugInformation" />
1452                     <xs:attribute name="ErrorReport" />
1453                     <xs:attribute name="FileAlignment" />
1454                     <xs:attribute name="GenerateDocumentation" />
1455                     <xs:attribute name="Imports" />
1456                     <xs:attribute name="KeyContainer" />
1457                     <xs:attribute name="KeyFile" />
1458                     <xs:attribute name="LinkResources" />
1459                     <xs:attribute name="MainEntryPoint" />
1460                     <xs:attribute name="NoConfig" />
1461                     <xs:attribute name="NoLogo" />
1462                     <xs:attribute name="NoStandardLib" />
1463                     <xs:attribute name="NoWarnings" />
1464                     <xs:attribute name="Optimize" />
1465                     <xs:attribute name="OptionCompare" />
1466                     <xs:attribute name="OptionExplicit" />
1467                     <xs:attribute name="OptionStrict" />
1468                     <xs:attribute name="OutputAssembly" />
1469                     <xs:attribute name="Platform" />
1470                     <xs:attribute name="References" />
1471                     <xs:attribute name="RemoveIntegerChecks" />
1472                     <xs:attribute name="Resources" />
1473                     <xs:attribute name="ResponseFiles" />
1474                     <xs:attribute name="RootNamespace" />
1475                     <xs:attribute name="SdkPath" />
1476                     <xs:attribute name="Sources" />
1477                     <xs:attribute name="TargetCompactFramework" />
1478                     <xs:attribute name="TargetType" />
1479                     <xs:attribute name="Timeout" />
1480                     <xs:attribute name="ToolPath" />
1481                     <xs:attribute name="TreatWarningsAsErrors" />
1482                     <xs:attribute name="UseHostCompilerIfAvailable" />
1483                     <xs:attribute name="Utf8Output" />
1484                     <xs:attribute name="Verbosity" />
1485                     <xs:attribute name="WarningsAsErrors" />
1486                     <xs:attribute name="WarningsNotAsErrors" />
1487                     <xs:attribute name="Win32Icon" />
1488                     <xs:attribute name="Win32Resource" />
1489                 </xs:extension>
1490             </xs:complexContent>
1491         </xs:complexType>
1492     </xs:element>
1493     <xs:element name="VCBuild" substitutionGroup="msb:Task">
1494         <xs:complexType>
1495             <xs:complexContent>
1496                 <xs:extension base="msb:TaskType">
1497                     <xs:attribute name="Projects" use="required" />
1498                     <xs:attribute name="Clean" />
1499                     <xs:attribute name="Configuration" />
1500                     <xs:attribute name="Override" />
1501                     <xs:attribute name="Rebuild" />
1502                     <xs:attribute name="Timeout" />
1503                     <xs:attribute name="ToolPath" />
1504                 </xs:extension>
1505             </xs:complexContent>
1506         </xs:complexType>
1507     </xs:element>
1508     <xs:element name="Vjc" substitutionGroup="msb:Task">
1509         <xs:complexType>
1510             <xs:complexContent>
1511                 <xs:extension base="msb:TaskType">
1512                     <xs:attribute name="AdditionalLibPaths" />
1513                     <xs:attribute name="AddModules" />
1514                     <xs:attribute name="BaseAddress" />
1515                     <xs:attribute name="CodePage" />
1516                     <xs:attribute name="DebugType" />
1517                     <xs:attribute name="DefineConstants" />
1518                     <xs:attribute name="DelaySign" />
1519                     <xs:attribute name="DisabledWarnings" />
1520                     <xs:attribute name="DisableExtensions" />
1521                     <xs:attribute name="DocumentationFile" />
1522                     <xs:attribute name="EmitDebugInformation" />
1523                     <xs:attribute name="FileAlignment" />
1524                     <xs:attribute name="Jcpa" />
1525                     <xs:attribute name="KeyContainer" />
1526                     <xs:attribute name="KeyFile" />
1527                     <xs:attribute name="LinkResources" />
1528                     <xs:attribute name="MainEntryPoint" />
1529                     <xs:attribute name="NoConfig" />
1530                     <xs:attribute name="NoLogo" />
1531                     <xs:attribute name="Optimize" />
1532                     <xs:attribute name="OutputAssembly" />
1533                     <xs:attribute name="References" />
1534                     <xs:attribute name="Resources" />
1535                     <xs:attribute name="ResponseFiles" />
1536                     <xs:attribute name="SecureScoping" />
1537                     <xs:attribute name="Sources" />
1538                     <xs:attribute name="TargetType" />
1539                     <xs:attribute name="Timeout" />
1540                     <xs:attribute name="ToolPath" />
1541                     <xs:attribute name="TreatWarningsAsErrors" />
1542                     <xs:attribute name="Utf8Output" />
1543                     <xs:attribute name="WarningLevel" />
1544                     <xs:attribute name="Win32Icon" />
1545                     <xs:attribute name="Win32Resource" />
1546                 </xs:extension>
1547             </xs:complexContent>
1548         </xs:complexType>
1549     </xs:element>
1550     <xs:element name="VjsResGen" substitutionGroup="msb:Task">
1551         <xs:complexType>
1552             <xs:complexContent>
1553                 <xs:extension base="msb:TaskType">
1554                     <xs:attribute name="Sources" use="required" />
1555                     <xs:attribute name="OutputResx" />
1556                     <xs:attribute name="WildCards" />
1557                 </xs:extension>
1558             </xs:complexContent>
1559         </xs:complexType>
1560     </xs:element>
1561     <xs:element name="Warning" substitutionGroup="msb:Task">
1562         <xs:complexType>
1563             <xs:complexContent>
1564                 <xs:extension base="msb:TaskType">
1565                     <xs:attribute name="Text" />
1566                 </xs:extension>
1567             </xs:complexContent>
1568         </xs:complexType>
1569     </xs:element>
1570     <xs:element name="WriteLinesToFile" substitutionGroup="msb:Task">
1571         <xs:complexType>
1572             <xs:complexContent>
1573                 <xs:extension base="msb:TaskType">
1574                     <xs:attribute name="File" use="required" />
1575                     <xs:attribute name="Lines" />
1576                     <xs:attribute name="Overwrite" />
1577                 </xs:extension>
1578             </xs:complexContent>
1579         </xs:complexType>
1580     </xs:element>
1581 </xs:schema>