Hi Albretch,

given that Wikidata is far from being a complete source of knowledge
<https://arxiv.org/abs/2212.13104> about authors and their works and has
very strict timeout rules,

you can try this basic query and start building from it. (Please notice
that the wikibase:label service often leads to timeouts and a mitigation
strategy may be retrieving labels in a separate step) :

SELECT DISTINCT ?authorLabel ?workLabel ?workPage ?authorPage
WHERE
{
   {?work wdt:P31 wd:Q7725634} UNION {?work wdt:P31 wd:Q47461344} . ### all
instances of the type 'literary work' or 'written work'
  ?work wdt:P50 ?author . ### the association between works and their
authors

 SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } ### the
service for retrieving labels from Wikidata

  ?workPage   schema:about ?work;
          schema:isPartOf <https://en.wikipedia.org/>. ### retrieve the
wikipedia page of the work
  ?authorPage   schema:about ?author;
          schema:isPartOf <https://en.wikipedia.org/>. ### retrieve the
wikipedia page of the author



} limit 10



Il giorno sab 4 feb 2023 alle ore 20:34 Albretch Mueller via Corpora <
[email protected]> ha scritto:

> On 2/4/23, Darren Cook via Corpora <[email protected]> wrote:
> > The query builder will make it a bit easier:
> > https://query.wikidata.org/querybuilder/?uselang=en
> > It will still be a bit of work, finding out the property numbers for all
> > the fields you want included.
> >
> > (If you go down this route, and it works, maybe you can post back the
> > SPARQL query you end up with.)
>
>
>  I played with it for a little while and couldn't make sense of it.
> The best I could do is gettting an exception which at least showed to
> me what they were using:
>
> https://query.wikidata.org/querybuilder/?uselang=en
>
> Wikidata Query Service
>
>     Edit visually
>     Edit SPARQL
>     Help
>     Examples
>     Download
>
> Query timeout limit reached
>
> SPARQL-QUERY: queryStr=SELECT DISTINCT ?item ?itemLabel WHERE {
>   SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
>   {
>     SELECT DISTINCT ?item WHERE {
>       ?item p:P50 ?statement0.
>       ?statement0 (ps:P50/(wdt:P279*)) _:anyValueP50.
>     }
>     LIMIT 100
>   }
> }
> java.util.concurrent.TimeoutException
>         at java.util.concurrent.FutureTask.get(FutureTask.java:205)
>         at
> com.bigdata.rdf.sail.webapp.BigdataServlet.submitApiTask(BigdataServlet.java:292)
>         at
> com.bigdata.rdf.sail.webapp.QueryServlet.doSparqlQuery(QueryServlet.java:678)
>         at
> com.bigdata.rdf.sail.webapp.QueryServlet.doGet(QueryServlet.java:290)
>         at
> com.bigdata.rdf.sail.webapp.RESTServlet.doGet(RESTServlet.java:240)
>         at
> com.bigdata.rdf.sail.webapp.MultiTenancyServlet.doGet(MultiTenancyServlet.java:273)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
>         at
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655)
>         at
> org.wikidata.query.rdf.blazegraph.throttling.ThrottlingFilter.doFilter(ThrottlingFilter.java:320)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
>         at
> org.wikidata.query.rdf.blazegraph.throttling.SystemOverloadFilter.doFilter(SystemOverloadFilter.java:82)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
>         at
> ch.qos.logback.classic.helpers.MDCInsertingServletFilter.doFilter(MDCInsertingServletFilter.java:49)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
>         at
> org.wikidata.query.rdf.blazegraph.filters.QueryEventSenderFilter.doFilter(QueryEventSenderFilter.java:116)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
>         at
> org.wikidata.query.rdf.blazegraph.filters.ClientIPFilter.doFilter(ClientIPFilter.java:43)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
>         at
> org.wikidata.query.rdf.blazegraph.filters.JWTIdentityFilter.doFilter(JWTIdentityFilter.java:66)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
>         at
> org.wikidata.query.rdf.blazegraph.filters.RealAgentFilter.doFilter(RealAgentFilter.java:33)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
>         at
> org.wikidata.query.rdf.blazegraph.filters.RequestConcurrencyFilter.doFilter(RequestConcurrencyFilter.java:50)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
>         at
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
>         at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)
>         at
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
>         at org.eclipse.jetty.server.Server.handle(Server.java:503)
>         at
> org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
>         at
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
>         at org.eclipse.jetty.io
> .AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
>         at org.eclipse.jetty.io
> .FillInterest.fillable(FillInterest.java:103)
>         at org.eclipse.jetty.io
> .ChannelEndPoint$2.run(ChannelEndPoint.java:118)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
>         at
> org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
>         at java.lang.Thread.run(Thread.java:750)
> _______________________________________________
> Corpora mailing list -- [email protected]
> https://list.elra.info/mailman3/postorius/lists/corpora.list.elra.info/
> To unsubscribe send an email to [email protected]
>


-- 
You didn’t see the thing because you don’t know how to look. And you don’t
know how to look because you don’t know the names
_______________________________________________
Corpora mailing list -- [email protected]
https://list.elra.info/mailman3/postorius/lists/corpora.list.elra.info/
To unsubscribe send an email to [email protected]

Reply via email to