I'm embarking on a new mapping/translation project. This question assumes that SWRL is most robust/future-proof way to represent mapping rules.

I see that Pellet supports SWRL, but the sample included in the source code (RulesExample.java) uses Jena. It seems that Jena has some support for SWRL too, so does Pellet bring anything to the table, or is Jena by itself enough for maximum SWRL support?

asked 15 Feb '11, 18:22

Kevin%20Pauli's gravatar image

Kevin Pauli
accept rate: 50%

It should first be made clear that SWRL is not a standard, and never will be. Therefore you will see spotty support for it. In terms of W3C recommendations, see the RIF Basic Logic Dialect (BLD). This is basically where the SWRL submission ended up in the standards process and implements all but different-from (http://www.w3.org/2005/rules/wiki/RIF_FAQ#How_does_RIF_differ_from_SWRL.3F).

Meanwhile, you should consider SPARQL as a mapping and translation language. This is supported by a large number of rule engines and has been a W3C recommendation since January 2008. Any SWRL rule can easily be converted to a SPARQL query, and SPARQL is more expressive than SWRL.

As an example, the oft-used uncle query in SWRL:

parent(?x,?y) ∧ brother(?y,?z) ⇒ uncle(?x,?z)

Can be written in SPARQL as:

CONSTRUCT {?x :uncle ?z}
{  ?x :parent ?y .
   ?y :brother ?z .
Note that the SPARQL is shown here in its string form. If you want an RDF/XML (better yet, Turtle) representation of the query, then see SPIN.

permanent link

answered 15 Feb '11, 18:38

scotthenninger's gravatar image

scotthenninger ♦
accept rate: 17%

edited 15 Feb '11, 19:06

So what would you recommend I use as the meta-model for building SPARQL queries pro programmatically? ARQ?

(15 Feb '11, 18:57) Kevin Pauli Kevin%20Pauli's gravatar image

Any language capable of producing text. No differences between SWRL and SPARQL in this respect.

(15 Feb '11, 19:01) scotthenninger ♦ scotthenninger's gravatar image

Why do you think that SWRL is never going to become a standard? To me, SWRL would be a natural candidate to be considered as part of OWL 3 (updated to the then new language features, and potentially with "DL-safeness conditions" for OWL 3 DL; and there would need to be a SWRL Full variant, of course). I can't tell why it hasn't been put already into OWL 2, and do not remember any discussion about this in the working group, but I guess that the reason was that, originally, the new version of OWL should be small increment to OWL 1. Hence the original name "OWL 1.1". :-)

(15 Feb '11, 22:18) Michael Schn... ♦ Michael%20Schneider's gravatar image

Precisely. The content may live on in other contexts, such as RIF BLD and others. But the original SWRL submission won't be going anywhere - not after 7 years and counting. So the place to look is not SWRL, but the other contexts it has moved to.

(15 Feb '11, 22:58) scotthenninger ♦ scotthenninger's gravatar image

I use TopBraid Composer (TopBraid Live for Web applications), which uses Jena ARQ. The syntax for delete is "DELETE FROM <graph-name>", which will change at some point to reflect whatever syntax the SPARQL 1.1 Update committee finalizes (http://www.w3.org/TR/sparql11-update/). TopBraid's SPARQL editor is a quick and useful tool for editing queries.

(16 Feb '11, 23:33) scotthenninger ♦ scotthenninger's gravatar image

Jena by itself does not provide support for SWRL.

You should also note that support for SWRL is removed from Top Braid Composer. The decision was made based on informal poll results.

The poll link is no longer valid but the question was along the lines of "How important is SWRL support in Top Braid products to you?"

The results were:

  • not at all: 44%
  • not very important, I can use SPIN or Jena rules instead: 44%
  • important for my research: 11%
  • important for production applications: 0%
permanent link

answered 13 Apr '11, 11:15

harschware's gravatar image

harschware ♦
accept rate: 20%

Jena does not offer SWRL support directly. The JenaRules language is not a standard.

There was tool called SweetRules which offered support for SWRL by translation into a number of simpler rule languages include JenaRules. However, that tool does not seem to have been actively maintained and none of the Jena team were directly involved in it.

Unless SweetRules works for you then your best option for SWRL support in Jena is Pellet.

Or, as Scott suggests, look at other options like RIF (though I would look at Core rather than BLD) or proprietary ones.

permanent link

answered 13 Apr '11, 11:16

Dave%20Reynolds's gravatar image

Dave Reynolds
accept rate: 46%

Try ODASE Platform from http://www.missioncriticalit.com/odase.html : their resoner well support SWRL ...

permanent link

answered 24 Apr '14, 18:27

IPlumb3r's gravatar image

accept rate: 0%

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](http://url.com/ "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: 15 Feb '11, 18:22

question was seen: 5,880 times

last updated: 24 Apr '14, 18:27