Say I have some RDF data (showing N-Triples version for clarity):

As you can see, the predicate "title" has the same meaning, but it's using two different URI's. Therefore people searching through this data using SPARQL, will have to specify both predicates. For users this is extremely cumbersome because they first have to understand whether those two URI actually mean the same thing, and then specify both of them in the query.

Is there anything I can do to make my life, and my users life easier?

asked 11 Jan '13, 12:01

Luca%20Matteis's gravatar image

Luca Matteis
accept rate: 13%

Sure, you can use predicates such as owl:equivalentProperty to make your intuition about the equivalence of your two properties explicit:

@prefix dcterms: <> .
@prefix foo: <> .
@prefix owl: <> .

dcterms:title owl:equivalentProperty foo:title .

Then you can expand your queries to include objects of all predicates that were marked as equivalent. Something like the following SPARQL query should work:

PREFIX dcterms: <>
PREFIX owl: <>

SELECT ?title
    ?resource dcterms:title ?title .
  } UNION {
      ?property owl:equivalentProperty dcterms:title .
    } UNION {
      dcterms:title owl:equivalentProperty ?property .
    ?resource ?property ?title .
permanent link

answered 11 Jan '13, 12:19

jindrichm's gravatar image

accept rate: 31%

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 11 Jan '13, 12:01

question was seen: 1,257 times

last updated: 11 Jan '13, 12:19