Vés al contingut

Ajuda:Llistes automàtiques/header-row

De la Viquipèdia, l'enciclopèdia lliure

Dins els paràmetres de la plantilla {{Wikidata list}} trobem header_template i row_template. Permeten indicar el nom de dues subplantilles (opcionals) on es pot escriure en codi wiki, com qualsevol altra plantilla, el tractament que voldrem que es faci per construir la capçalera i per construir les línies de la llista, respectivament.

Si bé les files de la taula són el resultat exclusiu de la selecció feta amb SPARQL, el contingut de les columnes i el seu ordre depèn, en primera instància, del paràmetre columns =, però mitjançant una row_template es pot alterar l'ordre, editar el contingut, crear una columna amb informació combinada d'altres i deixar de mostrar-ne alguna de les definides a columns =.

header template

[modifica]

Recordem que havíem vist que les llistes automàtiques es materialitzen en una taula wiki generada pel ListeriaBot dins l'article. Doncs bé, sense la header_template la capçalera contindrà el nom de les propietats que apareixen al paràmetre columns= o bé el text que haguem escrit darrera d'aquestes propietats separat pel signe de dos punt (:). Per defecte, la taula permet ordenar per qualsevol columna.

Si volem una edició més complexa, per exemple, amb colors, fonts o mida de lletra diferents, o bé volem evitar alguna columna, farem servir header_template

