Home. 
.

transparent

transparent

transparent

Altova Mailing List Archives


Re: Question about tag and value

From: mittra@----.---
To: NULL
Date: 11/5/2007 4:40:00 PM

On Nov 5, 4:29 pm, Joseph Kesselman <keshlam-nos...@comcast.net>
wrote:
> mit...@juno.com wrote:
> > I am a newbie to XML. I have the following question: how do I express
> > something in XML when the subsequent tag structures depends on the
> > value of a preceeding tag?
>
> Neither DTDs nor XML Schema allow you to use the value of an element or
> attribute to constrain the presence or another -- with the exception of
> the xsi:type attribute; see a good XML Schema tutorial (or a great deal
> of recent discussion in this very newsgroup) for details of how to use
> that sub-typing feature.
>
> You *can* structure things so the presence or absence of your <TAG2>
> element gates whether TAG3 or TAG4 was expected after it, by writing the
> appropriate content models in your DTD or Schema.
>
> Or you can enforce the cross-constraint in your application rather than
> expecting the document formalism to do it all. Remember, neither DTDs
> nor schemas are intended to capture all the semantics of a document, and
> some checking will always have to be done by the application --
> vaidation only provides an initial layer and some "machine-readable
> documentation" of what's expected.
>
> --
> Joe Kesselman / Beware the fury of a patient man. -- John Dryden

Thanks. I will look into XML Schema tutorial.

However, from your respnse it seems I might not have communicated the
objective behind doing this. While I can enforce the check of the
subsequent tag structure (TAG3 or TAG4) in the application domain, the
primary objective is to define *one* XML structure that (based on
TAG2) defines the *entire* structure. This will be akin to saying, in
this example,

if (TAG2 value is 1) then
   <TAG3>some_value</TAG3>
else
   <TAG4>some_value2</TAG4>

Perhaps, XML Schema does it?



transparent
Print
Mail
Like It
Disclaimer
.

These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.

.
.

transparent

transparent