+2004-10-29 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlSchemaAttribute.cs : AttributeSchemaType could be determined on
+ compilation time. AttributeType is obsolete.
+ * XmlSchemaElement.cs : ditto for ElementSchemaType and ElementType.
+
2004-10-29 Atsushi Enomoto <atsushi@ximian.com>
* XmlSchemaComplexType.cs : added LocalElements, with the description
public class XmlSchemaAttribute : XmlSchemaAnnotated\r
{\r
private object attributeType;\r
+#if NET_2_0\r
+ private XmlSchemaSimpleType attributeSchemaType;\r
+#endif\r
private string defaultValue;\r
private string fixedValue;\r
private string validatedDefaultValue;\r
}\r
\r
[XmlIgnore]\r
+#if NET_2_0\r
+ [Obsolete]\r
+#endif\r
public object AttributeType \r
{\r
get{\r
get {\r
if (referencedAttribute != null)\r
return referencedAttribute.AttributeSchemaType;\r
- XmlSchemaDatatype dt = attributeType as XmlSchemaDatatype;\r
- if (dt != null)\r
- return XmlSchemaType.GetBuiltInSimpleType (dt);\r
else\r
- return attributeType as XmlSchemaSimpleType;\r
+ return attributeSchemaType;\r
}\r
}\r
#endif\r
else\r
validatedUse = Use;\r
\r
+#if NET_2_0\r
+ attributeSchemaType = attributeType as XmlSchemaSimpleType;\r
+ if (attributeSchemaType == null)\r
+ attributeSchemaType = XmlSchemaType.GetBuiltInSimpleType (((XmlSchemaDatatype) attributeType).TypeCode);\r
+#endif\r
+\r
ValidationId = schema.ValidationId;\r
return errorCount;\r
}\r
private XmlSchemaObjectCollection constraints;\r
private string defaultValue;\r
private object elementType;\r
+#if NET_2_0\r
+ private XmlSchemaType elementSchemaType;\r
+#endif\r
private XmlSchemaDerivationMethod final;\r
private string fixedValue;\r
private XmlSchemaForm form;\r
}\r
\r
[XmlIgnore]\r
+#if NET_2_0\r
+ [Obsolete]\r
+#endif\r
public object ElementType \r
{\r
get {\r
get {\r
if (referencedElement != null)\r
return referencedElement.ElementSchemaType;\r
- XmlSchemaDatatype dt = elementType as XmlSchemaDatatype;\r
- if (dt != null)\r
- return XmlSchemaType.GetBuiltInSimpleType (dt);\r
else\r
- return elementType as XmlSchemaType;\r
+ return elementSchemaType;\r
}\r
}\r
#endif\r
foreach (XmlSchemaIdentityConstraint ident in Constraints)\r
ident.Validate (h, schema);\r
\r
+#if NET_2_0\r
+ elementSchemaType = elementType as XmlSchemaType;\r
+ if (elementSchemaType == null && elementType != null)\r
+ elementSchemaType = XmlSchemaType.GetBuiltInType (((XmlSchemaDatatype) elementType).TypeCode);\r
+#endif\r
+\r
ValidationId = schema.ValidationId;\r
return errorCount;\r
}\r