- From: Mischa Tuffield <mmt04r@ecs.soton.ac.uk>
- Date: Mon, 21 Mar 2011 12:40:19 +0000
- To: Hugh Glaser <hg@ecs.soton.ac.uk>
- Cc: "<nathan@webr3.org>" <nathan@webr3.org>, Linked Data community <public-lod@w3.org>
- Message-ID: <EMEW3|b4a3c61fa386983eaa59b7db487c0cd3n2KCea06mmt04r|ecs.soton.ac.uk|FCC8D2EE-D>
Hi Hugh, <snip/> On 21 Mar 2011, at 11:08, Hugh Glaser wrote: > Thanks guys. > Sigh - not that one again. > The problem was I hadn't noticed I was getting back the yago URI, not the dbpedia resource. > It's just so hard :-) > > Right - now I am officially pissed off. :( > The number of times I have wasted time trying to SPARQL for exact strings, only to find I have missed the @en or the ^^<http://www.w3.org/2001/XMLSchema#string>) > And then had to start messing about scrubbing around in xml or rdf to find out what I had missed. > All because the html version of SPARQL results decides I don't need to be bothered with trivia like that. > > Just who was it that decided that this information was surplus to requirements when returning html from a SPARQL query? > It isn't. The primary reason anyone would be looking at the results of a SPARQL query is to work out exactly what is in the store. > So they can start querying. > And essentially the html is lying to me. > (Not just the dbpedia endpoint, but it seems pretty universal.) > > This just isn't joined up: > When I do > select * where {<http://dbpedia.org/resource/World_Wide_Web_Consortium> ?p ?o} > I get back stuff that includes lines such as: > http://www.w3.org/2000/01/rdf-schema#label World Wide Web Consortium > But if I now put back in essentially what I got out: > select * where {?s <http://www.w3.org/2000/01/rdf-schema#label> "World Wide Web Consortium"} > I get back > http://dbpedia.org/class/yago/WorldWideWebConsortium > > The HTML, spreadsheet, Javascript and CSV give no hint of the lang. > So it is not just about a person having a problem - if I wrote an agent to process output and chose CSV I would have the same problem. > > Time to improve the html output at the least? > > Best > Hugh > > PS While we are in SPARQL for dummies mode ( :-) ) what is the best way of doing a query for an exact string where I don't care about the language or the datatype? > I'm sure this is easy in SPARQL 1.1, as there have been so many users who would have needed it. I am hoping that the answer is not regex for such a common thing. You can do it in SPARQL 1.0, no need for SPARQL 1.1. You can use the str() function, it strips off all of the language tags and datatypes: SELECT ?s WHERE { ?s rdfs:label ?label . FILTER (str(?label) = "World Wide Web Consortium") } I would point out that this is a super inefficient query, and will have to walk the entirety of the graph. I have tried to run the query on dbpedia's sparql-endpoint and it doesn't seem to want to answer it, but saying that it is a horrible query to issue to a sparql store. Regards, Mischa > > On 21 Mar 2011, at 01:05, Nathan wrote: > >> select distinct ?s where {?s ?p "Arts and Humanities Research Council"@en} >> >> :) >> >> Hugh Glaser wrote: >>> dbpedia sparql endpoint is not doing what I expect. >>> select distinct ?s where {?s ?p "World Wide Web Consortium"} >>> gives an answer >>> select distinct ?s where {?s ?p "Arts and Humanities Research Council"} >>> doesn't. >>> But both >>> http://dbpedia.org/resource/World_Wide_Web_Consortium >>> and >>> http://dbpedia.org/resource/Arts_and_Humanities_Research_Council >>> are there with dbpprop:name and rdfs:label and the string. >>> What am I doing wrong? >>> The two queries as the actual URLs: >>> http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=select+distinct+%3Fs+where+%7B%3Fs+%3Fp+%22World+Wide+Web+Consortium%22%7D&debug=on&timeout=&format=text%2Fhtml&save=display&fname= >>> http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=select+distinct+%3Fs+where+%7B%3Fs+%3Fp+%22Arts+and+Humanities+Research+Council%22%7D&debug=on&timeout=&format=text%2Fhtml&save=display&fname= >>> Hope this is not a senior moment, but suspect it is :-) >> > > -- > Hugh Glaser, > Intelligence, Agents, Multimedia > School of Electronics and Computer Science, > University of Southampton, > Southampton SO17 1BJ > Work: +44 23 8059 3670, Fax: +44 23 8059 3045 > Mobile: +44 78 9422 3822, Home: +44 23 8061 5652 > http://www.ecs.soton.ac.uk/~hg/ > > >
Received on Monday, 21 March 2011 12:41:10 UTC