[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] What does "optional" mean?
- From: David Carlisle <davidc@nag.co.uk>
- To: "Costello, Roger L." <costello@mitre.org>
- Date: Sun, 26 Feb 2012 14:31:34 +0000
On 26/02/2012 14:11, Costello, Roger L. wrote:
> Every schema language (DTD, XSD, RNG) has the notion of optional -- optional elements and optional attributes.
XML DTD does not.
In DTD attributes may be #IMPLIED or #FIXED and may have a default
value, any of these declarations might colloquially be called declaring
the attribute to be optional, but they have precise meanings given in
the xml spec, so you don't have to worry about what optional means.
> I've listed three possible meanings of "optional":
> -- In the first meaning, it indicates: of-lesser-importance.
> -- In the second meaning, it indicates: irrelevance.
> -- In the third meaning, it indicates: lack-of-knowledge.
> So what does "optional" really mean?
in Relax NG (and XSD, probably, but I try to avoid thinking about that)
It doesn't mean any of those things. It just means (for attributes) that
the attribute may be omitted from an instance.
so if the bar attribute is declared with "?" then
<foo> and <foo bar="">
are both valid. There is no indication of the _meaning_ implied by
omitting an attribute, just as there is no indication of the meaning
implied by any particular element name.
the role of the schema is just to say what syntax is or is not valid, it
doesn't say anything about when or why you should use any of the syntax
options that are valid.
David
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]