Print

Print


Hi Eric, 

Complex ideas that span multiple triples are often expressed through SPARQL. In other words, you store a soup of triple statements and the SPARQL query traverses the triples and presents the resulting information in a variety of formats, much in the same way you’d query a database using JOINs and present the resulting data on a single Web page.

Using your graph, this SPARQL query should return the work and the gender of the work's creator:

PREFIX dc: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT ?work ?gender
WHERE {
	?work dc:created ?creator .
        ?creator foaf:gender ?gender .
}


If you want to explicitly state that the Declaration of Independence was written by a male, you would need a predicate that’s set up to do that, something that takes a work as its domain and has a range of a gender. It would also help to have a class for gender. That way, you could have a triple statement like this:

<http://www.worldcat.org/identities/lccn-n79-89957>
    foaf:name “Thomas Jefferson”
    a :Male .

and you could infer that if:

<http://www.archives.gov/exhibits/charters/declaration_transcript.html>
    dc:creator <http://www.worldcat.org/identities/lccn-n79-89957> .

The creator of the Declaration is of class :Male:

<http://www.archives.gov/exhibits/charters/declaration_transcript.html>
    :createdByGender :Male   

All the best, 

Aaron Rubinstein






On Nov 3, 2013, at 12:00 AM, Eric Lease Morgan <[log in to unmask]> wrote:

> 
> How can I write an RDF serialization enabling me to express the fact that the United States Declaration Of Independence was written by Thomas Jefferson and Thomas Jefferson was a male? (And thus asserting that the Declaration of Independence was written by a male.)
> 
> Suppose I have the following assertion:
> 
>  <rdf:RDF
>    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>    xmlns:dc="http://purl.org/dc/elements/1.1/" >
> 
>    <!-- the Declaration Of Independence was authored by Thomas Jefferson -->
>    <rdf:Description
>    rdf:about="http://www.archives.gov/exhibits/charters/declaration_transcript.html">
>          <dc:creator>http://www.worldcat.org/identities/lccn-n79-89957</dc:creator>
>    </rdf:Description>
> 
>  </rdf:RDF>
> 
> Suppose I have a second assertion:
> 
>  <rdf:RDF
>    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>    xmlns:foaf="http://xmlns.com/foaf/0.1/">
> 
>    <!-- Thomas Jefferson was a male -->
>    <rdf:Description rdf:about="http://www.worldcat.org/identities/lccn-n79-89957">
>      <foaf:gender>male</foaf:gender>
>    </rdf:Description>
> 
>  </rdf:RDF>
> 
> Now suppose a cool Linked Data robot came along and harvested my RDF/XML. Moreover lets assume the robot could make the logical conclusion that the Declaration was written by a male. How might the robot express this fact in RDF/XML? The following is my first attempt at such an expression, but the resulting graph (attached) doesn't seem to visually express what I really want:
> 
> <rdf:RDF
>  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#”
>  xmlns:foaf="http://xmlns.com/foaf/0.1/“
>  xmlns:dc="http://purl.org/dc/elements/1.1/“>
> 
>  <rdf:Description rdf:about="http://www.worldcat.org/identities/lccn-n79-89957">
>    <foaf:gender>male</foaf:gender>
>  </rdf:Description>
> 
>  <rdf:Description
>  rdf:about="http://www.archives.gov/exhibits/charters/declaration_transcript.html">
>    <dc:creator>http://www.worldcat.org/identities/lccn-n79-89957</dc:creator>
>  </rdf:Description>
> </rdf:RDF>
> 
> Am I doing something wrong? How might you encode such the following expression — The Declaration Of Independence was authored by Thomas Jefferson, and Thomas Jefferson was a male. And therefore, the Declaration Of Independence was authored by a male named Thomas Jefferson? Maybe RDF can not express this fact because it requires two predicates in a single expression, and this the expression would not be a triple but rather a “quadrile" — object, predicate #1, subject/object, predicate #2, and subject?
> 
> 
> —
> Eric Morgan
> 
> [cid:[log in to unmask]]
> 
>