summaryrefslogtreecommitdiff
path: root/mcs/tools/xbuild/data/Microsoft.Build.xsd
blob: e88f00f0f5d3e599688732e9649c336f6bf3087c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?xml version="1.0" encoding="utf-8"?>
<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"
elementFormDefault="qualified">

    <!-- =================== IMPORT COMMON SCHEMA =========================== -->
    <xs:include schemaLocation="MSBuild/Microsoft.Build.CommonTypes.xsd"/>

    <!-- ========= ADD CUSTOM ITEMS, PROPERTIES, AND TASKS BELOW ======= -->
    <!-- Note that these will be in the msbuild namespace. A future version of
        msbuild may require that custom itemtypes, properties, and tasks be in a
        custom namespace, but currently msbuild only supports the msbuild namespace. -->

    <!-- example custom itemtype with particular meta-data required-->
    <!--<xs:element name="MyItem" substitutionGroup="msb:Item">
        <xs:complexType>
            <xs:complexContent>
                <xs:extension base="msb:SimpleItemType">
                    <xs:sequence maxOccurs="1">
                        <xs:choice>
                            <xs:element name="MyMetaData" type="xs:string"/>
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>
    </xs:element>-->

    <!-- Example custom itemtype with NO meta-data -->
    <!--<xs:element name="MySimpleItem" type="msb:SimpleItemType" substitutionGroup="msb:Item"/>-->

    <!-- Example custom itemtype with ANY meta-data -->
    <!--<xs:element name="MyFlexibleItem" type="msb:GenericItemType" substitutionGroup="msb:Item"/>-->

    <!-- example custom property that allows string content only-->
    <!--<xs:element name="MySimpleProperty" type="msb:StringPropertyType" substitutionGroup="msb:Property"/>-->

    <!-- example custom task with single required parameter-->
    <!--<xs:element name="MyTask" substitutionGroup="msb:Task">
        <xs:complexType>
            <xs:complexContent>
                <xs:extension base="msb:TaskType">
                    <xs:attribute name="MyParameter" type="xs:boolean" use="required"/>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>
    </xs:element>-->

</xs:schema>