First I would like to say thanks for the replies so far...
I am trying to learn a lot of things and you all have been very helpful.


Here is what i need to understand:
 
1- bif:contains is not SPARQL or even ARQ but exclusive to openlink virtuoso?
2- What is the standard way of doing a text search on the RDF graphs? (I want 
to find if all the triples where the URI property contains a certain string)
3- How is bif:contains different than using regex in filter? is using filter 
the more standard way but slower in performance for example? 

SELECT ?g
WHERE
{ ?y vcard:Given ?g .
  FILTER regex(?g, "searchString", "i") }4- is there a tutorial or some docs on 
how I can do text search on RDF graphs so I dont have to post to the mailing 
list if my questions are too trivial?

I think learning how to do this is essential as it is a good way to explore a 
new RDF graph for example. 

Thanks,
Marv






----- Original Message ----
From: "Seaborne, Andy" <[EMAIL PROTECTED]>
To: "[email protected]" 
<[email protected]>
Sent: Monday, November 3, 2008 12:25:07 PM
Subject: Re: [Dbpedia-discussion] bif:contains text search treated as a prefix



> -----Original Message-----
> From: Peter Ansell [mailto:[EMAIL PROTECTED]
> Sent: 02 November 2008 20:32
> To: Seaborne, Andy
> Cc: [email protected]
> Subject: Re: [Dbpedia-discussion] bif:contains text search treated as a
> prefix
>
>
> ----- "Andy Seaborne" <[EMAIL PROTECTED]> wrote:
>
> > From: "Andy Seaborne" <[EMAIL PROTECTED]>
> > To: [email protected]
> > Sent: Monday, 3 November, 2008 5:03:17 AM GMT +10:00 Brisbane
> > Subject: Re: [Dbpedia-discussion] bif:contains text search treated as
> a prefix


> > You have used bif: here.  It needs a matching PREFIX .  There are no
> > default prefixes in SPARQL.
>
> As far as I know, OpenLink have not provided a prefix definition for
> bif: (ie, Built-in Functions from SQL).

Peter - thanks for the information.

OpenLink - any chance of providing a non-proprietary approach within the SPARQL 
syntax?

It's not very semantic web in three ways.  Not using a URI for something on the 
web (that function or index); having non-portable syntax (bif: being special 
and not needing a prefix), and not reusing existing names (fn:contains from 
XPath/XQuery functions and operators seens to do what this does).

The function/index should have a URI.  That's part of the point, giving global 
names to things.  It's written as a property in a triple pattern so really it 
should be a URI, after all, that's the point.  As a triple (pattern) is a 
relationship between subject and object, the fact it's calculated rather than 
looked up in some graph is irrelevant but the meaning of the relationship is 
something to fix with a web-wide name.

The "bif:" special means that an application must reworked to apply the same 
query to a different source, as might happen walking linked data.

XPath/XQuery has fn:contains which is a function so

    FILTER(fn:contains(?x, "xyz"))

See : http://www.w3.org/TR/xpath-functions/#func-contains

(Or, maybe, the triple pattern equivalent.)

Now at the moment there is no standard for what a processor provides, but at 
least reusing the F&O function would be good.  Hopefully, the next round of 
round of SPARQL specification will include a standard set of functions that all 
implementation provide so helping portability of applications across end 
points.  If a client application is going to work over multiple endpoints, it's 
easier if they offer the same core functionality.  At least enable an endpoint 
to make an RDF description available which says what it offers.

(aside:
The query processor can easily spot a FILTER like that and use an index so the 
triple pattern/function difference is merely whether the application writer has 
to do the work.)

Marvin -

The direct call to QueryEnegineHTTP in ARQ will bypass the client-side syntax 
checking to allow the non-portable query to be sent.

    Andy
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Dbpedia-discussion mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dbpedia-discussion



      

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Dbpedia-discussion mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dbpedia-discussion

Reply via email to