Ah, I understand now. Pellet adds some triples before TopSPIN builds  
the SPARQL queries table. As a result you see the use of spin:Modules  
(which is a superclass of your specific function). I need to implement  
a work-around for those cases, e.g. to collect the rules before any  
other inferencing is done. I assume it will be fixed for beta2.

Thanks for the details!
Holger


On Jan 22, 2009, at 9:13 AM, Schmitz, Jeffrey A wrote:

> No, I'm not getting any errors, and from the log it looks like the  
> spin:rule is getting executed (it's the only one I have right now,  
> although it in turn uses a SPIN:Functions, it's just not producing  
> any results like it does when TopSPIN is used alone or with  
> OWLSwift.  I've posted the logs below.  The first log is from when I  
> use the Pellet engine, and the second when I use only TopSPIN.  It's  
> interesting that using different engines seems to cause different  
> queries to be generated for the same rule:
>
> TopSPIN used with Pellet log:
>
> !ENTRY org.topbraid.topspin 1 0 2009-01-22 11:05:51.757
>
> !MESSAGE TopSPIN took 312 ms for 1 queries.
>
>
> !ENTRY org.topbraid.topspin 1 0 2009-01-22 11:05:51.757
>
> !MESSAGE Slowest queries:
>
>
> !ENTRY org.topbraid.topspin 1 0 2009-01-22 11:05:51.757
>
> !MESSAGE - 0 ms: PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
>
> PREFIX : <http://www.boeing.com/IVHM/C17relexInst.owl#>
>
> PREFIX relex: <http://www.boeing.com/IVHM/relex.owl#>
>
> PREFIX tops: <http://www.topbraid.org/tops#>
>
> PREFIX sp: <http://spinrdf.org/sp#>
>
> PREFIX daml: <http://www.daml.org/2001/03/daml+oil#>
>
> PREFIX Common: <http://www.boeing.com/IVHM/Common.owl#>
>
> PREFIX C17relexInst: <http://www.boeing.com/IVHM/C17relexInst.owl#>
>
> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
>
> PREFIX SpinLib: <http://www.boeing.com/IVHM/SpinLib.owl#>
>
> PREFIX pf: <http://jena.hpl.hp.com/ARQ/property#>
>
> PREFIX jfn: <java:com.hp.hpl.jena.sparql.function.library.>
>
> PREFIX spl: <http://spinrdf.org/spl#>
>
> PREFIX smf: <http://topbraid.org/sparqlmotionfunctions#>
>
> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
>
> PREFIX owl: <http://www.w3.org/2002/07/owl#>
>
> PREFIX spin: <http://spinrdf.org/spin#>
>
> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
>
> PREFIX Relex: <http://www.boeing.com/IVHM/Relex.owl#>
>
> PREFIX fn: <http://www.w3.org/2005/xpath-functions#>
>
>
> CONSTRUCT *
>
> WHERE
>
> { ?this rdf:type ?TYPE_CLASS .
>
> ?this Relex:refsSystem ?system .
>
> ?system Relex:failureRate ?sysRate .
>
> ?this Relex:ratio ?sysRatio
>
> LET (?rate := spin:Modules(rdfs:Resource(), rdfs:Resource()))
>
> }
>
>
> TopSPIN used alone log:
>
> !ENTRY org.topbraid.topspin 1 0 2009-01-22 11:10:36.228
>
> !MESSAGE TopSPIN took 63 ms for 2 queries.
>
>
> !ENTRY org.topbraid.topspin 1 0 2009-01-22 11:10:36.228
>
> !MESSAGE Slowest queries:
>
>
> !ENTRY org.topbraid.topspin 1 0 2009-01-22 11:10:36.228
>
> !MESSAGE - 32 ms: PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
>
> PREFIX : <http://www.boeing.com/IVHM/C17relexInst.owl#>
>
> PREFIX relex: <http://www.boeing.com/IVHM/relex.owl#>
>
> PREFIX tops: <http://www.topbraid.org/tops#>
>
> PREFIX sp: <http://spinrdf.org/sp#>
>
> PREFIX Common: <http://www.boeing.com/IVHM/Common.owl#>
>
> PREFIX daml: <http://www.daml.org/2001/03/daml+oil#>
>
> PREFIX C17relexInst: <http://www.boeing.com/IVHM/C17relexInst.owl#>
>
> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
>
> PREFIX SpinLib: <http://www.boeing.com/IVHM/SpinLib.owl#>
>
> PREFIX pf: <http://jena.hpl.hp.com/ARQ/property#>
>
> PREFIX jfn: <java:com.hp.hpl.jena.sparql.function.library.>
>
> PREFIX spl: <http://spinrdf.org/spl#>
>
> PREFIX owl: <http://www.w3.org/2002/07/owl#>
>
> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
>
> PREFIX smf: <http://topbraid.org/sparqlmotionfunctions#>
>
> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
>
> PREFIX spin: <http://spinrdf.org/spin#>
>
> PREFIX Relex: <http://www.boeing.com/IVHM/Relex.owl#>
>
> PREFIX fn: <http://www.w3.org/2005/xpath-functions#>
>
>
> CONSTRUCT *
>
> WHERE
>
> { ?this rdf:type ?TYPE_CLASS .
>
> ?this Relex:refsSystem ?system .
>
> ?system Relex:failureRate ?sysRate .
>
> ?this Relex:ratio ?sysRatio
>
> LET (?rate := SpinLib:ratioToRate(?sysRate, ?sysRatio))
>
> }
>
>
>
> !ENTRY org.topbraid.topspin 1 0 2009-01-22 11:10:36.228
>
> !MESSAGE - 31 ms: PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
>
> PREFIX : <http://www.boeing.com/IVHM/C17relexInst.owl#>
>
> PREFIX relex: <http://www.boeing.com/IVHM/relex.owl#>
>
> PREFIX tops: <http://www.topbraid.org/tops#>
>
> PREFIX sp: <http://spinrdf.org/sp#>
>
> PREFIX Common: <http://www.boeing.com/IVHM/Common.owl#>
>
> PREFIX daml: <http://www.daml.org/2001/03/daml+oil#>
>
> PREFIX C17relexInst: <http://www.boeing.com/IVHM/C17relexInst.owl#>
>
> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
>
> PREFIX SpinLib: <http://www.boeing.com/IVHM/SpinLib.owl#>
>
> PREFIX pf: <http://jena.hpl.hp.com/ARQ/property#>
>
> PREFIX jfn: <java:com.hp.hpl.jena.sparql.function.library.>
>
> PREFIX spl: <http://spinrdf.org/spl#>
>
> PREFIX owl: <http://www.w3.org/2002/07/owl#>
>
> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
>
> PREFIX smf: <http://topbraid.org/sparqlmotionfunctions#>
>
> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
>
> PREFIX spin: <http://spinrdf.org/spin#>
>
> PREFIX Relex: <http://www.boeing.com/IVHM/Relex.owl#>
>
> PREFIX fn: <http://www.w3.org/2005/xpath-functions#>
>
>
> CONSTRUCT *
>
> WHERE
>
> { ?this rdf:type ?TYPE_CLASS .
>
> ?this Relex:refsSystem ?system .
>
> ?system Relex:failureRate ?sysRate .
>
> ?this Relex:ratio ?sysRatio
>
> LET (?rate := SpinLib:ratioToRate(?sysRate, ?sysRatio))
>
> }
>
>
> From: Holger Knublauch [mailto:[email protected]]
> Sent: Wednesday, January 21, 2009 4:36 PM
> To: [email protected]
> Subject: [tbc-users] Re: SPIN functions and templates  
> (was:Re:ConstructDefaultValues)
>
> Hi Jeff,
>
> I tried a trivial ontology with one SPIN rule and Pellet then  
> TopSPIN as inference engines, but for me Pellet crashes with an  
> Exception. Are you getting the same error (perhaps check error log)?  
> As TopSPIN is not involved at all at this point, this would be a bug  
> in Pellet.
>
> Holger
>
>
>
> Caused by: java.lang.ClassCastException: org.mindswap.pellet.Literal
> at org.mindswap.pellet.ABox.getSimpleObjectPropertyValues(ABox.java: 
> 1305)
> at org.mindswap.pellet.ABox.getObjectPropertyValues(ABox.java:1283)
> at  
> org 
> .mindswap 
> .pellet.KnowledgeBase.getObjectPropertyValues(KnowledgeBase.java:3182)
> at  
> org 
> .mindswap.pellet.KnowledgeBase.getPropertyValues(KnowledgeBase.java: 
> 3210)
> at org.mindswap.pellet.jena.PelletInfGraph 
> $ABoxPredObjIterator.findNextPredicate(PelletInfGraph.java:754)
> at org.mindswap.pellet.jena.PelletInfGraph 
> $ABoxPredObjIterator.<init>(PelletInfGraph.java:747)
> at org.mindswap.pellet.jena.PelletInfGraph 
> $ABoxSubjPredObjIterator.findNextSubject(PelletInfGraph.java:824)
> at org.mindswap.pellet.jena.PelletInfGraph 
> $ABoxSubjPredObjIterator.hasNext(PelletInfGraph.java:845)
> at com.hp.hpl.jena.util.iterator.NiceIterator 
> $1.hasNext(NiceIterator.java:86)
> at com.hp.hpl.jena.util.iterator.NiceIterator 
> $1.hasNext(NiceIterator.java:86)
> at org.mindswap.pellet.jena.MultiIterator.hasNext(MultiIterator.java: 
> 35)
> at  
> com 
> .hp 
> .hpl.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java: 
> 64)
> at  
> com 
> .hp 
> .hpl 
> .jena 
> .util 
> .iterator.UniqueExtendedIterator.hasNext(UniqueExtendedIterator.java: 
> 69)
> at  
> com 
> .hp 
> .hpl.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java: 
> 64)
> at  
> com 
> .hp 
> .hpl.jena.util.iterator.FilterIterator.hasNext(FilterIterator.java:43)
> at com.hp.hpl.jena.graph.compose.CompositionBase 
> $2.hasNext(CompositionBase.java:98)
> at com.hp.hpl.jena.util.iterator.NiceIterator 
> $1.hasNext(NiceIterator.java:86)
> at  
> com 
> .hp 
> .hpl.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java: 
> 64)
> at  
> com 
> .hp 
> .hpl.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java: 
> 64)
> at  
> com 
> .hp 
> .hpl.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java: 
> 64)
> at  
> org 
> .topbraid 
> .inference 
> .change 
> .AbstractInferenceChange.runReallyNow(AbstractInferenceChange.java: 
> 112)
>
> On Jan 21, 2009, at 1:28 PM, Schmitz, Jeffrey A wrote:
>
>> I'm finally getting a chance to go through the blog posts and have  
>> run into a minor issue.  I've added a spin:rule to a 'TBox'  
>> ontology.  I have an ABox ontology that imports this Tbox  
>> ontology.  When I configure the inferencing on the Aboxontology to  
>> only run the TopSPIN engine, the spin:rule I added to the Tbox  
>> works.  It also works when I add the SwiftOWLIM Engine before the  
>> TopSPIN Engine.  However, if I instead add the Pellet 1.5.2 engine  
>> before the TopSPIN engine, it doesn't seem to execute the rule I  
>> added.  Is this perhaps a bug?  Or is there something else I need  
>> to do when using Pellet?
>>
>> Thanks,
>> Jeff
>>
>> From: Holger Knublauch [mailto:[email protected]]
>> Sent: Thursday, January 08, 2009 7:04 PM
>> To: [email protected]
>> Subject: [tbc-users] SPIN functions and templates (was:  
>> Re:ConstructDefaultValues)
>>
>>> I might suggest that these rules be added to the SPIN vocabulary  
>>> document, unless they exist elsewhere already, with perhaps an  
>>> example of using an instantiated Argument for a constraint.
>>
>> Jeff (and others),
>>
>> I just wrote two more blog entries to help clarify SPIN functions  
>> [1] and templates [2]. It certainly still does not cover the  
>> aspects you are wrestling with but hopefully clarifies the  
>> underlying ideas a bit.
>>
>> The second article [2] also contains some bold statements at the  
>> end, which I would be interested to get feedback on from anyone. In  
>> a nutshell, my observation is that an approach such as SPIN can be  
>> used to define new (domain-specific) ontology modeling languages.  
>> My claim is that this capability may be an alternative way of  
>> unleashing the Semantic Web's full potential. While languages like  
>> OWL provide a hard-coded choice of modeling constructs, executable  
>> meta-languages like SPIN templates let the users extend the  
>> languages and thus let the modeling languages evolve driven by use  
>> cases (and not primarily by theoretical considerations like DL).  
>> Maybe a bold statement, but I'd like to hear opinions from the TBC  
>> users field before we widen up the visibility of SPIN to the larger  
>> Semantic Web community and W3C.
>>
>> Regards,
>> Holger
>>
>> [1] Understanding SPIN Functions
>> [2] Understanding SPIN Templates
>>
>>
>>
>>
>
>
>
> >


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"TopBraid Composer Users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/topbraid-composer-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to