ASPN ActiveState Programmer Network
ActiveState
/ Home / Perl / PHP / Python / Tcl / XSLT /
/ Safari / My ASPN /
Cookbooks | Documentation | Mailing Lists | Modules | News Feeds | Products | User Groups


Recent Messages
List Archives
About the List
List Leaders
Subscription Options

View Subscriptions
Help

View by Topic
ActiveState
.NET Framework
Open Source
Perl
PHP
Python
Tcl
Web Services
XML & XSLT

View by Category
Database
General
SOAP
System Administration
Tools
User Interfaces
Web Programming
XML Programming


MyASPN >> Mail Archive >> xml-dev
xml-dev
Re: [xml-dev] XML design of ((a and b) or c)
by Rick Marshall other posts by this author
Dec 12 2006 4:52PM messages near this date
RE: [xml-dev] XML design of ((a and b) or c) | Re: [xml-dev] XML design of ((a and b) or c)
& XSLT I like this one too and it has the advantage that more terms can be 
easily added eg:

<?xml version="1.0"?> 
<op:or xmlns:op="http://operator-ns"> 
  <op:and> 
     <a/> 
     <b/> 
    <d/> 
  </op:and> 
  <c/> 
    <op:and> 
    <a/> 
    <f/> 
    </op:and> 
</op:or> 

<!-- (a and b and d) or c or (a and f) --> 
etc

now can we write an xslt that understands "and" and "or" and optimises 
the dom parsing like a good compiler or interpreter would ...

Rick

Mukul Gandhi wrote:
>  The first approach looks good to me. But perhaps assigning a namespace
>  to operator elements could be a good idea (something like below).
> 
>  <?xml version="1.0"?>
>  <op:or xmlns:op="http://operator-ns">
>    <op:and>
>       <a/>
>       <b/>
>    </op:and>
>    <c/>
>  </op:or>
> 
>  On 12/12/06, Andrew Welch <andrew.j.welch@[...].com> 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: xml-dev-unsubscribe@[...].org
subscribe: xml-dev-subscribe@[...].org
List archive: http://lists.xml.org/archives/xml-dev/
List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
Thread:
Michael Kay
Alexander Johannesen
Rick Marshall
Richard Salz
Tei
Leigh Klotz
Michael Kay
Rick Marshall
Robin La Fontaine

Privacy Policy | Email Opt-out | Feedback | Syndication
© ActiveState Software Inc. All rights reserved