Hm, yes, but if I increase the LIMIT, I still only get results of people
starting with ‘A’. I think there’s something wrong with the Endpoint, because
it only provides authors whose names start with an ‘A’.
Try the following query, which returns all names starting not (!) with an ‘A’,
which confirms my hypothesis of only names starting with an ‘A’ (+ two names
starting with a paranthesis):
SELECT DISTINCT * WHERE {
?a a foaf:Agent .
?a foaf:name ?n FILTER(!regex(str(?n),'^A','i')).
}
ORDER BY DESC(?n)
LIMIT 5000
I don’t know why the data of this endpoint seems to be incomplete. It’s a pity,
because it makes the whole endpoint useless.
Maybe some of you know SPARQL-Endpoints for papers/publications, besides this
one and Rkbexplorer? Rkbexplorer has its own URI for each author of each paper,
so there are a lot of duplicates, which is not useful for my case.
Best regards and thanks for your advice,
Peter
Von: Alfredo Serafini [mailto:[email protected]]
Gesendet: Freitag, 04. April 2014 11:34
An: Wetz Peter
Cc: [email protected]
Betreff: Re: DBLP Sparql Endpoint
Hi for me seems to work, for example using instead:
SELECT DISTINCT * WHERE {
?a a foaf:Agent .
?a foaf:name ?n .
FILTER regex(?n, '^(.+\\s+)*b', 'i')
}
LIMIT 10
I obtain as the first threee results the following ones:
"(Zhou) Bryan Bai"
"A-Reum Bae"
"A. A. (Louis) Beex"
If you want to work with surname the problem is related to the fact that all
the data (name, surname) are in the foaf:name field, so that the only way seems
to use a more specific regex, for example excluding the first part which can be
something like "A. ", "B. A." or similar...
2014-04-04 10:11 GMT+02:00 Wetz Peter
<[email protected]<mailto:[email protected]>>:
Dear all!
I would like to use the DBLP Sparql Endpoint at [1] to retrieve publications of
authors by REGEX Search. This, however, seems not to work as expected.
This query returns authors starting with an “A”:
SELECT DISTINCT * WHERE {
?a a foaf:Agent .
?a foaf:name ?n .
FILTER regex(?n, '^a', 'i')
}
LIMIT 10
This query should return authors starting with a “B”:
SELECT DISTINCT * WHERE {
?a a foaf:Agent .
?a foaf:name ?n .
FILTER regex(?n, '^b', 'i')
}
LIMIT 10
This does not return any results, and I don’t know why. Actually, it’s not
working with any other letter except “A”. What I simply want to do is, to
search for authos based on an input string.
Maybe, somone of you can help.
Thanks in advance,
Peter
[1] http://dblp.l3s.de/d2r/snorql/