Skip to content
This repository was archived by the owner on Oct 16, 2020. It is now read-only.

Commit ede45e4

Browse files
committed
Fixed SD2-849: AddIn.xsd schema is not valid
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@2136 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
1 parent e3e638b commit ede45e4

4 files changed

Lines changed: 188 additions & 92 deletions

File tree

data/schemas/AddIn.xsd

Lines changed: 103 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,6 @@
22
<!-- edited with XMLSPY v5 rel. 4 U (http://www.xmlspy.com) by Ivo Kovacka (Kovacka) -->
33
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.icsharpcode.net/2005/addin" xmlns="http://www.icsharpcode.net/2005/addin">
44
<xs:complexType name="AddIn">
5-
<xs:attribute name="name" type="xs:string" use="required" />
6-
<xs:attribute name="author" type="xs:string" use="required" />
7-
<xs:attribute name="copyright" type="xs:string" use="optional" />
8-
<xs:attribute name="url" type="xs:anyURI" use="optional" />
9-
<xs:attribute name="description" type="xs:string" use="optional" />
105
<xs:choice minOccurs="1" maxOccurs="unbounded">
116
<xs:element name="BitmapResources">
127
<xs:complexType>
@@ -58,18 +53,23 @@
5853
</xs:complexType>
5954
</xs:element>
6055
</xs:choice>
56+
<xs:attribute name="name" type="xs:string" use="required" />
57+
<xs:attribute name="author" type="xs:string" use="required" />
58+
<xs:attribute name="copyright" type="xs:string" use="optional" />
59+
<xs:attribute name="url" type="xs:anyURI" use="optional" />
60+
<xs:attribute name="description" type="xs:string" use="optional" />
6161
</xs:complexType>
6262
<xs:element name="AddIn" type="AddIn" />
6363
<xs:complexType name="AddInReference">
6464
<xs:attribute name="addin" type="xs:string" use="required" />
6565
<xs:attribute name="version" type="xs:string" use="optional" />
6666
</xs:complexType>
6767
<xs:complexType name="Import">
68-
<xs:attribute name="assembly" type="xs:string" use="required" />
6968
<xs:choice maxOccurs="unbounded">
7069
<xs:element name="Doozer" type="CustomDoozerOrCondition" minOccurs="0" maxOccurs="unbounded" />
7170
<xs:element name="ConditionEvaluator" type="CustomDoozerOrCondition" minOccurs="0" maxOccurs="unbounded" />
7271
</xs:choice>
72+
<xs:attribute name="assembly" type="xs:string" use="required" />
7373
</xs:complexType>
7474
<xs:complexType name="CustomDoozerOrCondition">
7575
<xs:attribute name="name" type="xs:string" use="required" />
@@ -82,6 +82,7 @@
8282
<!-- !!! INSERT DOOZER LIST !!! -->
8383
<xs:element ref="Class" />
8484
<xs:element ref="CodeCompletionBinding" />
85+
<xs:element ref="CustomTool" />
8586
<xs:element ref="Debugger" />
8687
<xs:element ref="DialogPanel" />
8788
<xs:element ref="Directory" />
@@ -94,7 +95,7 @@
9495
<xs:element ref="MenuItem" />
9596
<xs:element ref="Pad" />
9697
<xs:element ref="Parser" />
97-
<xs:element ref="Registry" />
98+
<xs:element ref="ProjectContentRegistry" />
9899
<xs:element ref="SchemeExtension" />
99100
<xs:element ref="String" />
100101
<xs:element ref="SyntaxMode" />
@@ -105,31 +106,33 @@
105106
</xs:complexType>
106107
<xs:element name="Path" type="Path" />
107108
<xs:complexType name="Condition">
108-
<xs:extension base="Path">
109-
<xs:attribute name="action" use="optional">
110-
<xs:simpleType>
111-
<xs:restriction base="xs:string">
112-
<xs:enumeration value="Exclude" />
113-
<xs:enumeration value="Disable" />
114-
<xs:enumeration value="Nothing" />
115-
</xs:restriction>
116-
</xs:simpleType>
117-
</xs:attribute>
118-
<!-- !!! INSERT CONDITION ATTRIBUTES !!! -->
119-
<xs:attribute name="activeextension" type="xs:string" use="optional" />
120-
<xs:attribute name="activeproject" type="xs:string" use="optional" />
121-
<xs:attribute name="activewindow" type="xs:string" use="optional" />
122-
<xs:attribute name="comparisonType" type="xs:string" use="optional" />
123-
<xs:attribute name="debuggersupports" type="xs:string" use="optional" />
124-
<xs:attribute name="equals" type="xs:string" use="optional" />
125-
<xs:attribute name="openwindow" type="xs:string" use="optional" />
126-
<xs:attribute name="options" type="xs:string" use="optional" />
127-
<xs:attribute name="property" type="xs:string" use="optional" />
128-
<xs:attribute name="string" type="xs:string" use="optional" />
129-
<xs:attribute name="supports" type="xs:string" use="optional" />
130-
<xs:attribute name="textcontent" type="xs:string" use="optional" />
131-
<xs:attribute name="urlRegex" type="xs:string" use="optional" />
132-
</xs:extension>
109+
<xs:complexContent>
110+
<xs:extension base="Path">
111+
<xs:attribute name="action" use="optional">
112+
<xs:simpleType>
113+
<xs:restriction base="xs:string">
114+
<xs:enumeration value="Exclude" />
115+
<xs:enumeration value="Disable" />
116+
<xs:enumeration value="Nothing" />
117+
</xs:restriction>
118+
</xs:simpleType>
119+
</xs:attribute>
120+
<!-- !!! INSERT CONDITION ATTRIBUTES !!! -->
121+
<xs:attribute name="activeextension" type="xs:string" use="optional" />
122+
<xs:attribute name="activeproject" type="xs:string" use="optional" />
123+
<xs:attribute name="activewindow" type="xs:string" use="optional" />
124+
<xs:attribute name="comparisonType" type="xs:string" use="optional" />
125+
<xs:attribute name="debuggersupports" type="xs:string" use="optional" />
126+
<xs:attribute name="equals" type="xs:string" use="optional" />
127+
<xs:attribute name="openwindow" type="xs:string" use="optional" />
128+
<xs:attribute name="options" type="xs:string" use="optional" />
129+
<xs:attribute name="property" type="xs:string" use="optional" />
130+
<xs:attribute name="string" type="xs:string" use="optional" />
131+
<xs:attribute name="supports" type="xs:string" use="optional" />
132+
<xs:attribute name="textcontent" type="xs:string" use="optional" />
133+
<xs:attribute name="urlRegex" type="xs:string" use="optional" />
134+
</xs:extension>
135+
</xs:complexContent>
133136
</xs:complexType>
134137
<xs:element name="Condition" type="Condition">
135138
<xs:annotation>
@@ -139,22 +142,14 @@
139142
</xs:annotation>
140143
</xs:element>
141144
<xs:complexType name="ComplexCondition">
142-
<xs:attribute name="action" use="optional">
143-
<xs:simpleType>
144-
<xs:restriction base="xs:string">
145-
<xs:enumeration value="Exclude" />
146-
<xs:enumeration value="Disable" />
147-
<xs:enumeration value="Nothing" />
148-
</xs:restriction>
149-
</xs:simpleType>
150-
</xs:attribute>
151145
<xs:choice maxOccurs="unbounded">
152146
<xs:element ref="And" />
153147
<xs:element ref="Or" />
154148
<xs:element ref="Not" />
155149
<!-- !!! INSERT DOOZER LIST !!! -->
156150
<xs:element ref="Class" />
157151
<xs:element ref="CodeCompletionBinding" />
152+
<xs:element ref="CustomTool" />
158153
<xs:element ref="Debugger" />
159154
<xs:element ref="DialogPanel" />
160155
<xs:element ref="Directory" />
@@ -167,13 +162,22 @@
167162
<xs:element ref="MenuItem" />
168163
<xs:element ref="Pad" />
169164
<xs:element ref="Parser" />
170-
<xs:element ref="Registry" />
165+
<xs:element ref="ProjectContentRegistry" />
171166
<xs:element ref="SchemeExtension" />
172167
<xs:element ref="String" />
173168
<xs:element ref="SyntaxMode" />
174169
<xs:element ref="TaskBoundAdditionalLogger" />
175170
<xs:element ref="ToolbarItem" />
176171
</xs:choice>
172+
<xs:attribute name="action" use="optional">
173+
<xs:simpleType>
174+
<xs:restriction base="xs:string">
175+
<xs:enumeration value="Exclude" />
176+
<xs:enumeration value="Disable" />
177+
<xs:enumeration value="Nothing" />
178+
</xs:restriction>
179+
</xs:simpleType>
180+
</xs:attribute>
177181
</xs:complexType>
178182
<xs:element name="ComplexCondition" type="ComplexCondition">
179183
<xs:annotation>
@@ -267,6 +271,41 @@
267271
</xs:documentation>
268272
</xs:annotation>
269273
</xs:element>
274+
<xs:complexType name="CustomTool">
275+
<xs:complexContent>
276+
<xs:extension base="AbstractCodon">
277+
<xs:attribute name="id" use="required" type="xs:string">
278+
<xs:annotation>
279+
<xs:documentation>
280+
ID used to identify the custom tool.
281+
</xs:documentation>
282+
</xs:annotation>
283+
</xs:attribute>
284+
<xs:attribute name="class" use="required" type="xs:string">
285+
<xs:annotation>
286+
<xs:documentation>
287+
Name of the ICustomTool class.
288+
</xs:documentation>
289+
</xs:annotation>
290+
</xs:attribute>
291+
<xs:attribute name="fileNamePattern" use="optional" type="xs:string">
292+
<xs:annotation>
293+
<xs:documentation>
294+
Regular expression that specifies the file names for which the custom tool
295+
can be used. Example: "\.res(x|ources)$"
296+
</xs:documentation>
297+
</xs:annotation>
298+
</xs:attribute>
299+
</xs:extension>
300+
</xs:complexContent>
301+
</xs:complexType>
302+
<xs:element name="CustomTool" type="CustomTool">
303+
<xs:annotation>
304+
<xs:documentation>
305+
Creates CustomToolDescriptor objects.
306+
</xs:documentation>
307+
</xs:annotation>
308+
</xs:element>
270309
<xs:complexType name="Debugger">
271310
<xs:complexContent>
272311
<xs:extension base="AbstractCodon">
@@ -386,17 +425,17 @@
386425
</xs:annotation>
387426
</xs:attribute>
388427
<xs:attribute name="type" use="optional">
428+
<xs:annotation>
429+
<xs:documentation>
430+
Type of the display binding (either "Primary" or "Secondary"). Default: "Primary".
431+
</xs:documentation>
432+
</xs:annotation>
389433
<xs:simpleType>
390434
<xs:restriction base="xs:string">
391435
<xs:enumeration value="Primary" />
392436
<xs:enumeration value="Secondary" />
393437
</xs:restriction>
394438
</xs:simpleType>
395-
<xs:annotation>
396-
<xs:documentation>
397-
Type of the display binding (either "Primary" or "Secondary"). Default: "Primary".
398-
</xs:documentation>
399-
</xs:annotation>
400439
</xs:attribute>
401440
<xs:attribute name="fileNamePattern" use="optional" type="xs:string">
402441
<xs:annotation>
@@ -609,6 +648,14 @@
609648
</xs:annotation>
610649
</xs:attribute>
611650
<xs:attribute name="type" use="optional">
651+
<xs:annotation>
652+
<xs:documentation>
653+
This attribute must be one of these values:
654+
Separator, CheckBox, Item=Command, Menu (=with subitems),
655+
Builder (=class implementing ISubmenuBuilder).
656+
Default: Command.
657+
</xs:documentation>
658+
</xs:annotation>
612659
<xs:simpleType>
613660
<xs:restriction base="xs:string">
614661
<xs:enumeration value="Separator" />
@@ -619,14 +666,6 @@
619666
<xs:enumeration value="Builder" />
620667
</xs:restriction>
621668
</xs:simpleType>
622-
<xs:annotation>
623-
<xs:documentation>
624-
This attribute must be one of these values:
625-
Separator, CheckBox, Item=Command, Menu (=with subitems),
626-
Builder (=class implementing ISubmenuBuilder).
627-
Default: Command.
628-
</xs:documentation>
629-
</xs:annotation>
630669
</xs:attribute>
631670
<xs:attribute name="loadclasslazy" use="optional" type="xs:string">
632671
<xs:annotation>
@@ -765,7 +804,7 @@
765804
</xs:documentation>
766805
</xs:annotation>
767806
</xs:element>
768-
<xs:complexType name="Registry">
807+
<xs:complexType name="ProjectContentRegistry">
769808
<xs:complexContent>
770809
<xs:extension base="AbstractCodon">
771810
<xs:attribute name="class" use="optional" type="xs:string">
@@ -778,10 +817,10 @@
778817
</xs:extension>
779818
</xs:complexContent>
780819
</xs:complexType>
781-
<xs:element name="Registry" type="Registry">
820+
<xs:element name="ProjectContentRegistry" type="ProjectContentRegistry">
782821
<xs:annotation>
783822
<xs:documentation>
784-
Creates RegistryDescriptor objects for the parsing service.
823+
Creates ProjectContentRegistryDescriptor objects for the parsing service.
785824
</xs:documentation>
786825
</xs:annotation>
787826
</xs:element>
@@ -920,6 +959,12 @@
920959
</xs:annotation>
921960
</xs:attribute>
922961
<xs:attribute name="type" use="optional">
962+
<xs:annotation>
963+
<xs:documentation>
964+
This attribute must be one of these values:
965+
Separator, CheckBox, Item, ComboBox, DropDownButton
966+
</xs:documentation>
967+
</xs:annotation>
923968
<xs:simpleType>
924969
<xs:restriction base="xs:string">
925970
<xs:enumeration value="Separator" />
@@ -929,12 +974,6 @@
929974
<xs:enumeration value="DropDownButton" />
930975
</xs:restriction>
931976
</xs:simpleType>
932-
<xs:annotation>
933-
<xs:documentation>
934-
This attribute must be one of these values:
935-
Separator, CheckBox, Item, ComboBox, DropDownButton
936-
</xs:documentation>
937-
</xs:annotation>
938977
</xs:attribute>
939978
<xs:attribute name="loadclasslazy" use="optional" type="xs:string">
940979
<xs:annotation>

0 commit comments

Comments
 (0)