RE: Nesting of intersectionOf and unionOf

Hi Jos,

Thank you for your help!

I take it that your answer is: yes, you may nest unionOf in intersectionOf.

Not quite a compact language, that RDF/XML, huh?

I wonder why (and that may reveal my ignorance) the notation that I used,
and that I took from the OWL Web Ontologt Language Guide, is less good, or
even not good at all for an RDF/XML notation. If not at all, then what is
the notation that is used in the OWL Guide? 

And why is it a "safe way" (safe for what and against what?) to use the
rdf:List construct? Could you shed some light on that?

And what is the notation you used? Why are there so many notations? Not to
impress the uninitiated, I hope. Puzzling stuff.

Kind regards,
Hans

-----Original Message-----
From: semantic-web-request@w3.org [mailto:semantic-web-request@w3.org] On
Behalf Of jos.deroo@agfa.com
Sent: Tuesday, August 23, 2005 10:57 PM
To: hans.teijgeler@quicknet.nl
Cc: semantic-web@w3.org; semantic-web-request@w3.org; Christiansen Thore
Subject: Re: Nesting of intersectionOf and unionOf


for your second example, I guess you mean

     @prefix owl: <http://www.w3.org/2002/07/owl#> .
     @prefix : <http://www.tc184-sc4.org/iso15926/part2/2003-12#> .
 
     :Phase owl:intersectionOf (
        :ClassOfActivity
        :ClassOfFeature
        :ClassOfInformationObject
        :ClassOfOrganization
        [ owl:unionOf (
                :ClassOfInanimatePhysicalObject
                :ClassOfOrganism ) ]
        [ owl:unionOf (
                :ClassOfAtom
                :ClassOfBiologicalMatter
                :ClassOfCompound
                :ClassOfCompositeMaterial
                :ClassOfFunctionalObject
                :ClassOfInformationPresentation
                :ClassOfInformationRepresentation
                :ClassOfMolecule
                :ClassOfParticulateMaterial
                :ClassOfSubAtomicParticle
                :CrystallineStructure ) ] ).

which I believe is OWL Full
For the RDF/XML encoding, one safe way is to use rdf:first and rdf:rest 
properties

<rdf:RDF xmlns="http://www.w3.org/2002/07/owl#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

    <rdf:Description 
rdf:about="http://www.tc184-sc4.org/iso15926/part2/2003-12#Phase">
        <intersectionOf rdf:parseType="Resource">
            <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfActivit
y"/>
            <rdf:rest rdf:parseType="Resource">
                <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfFeature
"/>
                <rdf:rest rdf:parseType="Resource">
                    <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfInforma
tionObject"/>
                    <rdf:rest rdf:parseType="Resource">
                        <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfOrganiz
ation"/>
                        <rdf:rest rdf:parseType="Resource">
                            <rdf:first rdf:parseType="Resource">
                                <unionOf rdf:parseType="Resource">
                                    <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfInanima
tePhysicalObject"/>
                                    <rdf:rest rdf:parseType="Resource">
                                        <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfOrganis
m"/>
                                        <rdf:rest 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
                                    </rdf:rest>
                                </unionOf>
                            </rdf:first>
                            <rdf:rest rdf:parseType="Resource">
                                <rdf:first rdf:parseType="Resource">
                                    <unionOf rdf:parseType="Resource">
                                        <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfAtom"/>
                                        <rdf:rest 
rdf:parseType="Resource">
                                            <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfBiologi
calMatter"/>
                                            <rdf:rest 
rdf:parseType="Resource">
                                                <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfCompoun
d"/>
                                                <rdf:rest 
rdf:parseType="Resource">
                                                    <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfComposi
teMaterial"/>
                                                    <rdf:rest 
rdf:parseType="Resource">
                                                        <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfFunctio
nalObject"/>
                                                        <rdf:rest 
rdf:parseType="Resource">
                                                            <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfInforma
tionPresentation"/>
                                                            <rdf:rest 
rdf:parseType="Resource">
                                                                <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfInforma
tionRepresentation"/>
                                                                <rdf:rest 
rdf:parseType="Resource">
 <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfMolecul
e"/>
 <rdf:rest rdf:parseType="Resource">
 <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfParticu
lateMaterial"/>
 <rdf:rest rdf:parseType="Resource">
  <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#ClassOfSubAtom
