[oXygen-user] XML Schema and empty elements
George Cristian Bina
Thu Jul 26 15:50:52 CDT 2007
Hi Timothy,
Thanks for the note, however, do you mind if you share with the rest of
us your solution?
The nillable flag if disabled by default. If set it specifies that an
element can have no content but in that case the xsi:nil attribute needs
to be set to true. I have not used it in a real application but I
believe it is useful when you want to express data structures in XML and
you need the option to be able to not specify any value for the fields,
similar with setting a variable to null in a programming language like Java.
If you want an element to have some content then how you specify that
depends whether its content is
* element only
* specified by a simple type
* mixed (elements and text)
In the first case when an element contains only other elements than you
need to make sure that not all the child elements are optional so you
have some required content.
In the second case it depends on the type set on an element. If the type
does not accept the empty string as a valid value then you do not need
to specify anything else. If the empty string is allowed than you can
try specifying a constraining facet on that type, for instance in case
of xs:string you can specify that the minimum length should be greater
than zero.
In the third case it is a little more difficult because XML Schema does
not enforce constraints on the text part of an element that contains
mixed content (both elements and text). The most you can do probably is
to deal with that as in case of element only content and require some
structure inside that element.
Of course if you allow for instance Schematron embedded rules in your
schema then this constraint can be easily expressed as a Schematron rule.
Best Regards,
George
---------------------------------------------------------------------
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
Timothy Reaves wrote:
> On Thu, July 26, 2007 10:51, Timothy Reaves wrote:
>> I'd like to have my schema specify that not only are certain elements
>> required, but that they can't be blank. I can't seem to find how to
>> specify this. I thought it was the nillable attribute, but that doesn't
>> prevent blank elements.
>>
>
> Got this one figured out. Nevermind. :-}
>
> _______________________________________________
> oXygen-user mailing list
>
> http://www.oxygenxml.com/mailman/listinfo/oxygen-user
More information about the oXygen-user
mailing list