OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Re: [xml-dev] Preoccupation with zero, empty strings, empty elements, empty everything

In the UBL project we specifically prohibit elements with element content to have zero children. Elements either have text as their child or have other elements as their children.

To our users, some of whom are not very technical, we explain ourselves with a couple of paragraphs and a conclusion here:

"UBL takes the position that empty elements do not provide the level
of assurance necessary for business information exchanges and
therefore must not be used."

... and have reduced the requirement to the following rules:

[IND5] UBL conformant instance documents MUST NOT contain an
element devoid of content or containing null values,
except in the case of extension, where the UBL
ExtensionContent element is used.

[IND6] The absence of a construct or data in a UBL instance
document MUST NOT carry meaning.

. . . . . . . Ken

At 2013-12-07 13:34 +0000, Costello, Roger L. wrote:
Hi Folks,

When was the last time you went to the store to purchase zero oranges?

When was the last time you created an XML document to have zero elements?

Those are strange concepts, aren't they?

Zero is a strange concept.

Roughly 1500 years after the introduction of zero as a number by mathematicians in India, the concept is still not well accepted in computer science:

- Many programming languages do not
support records with zero fields

- Many programming languages do not
support arrays with zero elements

- Many programming languages do not
support variable definitions with zero

- In some programming languages the
syntax for calling a routine with zero
parameters differs from that for a
routine with one or more parameters

- XML has a special syntax for empty

- Many compilers refuse to compile a
module that defines zero names

- No parser generator can produce a
parser for the empty language (the
language with zero strings)

This preoccupation with empty strings, sets, languages, etc. is not frivolous, since it is well-known that the ease with which a system handles empty cases is a measure of its cleanliness and robustness.

Most (not all) of the above is from the book: "Parsing Techniques" by Grune and Jacobs.


Public XSLT, XSL-FO, UBL & code list classes: Melbourne, AU May 2014 |
Contact us for world-wide XML consulting and instructor-led training |
Free 5-hour lecture: http://www.CraneSoftwrights.com/links/udemy.htm |
Crane Softwrights Ltd.            http://www.CraneSoftwrights.com/x/ |
G. Ken Holman                   mailto:gkholman@CraneSoftwrights.com |
Google+ profile: https://plus.google.com/116832879756988317389/about |
Legal business disclaimers:    http://www.CraneSoftwrights.com/legal |

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS