XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
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] What does "optional" mean?

Costello, Roger L. scripsit:

> 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.

In the subset of $EMPLOYER's schemas that I've worked on, known as the
entity schemas, each document represents the state of our knowledge
about a real-world object such as Barack Obama, the U.S. House of
Representatives, or William Kunstler.  These documents would be
validated by the GovernmentOfficial, LegislativeBranch, and Attorney
schemas respectively.  (Obama might also be represented by an Attorney
document, which would be a separate document but with the same unique
object ID assigned by us.)

There are three use cases for these documents, indicated by an attribute
on the root element: publish, identify, and discrepancy.  In publish,
we are sending a customer everything we know.  In identify, a customer
is sending us what he knows (for example, a name or an id) and we are
replying with what we know, hopefully a superset of it.  In discrepancy,
a customer is sending us what he believes to be right, and we verify it
(manually, not by computer) and adjust the parts we have wrong.

To serve all these use cases, we use schemas in which every element
at every level is optional.  In publish, we can only publish what we
have, from which anything (other than the unique object ID, also a
root-element attribute) might be missing.  In identify, we cannot say
in advance exactly what information a customer might have that would
suffice for identification (not necessarily unique identification; the
customer might know only a surname, and then we send back all Person
documents with that surname).  In discrepancy, we require our unique
object ID to be sent back, along with whatever subset of the information
is asserted to be wrong.

> So what does "optional" really mean?

For the entity schemas, it firmly means your third option, lack of
knowledge.  However, in the content schemas which we use for actual
documents, like texts of laws, it means irrelevance: the schema may
allow for subsections, but the document may or may not have them.

-- 
Henry S. Thompson said, / "Syntactic, structural,               John Cowan
Value constraints we / Express on the fly."                 cowan@ccil.org
Simon St. Laurent: "Your / Incomprehensible     http://www.ccil.org/~cowan
Abracadabralike / schemas must die!"


[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