aboutsummaryrefslogtreecommitdiff
path: root/src/internal/WixBuildTools.MsgGen/Xsd/messages.xsd
diff options
context:
space:
mode:
Diffstat (limited to 'src/internal/WixBuildTools.MsgGen/Xsd/messages.xsd')
-rw-r--r--src/internal/WixBuildTools.MsgGen/Xsd/messages.xsd101
1 files changed, 101 insertions, 0 deletions
diff --git a/src/internal/WixBuildTools.MsgGen/Xsd/messages.xsd b/src/internal/WixBuildTools.MsgGen/Xsd/messages.xsd
new file mode 100644
index 00000000..fd086502
--- /dev/null
+++ b/src/internal/WixBuildTools.MsgGen/Xsd/messages.xsd
@@ -0,0 +1,101 @@
1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4
5<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
6 targetNamespace="http://schemas.microsoft.com/genmsgs/2004/07/messages"
7 xmlns="http://schemas.microsoft.com/genmsgs/2004/07/messages">
8 <xs:annotation>
9 <xs:documentation>
10 Schema for describing any kind of messages.
11 </xs:documentation>
12 </xs:annotation>
13
14 <xs:element name="Messages">
15 <xs:complexType>
16 <xs:sequence maxOccurs="unbounded">
17 <xs:element ref="Class"/>
18 </xs:sequence>
19 <xs:attribute name="Namespace" type="xs:string" use="required">
20 <xs:annotation><xs:documentation>Namespace of the generated class.</xs:documentation></xs:annotation>
21 </xs:attribute>
22 <xs:attribute name="Resources" type="xs:string" use="required">
23 <xs:annotation><xs:documentation>Resources stream for messages. Will get namespace prepended to it.</xs:documentation></xs:annotation>
24 </xs:attribute>
25 </xs:complexType>
26 </xs:element>
27
28 <xs:element name="Class">
29 <xs:complexType>
30 <xs:sequence minOccurs="0" maxOccurs="unbounded">
31 <xs:element ref="Message"/>
32 </xs:sequence>
33 <xs:attribute name="Name" type="xs:string" use="required">
34 <xs:annotation><xs:documentation>Name of the generated class.</xs:documentation></xs:annotation>
35 </xs:attribute>
36 <xs:attribute name="ContainerName" type="xs:string" use="required">
37 <xs:annotation><xs:documentation>Name of the generated container class.</xs:documentation></xs:annotation>
38 </xs:attribute>
39 <xs:attribute name="BaseContainerName" type="xs:string" use="required">
40 <xs:annotation><xs:documentation>Name of the base container class.</xs:documentation></xs:annotation>
41 </xs:attribute>
42 <xs:attribute name="Level" type="MessageLevelType">
43 <xs:annotation><xs:documentation>Optional message level for this container class and derivative classes.</xs:documentation></xs:annotation>
44 </xs:attribute>
45 </xs:complexType>
46 </xs:element>
47
48 <xs:element name="Message">
49 <xs:complexType>
50 <xs:sequence maxOccurs="unbounded">
51 <xs:element ref="Instance"/>
52 </xs:sequence>
53 <xs:attribute name="Id" type="xs:string" use="required">
54 <xs:annotation><xs:documentation>Name of the message type.</xs:documentation></xs:annotation>
55 </xs:attribute>
56 <xs:attribute name="Number" type="xs:integer" use="required">
57 <xs:annotation><xs:documentation>Override the number for this message type.</xs:documentation></xs:annotation>
58 </xs:attribute>
59 <xs:attribute name="SourceLineNumbers" type="YesNoType">
60 <xs:annotation><xs:documentation>Associate SourceLineNumbers with this message. The default value is "yes".</xs:documentation></xs:annotation>
61 </xs:attribute>
62 </xs:complexType>
63 </xs:element>
64
65 <xs:element name="Instance">
66 <xs:complexType mixed="true">
67 <xs:sequence minOccurs="0" maxOccurs="unbounded">
68 <xs:element ref="Parameter"/>
69 </xs:sequence>
70 </xs:complexType>
71 </xs:element>
72
73 <xs:element name="Parameter">
74 <xs:complexType>
75 <xs:attribute name="Type" type="xs:string" use="required">
76 <xs:annotation><xs:documentation>Type of the parameter.</xs:documentation></xs:annotation>
77 </xs:attribute>
78 <xs:attribute name="Name" type="xs:string" use="required">
79 <xs:annotation><xs:documentation>Name of the parameter.</xs:documentation></xs:annotation>
80 </xs:attribute>
81 </xs:complexType>
82 </xs:element>
83
84 <xs:simpleType name="YesNoType">
85 <xs:annotation><xs:documentation>Values of this type will either be "yes" or "no".</xs:documentation></xs:annotation>
86 <xs:restriction base="xs:NMTOKEN">
87 <xs:enumeration value="no"/>
88 <xs:enumeration value="yes"/>
89 </xs:restriction>
90 </xs:simpleType>
91
92 <xs:simpleType name="MessageLevelType">
93 <xs:annotation><xs:documentation>The message level for this message which corresponds to the WixToolset.MessageLevel enumeration.</xs:documentation></xs:annotation>
94 <xs:restriction base="xs:NMTOKEN">
95 <xs:enumeration value="Verbose"/>
96 <xs:enumeration value="Information"/>
97 <xs:enumeration value="Warning"/>
98 <xs:enumeration value="Error"/>
99 </xs:restriction>
100 </xs:simpleType>
101</xs:schema>