Thanks Scott for the continued ,excellent and detailed support, it really 
does help when the level of help available is as high as that of what 
TopQuadrant provide

Regards once again 

John

On Saturday, October 13, 2012 12:52:16 AM UTC+1, John Perdoni wrote:
>
> Hi I wonder if you could help yet again
>
> I am trying to write a  spin:constructor that does the following
>
> 1)take the current instance ie. ?this  ?this being <
> http://example.com/library/publishedBook/windInTheWillows#Paragraph_P20_para_4
> >
>
> 2) Get the namespace ie. 
> http://example.com/library/publishedBook/windInTheWillows#
>
> 3) construct the following triple *?this model:source <
> http://example.com/library/publishedBook#windInTheWillows>* (ie. (not 
> sure if this is the right terminolgy) go up a level from the instance and 
> get the parent ontology <http://example.com/library/publishedBook> and 
> create a subject ie *?this* a *predicate* of model:souce and an *object*that 
> has a uri of <
> http://example.com/library/publishedBook#windInTheWillows>
>
> If I use the following select query , I get no problems
>
> SELECT *
> WHERE {
>     BIND (afn:namespace(<
> http://example.com/library/publishedBook/windInTheWillows#Paragraph_P20_para_4>)
>  
> AS ?nameSpace) .
>     BIND (fn:substring(?nameSpace,1,42) AS ?subString).
>     BIND (fn:substring(?nameSpace, 44) AS ?subString1) .
>     ?localName spif:split ( ?subString1 "#" ) .
>     BIND (?localName AS ?boundLocalName) .
>     BIND (smf:buildURI("{?subString}#{?boundLocalName}") AS ?uri) .
>
> However if I use the following Construct query , I get inferences that are 
> "Untyped Literal"
>
> CONSTRUCT {
>     ?this coreModel:source ?uri .
> }
> WHERE {
>     BIND (afn:namespace(?this) AS ?nameSpace) .
>     BIND (fn:substring(?nameSpace,1,42) AS ?subString).
>     BIND (fn:substring(?nameSpace, 44) AS ?subString1) .
>     ?localName spif:split ( ?subString1 "#" ) .
>     BIND (?localName AS ?boundLocalName) .
>     BIND (smf:buildURI("{?subString}#{?boundLocalName}") AS ?uri) .
> }
>
> I think the problem lies in the spif:split function as I cannot seem to 
> get this to work with a BIND , however much I try and work out the sytax I 
> get the following error WARN [Thread-89] (E_Function.java:70) - URI <
> http://spinrdf.org/spif#split> has no registered function factory
>
> Please also bear in mind that I am not yet fully conversant of trully 
> understand when BIND should be used. If there is a better way of taking an 
> instance, getting its parent ontology from slash notation creating the 
> triple I need then please correct my ignorence
>
> Regards again
>
> John
>
>
>
>
>
>
>

-- 
-- You received this message because you are subscribed to the Google
Group "TopBraid Suite Users", the topics of which include Enterprise Vocabulary 
Network (EVN), TopBraid Composer, TopBraid Live,
TopBraid Ensemble, SPARQLMotion, SPARQL Web Pages and SPIN.
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-users?hl=en


Reply via email to