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" />
64 <xs:element name="PRE" />
65 <xs:element name="permille" />
66 <xs:element name="pi" />
67 <xs:element name="pre" />
68 <xs:element name="ReturnType" type="xs:string" />
69 <xs:element name="TypeExcluded" type="xs:string" />
71 <!-- define complex elements -->
72 <xs:element name="altcompliant">
74 <xs:attribute ref="cref" />
78 <xs:element name="altmember">
81 <xs:extension base="xs:string">
82 <xs:attribute ref="cref" />
88 <xs:element name="AssemblyInfo">
91 <xs:element ref="AssemblyName" minOccurs="0" />
92 <xs:element ref="AssemblyPublicKey" minOccurs="0" />
93 <xs:element ref="AssemblyVersion" minOccurs="0" maxOccurs="unbounded" />
94 <xs:element ref="AssemblyCulture" minOccurs="0" />
95 <xs:element ref="Attributes" minOccurs="0" />
100 <xs:element name="Attribute">
103 <xs:element ref="AttributeName" />
104 <xs:element ref="Excluded" minOccurs="0" />
105 <xs:element ref="ExcludedTypeName" minOccurs="0" />
106 <xs:element ref="ExcludedLibraryName" minOccurs="0" />
111 <xs:element name="Attributes">
114 <xs:element ref="Attribute" minOccurs="0" maxOccurs="unbounded" />
119 <xs:element name="Base">
122 <xs:element ref="BaseTypeName" minOccurs="0" />
123 <xs:element ref="BaseTypeArguments" minOccurs="0" />
124 <xs:element ref="ExcludedBaseTypeName" minOccurs="0" />
125 <xs:element ref="ExcludedLibraryName" minOccurs="0" />
130 <xs:element name="BaseTypeArgument">
131 <xs:complexType mixed="true">
132 <xs:attribute ref="TypeParamName" />
136 <xs:element name="BaseTypeArguments">
139 <xs:element ref="BaseTypeArgument" minOccurs="0" />
144 <xs:element name="block">
145 <xs:complexType mixed="true">
146 <xs:choice minOccurs="0" maxOccurs="unbounded">
147 <xs:element ref="block" />
148 <xs:element ref="c" />
149 <xs:element ref="code" />
150 <xs:element ref="format" />
151 <xs:element ref="list" />
152 <xs:element ref="para" />
153 <xs:element ref="paramref" />
154 <xs:element ref="see" />
155 <xs:element ref="subscript" />
156 <xs:element ref="sup" />
157 <xs:element ref="pi" />
158 <xs:element ref="typeparamref" />
160 <xs:attribute ref="subset" />
161 <xs:attribute ref="type" />
165 <xs:element name="c">
166 <xs:complexType mixed="true">
167 <xs:choice minOccurs="0" maxOccurs="unbounded">
168 <xs:element ref="code" />
169 <xs:element ref="para" />
170 <xs:element ref="paramref" />
171 <xs:element ref="see" />
172 <xs:element ref="typeparamref" />
177 <xs:element name="class">
179 <xs:choice minOccurs="0" maxOccurs="unbounded">
180 <xs:element ref="constructor" />
181 <xs:element ref="property" />
182 <xs:element ref="method" />
183 <xs:element ref="field" />
184 <xs:element ref="operator" />
185 <xs:element ref="event" />
186 <xs:element ref="enum" />
187 <xs:element ref="class" />
188 <xs:element ref="struct" />
189 <xs:element ref="interface" />
190 <xs:element ref="delegate" />
192 <xs:attribute ref="name" />
193 <xs:attribute ref="namespace" />
197 <xs:element name="code">
200 <xs:extension base="xs:string">
201 <xs:attribute ref="lang" />
202 <xs:attribute ref="language" />
203 <xs:attribute ref="source" />
204 <xs:attribute ref="src" />
210 <xs:element name="constructor">
212 <xs:attribute ref="name" />
213 <xs:attribute ref="argnames" />
217 <xs:element name="delegate">
219 <xs:choice maxOccurs="unbounded">
220 <xs:element ref="constructor" />
221 <xs:element ref="method" />
222 <xs:element ref="property" />
223 <xs:element ref="operator" />
225 <xs:attribute ref="name" />
226 <xs:attribute ref="namespace" />
230 <xs:element name="description">
231 <xs:complexType mixed="true">
232 <xs:choice minOccurs="0" maxOccurs="unbounded">
233 <xs:element ref="c" />
234 <xs:element ref="block" />
235 <xs:element ref="geq" />
236 <xs:element ref="leq" />
237 <xs:element ref="paramref" />
238 <xs:element ref="para" />
239 <xs:element ref="permille" />
240 <xs:element ref="plusminus" />
241 <xs:element ref="SPAN" />
242 <xs:element ref="see" />
243 <xs:element ref="sub" />
244 <xs:element ref="typeparamref" />
249 <xs:element name="Docs">
251 <xs:choice minOccurs="0" maxOccurs="unbounded">
252 <xs:element ref="summary" />
253 <xs:element ref="param" />
254 <xs:element ref="exception" />
255 <xs:element ref="returns" />
256 <xs:element ref="remarks" />
257 <xs:element ref="example" />
258 <xs:element ref="value" />
259 <xs:element ref="permission" />
260 <xs:element ref="altmember" />
261 <xs:element ref="altcompliant" />
262 <xs:element ref="since" />
263 <xs:element ref="threadsafe" />
264 <xs:element ref="typeparam" />
269 <xs:element name="enum">
271 <xs:choice minOccurs="0" maxOccurs="unbounded">
272 <xs:element ref="field" />
273 <xs:element ref="method" />
275 <xs:attribute ref="name" />
276 <xs:attribute ref="namespace" />
280 <xs:element name="event">
282 <xs:attribute ref="name" />
283 <xs:attribute ref="inherited" />
287 <xs:element name="example">
288 <xs:complexType mixed="true">
289 <xs:choice maxOccurs="unbounded">
290 <xs:element ref="format" />
291 <xs:element ref="para" />
292 <xs:element ref="code" />
293 <xs:element ref="codelink" />
294 <xs:element ref="c" />
295 <xs:element ref="list" />
296 <xs:element ref="see" />
301 <xs:element name="exception">
302 <xs:complexType mixed="true">
303 <xs:choice minOccurs="0" maxOccurs="unbounded">
304 <xs:element ref="block" />
305 <xs:element ref="format" />
306 <xs:element ref="para" />
307 <xs:element ref="paramref" />
308 <xs:element ref="see" />
309 <xs:element ref="SPAN" />
310 <xs:element ref="typeparamref" />
312 <xs:attribute ref="cref" />
316 <xs:element name="field">
318 <xs:attribute ref="name" />
319 <xs:attribute ref="inherited" />
323 <xs:element name="format">
326 <xs:any minOccurs="0" processContents="lax" />
328 <xs:attribute ref="type" />
332 <xs:element name="interface">
334 <xs:choice minOccurs="0" maxOccurs="unbounded">
335 <xs:element ref="constructor" />
336 <xs:element ref="property" />
337 <xs:element ref="method" />
338 <xs:element ref="field" />
339 <xs:element ref="event" />
341 <xs:attribute ref="name" />
342 <xs:attribute ref="namespace" />
346 <xs:element name="Interface">
349 <xs:element ref="InterfaceName" />
350 <xs:element ref="Excluded" minOccurs="0" />
355 <xs:element name="Interfaces">
358 <xs:element ref="Interface" minOccurs="0" maxOccurs="unbounded" />
363 <xs:element name="item">
366 <xs:element ref="term" minOccurs="1" maxOccurs="1" />
367 <xs:element ref="description" minOccurs="0" maxOccurs="unbounded" />
372 <xs:element name="link">
375 <xs:extension base="xs:string">
376 <xs:attribute ref="location" />
382 <xs:element name="list">
385 <xs:element ref="listheader" minOccurs="0" maxOccurs="1" />
386 <xs:element ref="item" minOccurs="0" maxOccurs="unbounded" />
388 <xs:attribute name="type" type="xs:string" />
392 <xs:element name="listheader">
395 <xs:element ref="term" />
396 <xs:element ref="description" maxOccurs="unbounded" />
401 <xs:element name="masterdoc">
403 <xs:choice minOccurs="0" maxOccurs="unbounded">
404 <xs:element ref="class" />
405 <xs:element ref="delegate" />
406 <xs:element ref="interface" />
407 <xs:element ref="struct" />
408 <xs:element ref="enum" />
410 <xs:attribute name="assembly" type="xs:string" />
414 <xs:element name="MemberSignature">
416 <xs:attribute ref="Language" />
417 <xs:attribute ref="Value" />
421 <xs:element name="Link">
423 <xs:attribute ref="Type" use="required" />
424 <xs:attribute name="Member" type="xs:string" use="required" />
428 <xs:element name="Member">
431 <xs:element ref="MemberSignature" minOccurs="1" maxOccurs="unbounded" />
432 <xs:element ref="MemberType" maxOccurs="1" />
433 <xs:element ref="AssemblyInfo" minOccurs="0" maxOccurs="1" />
434 <xs:element ref="Attributes" minOccurs="0" maxOccurs="1" />
435 <xs:element ref="ReturnValue" minOccurs="0" maxOccurs="1" />
436 <xs:element ref="TypeParameters" minOccurs="0" maxOccurs="1" />
437 <xs:element ref="Parameters" minOccurs="0" maxOccurs="1" />
438 <xs:element ref="MemberValue" minOccurs="0" maxOccurs="1" />
439 <xs:element ref="Docs" maxOccurs="1" />
440 <xs:element ref="Excluded" minOccurs="0" maxOccurs="1" />
441 <xs:element ref="ExcludedLibrary" minOccurs="0" maxOccurs="unbounded" />
442 <xs:element ref="Link" minOccurs="0" maxOccurs="1" />
444 <xs:attribute ref="MemberName" />
445 <xs:attribute ref="Deprecated" />
449 <xs:element name="Members">
452 <xs:element ref="Member" minOccurs="0" maxOccurs="unbounded" />
457 <xs:element name="method">
459 <xs:attribute ref="name" />
460 <xs:attribute ref="argnames" />
461 <xs:attribute ref="inherited" />
462 <xs:attribute ref="returntype" />
466 <xs:element name="Namespace">
469 <xs:element ref="Docs" maxOccurs="1" />
471 <xs:attribute ref="Name" />
472 <xs:attribute ref="FullName" />
473 <xs:attribute ref="FullNameSP" />
474 <xs:attribute ref="Maintainer" />
478 <xs:element name="operator">
480 <xs:attribute ref="name" />
481 <xs:attribute ref="argnames" />
485 <xs:element name="para">
486 <xs:complexType mixed="true">
487 <xs:choice minOccurs="0" maxOccurs="unbounded">
488 <xs:element ref="block" />
489 <xs:element ref="format" />
490 <xs:element ref="see" />
491 <xs:element ref="geq" />
492 <xs:element ref="leq" />
493 <xs:element ref="list" />
494 <xs:element ref="link" />
495 <xs:element ref="ul" />
496 <xs:element ref="paramref" />
497 <xs:element ref="c" />
498 <xs:element ref="onequarter" />
499 <xs:element ref="sub" />
500 <xs:element ref="superscript" />
501 <xs:element ref="sup" />
502 <xs:element ref="permille" />
503 <xs:element ref="plusminus" />
504 <xs:element ref="SPAN" />
505 <xs:element ref="pi" />
506 <xs:element ref="theta" />
507 <xs:element ref="typeparamref" />
508 <xs:element ref="whitespace" />
513 <xs:element name="param">
514 <xs:complexType mixed="true">
515 <xs:choice minOccurs="0" maxOccurs="unbounded">
516 <xs:element ref="c" />
517 <xs:element ref="format" />
518 <xs:element ref="see" />
519 <xs:element ref="block" />
520 <xs:element ref="geq" />
521 <xs:element ref="leq" />
522 <xs:element ref="paramref" />
523 <xs:element ref="plusminus" />
524 <xs:element ref="para" />
525 <xs:element ref="SPAN" />
526 <xs:element ref="typeparamref" />
527 <xs:element ref="whitespace" />
529 <xs:attribute ref="name" use="required" />
533 <xs:element name="paramref">
535 <xs:attribute ref="name" use="required" />
539 <xs:element name="Parameter">
542 <xs:element ref="Attributes" minOccurs="0" maxOccurs="1" />
544 <xs:attribute ref="Name" />
545 <xs:attribute ref="Type" />
546 <xs:attribute ref="RefType" />
550 <xs:element name="Parameters">
553 <xs:element ref="Parameter" minOccurs="0" maxOccurs="unbounded" />
558 <xs:element name="permission">
559 <xs:complexType mixed="true">
560 <xs:choice minOccurs="0" maxOccurs="unbounded">
561 <xs:element ref="block" />
562 <xs:element ref="format" />
563 <xs:element ref="para" />
564 <xs:element ref="paramref" />
565 <xs:element ref="see" />
566 <xs:element ref="typeparamref" />
568 <xs:attribute ref="cref" />
572 <xs:element name="property">
574 <xs:attribute ref="name" />
575 <xs:attribute ref="inherited" />
576 <xs:attribute ref="propertytype" />
580 <xs:element name="remarks">
581 <xs:complexType mixed="true">
582 <xs:choice minOccurs="0" maxOccurs="unbounded">
583 <xs:element ref="block" />
584 <xs:element ref="c" />
585 <xs:element ref="code" />
586 <xs:element ref="format" />
587 <xs:element ref="para" />
588 <xs:element ref="paramref" />
589 <xs:element ref="PRE" />
590 <xs:element ref="pre" />
591 <xs:element ref="see" />
592 <xs:element ref="ul" />
593 <xs:element ref="example" />
594 <xs:element ref="list" />
595 <xs:element ref="SPAN" />
596 <xs:element ref="typeparamref" />
601 <xs:element name="returns">
602 <xs:complexType mixed="true">
603 <xs:choice minOccurs="0" maxOccurs="unbounded">
604 <xs:element ref="format" />
605 <xs:element ref="geq" />
606 <xs:element ref="leq" />
607 <xs:element ref="list" />
608 <xs:element ref="para" />
609 <xs:element ref="paramref" />
610 <xs:element ref="pi" />
611 <xs:element ref="see" />
612 <xs:element ref="theta" />
613 <xs:element ref="typeparamref" />
614 <xs:element ref="ul" />
615 <xs:element ref="whitespace" />
620 <xs:element name="ReturnValue">
623 <xs:element ref="ReturnType" minOccurs="0" maxOccurs="1" />
624 <xs:element ref="Attributes" minOccurs="0" />
629 <xs:element name="see">
631 <xs:attribute ref="cref" />
632 <xs:attribute ref="langword" />
633 <xs:attribute ref="qualify" />
637 <xs:element name="since">
639 <xs:attribute ref="version" />
643 <xs:element name="SPAN">
644 <xs:complexType mixed="true">
645 <xs:choice minOccurs="0" maxOccurs="unbounded">
646 <xs:element ref="block" />
647 <xs:element ref="format" />
648 <xs:element ref="para" />
649 <xs:element ref="paramref" />
650 <xs:element ref="see" />
651 <xs:element ref="SPAN" />
652 <xs:element ref="typeparamref" />
654 <xs:attribute ref="version" />
658 <xs:element name="struct">
660 <xs:choice minOccurs="0" maxOccurs="unbounded">
661 <xs:element ref="constructor" />
662 <xs:element ref="property" />
663 <xs:element ref="method" />
664 <xs:element ref="field" />
665 <xs:element ref="operator" />
666 <xs:element ref="struct" />
667 <xs:element ref="class" />
669 <xs:attribute ref="name" />
670 <xs:attribute ref="namespace" />
674 <xs:element name="sub">
675 <xs:complexType mixed="true">
676 <xs:choice minOccurs="0" maxOccurs="unbounded">
677 <xs:element ref="paramref" />
678 <xs:element ref="typeparamref" />
683 <xs:element name="subscript">
685 <xs:attribute name="term" type="xs:string" use="required" />
689 <xs:element name="summary">
690 <xs:complexType mixed="true">
691 <xs:choice minOccurs="0" maxOccurs="unbounded">
692 <xs:element ref="block" />
693 <xs:element ref="c" />
694 <xs:element ref="format" />
695 <xs:element ref="para" />
696 <xs:element ref="paramref" />
697 <xs:element ref="see" />
698 <xs:element ref="typeparamref" />
699 <xs:element ref="ul" />
700 <xs:element ref="list" />
705 <xs:element name="sup">
706 <xs:complexType mixed="true">
707 <xs:choice minOccurs="0" maxOccurs="unbounded">
708 <xs:element ref="i" />
709 <xs:element ref="paramref" />
710 <xs:element ref="typeparamref" />
715 <xs:element name="superscript">
717 <xs:attribute name="term" type="xs:string" use="required" />
721 <xs:element name="term">
722 <xs:complexType mixed="true">
723 <xs:choice minOccurs="0" maxOccurs="unbounded">
724 <xs:element ref="block" />
725 <xs:element ref="c" />
726 <xs:element ref="format" />
727 <xs:element ref="geq" />
728 <xs:element ref="leq" />
729 <xs:element ref="see" />
730 <xs:element ref="para" />
731 <xs:element ref="paramref" />
732 <xs:element ref="pi" />
733 <xs:element ref="plusminus" />
734 <xs:element ref="sup" />
735 <xs:element ref="theta" />
736 <xs:element ref="typeparamref" />
737 <xs:element ref="whitespace" />
742 <xs:element name="theta" />
744 <xs:element name="threadsafe">
747 <xs:element ref="para" minOccurs="1" />
752 <xs:element name="ThreadingSafetyStatement">
753 <xs:complexType mixed="true">
755 <xs:element ref="link" minOccurs="0" />
760 <xs:element name="ThreadSafetyStatement">
761 <xs:complexType mixed="true">
763 <xs:element ref="link" minOccurs="0" />
768 <xs:element name="Type">
770 <xs:choice maxOccurs="unbounded">
771 <xs:element ref="TypeSignature" minOccurs="1" />
772 <xs:element ref="MemberOfLibrary" minOccurs="0" />
773 <xs:element ref="AssemblyInfo" minOccurs="1" />
774 <xs:element ref="TypeParameters" minOccurs="0" maxOccurs="1" />
775 <xs:element ref="ThreadingSafetyStatement" minOccurs="0" />
776 <xs:element ref="ThreadSafetyStatement" minOccurs="0" />
777 <xs:element ref="Docs" minOccurs="1" />
778 <xs:element ref="Base" minOccurs="1" />
779 <xs:element ref="Interfaces" minOccurs="1" />
780 <xs:element ref="Attributes" minOccurs="1" />
781 <xs:element ref="Members" minOccurs="1" />
782 <xs:element ref="Parameters" minOccurs="0" />
783 <xs:element ref="ReturnValue" minOccurs="0" />
784 <xs:element ref="TypeExcluded" minOccurs="0" />
786 <xs:attribute ref="Name" use="required" />
787 <xs:attribute ref="FullName" use="required" />
788 <xs:attribute ref="FullNameSP" />
789 <xs:attribute ref="Maintainer" />
793 <xs:element name="Types">
795 <xs:choice minOccurs="1" maxOccurs="unbounded">
796 <xs:element ref="Type" />
798 <xs:attribute ref="Library" use="required" />
802 <xs:element name="typeparam">
803 <xs:complexType mixed="true">
804 <xs:choice minOccurs="0" maxOccurs="unbounded">
805 <xs:element ref="block" />
806 <xs:element ref="c" />
807 <xs:element ref="format" />
808 <xs:element ref="para" />
809 <xs:element ref="paramref" />
810 <xs:element ref="see" />
811 <xs:element ref="typeparamref" />
813 <xs:attribute ref="name" use="required" />
817 <xs:element name="typeparamref">
819 <xs:attribute ref="name" use="required" />
823 <xs:element name="TypeParameters">
825 <xs:choice maxOccurs="unbounded">
826 <xs:element ref="TypeParameter" />
831 <xs:element name="TypeParameter">
832 <xs:complexType mixed="true">
833 <xs:choice minOccurs="0" maxOccurs="unbounded">
834 <xs:element ref="Attributes" />
835 <xs:element ref="Constraints" />
837 <xs:attribute ref="Name" use="required" />
841 <xs:element name="Constraints">
842 <xs:complexType mixed="true">
843 <xs:choice minOccurs="0" maxOccurs="unbounded">
844 <xs:element name="ParameterAttribute" type="xs:string" />
845 <xs:element ref="BaseTypeName" />
846 <xs:element ref="InterfaceName" />
851 <xs:element name="TypeSignature">
853 <xs:attribute ref="Language" use="required" />
854 <xs:attribute ref="Value" use="required" />
855 <xs:attribute ref="Maintainer" />
859 <xs:element name="ul">
862 <xs:element ref="li" minOccurs="1" maxOccurs="unbounded" />
867 <xs:element name="value">
868 <xs:complexType mixed="true">
869 <xs:choice minOccurs="0" maxOccurs="unbounded">
870 <xs:element ref="block" />
871 <xs:element ref="c" />
872 <xs:element ref="para" />
873 <xs:element ref="paramref" />
874 <xs:element ref="see" />
875 <xs:element ref="typeparamref" />
876 <xs:element ref="ul" />
877 <xs:element ref="example" />
878 <xs:element ref="list" />
884 index.xml & namespace-name.xml support
887 <!-- define attributes -->
888 <xs:attribute name="Version" type="xs:string" />
889 <xs:attribute name="DisplayName" type="xs:string" />
890 <xs:attribute name="Kind" type="xs:string" />
892 <!-- define simple elements -->
893 <xs:element name="Title" type="xs:string" />
895 <!-- define complex elements -->
896 <xs:element name="Assemblies">
898 <xs:choice minOccurs="0" maxOccurs="unbounded">
899 <xs:element ref="Assembly" />
904 <xs:element name="Assembly">
906 <xs:choice minOccurs="0" maxOccurs="unbounded">
907 <xs:element ref="AssemblyPublicKey" />
908 <xs:element ref="AssemblyCulture" />
909 <xs:element ref="Attributes" />
911 <xs:attribute ref="Name" />
912 <xs:attribute ref="Version" />
916 <xs:element name="Copyright">
917 <xs:complexType mixed="true">
918 <xs:choice minOccurs="0" maxOccurs="unbounded">
919 <xs:element ref="block" />
920 <xs:element ref="code" />
921 <xs:element ref="example" />
922 <xs:element ref="list" />
923 <xs:element ref="para" />
924 <xs:element ref="paramref" />
925 <xs:element ref="see" />
926 <xs:element ref="typeparamref" />
927 <xs:element ref="ul" />
932 <xs:element name="ExtensionMethods">
935 <xs:element ref="ExtensionMethod" minOccurs="0" maxOccurs="unbounded" />
940 <xs:element name="ExtensionMethod">
943 <xs:element name="Targets" minOccurs="1" maxOccurs="1">
945 <xs:choice minOccurs="1" maxOccurs="unbounded">
946 <xs:element name="Target">
948 <xs:attribute ref="Type" use="required" />
954 <xs:element ref="Member" minOccurs="1" maxOccurs="1" />
959 <xs:element name="Overview">
961 <xs:choice minOccurs="0" maxOccurs="unbounded">
962 <xs:element ref="Assemblies" />
963 <xs:element ref="Copyright" />
964 <xs:element ref="Remarks" />
965 <xs:element ref="Title" />
966 <xs:element name="Types">
968 <xs:choice minOccurs="0" maxOccurs="unbounded">
969 <xs:element name="Namespace">
971 <xs:choice minOccurs="0" maxOccurs="unbounded">
972 <xs:element name="Type">
974 <xs:attribute ref="Name" use="required" />
975 <xs:attribute ref="DisplayName" />
976 <xs:attribute ref="Kind" />
980 <xs:attribute ref="Name" />
986 <xs:element ref="ExtensionMethods" />
991 <xs:element name="Remarks">
992 <xs:complexType mixed="true">
993 <xs:choice minOccurs="0" maxOccurs="unbounded">
994 <xs:element ref="block" />
995 <xs:element ref="code" />
996 <xs:element ref="example" />
997 <xs:element ref="list" />
998 <xs:element ref="para" />
999 <xs:element ref="paramref" />
1000 <xs:element ref="typeparamref" />
1001 <xs:element ref="see" />
1002 <xs:element ref="ul" />
1008 ECMA 335 CLILibraryTypes.xml support
1011 <xs:element name="Libraries">
1013 <xs:choice minOccurs="0" maxOccurs="unbounded">
1014 <xs:element ref="Types" minOccurs = "1" maxOccurs="unbounded" />
1019 <xs:element name="codelink">
1021 <xs:attribute name="SampleID" type="xs:string" />
1022 <xs:attribute name="SnippedID" type="xs:string" />
1026 <xs:element name="geq" />
1027 <xs:element name="leq" />
1028 <xs:element name="plusminus" />
1029 <xs:element name="whitespace" />