@prefix dpo: <http://www.daml.org/2001/03/daml+oil#>.
@prefix dex: <http://www.daml.org/2001/03/daml+oil-ex#>.
@prefix u: <http://www.w3.org/2000/01/rdf-schema#>.

<> <#rcsid> "$Id: boolalg.n3,v 1.1 2001/05/05 02:56:08 connolly Exp $".

dex:Female dpo:disjointWith dex:Male.

@prefix g: <http://www.w3.org/2001/02pd/gv#>.
@prefix : <boolalg#>.
@prefix l: <http://www.w3.org/2000/10/swap/log.n3#>.

<> g:digraph :G.
:G
    g:label "Boolean Algebra: diajoint, union, intersection";

    g:hasNode dex:Female, dex:Male.

<http://www.daml.org/2001/03/daml+oil-ex> is u:isDefinedBy of
	dex:Male, dex:Man, dex:Woman, dex:Female, dex:Animal, dex:Person.
<http://www.daml.org/2001/03/daml+oil> is u:isDefinedBy of
	dpo:disjointWith.

dex:Female a u:Class;
           u:label "Female".
dex:Male a u:Class;
         u:label "Male".

dpo:disjointWith u:label "disjointWith".

# make classes bold with their labels inside
{{ :C a u:Class; u:label :str. }
  l:implies { :C g:style "bold"; g:label :str }} a l:Truth; l:forAll :C, :str.

# make dpo properties purple
{ { :t1 :p :t2.
    :p u:isDefinedBy <http://www.daml.org/2001/03/daml+oil>; 
       u:label :str }
      l:implies { :p a g:EdgeProperty; g:color "purple"; g:label :str }
} a l:Truth; l:forAll :t1, :t2, :p, :str.


