Plantilla:Wikidata list

De Viquipèdia
Salta a la navegació Salta a la cerca
Icona de documentació de mòdul Documentació de la plantilla [ mostra ] [ modifica el codi ] [ mostra l'historial ] [ refresca ]

Permet definir el contingut i forma que ha de tenir una llista automàtica.

Les llistes automàtiques, col·loquialment conegudes com listeriabot o wikidata list, és un sistema que permet crear llistes a partir de Wikidata, mitjançant un bot que executa consultes SPARQL en diferit. El resultat queda guardat en forma de taula wiki dins la pàgina des d'on s'ha invocat i s'actualitza de forma periòdica.

Ús[modifica]

Mitjançant els paràmetres d'aquesta plantilla es defineix la llista a generar per un bot (ListeriaBot). La plantilla s'ha d'ubicar dins l'article al lloc on volem veure la llista i haurà d'anar seguida de la plantilla {{Wikidata list end}} que, entre les dues, delimiten el lloc on s'ubicarà la taula amb la llista generada. Quan s'executi el bot deixarà la taula amb el resultat entre aquestes dues plantilles i serà substituït periòdicament per la llista generada pel bot.

L'estructura de codi que tindrem és
  • Article on ubiquem la llista automàtica
    • plantilla: Wikidata list amb:
      • codi de la SPARQL que cal executar, com a paràmetre sparql=
      • altres paràmetres de configuració de la llista
    • Taula wiki amb el contingut de la llista a mostrar, que ha estat generada pel ListeriaBot
    • plantilla: Wikidata list end "vagó de cua" que serveix per indicar-li al bot on finalitza l'espai per ubicar el contingut generat


Aquesta plantilla hi posa categories de control als articles que la fan servir.



De moment només és possible posar una llista per pàgina.

La consulta ha d'incloure OBLIGATÒRIAMENT la variable ?item - no li canvieu el nom.

Exemple[modifica]

{{Wikidata list|sparql=
 
SELECT ?item WHERE {

 
?item wdt:P31 wd:Q39715 .

 
?item (wdt:P131)* wd:Q55

    }
|columns=label:Article,description,p131:Place,P580,P582,p625,P18
|section=131
|min_section=3
|sort=label
|links=text
|thumb=128
|autolist=fallback
}} ... (ListeriaBot reemplaçarà aquesta part) ... {{Wikidata list end}}

Paràmetres[modifica]

sparql
Conté el codi SPARQL que fa la selecció dels items WD que conformaran la llista. La funció principal d'aquest codi SPARQL és seleccionar el subconjunt, és a dir, les fileres que volem llistar. Per tant, hem de tenir clar quines són les característiques/condicions del "Filtre del SPARQL" que ens cal.
A més de filtrar, també ens pot servir per fer alguna tasca de preparació de dades que deixarà en variables tipus ?variable.
La síntaxi del SPARQL ha de ser del tipus:
| sparql = SELECT * WHERE {
?item Pnnn Qnnnnnn.
}
En principi, qualsevol consulta és vàlida per fer-se servir amb aquesta plantilla, si bé determinats paràmetres (ORDRE, LIMIT, SERVICE wikibase:label,..) no es tenen en compte.
A més, requereix que el subjecte del WHERE sigui la variable ?item. Habitualment ja és així, però quan es fa servir l'assistent de consultes, a vegades li posa un nom diferent. Si això passa, caldrà canviar el nom que hagi posat l'eina i posar ?item a tots els lloc que hi aparegui i tornar a provar que tot va bé.
Es recomanable que el valors del SELECT sigui "*", és a dir, que no s'especifiquin les variables a tractar, ja que aquest filtratge es fa mitjançant el paràmetre columns=. Cas de tenir-los, cal assegurar que hi figuren les variables que farem apareixen a columns=, altrament no es mostraran.
Wikidata list retorna sempre el label de les propietats que li demanem, no les seves Qid. A diferència d'una consulta amb SPARQL on el valor que s'obté d'una propietat és la seva Qid i per obtenir el label, cal fer servir ?<variable>Label.
columns
Defineix les dades que apareixeran a les columnes de la taula. Els seus valors van separat per comes i poden ser:
Alguna de les paraules claus següents
  • number, un número correlativa, a partir de 1, de la filera. La numeració comença per secció, cas de tenir-ne.
  • label, el valor el label de l'item, enllaçat a l'article local (si existeix), o a l'item WD. Si no existeix cap valor pel label de la llengua local, es mostrarà en anglès.
  • label/<lang>, Mostrarà el label -sense enllaçar- en la llengua wiki indicada darrera de "/".
  • description, Descripció de l'item, o autogenerada.
  • item, Qid de l'item de la filera
El valor d'una propietat o qualificador sense que haguem fet esment d'ell al codi SPARQL. Aquesta funcionalitat permet fer llistes automàtiques bàsiques de forma molt senzilla i amb poc coneixement de SPARQL.
  • Pxxx, un codi de propietat
  • Pxxx/Pzzz, mostra el valor de la propietat Pxxx i del seu qualificador Pzzz, si existeix aquesta combinació per l'item.
  • Pxxx/Qyyy/Pzzz, mostra el valor del qualificador Pzzz, quan la propietat Pxxx = Qyyyyy. Quan una propietat té múltiples valors, com ara Premis (P166) o Càrrec (P39), i només volem treballar amb un tipus de premi o de càrrec. This is a version of the above, specific for a single item; e.g., "p553/q866/p554" to get YouTube account names.
El valor d'una variable calculada dins el codi SPARQL.
  • ?fieldname, a SPARQL result field name.
Values marked as "deprecated" are not shown. Every column can optionally have a title generation by adding ":TITLE", otherwise the Wikidata property name is used. Mandatory
sort
The initial sort key for the table. Valid values are:
  • label, the label of the item
  • family_name, tries to find, and sort by, the family (last) name from the label, assuming items are people. This is a heuristic and may not work properly in all cases. If possible, try to sort by P734 (family name).
  • Pxxx, a Wikidata property
Optional
sort_order
asc, per ordenar ascendent; desc, per ordenar descendent.
section
Permet crear seccions dins el llistat, amb capçaleres per cada valor de la propietat que s'indiqui en aquest paràmetre. Ha de ser un codi de propietat, Pnnnn. Opcional
min_section
Una xifra que indica el mínim nombre de línies que ha de tenir una secció per mostrar-se amb capçalera pròpia. Per evitar tenir múltiples micro-seccions amb unes poques línies, totes les seccions que quedin per sota, es llistaran junts sota la capçalera "Misc". El valor per defecte és 2. Opcional
autolist
If description is a column but no description exists on Wikidata, "autolist=fallback" uses AutoDesc to generate one. Optional
language
Idioma dels textos de Label/description, si es vol un de diferent a l'idioma de la VP. Opcional
thumb
Xifra (sense indicar la unitat) què indica la mida en pixels que tindran les imatges. Valor per defecte: 128. Opcional
links
How to render links not in the local Wikipedia. Valid values are:
  • all to link to Wikidata. Default.
  • local to remove entries for which there exists no local article (the opposite of red_only).
  • red to generate red links based on label and item.
  • red_only to remove entries for which there exists a local article (the opposite of local).
  • text to generate blue links for existing pages, and plain text otherwise.
  • reasonator to generate blue links for existing pages, and links to Reasonator otherwise.
Optional
row_template
Generates a template call rather than a table row; the template must then generate the table row in turn or the table header/footer need to be suppressed using skip_table parameter. Parameters passed to the template are the lower-case keys from the columns parameter, e.g. label or p18. Optional
header_template
Generates a template call rather than a table header; the template must then generate the table header. No parameters are passed to this template. Recommended to be used with row_template. Optional
skip_table
Elimina el format tabular clàssic i dóna llibertat de format gestionat des de la row_template. S'activa amb qualsevol valor.
wdedit
Fora d'ús. Prevista per poder accedir a l'item de WD per modificar-lo. Actualment es fa directament amb l'enllaç amb el Qid de l'ítem.
references
Mostra les referències que tinguin els valors a WD. El valor ha de ser all. Recordau tenir la secció de Referències a peu de pàgina. Opcional
freq
Freqüència, mesurada en dies, amb que el bot farà una actualització del contingut. Aquest paràmetre no afecta a les actualitzacions que es demanen manualment des de l'enllaç de la capçalera de la llista. Opcional
summary
Comma-separated list of keys to add as a summary underneath all other content. Opcional
  • Pxxx/Qyyy/Pzzz, mostra el valor del qualificador Pzzz, quan la propietat Pxxx = Qyyyyy. Quan una propietat té múltiples valors, com ara Premis (P166) o Càrrec (P39), i només volem treballar amb un tipus de premi o de càrrec. This is a version of the above, specific for a single item; e.g., "p553/q866/p554" to get YouTube account names.
  • itemnumber The total number of items (rows) in this list.

Paràmetres complementaris[modifica]

Els següents paràmetres són propis d'aquesta VP, alguns derivats de la versió WD

no_header
Permet simplificar l'encapçalament estàndard que aquesta plantilla genera per defecte (línia horitzontal superior i text descriptiu). Amb no_header=sí o yes, es manté tant sols la icona per "recalcular manualment" la llista.
show_tools
Mostra una línia extra a la capçalera amb enllaços a eines WD que treballena amb la selecció de la llista. Són útils en fase de depuració o quan la llista no forma part del cos d'un article enciclopèdic, sinó com a eina de treball d'un projecte, marató, etc. NO funciona quan està activat no_header. S'activa amb qualsevol valor. Opcional
show_query
Ens mostra a la capçalera la query que hem definit al paràmetre sparql=. És una ajuda documental que permet veure la informació del filtre de la consulta sense haver d'editar el codi. Com en el cas de show_tools, és útil en fase de depuració o quan la llista no forma part del cos d'un article enciclopèdic, sinó com a eina de treball. NO funciona quan està activat no_header. S'activa amb qualsevol valor. Opcional

Gràfics[modifica]

La Wikidata list es pot combinar amb la {{Graph:Chart}}

Exemple
d:Wikidata:Samples/charts/bar chart:
{{Wikidata list
|sparql=

SELECT
  (wd:Q2481549 as ?item) 
  ("rect" as ?type)
  ("400" as ?width) 
  ("200" as ?height) 
  ("Nombre de zoos amb óssos polars" as ?legend) 
  ("Països" as ?xAxisTitle) 
  ("zoos" as ?yAxisTitle)
  (GROUP_CONCAT(?country;separator=",") as ?x)
  (GROUP_CONCAT(?count;separator=",") as ?y)
WHERE
{
  { 
    SELECT ?country (COUNT(DISTINCT ?zoo) as ?count)
    {
      ?zoo wdt:P1990 wd:Q33609 . 
      ?zoo wdt:P31 wd:Q43501 .
      ?zoo wdt:P17 / wdt:P901 ?country .
      SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
    }
    GROUP BY ?country
    ORDER BY ASC(?count) ?country
  }
}

|columns=?type,?width,?height,?legend,?xAxisTitle,?yAxisTitle,?x,?y
|short=true
|chart=true
|skip_table=true
|row_template=Graph:Chart
}}

{{Wikidata list end}}

És important tenir "row_template=Graph:Chart", "skip_table=sí" i "columns" amb els valors requerits a plantilla:Graph:Chart.

L'exemple mostra "type=rect", però es podria haver fet amb line, area, pie.

El codi generat pel ListeriaBot és:

{{Graph:Chart
| type = rect
| width = 400
| height = 200
| legend = Nombre de zoos amb óssos polars
| xaxistitle = country
| yaxistitle = zoos
| x = US,FR,GM,CA,DA,NL,JA,EZ,AS,UK,SN,RS,PL,NZ,FI,EN,AU
| y = 23,5,4,4,3,2,2,2,2,1,1,1,1,1,1,1,1
}}

This (or more recent data) renders as:

{{d:Wikidata:Samples/charts/bar chart}}

Enllaços externs[modifica]