Com fer la header_template?. Exactament igual que el començament d'una taula wiki amb capçalera, és a dir:
  • amb el codi {| per iniciar la taula i definir les seves característiques; el codi !, un per cada columna, amb el text que hi voleu posar. També és pot fer servir el codi |+ per afegir una capçalera de taula, opcionalment. Per personalitzar característiques pròpies d'una taula, podeu consultar la seva documentació.
  • NO s'ha de fer servir cap separador de línia |-, ja que ho fa el ListeriaBot.
Podeu veure totes les header_template agrupades a la seva categoria.

row template

[modifica]

Cada item seleccionat per formar la llista es converteix en una línia de la taula generada pel ListeriaBot.

Quan no existeix row_template, el contingut definit a columns= esdevenen columnes de la taula, seguint la sintaxi pròpia de les taules wiki.

Quan que es fa servir, el listeriaBot substitueix la sintaxi de columnes de la taula, per una crida a la plantilla:<nom_plantilla row_template> i li passa com a paràmetres el valor de cadascuna de les propietats descrites a columns =. D'aquesta forma, la sintaxi de la fila de la taula, la genera el codi que haguem escrit a la row_template, amb total llibertat de format, orde i operacions a realitzar. Als exemples podem trobar:

  • la unió de dos continguts en una columna (Ex:població (any); museu + núm.inventari, etc.);
  • crides a una plantilla des de dins de la row_template per donar formats específics (Ex: dimensions d'una obra pictòrica)
  • crear una columna nova a partir d'un càlcul (Ex: densitat de població a les llistes de municipis,etc.)
Podeu veure totes les row_template agrupades a la seva categoria.

Cas pràctic

[modifica]

Si agafem l'exemple bàsic que em vist vist a la pestanya: Sintaxi, aplicarem algunes millores d'edició.

  • Posarem la data en notació DD-MM-AAAA
  • Ocultarem el Qid de cada línia sota una imatge d'un llapis per descarregar visualment la llista.
  • Afegirem una header_template per poder posar una icona com a capçalera del Qid i evitar un text massa llarg.
Sintaxi simplificada Sintaxi amb header i row template

{{Wikidata list
| sparql = SELECT * WHERE {
   ?item wdt:P106 wd:Q1028181;
     wdt:P135 wd:Q34636;
     wdt:P21 wd:Q6581072.
  }
| columns = P18:Imatge,label:Nom,
      P19:Lloc naixement,P569:Data naixement,
      P106:Ocupació, item:Qid
| sort=label
| links = red
| thumb = 60
| freq = 180
}} «Aquí anirà el resultat generat pel Listeriabot» {{Wikidata list end}}



La construcció de la header_template correspon a una estructura d'inici de taula. A les capçaleres de columnes amb imatges se'ls aplica class=unsortable per treure l'opció d'ordenar.

En aquest cas, el nombre de columnes és el mateix que el nombre de propietats que hi figuren al paràmetre columns. Ara bé, quan alguna de les propietats que se li passen dins el paràmetre columns, no es mostrarà ocupant columna (per exemple, perquè s'ha fet servir per un càlcul), amb la header_template podrem ajustar les columnes.



La row_template és una successió de separadors de cel·les d'una taula. L'ordre en que s'escriguin els paràmetres serà com es mostrarà, no el que hi hagi al paràmetre columns. La data de naixement s'inverteix perquè el ListeriaBot ho passa en notació anglosaxona. També es construeix un enllaç a l'item WD i es posa com a enllaç de la imatge del llapis.


{{Wikidata list
| sparql = SELECT * WHERE {
   ?item wdt:P106 wd:Q1028181;
     wdt:P135 wd:Q34636;
     wdt:P21 wd:Q6581072.
  }
| columns = P18,label, P19,P569, P106, item
| header_template=Wikidata list/headerrow/exemple ajuda 1
| row_template=Wikidata list/exemple ajuda 1
| sort=label
| links = red
| thumb = 60
| freq = 180
}} «Aquí anirà el resultat generat pel Listeriabot» {{Wikidata list end}}
Codi header_template
{| class='wikitable sortable' style='width:100%'
!scope="col" class="unsortable"| Imatge
! Nom
! Lloc naixement
! Data naixement
! Ocupació
! scope="col" class="unsortable"|[[File:Wikidata-logo.svg|16px|link=|Dades a Wikidata]]
Codi row_template
|-
| {{{p18|}}}<!--...... Imatge-->
| {{{label|}}}<!--....... Nom-->
| {{{p19|}}}<!--....... lloc naixement    -->
| style="text-align:center;" |{{#invoke:string|replace |source={{{p569|}}}|pattern=(%d%d%d%d)-(%d%d)-(%d%d)|replace=%3-%2-%1|plain=false}}<!--....... data naixement  -->
| {{{p106|}}}<!--....... ocupació   -->
<!--....... Wikidata-->
| [[Fitxer:Arbcom ru editing.svg|12px|Modifica les dades a Wikidata|enllaç=d:{{#invoke:delink|delink|{{{item|}}}}}]]

Actualitza ara

Informació actualitzada per un bot. Els canvis manuals es perdran quan s'actualitzi!

Imatge Nom Lloc naixement Data naixement Ocupació Qid
Adelina Zandrino Gènova 1893-09-19 pintor
il·lustrador
Q3605191
Amelia Bauerle Bayswater 1873-11-12
1870
pintor
il·lustrador
artista visual
Q4742222
Anne Anderson Escòcia 1874 il·lustrador
pintor
Q47185
Clara Weaver Parrish Selma 1861-03-16 dissenyador
pintor
artista
Q5126065
Elena Greculesi Suceava 1928-06-21 pintor Q12727496
Elenore Plaisted Abbott Lincoln 1875 pintor
il·lustrador
escenògraf
artista
Q5359203
Elsa von Freytag-Loringhoven Świnoujście 1874-07-12 escultor
escriptor
pintor
model
poeta
artista
dibuixant
artista d'assemblage
artista de performance
Q442841
Germaine Boy 10è districte de París 1884-10-09 pintor
professor de dibuix
aquarel·lista
Q124249858
Hede von Trapp Pula 1877-11-18 pintor
dissenyador gràfic
escriptor
Q114460
Jessie Marion King Bearsden
Glasgow
1875-03-20
1876
pintor
il·lustrador
artista gràfic
dissenyador
terrissaire
professor d'universitat
joier
Q2078865
Margaret Macdonald Tipton 1864-11-05
1865
pintor
artista visual
artista
Q508344
Maria Yakunchikova Wiesbaden 1870-01-19 pintor
dissenyador gràfic
brodador
Q4537219
Élisabeth Sonrel Tours 1874-05-17 pintor
il·lustrador
Q4428845
Fi de la llista autogenerada.
Actualitza ara

Informació actualitzada per un bot. Els canvis manuals es perdran quan s'actualitzi!

Imatge Nom Lloc naixement Data naixement Ocupació Dades a Wikidata
Adelina Zandrino Gènova 19-09-1893 pintor
il·lustrador
Modifica les dades a Wikidata
Amelia Bauerle Bayswater 12-11-1873
1870
pintor
il·lustrador
artista visual
Modifica les dades a Wikidata
Anne Anderson Escòcia 1874 il·lustrador
pintor
Modifica les dades a Wikidata
Clara Weaver Parrish Selma 16-03-1861 dissenyador
pintor
artista
Modifica les dades a Wikidata
Elena Greculesi Suceava 21-06-1928 pintor Modifica les dades a Wikidata
Elenore Plaisted Abbott Lincoln 1875 pintor
il·lustrador
escenògraf
artista
Modifica les dades a Wikidata
Elsa von Freytag-Loringhoven Świnoujście 12-07-1874 escultor
escriptor
pintor
model
poeta
artista
dibuixant
artista d'assemblage
artista de performance
Modifica les dades a Wikidata
Germaine Boy 10è districte de París 09-10-1884 pintor
professor de dibuix
aquarel·lista
Modifica les dades a Wikidata
Hede von Trapp Pula 18-11-1877 pintor
dissenyador gràfic
escriptor
Modifica les dades a Wikidata
Jessie Marion King Bearsden
Glasgow
20-03-1875
1876
pintor
il·lustrador
artista gràfic
dissenyador
terrissaire
professor d'universitat
joier
Modifica les dades a Wikidata
Margaret Macdonald Tipton 05-11-1864
1865
pintor
artista visual
artista
Modifica les dades a Wikidata
Maria Yakunchikova Wiesbaden 19-01-1870 pintor
dissenyador gràfic
brodador
Modifica les dades a Wikidata
Élisabeth Sonrel Tours 17-05-1874 pintor
il·lustrador
Modifica les dades a Wikidata
Fi de la llista autogenerada.

Notes de funcionament

[modifica]
  • Les header_template i el row_template poden ser reutilitzables. Per exemple, si fem una llista automàtica per llistar els municipis d'una regió i volem mostrar els mateixos continguts en una altra, el codi de crida a la plantilla {{Wikidata list}} que hi haurà a l'article de cada regió, seran lleugerament diferents entre si, ja què el Qid canvia. Ara bé, la header_template i row_template pot ser compartida, no cal duplicar-la per cada ús. Als exemples hem intentat que les columnes mostrades fossin igualment vàlides per municipis d'Alemanya o de Catalunya, etc., per reduir el nombre de header-row a crear (i mantenir). Ara bé, si hom necessita fer una variació, es pot fer agafant com a mostra els casos dels exemples i creant-ne de nous.
  • Criteris sobre els noms de plantilles. A fi de tenir ordenat un catàleg que pot créixer de forma important, totes les header_template, row_template i les pàgines d'exemple, s'anomenen com a subplantilles de Wikidata list (plantilla:Wikidata list/<nom descriptiu>).
    • header_template: Plantilla:Wikidata list/headerrow/<nom descriptiu>. És a dir, estan totes dins el nivell headerrow, per diferenciar-les de les row_template, tot fent servir el mateix nom final per les parelles.

Continua .. / ..

[modifica]
pestanya "Tractament dades" per veure com editar continguts mitjançant el codi SPARQL abans de mostrar-los.
pestanya "Exemples" per veure casos models.