icParticle"/>
  <rdf:rest rdf:parseType="Resource">
      <rdf:first 
rdf:resource="http://www.tc184-sc4.org/iso15926/part2/2003-12#CrystallineStr
ucture"/>
      <rdf:rest 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
  </rdf:rest>
 </rdf:rest>
 </rdf:rest>
 </rdf:rest>
                                                            </rdf:rest>
                                                        </rdf:rest>
                                                    </rdf:rest>
                                                </rdf:rest>
                                            </rdf:rest>
                                        </rdf:rest>
                                    </unionOf>
                                </rdf:first>
                                <rdf:rest 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
                            </rdf:rest>
                        </rdf:rest>
                    </rdf:rest>
                </rdf:rest>
            </rdf:rest>
        </intersectionOf>
    </rdf:Description>
</rdf:RDF>

-- 
Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/




"Hans Teijgeler" <hans.teijgeler@quicknet.nl>
Sent by: semantic-web-request@w3.org
23/08/2005 22:06

 
        To:     <semantic-web@w3.org>
        cc:     "Christiansen Thore" <tore.r.christiansen@dnv.com>, (bcc:
Jos 
De_Roo/AMDUS/MOR/Agfa-NV/BE/BAYER)
        Subject:        Nesting of intersectionOf and unionOf


Hi,
 
I need your help on a syntactical problem (if it is one at all).
 
In mapping the data model of ISO 15926-2 to OWL I stumbled over a 
situation that I had to solve with a nesting of a unionOf inside an 
intersectionOf, and I would like to know whether or not that is allowed. 
If not, what is the solution?
 
An example is:
 
        <owl:intersectionOf rdf:parseType="Collection"> 
            <owl:Class rdf:about="#ParticipatingRoleAndDomain"/> 
            <owl:unionOf rdf:parseType="Collection"> 
                <owl:Class rdf:about="#ClassOfArrangedIndividual"/> 
                <owl:Class rdf:about="#ClassOfEvent"/> 
                <owl:Class rdf:about="#ClassOfPeriodInTime"/> 
                <owl:Class rdf:about="#IndividualDimension"/> 
                <owl:Class rdf:about="#Property"/> 
                <owl:Class rdf:about="#Status"/> 
            </owl:unionOf>
        </owl:intersectionOf>
 
and another, even more complex:
 
        <owl:intersectionOf rdf:parseType="Collection"> 
            <owl:Class rdf:about="#ClassOfActivity"/> 
            <owl:Class rdf:about="#ClassOfFeature"/> 
            <owl:Class rdf:about="#ClassOfInformationObject"/> 
            <owl:Class rdf:about="#ClassOfOrganization"/> 
            <owl:unionOf rdf:parseType="Collection"> 
                <owl:Class rdf:about="#ClassOfInanimatePhysicalObject"/> 
                <owl:Class rdf:about="#ClassOfOrganism"/> 
            </owl:unionOf>
            <owl:unionOf rdf:parseType="Collection"> 
                <owl:Class rdf:about="#ClassOfAtom"/> 
                <owl:Class rdf:about="#ClassOfBiologicalMatter"/> 
                <owl:Class rdf:about="#ClassOfCompound"/> 
                <owl:Class rdf:about="#ClassOfCompositeMaterial"/> 
                <owl:Class rdf:about="#ClassOfFunctionalObject"/> 
                <owl:Class rdf:about="#ClassOfInformationPresentation"/> 
                <owl:Class rdf:about="#ClassOfInformationRepresentation"/> 
 
                <owl:Class rdf:about="#ClassOfMolecule"/> 
                <owl:Class rdf:about="#ClassOfParticulateMaterial"/> 
                <owl:Class rdf:about="#ClassOfSubAtomicParticle"/> 
                <owl:Class rdf:about="#CrystallineStructure"/> 
                <owl:Class rdf:about="#Phase"/> 
            </owl:unionOf>
        </owl:intersectionOf>
 
Please don't bother with the details, I only need confirmation that this 
is legal OWL Full.
 
Can you help?
 
Kind regards,
Hans
_______________________ 
Hans Teijgeler
ISO 15926 specialist
www.InfowebML.ws
hans.teijgeler@quicknet.nl
phone +31-72-509 2005 
 
 
 
 

Received on Wednesday, 24 August 2005 06:00:59 UTC