W3C home > Mailing lists > Public > public-owl-dev@w3.org > July to September 2007

Re: Legal Persons

From: Dan Connolly <connolly@w3.org>
Date: Fri, 24 Aug 2007 14:32:35 -0500
To: John McClure <jmcclure@hypergrove.com>
Cc: Owl Dev <public-owl-dev@w3.org>
Message-Id: <1187983955.29837.1585.camel@pav>

On Fri, 2007-08-24 at 12:04 -0700, John McClure wrote:
> A Person in US legal contexts is either a Human or a Corporation;

Straightforward rendition in OWL, written in turtle syntax:

uslegal:Person owl:unionOf (uslegal:Human uslegal:Corporation).

>  every Human is
> a Person, and every Corporation is a Person.


uslegal:Human rdfs:subClassOf uslegal:Person.
uslegal:Corporation rdfs:subClassOf uslegal:Person.

Those are theorems that follow from the above, of course.

This assumes owl: is bound like this:

 @prefix owl: <http://www.w3.org/2002/07/owl#>.

and uslegal: is a fictitious example:

  @prefix uslegal: <http://example/uslegal/vocab#>.

> Is the following construct valid? Will or should reasoners be troubled by
> <rdf:Alt> within a <rdfs:range>, and can or should <rdf:Alt> be used within an
> <owl:Restriction>?

My advice on rdf:Alt is: don't.

In this case, use owl:unionOf .

My advice on RDF/XML is: use tools.

So take the above turtle syntax and stick it in a file, e.g.


then use a toolkit like redland (or Jena or swap/cwm or ... )
to convert to RDF/XML.

The triplr online service is particularly convenient:


and out comes...

<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:uslegal="http://example/uslegal/vocab#" xml:base="http://triplr.org/rdf/http://pastebin.com/pastebin.php?dl=m4d3b5ace">
  <rdf:Description rdf:about="http://example/uslegal/vocab#Person">
        <rdf:first rdf:resource="http://example/uslegal/vocab#Human"/>
            <rdf:first rdf:resource="http://example/uslegal/vocab#Corporation"/>
            <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>

Now that rendition doesn't use parseType="Collection" short-hand, but...
well... trying to make RDF/XML look pretty is one of those battles
I choose not to engage in any more.

About the example you sent, some details...

> <owl:Class rdf:about="#LegalPerson">
>      <owl:ObjectProperty rdf:about='#Parent'>

property names conventionally start with lowercase, so #parent

>         <rdfs:range>
> 	  <rdf:Alt>
> 	       <li><owl:Class rdf:about="#Human"/></li>
> 	       <li><owl:Class rdf:about="#Corporation"/></li>
> 	  </rdf:Alt>
>         </rdfs:range>


        <rdfs:range rdf:parseType="Resource">
	  <owl:unionOf rdf:parseType="Collection">
	       <owl:Class rdf:about="#Human"/>
	       <owl:Class rdf:about="#Corporation"/>

The rest of it looks mostly OK at a glance, but I don't trust myself
to read RDF/XML. I use tools.

> I haven't found examples of this sort in the docs.


Dan Connolly, W3C http://www.w3.org/People/Connolly/
Received on Friday, 24 August 2007 19:32:52 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:58:15 UTC