Re: [xml-dev] XML design of ((a and b) or c)

From
Robin La Fontaine <>
To
Andrew Welch <>
Date
2006-12-12T15:51:16Z
ID
<>
Thread
Re: [xml-dev] XML design of ((a and b) or c)
Andrew,

The first approach looks best and is the one that would be obvious to a 
lisp programmer, where this would be:

(or a (and b c))

This scales well for multiple arguments and for different functions. Go 
for it!

Robin

Andrew Welch wrote:
> I've just had to design some XML to model items that can have "and"
> and "or" relationships between each one.
> 
> For example:
> 
> (a and b) or c
> 
> could be designed as:
> 
> <or>
>    <a>
>    <and>
>        <b/>
>        <c/>
>    </and>
> </or>
> 
> another option could be to rely on position:
> 
> <a>
> <and/>
> <b/>
> <or/>
> <c/>
> 
> and another could be model the relationships separately somehow:
> 
> <relationships>
>  <rel ref="r1" type="and">
>    <ent id="a"/>
>    <ent id="b"/>
>  </rel>
>  <rel ref="r2" type="or">
>    <ent id="r1"/>
>    <ent id="c"/>
>  </rel>
> </relationships>
> <a id="a"/>
> <b id="b"/>
> <c id="c"/>
> 
> Each has its own advantages/drawbacks.  Personally I like the first
> technique, although it can get cluttered when there are 10+ items.
> 
> Are there any better ways that I'm missing?
> 
> cheers
> andrew
> 
> _______________________________________________________________________
> 
> XML-DEV is a publicly archived, unmoderated list hosted by OASIS
> to support XML implementation and development. To minimize
> spam in the archives, you must subscribe before posting.
> 
> [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
> Or unsubscribe: 
> subscribe: 
> List archive: http://lists.xml.org/archives/xml-dev/
> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
> 

-- 
-- ---------------------------------------------------
Robin La Fontaine    DeltaXML: "Change control for XML"
Email:       http://www.deltaxml.com
Free XML comparison service http://compare.deltaxml.com