+2006-01-11 Atsushi Enomoto <atsushi@ximian.com>
+
+ * dtd2rng.cs : return <optional><attribute .../></optional> when an
+ attribute is #IMPLIED.
+
2005-12-16 Atsushi Enomoto <atsushi@ximian.com>
* dtd2rng.cs : datatypeLibrary remapping. Compact syntax output.
return re;
}
- RelaxngAttribute CreateAttribute (XmlSchemaAttribute attr)
+ RelaxngPattern CreateAttribute (XmlSchemaAttribute attr)
{
RelaxngAttribute ra = new RelaxngAttribute ();
RelaxngName name = new RelaxngName ();
ra.Pattern = attr.SchemaType != null ?
CreatePatternFromType (attr.SchemaType) :
CreatePatternFromTypeName (attr.SchemaTypeName);
- return ra;
+
+ RelaxngPattern ret = ra;
+
+ if (attr.Use == XmlSchemaUse.Optional) {
+ RelaxngOptional opt = new RelaxngOptional ();
+ opt.Patterns.Add (ra);
+ ret = opt;
+ }
+ return ret;
}
RelaxngPattern CreatePatternFromParticle (XmlSchemaParticle xsdp)