1 <?xml version="1.0" encoding="UTF-8"?>
3 Author: John Luke <john.luke@gmail.com>
4 This is a (not very strict) schema for the monodoc
7 make base type for summary, remarks, returns, etc
8 alias duplicate attributes
9 make stricter in order and occurance
10 add masterdoc support?
12 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
14 <!-- define attributes -->
15 <xs:attribute name="argnames" type="xs:string" />
16 <xs:attribute name="cref" type="xs:string" />
17 <xs:attribute name="Deprecated" type="xs:boolean" />
18 <xs:attribute name="FullName" type="xs:string" />
19 <xs:attribute name="FullNameSP" type="xs:string" />
20 <xs:attribute name="inherited" type="xs:string" />
21 <xs:attribute name="language" type="xs:string" />
22 <xs:attribute name="Language" type="xs:string" />
23 <xs:attribute name="lang" type="xs:string" />
24 <xs:attribute name="langword" type="xs:string" />
25 <xs:attribute name="Library" type="xs:string" />
26 <xs:attribute name="location" type="xs:string" />
27 <xs:attribute name="Maintainer" type="xs:string" />
28 <xs:attribute name="MemberName" type="xs:string" />
29 <xs:attribute name="name" type="xs:string" />
30 <xs:attribute name="Name" type="xs:string" />
31 <xs:attribute name="namespace" type="xs:string" />
32 <xs:attribute name="propertytype" type="xs:string" />
33 <xs:attribute name="qualify" type="xs:boolean" />
34 <xs:attribute name="RefType" type="xs:string" />
35 <xs:attribute name="returntype" type="xs:string" />
36 <xs:attribute name="source" type="xs:string" />
37 <xs:attribute name="src" type="xs:string" />
38 <xs:attribute name="subset" type="xs:string" />
39 <xs:attribute name="Value" type="xs:string" />
40 <xs:attribute name="version" type="xs:string" />
41 <xs:attribute name="type" type="xs:string" />
42 <xs:attribute name="Type" type="xs:string" />
43 <xs:attribute name="TypeParamName" type="xs:string" />
45 <!-- define simple elements -->
46 <xs:element name="AssemblyName" type="xs:string" />
47 <xs:element name="AssemblyPublicKey" type="xs:string" />
48 <xs:element name="AssemblyVersion" type="xs:string" />
49 <xs:element name="AssemblyCulture" type="xs:string" />
50 <xs:element name="AttributeName" type="xs:string" />
51 <xs:element name="BaseTypeName" type="xs:string" />
52 <xs:element name="Excluded" type="xs:string" />
53 <xs:element name="ExcludedBaseTypeName" type="xs:string" />
54 <xs:element name="ExcludedLibrary" type="xs:string" />
55 <xs:element name="ExcludedLibraryName" type="xs:string" />
56 <xs:element name="ExcludedTypeName" type="xs:string" />
57 <xs:element name="i" type="xs:string" />
58 <xs:element name="InterfaceName" type="xs:string" />
59 <xs:element name="li" type="xs:string" />
60 <xs:element name="MemberOfLibrary" type="xs:string" />
61 <xs:element name="MemberType" type="xs:string" />
62 <xs:element name="MemberValue" type="xs:string" />
63 <xs:element name="onequarter" type="xs:string" />
64 <xs:element name="ReturnType" type="xs:string" />
65 <xs:element name="TypeExcluded" type="xs:string" />
67 <!-- define complex elements -->
68 <xs:element name="altcompliant">
70 <xs:attribute ref="cref" />
74 <xs:element name="altmember">
77 <xs:extension base="xs:string">
78 <xs:attribute ref="cref" />
84 <xs:element name="AssemblyInfo">
87 <xs:element ref="AssemblyName" minOccurs="0" />
88 <xs:element ref="AssemblyPublicKey" minOccurs="0" />
89 <xs:element ref="AssemblyVersion" minOccurs="0" maxOccurs="unbounded" />
90 <xs:element ref="AssemblyCulture" minOccurs="0" />
91 <xs:element ref="Attributes" minOccurs="0" />
96 <xs:element name="Attribute">
99 <xs:element ref="AttributeName" />
100 <xs:element ref="Excluded" minOccurs="0" />
101 <xs:element ref="ExcludedTypeName" minOccurs="0" />
102 <xs:element ref="ExcludedLibraryName" minOccurs="0" />
107 <xs:element name="Attributes">
110 <xs:element ref="Attribute" minOccurs="0" maxOccurs="unbounded" />
115 <xs:element name="Base">
118 <xs:element ref="BaseTypeName" minOccurs="0" />
119 <xs:element ref="BaseTypeArguments" minOccurs="0" />
120 <xs:element ref="ExcludedBaseTypeName" minOccurs="0" />
121 <xs:element ref="ExcludedLibraryName" minOccurs="0" />
126 <xs:element name="BaseTypeArgument">
127 <xs:complexType mixed="true">
128 <xs:attribute ref="TypeParamName" />
132 <xs:element name="BaseTypeArguments">
135 <xs:element ref="BaseTypeArgument" minOccurs="0" />
140 <xs:element name="block">
141 <xs:complexType mixed="true">
142 <xs:choice minOccurs="0" maxOccurs="unbounded">
143 <xs:element ref="block" />
144 <xs:element ref="c" />
145 <xs:element ref="code" />
146 <xs:element ref="format" />
147 <xs:element ref="list" />
148 <xs:element ref="para" />
149 <xs:element ref="paramref" />
150 <xs:element ref="see" />
151 <xs:element ref="subscript" />
152 <xs:element ref="sup" />
153 <xs:element ref="typeparamref" />
155 <xs:attribute ref="subset" />
156 <xs:attribute ref="type" />
160 <xs:element name="c">
161 <xs:complexType mixed="true">
162 <xs:choice minOccurs="0" maxOccurs="unbounded">
163 <xs:element ref="code" />
164 <xs:element ref="para" />
165 <xs:element ref="paramref" />
166 <xs:element ref="see" />
167 <xs:element ref="typeparamref" />
172 <xs:element name="class">
174 <xs:choice minOccurs="0" maxOccurs="unbounded">
175 <xs:element ref="constructor" />
176 <xs:element ref="property" />
177 <xs:element ref="method" />
178 <xs:element ref="field" />
179 <xs:element ref="operator" />
180 <xs:element ref="event" />
181 <xs:element ref="enum" />
182 <xs:element ref="class" />
183 <xs:element ref="struct" />
184 <xs:element ref="interface" />
185 <xs:element ref="delegate" />
187 <xs:attribute ref="name" />
188 <xs:attribute ref="namespace" />
192 <xs:element name="code">
195 <xs:extension base="xs:string">
196 <xs:attribute ref="lang" />
197 <xs:attribute ref="language" />
198 <xs:attribute ref="source" />
199 <xs:attribute ref="src" />
205 <xs:element name="constructor">
207 <xs:attribute ref="name" />
208 <xs:attribute ref="argnames" />
212 <xs:element name="delegate">
214 <xs:choice maxOccurs="unbounded">
215 <xs:element ref="constructor" />
216 <xs:element ref="method" />
217 <xs:element ref="property" />
218 <xs:element ref="operator" />
220 <xs:attribute ref="name" />
221 <xs:attribute ref="namespace" />
225 <xs:element name="description">
226 <xs:complexType mixed="true">
227 <xs:choice minOccurs="0" maxOccurs="unbounded">
228 <xs:element ref="c" />
229 <xs:element ref="block" />
230 <xs:element ref="paramref" />
231 <xs:element ref="para" />
232 <xs:element ref="SPAN" />
233 <xs:element ref="see" />
234 <xs:element ref="sub" />
235 <xs:element ref="typeparamref" />
240 <xs:element name="Docs">
242 <xs:choice minOccurs="0" maxOccurs="unbounded">
243 <xs:element ref="summary" />
244 <xs:element ref="param" />
245 <xs:element ref="exception" />
246 <xs:element ref="returns" />
247 <xs:element ref="remarks" />
248 <xs:element ref="example" />
249 <xs:element ref="value" />
250 <xs:element ref="permission" />
251 <xs:element ref="altmember" />
252 <xs:element ref="altcompliant" />
253 <xs:element ref="since" />
254 <xs:element ref="threadsafe" />
255 <xs:element ref="typeparam" />
260 <xs:element name="enum">
262 <xs:choice minOccurs="0" maxOccurs="unbounded">
263 <xs:element ref="field" />
264 <xs:element ref="method" />
266 <xs:attribute ref="name" />
267 <xs:attribute ref="namespace" />
271 <xs:element name="event">
273 <xs:attribute ref="name" />
274 <xs:attribute ref="inherited" />
278 <xs:element name="example">
279 <xs:complexType mixed="true">
280 <xs:choice maxOccurs="unbounded">
281 <xs:element ref="format" />
282 <xs:element ref="para" />
283 <xs:element ref="code" />
284 <xs:element ref="c" />
285 <xs:element ref="list" />
286 <xs:element ref="see" />
291 <xs:element name="exception">
292 <xs:complexType mixed="true">
293 <xs:choice minOccurs="0" maxOccurs="unbounded">
294 <xs:element ref="block" />
295 <xs:element ref="format" />
296 <xs:element ref="para" />
297 <xs:element ref="paramref" />
298 <xs:element ref="see" />
299 <xs:element ref="SPAN" />
300 <xs:element ref="typeparamref" />
302 <xs:attribute ref="cref" />
306 <xs:element name="field">
308 <xs:attribute ref="name" />
309 <xs:attribute ref="inherited" />
313 <xs:element name="format">
316 <xs:any minOccurs="0" processContents="lax" />
318 <xs:attribute ref="type" />
322 <xs:element name="interface">
324 <xs:choice minOccurs="0" maxOccurs="unbounded">
325 <xs:element ref="constructor" />
326 <xs:element ref="property" />
327 <xs:element ref="method" />
328 <xs:element ref="field" />
329 <xs:element ref="event" />
331 <xs:attribute ref="name" />
332 <xs:attribute ref="namespace" />
336 <xs:element name="Interface">
339 <xs:element ref="InterfaceName" />
340 <xs:element ref="Excluded" minOccurs="0" />
345 <xs:element name="Interfaces">
348 <xs:element ref="Interface" minOccurs="0" maxOccurs="unbounded" />
353 <xs:element name="item">
356 <xs:element ref="term" minOccurs="1" maxOccurs="1" />
357 <xs:element ref="description" minOccurs="0" maxOccurs="unbounded" />
362 <xs:element name="Libraries">
364 <xs:choice minOccurs="0" maxOccurs="unbounded">
365 <xs:element ref="Type" minOccurs = "1" maxOccurs="unbounded" />
370 <xs:element name="link">
373 <xs:extension base="xs:string">
374 <xs:attribute ref="location" />
380 <xs:element name="list">
383 <xs:element ref="listheader" minOccurs="0" maxOccurs="1" />
384 <xs:element ref="item" minOccurs="0" maxOccurs="unbounded" />
386 <xs:attribute name="type" type="xs:string" />
390 <xs:element name="listheader">
393 <xs:element ref="term" />
394 <xs:element ref="description" maxOccurs="unbounded" />
399 <xs:element name="masterdoc">
401 <xs:choice minOccurs="0" maxOccurs="unbounded">
402 <xs:element ref="class" />
403 <xs:element ref="delegate" />
404 <xs:element ref="interface" />
405 <xs:element ref="struct" />
406 <xs:element ref="enum" />
408 <xs:attribute name="assembly" type="xs:string" />
412 <xs:element name="MemberSignature">
414 <xs:attribute ref="Language" />
415 <xs:attribute ref="Value" />
419 <xs:element name="Link">
421 <xs:attribute ref="Type" use="required" />
422 <xs:attribute name="Member" type="xs:string" use="required" />
426 <xs:element name="Member">
429 <xs:element ref="MemberSignature" minOccurs="1" maxOccurs="unbounded" />
430 <xs:element ref="MemberType" maxOccurs="1" />
431 <xs:element ref="AssemblyInfo" minOccurs="0" maxOccurs="1" />
432 <xs:element ref="Attributes" minOccurs="0" maxOccurs="1" />
433 <xs:element ref="ReturnValue" minOccurs="0" maxOccurs="1" />
434 <xs:element ref="TypeParameters" minOccurs="0" maxOccurs="1" />
435 <xs:element ref="Parameters" minOccurs="0" maxOccurs="1" />
436 <xs:element ref="MemberValue" minOccurs="0" maxOccurs="1" />
437 <xs:element ref="Docs" maxOccurs="1" />
438 <xs:element ref="Excluded" minOccurs="0" maxOccurs="1" />
439 <xs:element ref="ExcludedLibrary" minOccurs="0" maxOccurs="unbounded" />
440 <xs:element ref="Link" minOccurs="0" maxOccurs="1" />
442 <xs:attribute ref="MemberName" />
443 <xs:attribute ref="Deprecated" />
447 <xs:element name="Members">
450 <xs:element ref="Member" minOccurs="0" maxOccurs="unbounded" />
455 <xs:element name="method">
457 <xs:attribute ref="name" />
458 <xs:attribute ref="argnames" />
459 <xs:attribute ref="inherited" />
460 <xs:attribute ref="returntype" />
464 <xs:element name="Namespace">
467 <xs:element ref="Docs" maxOccurs="1" />
469 <xs:attribute ref="Name" />
470 <xs:attribute ref="FullName" />
471 <xs:attribute ref="FullNameSP" />
472 <xs:attribute ref="Maintainer" />
476 <xs:element name="operator">
478 <xs:attribute ref="name" />
479 <xs:attribute ref="argnames" />
483 <xs:element name="para">
484 <xs:complexType mixed="true">
485 <xs:choice minOccurs="0" maxOccurs="unbounded">
486 <xs:element ref="block" />
487 <xs:element ref="format" />
488 <xs:element ref="see" />
489 <xs:element ref="list" />
490 <xs:element ref="link" />
491 <xs:element ref="ul" />
492 <xs:element ref="paramref" />
493 <xs:element ref="c" />
494 <xs:element ref="onequarter" />
495 <xs:element ref="sub" />
496 <xs:element ref="sup" />
497 <xs:element ref="SPAN" />
498 <xs:element ref="typeparamref" />
503 <xs:element name="param">
504 <xs:complexType mixed="true">
505 <xs:choice minOccurs="0" maxOccurs="unbounded">
506 <xs:element ref="c" />
507 <xs:element ref="format" />
508 <xs:element ref="see" />
509 <xs:element ref="block" />
510 <xs:element ref="paramref" />
511 <xs:element ref="para" />
512 <xs:element ref="SPAN" />
513 <xs:element ref="typeparamref" />
515 <xs:attribute ref="name" use="required" />
519 <xs:element name="paramref">
521 <xs:attribute ref="name" use="required" />
525 <xs:element name="Parameter">
528 <xs:element ref="Attributes" minOccurs="0" maxOccurs="1" />
530 <xs:attribute ref="Name" />
531 <xs:attribute ref="Type" />
532 <xs:attribute ref="RefType" />
536 <xs:element name="Parameters">
539 <xs:element ref="Parameter" minOccurs="0" maxOccurs="unbounded" />
544 <xs:element name="permission">
545 <xs:complexType mixed="true">
546 <xs:choice minOccurs="0" maxOccurs="unbounded">
547 <xs:element ref="block" />
548 <xs:element ref="format" />
549 <xs:element ref="para" />
550 <xs:element ref="paramref" />
551 <xs:element ref="see" />
552 <xs:element ref="typeparamref" />
554 <xs:attribute ref="cref" />
558 <xs:element name="property">
560 <xs:attribute ref="name" />
561 <xs:attribute ref="inherited" />
562 <xs:attribute ref="propertytype" />
566 <xs:element name="remarks">
567 <xs:complexType mixed="true">
568 <xs:choice minOccurs="0" maxOccurs="unbounded">
569 <xs:element ref="block" />
570 <xs:element ref="c" />
571 <xs:element ref="code" />
572 <xs:element ref="format" />
573 <xs:element ref="para" />
574 <xs:element ref="paramref" />
575 <xs:element ref="see" />
576 <xs:element ref="ul" />
577 <xs:element ref="example" />
578 <xs:element ref="list" />
579 <xs:element ref="SPAN" />
580 <xs:element ref="typeparamref" />
585 <xs:element name="returns">
586 <xs:complexType mixed="true">
587 <xs:choice minOccurs="0" maxOccurs="unbounded">
588 <xs:element ref="format" />
589 <xs:element ref="list" />
590 <xs:element ref="para" />
591 <xs:element ref="paramref" />
592 <xs:element ref="see" />
593 <xs:element ref="typeparamref" />
594 <xs:element ref="ul" />
599 <xs:element name="ReturnValue">
602 <xs:element ref="ReturnType" minOccurs="0" maxOccurs="1" />
603 <xs:element ref="Attributes" minOccurs="0" />
608 <xs:element name="see">
610 <xs:attribute ref="cref" />
611 <xs:attribute ref="langword" />
612 <xs:attribute ref="qualify" />
616 <xs:element name="since">
618 <xs:attribute ref="version" />
622 <xs:element name="SPAN">
623 <xs:complexType mixed="true">
624 <xs:choice minOccurs="0" maxOccurs="unbounded">
625 <xs:element ref="block" />
626 <xs:element ref="format" />
627 <xs:element ref="para" />
628 <xs:element ref="paramref" />
629 <xs:element ref="see" />
630 <xs:element ref="SPAN" />
631 <xs:element ref="typeparamref" />
633 <xs:attribute ref="version" />
637 <xs:element name="struct">
639 <xs:choice minOccurs="0" maxOccurs="unbounded">
640 <xs:element ref="constructor" />
641 <xs:element ref="property" />
642 <xs:element ref="method" />
643 <xs:element ref="field" />
644 <xs:element ref="operator" />
645 <xs:element ref="struct" />
646 <xs:element ref="class" />
648 <xs:attribute ref="name" />
649 <xs:attribute ref="namespace" />
653 <xs:element name="sub">
654 <xs:complexType mixed="true">
655 <xs:choice minOccurs="0" maxOccurs="unbounded">
656 <xs:element ref="paramref" />
657 <xs:element ref="typeparamref" />
662 <xs:element name="subscript">
663 <xs:complexType mixed="true">
664 <xs:attribute name="term" type="xs:string" use="required" />
668 <xs:element name="summary">
669 <xs:complexType mixed="true">
670 <xs:choice minOccurs="0" maxOccurs="unbounded">
671 <xs:element ref="block" />
672 <xs:element ref="c" />
673 <xs:element ref="format" />
674 <xs:element ref="para" />
675 <xs:element ref="paramref" />
676 <xs:element ref="see" />
677 <xs:element ref="typeparamref" />
678 <xs:element ref="ul" />
679 <xs:element ref="list" />
684 <xs:element name="sup">
685 <xs:complexType mixed="true">
686 <xs:choice minOccurs="0" maxOccurs="unbounded">
687 <xs:element ref="paramref" />
688 <xs:element ref="typeparamref" />
693 <xs:element name="term">
694 <xs:complexType mixed="true">
695 <xs:choice minOccurs="0" maxOccurs="unbounded">
696 <xs:element ref="block" />
697 <xs:element ref="c" />
698 <xs:element ref="format" />
699 <xs:element ref="see" />
700 <xs:element ref="para" />
701 <xs:element ref="paramref" />
702 <xs:element ref="sup" />
703 <xs:element ref="typeparamref" />
708 <xs:element name="threadsafe">
711 <xs:element ref="para" minOccurs="1" />
716 <xs:element name="ThreadingSafetyStatement">
717 <xs:complexType mixed="true">
719 <xs:element ref="link" minOccurs="0" />
724 <xs:element name="ThreadSafetyStatement">
725 <xs:complexType mixed="true">
727 <xs:element ref="link" minOccurs="0" />
732 <xs:element name="Type">
734 <xs:choice maxOccurs="unbounded">
735 <xs:element ref="TypeSignature" minOccurs="1" />
736 <xs:element ref="MemberOfLibrary" minOccurs="0" />
737 <xs:element ref="AssemblyInfo" minOccurs="1" />
738 <xs:element ref="TypeParameters" minOccurs="0" maxOccurs="1" />
739 <xs:element ref="ThreadingSafetyStatement" minOccurs="0" />
740 <xs:element ref="ThreadSafetyStatement" minOccurs="0" />
741 <xs:element ref="Docs" minOccurs="1" />
742 <xs:element ref="Base" minOccurs="1" />
743 <xs:element ref="Interfaces" minOccurs="1" />
744 <xs:element ref="Attributes" minOccurs="1" />
745 <xs:element ref="Members" minOccurs="1" />
746 <xs:element ref="Parameters" minOccurs="0" />
747 <xs:element ref="ReturnValue" minOccurs="0" />
748 <xs:element ref="TypeExcluded" minOccurs="0" />
750 <xs:attribute ref="Name" use="required" />
751 <xs:attribute ref="FullName" use="required" />
752 <xs:attribute ref="FullNameSP" />
753 <xs:attribute ref="Maintainer" />
757 <xs:element name="Types">
759 <xs:choice minOccurs="1" maxOccurs="unbounded">
760 <xs:element ref="Type" />
762 <xs:attribute ref="Library" use="required" />
766 <xs:element name="typeparam">
767 <xs:complexType mixed="true">
768 <xs:choice minOccurs="0" maxOccurs="unbounded">
769 <xs:element ref="block" />
770 <xs:element ref="c" />
771 <xs:element ref="format" />
772 <xs:element ref="para" />
773 <xs:element ref="paramref" />
774 <xs:element ref="see" />
775 <xs:element ref="typeparamref" />
777 <xs:attribute ref="name" use="required" />
781 <xs:element name="typeparamref">
783 <xs:attribute ref="name" use="required" />
787 <xs:element name="TypeParameters">
789 <xs:choice maxOccurs="unbounded">
790 <xs:element ref="TypeParameter" />
795 <xs:element name="TypeParameter">
796 <xs:complexType mixed="true">
797 <xs:choice minOccurs="0" maxOccurs="unbounded">
798 <xs:element ref="Attributes" />
799 <xs:element ref="Constraints" />
801 <xs:attribute ref="Name" use="required" />
805 <xs:element name="Constraints">
806 <xs:complexType mixed="true">
807 <xs:choice minOccurs="0" maxOccurs="unbounded">
808 <xs:element name="ParameterAttribute" type="xs:string" />
809 <xs:element ref="BaseTypeName" />
810 <xs:element ref="InterfaceName" />
815 <xs:element name="TypeSignature">
817 <xs:attribute ref="Language" use="required" />
818 <xs:attribute ref="Value" use="required" />
819 <xs:attribute ref="Maintainer" />
823 <xs:element name="ul">
826 <xs:element ref="li" minOccurs="1" maxOccurs="unbounded" />
831 <xs:element name="value">
832 <xs:complexType mixed="true">
833 <xs:choice minOccurs="0" maxOccurs="unbounded">
834 <xs:element ref="block" />
835 <xs:element ref="c" />
836 <xs:element ref="para" />
837 <xs:element ref="paramref" />
838 <xs:element ref="see" />
839 <xs:element ref="typeparamref" />
840 <xs:element ref="ul" />
841 <xs:element ref="example" />
842 <xs:element ref="list" />
848 index.xml & namespace-name.xml support
851 <!-- define attributes -->
852 <xs:attribute name="Version" type="xs:string" />
853 <xs:attribute name="DisplayName" type="xs:string" />
854 <xs:attribute name="Kind" type="xs:string" />
856 <!-- define simple elements -->
857 <xs:element name="Title" type="xs:string" />
859 <!-- define complex elements -->
860 <xs:element name="Assemblies">
862 <xs:choice minOccurs="0" maxOccurs="unbounded">
863 <xs:element ref="Assembly" />
868 <xs:element name="Assembly">
870 <xs:choice minOccurs="0" maxOccurs="unbounded">
871 <xs:element ref="Attributes" />
873 <xs:attribute ref="Name" />
874 <xs:attribute ref="Version" />
878 <xs:element name="Copyright">
879 <xs:complexType mixed="true">
880 <xs:choice minOccurs="0" maxOccurs="unbounded">
881 <xs:element ref="block" />
882 <xs:element ref="code" />
883 <xs:element ref="example" />
884 <xs:element ref="list" />
885 <xs:element ref="para" />
886 <xs:element ref="paramref" />
887 <xs:element ref="see" />
888 <xs:element ref="typeparamref" />
889 <xs:element ref="ul" />
894 <xs:element name="ExtensionMethods">
897 <xs:element ref="ExtensionMethod" minOccurs="0" maxOccurs="unbounded" />
902 <xs:element name="ExtensionMethod">
905 <xs:element name="Targets" minOccurs="1" maxOccurs="1">
907 <xs:choice minOccurs="1" maxOccurs="unbounded">
908 <xs:element name="Target">
910 <xs:attribute ref="Type" use="required" />
916 <xs:element ref="Member" minOccurs="1" maxOccurs="1" />
921 <xs:element name="Overview">
923 <xs:choice minOccurs="0" maxOccurs="unbounded">
924 <xs:element ref="Assemblies" />
925 <xs:element ref="Copyright" />
926 <xs:element ref="Remarks" />
927 <xs:element ref="Title" />
928 <xs:element name="Types">
930 <xs:choice minOccurs="0" maxOccurs="unbounded">
931 <xs:element name="Namespace">
933 <xs:choice minOccurs="0" maxOccurs="unbounded">
934 <xs:element name="Type">
936 <xs:attribute ref="Name" use="required" />
937 <xs:attribute ref="DisplayName" />
938 <xs:attribute ref="Kind" />
942 <xs:attribute ref="Name" />
948 <xs:element ref="ExtensionMethods" />
953 <xs:element name="Remarks">
954 <xs:complexType mixed="true">
955 <xs:choice minOccurs="0" maxOccurs="unbounded">
956 <xs:element ref="block" />
957 <xs:element ref="code" />
958 <xs:element ref="example" />
959 <xs:element ref="list" />
960 <xs:element ref="para" />
961 <xs:element ref="paramref" />
962 <xs:element ref="typeparamref" />
963 <xs:element ref="see" />
964 <xs:element ref="ul" />