aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Data/WindowsInstaller/Xsd
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2017-12-19 12:24:16 -0800
committerRob Mensching <rob@firegiant.com>2017-12-19 12:24:16 -0800
commitf680e915f065026efd0301a76fd524f87b8c5f06 (patch)
tree63b6a8d7b799b10d77e133209041a809f4f3d144 /src/WixToolset.Data/WindowsInstaller/Xsd
parent77dc8cd1acd5332aa0cb077c7e87d0678756969b (diff)
downloadwix-f680e915f065026efd0301a76fd524f87b8c5f06.tar.gz
wix-f680e915f065026efd0301a76fd524f87b8c5f06.tar.bz2
wix-f680e915f065026efd0301a76fd524f87b8c5f06.zip
Simplify message handling
Diffstat (limited to 'src/WixToolset.Data/WindowsInstaller/Xsd')
-rw-r--r--src/WixToolset.Data/WindowsInstaller/Xsd/libraries.xsd66
-rw-r--r--src/WixToolset.Data/WindowsInstaller/Xsd/objects.xsd143
-rw-r--r--src/WixToolset.Data/WindowsInstaller/Xsd/outputs.xsd66
-rw-r--r--src/WixToolset.Data/WindowsInstaller/Xsd/pdbs.xsd32
4 files changed, 307 insertions, 0 deletions
diff --git a/src/WixToolset.Data/WindowsInstaller/Xsd/libraries.xsd b/src/WixToolset.Data/WindowsInstaller/Xsd/libraries.xsd
new file mode 100644
index 00000000..a4504c01
--- /dev/null
+++ b/src/WixToolset.Data/WindowsInstaller/Xsd/libraries.xsd
@@ -0,0 +1,66 @@
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://wixtoolset.org/schemas/v4/wixlib"
7 xmlns="http://wixtoolset.org/schemas/v4/wixlib"
8 xmlns:loc="http://wixtoolset.org/schemas/v4/wxl"
9 xmlns:objs="http://wixtoolset.org/schemas/v4/wixobj">
10 <xs:annotation>
11 <xs:documentation>
12 Schema for describing WiX Library files (.wixlib).
13 </xs:documentation>
14 </xs:annotation>
15
16 <xs:import namespace="http://wixtoolset.org/schemas/v4/wixobj" schemaLocation="objects.xsd" />
17
18 <xs:element name="wixLibrary">
19 <xs:complexType>
20 <xs:sequence>
21 <xs:element ref="localization" minOccurs="0" maxOccurs="unbounded" />
22 <xs:element ref="objs:section" minOccurs="0" maxOccurs="unbounded" />
23 </xs:sequence>
24
25 <xs:attribute name="id" type="xs:string" use="required" />
26 <xs:attribute name="version" type="xs:string" use="required">
27 <xs:annotation>
28 <xs:documentation>Version of WiX used to create this library file</xs:documentation>
29 </xs:annotation>
30 </xs:attribute>
31 </xs:complexType>
32 </xs:element>
33
34 <xs:element name="localization">
35 <xs:complexType>
36 <xs:sequence>
37 <xs:element ref="string" minOccurs="0" maxOccurs="unbounded" />
38 <xs:element ref="ui" minOccurs="0" maxOccurs="unbounded" />
39 </xs:sequence>
40
41 <xs:attribute name="codepage" type="xs:string" use="required" />
42 <xs:attribute name="culture" type="xs:string" />
43 </xs:complexType>
44 </xs:element>
45
46 <xs:element name="string">
47 <xs:complexType mixed="true">
48 <xs:attribute name="id" type="xs:string" use="required" />
49 <xs:attribute name="overridable" type="xs:string" />
50 </xs:complexType>
51 </xs:element>
52
53 <xs:element name="ui">
54 <xs:complexType>
55 <xs:attribute name="dialog" type="xs:string" />
56 <xs:attribute name="control" type="xs:string" />
57 <xs:attribute name="x" type="xs:int" />
58 <xs:attribute name="y" type="xs:int" />
59 <xs:attribute name="width" type="xs:int" />
60 <xs:attribute name="height" type="xs:int" />
61 <xs:attribute name="rightToLeft" type="xs:string" />
62 <xs:attribute name="rightAligned" type="xs:string" />
63 <xs:attribute name="leftScroll" type="xs:string" />
64 </xs:complexType>
65 </xs:element>
66</xs:schema>
diff --git a/src/WixToolset.Data/WindowsInstaller/Xsd/objects.xsd b/src/WixToolset.Data/WindowsInstaller/Xsd/objects.xsd
new file mode 100644
index 00000000..5d95a59c
--- /dev/null
+++ b/src/WixToolset.Data/WindowsInstaller/Xsd/objects.xsd
@@ -0,0 +1,143 @@
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://wixtoolset.org/schemas/v4/wixobj"
7 xmlns="http://wixtoolset.org/schemas/v4/wixobj">
8 <xs:annotation>
9 <xs:documentation>
10 Schema for describing WiX Object files (.wixobj).
11 </xs:documentation>
12 </xs:annotation>
13
14 <xs:element name="wixObject">
15 <xs:complexType>
16 <xs:sequence minOccurs="0" maxOccurs="unbounded">
17 <xs:element ref="section" />
18 </xs:sequence>
19 <xs:attribute name="id" type="xs:string" use="required" />
20 <xs:attribute name="version" type="xs:string" use="required">
21 <xs:annotation>
22 <xs:documentation>Version of WiX used to create this object file.</xs:documentation>
23 </xs:annotation>
24 </xs:attribute>
25 </xs:complexType>
26 </xs:element>
27
28 <xs:element name="section">
29 <xs:complexType>
30 <xs:sequence>
31 <xs:element ref="table" minOccurs="0" maxOccurs="unbounded" />
32 </xs:sequence>
33 <xs:attribute name="id" type="xs:string">
34 <xs:annotation>
35 <xs:documentation>Identifier for section (optional for Fragments)</xs:documentation>
36 </xs:annotation>
37 </xs:attribute>
38 <xs:attribute name="type" type="SectionType" use="required">
39 <xs:annotation>
40 <xs:documentation>Type of section</xs:documentation>
41 </xs:annotation>
42 </xs:attribute>
43 <xs:attribute name="codepage" type="xs:integer" use="optional">
44 <xs:annotation>
45 <xs:documentation>Codepage for output file, only valid on entry sections.</xs:documentation>
46 </xs:annotation>
47 </xs:attribute>
48 </xs:complexType>
49 </xs:element>
50
51 <xs:element name="table">
52 <xs:complexType>
53 <xs:sequence minOccurs="0" maxOccurs="unbounded">
54 <xs:element ref="row" />
55 </xs:sequence>
56 <xs:attribute name="name" type="TableNameType" use="required">
57 <xs:annotation>
58 <xs:documentation>Name of table in Windows Installer database</xs:documentation>
59 </xs:annotation>
60 </xs:attribute>
61 <xs:attribute name="op">
62 <xs:simpleType>
63 <xs:restriction base="xs:string">
64 <xs:enumeration value="add" />
65 <xs:enumeration value="drop" />
66 </xs:restriction>
67 </xs:simpleType>
68 </xs:attribute>
69 </xs:complexType>
70 </xs:element>
71
72 <xs:element name="row">
73 <xs:annotation>
74 <xs:documentation>Row in a table</xs:documentation>
75 </xs:annotation>
76 <xs:complexType>
77 <xs:sequence maxOccurs="unbounded">
78 <xs:element ref="field" />
79 </xs:sequence>
80 <xs:attribute name="access">
81 <xs:simpleType>
82 <xs:restriction base="xs:string">
83 <xs:enumeration value="public" />
84 <xs:enumeration value="internal" />
85 <xs:enumeration value="protected" />
86 <xs:enumeration value="private" />
87 </xs:restriction>
88 </xs:simpleType>
89 </xs:attribute>
90 <xs:attribute name="op">
91 <xs:simpleType>
92 <xs:restriction base="xs:string">
93 <xs:enumeration value="add" />
94 <xs:enumeration value="delete" />
95 <xs:enumeration value="modify" />
96 </xs:restriction>
97 </xs:simpleType>
98 </xs:attribute>
99 <xs:attribute name="redundant" type="YesNoType" />
100 <xs:attribute name="sectionId" type="xs:string" />
101 <xs:attribute name="sourceLineNumber" type="xs:string" />
102 </xs:complexType>
103 </xs:element>
104
105 <xs:element name="field">
106 <xs:annotation>
107 <xs:documentation>Data for a particular field in a row.</xs:documentation>
108 </xs:annotation>
109 <xs:complexType mixed="true">
110 <xs:attribute name="cabinetFileId" type="xs:string" />
111 <xs:attribute name="modified" type="YesNoType" />
112 <xs:attribute name="previousData" type="xs:string" />
113 <xs:attribute name="unresolvedData" type="xs:string" />
114 <xs:attribute name="unresolvedPreviousData" type="xs:string" />
115 <xs:attribute name="previousCabinetFileId" type="xs:string" />
116 </xs:complexType>
117 </xs:element>
118
119 <xs:simpleType name="SectionType">
120 <xs:restriction base="xs:NMTOKEN">
121 <xs:enumeration value="bundle"/>
122 <xs:enumeration value="fragment" />
123 <xs:enumeration value="module" />
124 <xs:enumeration value="product" />
125 <xs:enumeration value="patchCreation" />
126 <xs:enumeration value="patch" />
127 </xs:restriction>
128 </xs:simpleType>
129
130 <xs:simpleType name="TableNameType">
131 <xs:restriction base="xs:string">
132 <xs:minLength value="1" />
133 <xs:maxLength value="62" />
134 </xs:restriction>
135 </xs:simpleType>
136
137 <xs:simpleType name="YesNoType">
138 <xs:restriction base="xs:NMTOKEN">
139 <xs:enumeration value="yes" />
140 <xs:enumeration value="no" />
141 </xs:restriction>
142 </xs:simpleType>
143</xs:schema>
diff --git a/src/WixToolset.Data/WindowsInstaller/Xsd/outputs.xsd b/src/WixToolset.Data/WindowsInstaller/Xsd/outputs.xsd
new file mode 100644
index 00000000..00e20f12
--- /dev/null
+++ b/src/WixToolset.Data/WindowsInstaller/Xsd/outputs.xsd
@@ -0,0 +1,66 @@
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://wixtoolset.org/schemas/v4/wixout"
7 xmlns="http://wixtoolset.org/schemas/v4/wixout"
8 xmlns:objs="http://wixtoolset.org/schemas/v4/wixobj"
9 xmlns:tbls="http://wixtoolset.org/schemas/v4/wi/tables">
10 <xs:annotation>
11 <xs:documentation>
12 Schema for describing WiX Output files (.wixout).
13 </xs:documentation>
14 </xs:annotation>
15
16 <xs:import namespace="http://wixtoolset.org/schemas/v4/wixobj" schemaLocation="objects.xsd" />
17 <xs:import namespace="http://wixtoolset.org/schemas/v4/wi/tables" schemaLocation="tables.xsd" />
18
19 <xs:element name="wixOutput">
20 <xs:complexType>
21 <xs:sequence>
22 <xs:element ref="tbls:tableDefinitions" />
23 <xs:element ref="objs:table" maxOccurs="unbounded" />
24 <xs:element ref="subStorage" minOccurs="0" maxOccurs="unbounded" />
25 </xs:sequence>
26 <xs:attribute name="codepage" type="xs:unsignedInt">
27 <xs:annotation>
28 <xs:documentation>Codepage of the output.</xs:documentation>
29 </xs:annotation>
30 </xs:attribute>
31 <xs:attribute name="type" use="required">
32 <xs:annotation>
33 <xs:documentation>Type of the output.</xs:documentation>
34 </xs:annotation>
35 <xs:simpleType>
36 <xs:restriction base="xs:NMTOKEN">
37 <xs:enumeration value="Bundle" />
38 <xs:enumeration value="Module" />
39 <xs:enumeration value="Patch" />
40 <xs:enumeration value="PatchCreation" />
41 <xs:enumeration value="Product" />
42 <xs:enumeration value="Transform" />
43 </xs:restriction>
44 </xs:simpleType>
45 </xs:attribute>
46 <xs:attribute name="version" type="xs:string" use="required">
47 <xs:annotation>
48 <xs:documentation>Version of WiX used to create this output file.</xs:documentation>
49 </xs:annotation>
50 </xs:attribute>
51 </xs:complexType>
52 </xs:element>
53
54 <xs:element name="subStorage">
55 <xs:complexType>
56 <xs:sequence minOccurs="1" maxOccurs="1">
57 <xs:element ref="wixOutput" />
58 </xs:sequence>
59 <xs:attribute name="name" type="xs:string">
60 <xs:annotation>
61 <xs:documentation>Name of the substorage.</xs:documentation>
62 </xs:annotation>
63 </xs:attribute>
64 </xs:complexType>
65 </xs:element>
66</xs:schema>
diff --git a/src/WixToolset.Data/WindowsInstaller/Xsd/pdbs.xsd b/src/WixToolset.Data/WindowsInstaller/Xsd/pdbs.xsd
new file mode 100644
index 00000000..c1d1756d
--- /dev/null
+++ b/src/WixToolset.Data/WindowsInstaller/Xsd/pdbs.xsd
@@ -0,0 +1,32 @@
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://wixtoolset.org/schemas/v4/wixpdb"
7 xmlns="http://wixtoolset.org/schemas/v4/wixpdb"
8 xmlns:outs="http://wixtoolset.org/schemas/v4/wixout">
9 <xs:annotation>
10 <xs:documentation>
11 Schema for describing WiX Pdb files (.wixpdb).
12 </xs:documentation>
13 </xs:annotation>
14
15 <xs:import namespace="http://wixtoolset.org/schemas/v4/wixobj" schemaLocation="objects.xsd" />
16 <xs:import namespace="http://wixtoolset.org/schemas/v4/wixout" schemaLocation="outputs.xsd" />
17 <xs:import namespace="http://wixtoolset.org/schemas/v4/wi/tables" schemaLocation="tables.xsd" />
18
19 <xs:element name="wixPdb">
20 <xs:complexType>
21 <xs:sequence>
22 <xs:element ref="outs:wixOutput" minOccurs="0" maxOccurs="unbounded" />
23 </xs:sequence>
24
25 <xs:attribute name="version" type="xs:string" use="required">
26 <xs:annotation>
27 <xs:documentation>Version of WiX used to create this pdb file</xs:documentation>
28 </xs:annotation>
29 </xs:attribute>
30 </xs:complexType>
31 </xs:element>
32</xs:schema>