Updates referencesource to .NET 4.7
[mono.git] / mcs / class / referencesource / System.Xml / System / Xml / Schema / XmlSchemaSimpleContentRestriction.cs
1 //------------------------------------------------------------------------------
2 // <copyright file="XmlSchemaSimpleContentRestriction.cs" company="Microsoft">
3 //     Copyright (c) Microsoft Corporation.  All rights reserved.
4 // </copyright> 
5 // <owner current="true" primary="true">Microsoft</owner>                                                                
6 //------------------------------------------------------------------------------
7
8 namespace System.Xml.Schema {
9
10     using System.Xml.Serialization;
11
12     /// <include file='doc\XmlSchemaSimpleContentRestriction.uex' path='docs/doc[@for="XmlSchemaSimpleContentRestriction"]/*' />
13     /// <devdoc>
14     ///    <para>[To be supplied.]</para>
15     /// </devdoc>
16     public class XmlSchemaSimpleContentRestriction : XmlSchemaContent {
17         XmlQualifiedName baseTypeName = XmlQualifiedName.Empty; 
18         XmlSchemaSimpleType baseType;
19         XmlSchemaObjectCollection facets = new XmlSchemaObjectCollection();
20         XmlSchemaObjectCollection attributes = new XmlSchemaObjectCollection();
21         XmlSchemaAnyAttribute anyAttribute;
22
23         /// <include file='doc\XmlSchemaSimpleContentRestriction.uex' path='docs/doc[@for="XmlSchemaSimpleContentRestriction.BaseTypeName"]/*' />
24         /// <devdoc>
25         ///    <para>[To be supplied.]</para>
26         /// </devdoc>
27         [XmlAttribute("base")]
28         public XmlQualifiedName BaseTypeName { 
29             get { return baseTypeName; }
30             set { baseTypeName = (value == null ? XmlQualifiedName.Empty : value); }
31         }
32         
33         /// <include file='doc\XmlSchemaSimpleContentRestriction.uex' path='docs/doc[@for="XmlSchemaSimpleContentRestriction.BaseType"]/*' />
34         /// <devdoc>
35         ///    <para>[To be supplied.]</para>
36         /// </devdoc>
37         [XmlElement("simpleType", typeof(XmlSchemaSimpleType))]
38         public XmlSchemaSimpleType BaseType { 
39             get { return baseType; }
40             set { baseType = value; }
41         }
42         
43         /// <include file='doc\XmlSchemaSimpleContentRestriction.uex' path='docs/doc[@for="XmlSchemaSimpleContentRestriction.Facets"]/*' />
44         /// <devdoc>
45         ///    <para>[To be supplied.]</para>
46         /// </devdoc>
47         [XmlElement("length", typeof(XmlSchemaLengthFacet)),
48          XmlElement("minLength", typeof(XmlSchemaMinLengthFacet)),
49          XmlElement("maxLength", typeof(XmlSchemaMaxLengthFacet)),
50          XmlElement("pattern", typeof(XmlSchemaPatternFacet)),
51          XmlElement("enumeration", typeof(XmlSchemaEnumerationFacet)),
52          XmlElement("maxInclusive", typeof(XmlSchemaMaxInclusiveFacet)),
53          XmlElement("maxExclusive", typeof(XmlSchemaMaxExclusiveFacet)),
54          XmlElement("minInclusive", typeof(XmlSchemaMinInclusiveFacet)),
55          XmlElement("minExclusive", typeof(XmlSchemaMinExclusiveFacet)),
56          XmlElement("totalDigits", typeof(XmlSchemaTotalDigitsFacet)),
57          XmlElement("fractionDigits", typeof(XmlSchemaFractionDigitsFacet)),
58          XmlElement("whiteSpace", typeof(XmlSchemaWhiteSpaceFacet))]
59         public XmlSchemaObjectCollection Facets {
60             get { return facets; }
61         }
62
63         /// <include file='doc\XmlSchemaSimpleContentRestriction.uex' path='docs/doc[@for="XmlSchemaSimpleContentRestriction.Attributes"]/*' />
64         /// <devdoc>
65         ///    <para>[To be supplied.]</para>
66         /// </devdoc>
67         [XmlElement("attribute", typeof(XmlSchemaAttribute)),
68          XmlElement("attributeGroup", typeof(XmlSchemaAttributeGroupRef))]
69         public XmlSchemaObjectCollection Attributes {
70             get { return attributes; }
71         }
72
73         /// <include file='doc\XmlSchemaSimpleContentRestriction.uex' path='docs/doc[@for="XmlSchemaSimpleContentRestriction.AnyAttribute"]/*' />
74         /// <devdoc>
75         ///    <para>[To be supplied.]</para>
76         /// </devdoc>
77         [XmlElement("anyAttribute")]
78         public XmlSchemaAnyAttribute AnyAttribute {
79             get { return anyAttribute; }
80             set { anyAttribute = value; }
81         }
82
83         internal void SetAttributes(XmlSchemaObjectCollection newAttributes) {
84             attributes = newAttributes;
85         }
86     }
87 }
88