[Pellet-users] Single SWRL rule with ~20 individuals blows 1.5G heap
James Howison
james at howison.name
Fri Mar 7 07:03:10 UTC 2008
I'm having trouble with executing some SWRL rules with Pellet.
If they are included in an ontology Pellet rapidly consumes all the
heap space I can give, regardless of the number of individuals
involved, and drives the CPU to ~95% until the heap error (minutes?).
Everything works as expected without the SWRL rules.
The modeling domain is threaded mailing lists.
The relevant part of the main ontology[1] says:
Venue hasThread Thread .
Thread hasEvent MailingListEvent .
The SWRL rule (written in Protege 3.4 beta) says:
hasEvent(?thread, ?event) ^ hasThread(?venue, ?thread) -> hasEvent(?
venue, ?event)
(So it's basically transitivity on the hasEvent property, I do have
more complex rules, if I can get this to work ;).
There are no Domains or Ranges on the Properties (so hasEvent should
be fine with Venue).
I've put together a test case with just a little set of individuals
[2] and a single SWRL rule [3] (change doSWRL to false to see it
without SWRL):
http://floss.syr.edu/ontologies/2008/code/MinimalSWRLTest.java
I'm hoping someone could be so kind as to take a look and let me know
whether this ought to work, and how I might get it to do so (hey, a
naive procedural approach would take no time at all :).
If I can get it to do so, any estimates of the scaling of CPU/Memory
requirements (I'm anticipating many individuals, in the order of
10,000s, but they might be able to be done incrementally).
I'm using the Pellet 1.5.1 release and have tried this with the latest
OWLAPI release and OWLAPI SVN, platform is Mac OS X 10.5. I've set
IGNORE_UNSUPPORTED_AXIOMS to false, but don't see any errors. Pellet
via Jena gives the same issues, if Jena code showing that would help
others take a look, I'm happy to provide that.
Thanks in advance,
James
[1]: http://floss.syr.edu/ontologies/2008/flosscomms-basic.owl
[2]: http://floss.syr.edu/ontologies/2008/gaim-cabal-tiny.rdf
[3]: http://floss.syr.edu/ontologies/2008/flosscomms-swrl-single.owl
These are joined via one of these:
http://floss.syr.edu/ontologies/2008/gaim-cabal-tiny.owl
http://floss.syr.edu/ontologies/2008/gaim-cabal-tiny-swrl.owl
More information about the Pellet-users
mailing list