Módulo discusión:Wikidata

Último comentario: hace 7 años por Aleator en el tema Búsquedas

Búsquedas

editar

Buenas. Como no sabía dónde dejarlo y no hay página de ayuda sobre Wikidata, lo dejo aquí. Hay una forma de obtener datos de Wikidata desde Wikidata:SPARQL query service (https://query.wikidata.org). P.ej. para obtener una lista de los autores (humanos) de Wikisource que están conectados con Wikidata (actualmente, el 100%), con su ID de Wikidata junto a su nombre, se puede pasar la siguiente query:

SELECT ?author ?authorLabel
WHERE
{
	?article 	schema:about ?author ;
			schema:isPartOf <https://es.wikisource.org/> .
    ?author wdt:P31 wd:Q5.
	SERVICE wikibase:label { bd:serviceParam wikibase:language "es" }
}
GROUP BY ?author ?authorLabel

Se puede recuperar la nacionalidad (?s wdt:P27 ?nacionalidad .), la fecha de nacimiento (?s wdt:P569 ?fechanacimiento ., la fecha de muerte (?s wdt:P570 ?fechamuerte .), aquellos que sepan español (?s wdt:P1412 wd:Q1321 .), etc. etc. Está bastante interesante. Slds. -Aleator 17:56 8 jul 2017 (UTC)Responder

Otro ejemplo que funciona: las 20 primeras coincidencias de escritores, poetas y autores que hablan español con su nacionalidad, y fechas de nacimiento y defunción (aunque no estén en Wikisource):
SELECT distinct ?writer ?place ?fechanacimiento ?fechamuerte
WHERE
{
  {?s wdt:P106 wd:Q36180 .} UNION { ?s wdt:P106 wd:Q482980 . } UNION { ?s wdt:P106 wd:Q49757 . }
  ?s wdt:P27 ?place .
  ?s wdt:P569 ?fechanacimiento .
  ?s wdt:P570 ?fechamuerte .
  { ?s wdt:P1412 wd:Q1321 . }

   OPTIONAL {
     ?s rdfs:label ?writer filter (lang(?writer) = "es").
   }
   OPTIONAL {
     ?s rdfs:label ?place filter (lang(?place) = "es").
   }
} GROUP BY ?place ?writer ?fechanacimiento ?fechamuerte
LIMIT 20
-Aleator 18:10 8 jul 2017 (UTC)Responder
Otro ejemplo en Wikisource discusión:Lista de autores. --Aleator 15:07 14 ago 2017 (UTC)Responder
Volver a la página «Wikidata».