Vés al contingut

Tema de Usuari Discussió:Jmarchn

Amadalvarez (discussiócontribucions)

Després de donar-li dues voltes, crec que la generació del paràmetre |doc= s'ha de fer a CreateStatement, ja que Statement+, mentre no canviem d'opinió, només fa representació.

Per tant, el que hauria de generar com a valor escrit per a doc = és una crida a {{DocInfobox docStatement}} amb els paràmetres emplenats amb el que trobi a la propietat restricció (P2302) de la P que hagin demanat.

Si mires la documentació de la Docinfobox docStatement, es poden generar:

Tens alguns exemples a :

Viquiprojecte:Documentació estructurada infotaules/doc/P20/Case 1 (Hébuterne)

Viquiprojecte:Documentació estructurada infotaules/doc/P119/Case 1 (Hébuterne)
Viquiprojecte:Documentació estructurada infotaules/doc/P570/Case 1 (Hébuterne)


Ja em diràs

Amadalvarez (discussiócontribucions)

Hola, bon dia. Tot i que em reafirmo en la meva petició de ubicar tot el que és "crear" en un lloc i tot el que és "mostrar" en un altre, pagaria la pena fer-ho de forma que un dia la Statement++ pogués fer una crida a la CreateStatement. Ho veus, oi?.

Gràcies

Jmarchn (discussiócontribucions)

Sí, i no ha de ser gaire difícil, però abans s'ha de solucionar la lectura de valors d'un moment determinat (allò de l'oldid que em vas dir que comentaries amb en Vicenç). Seria una mena de {{#invoke:Wikidata | claim | item=Q425440 | property=P267 | oldid=12345678 }}.

Amadalvarez (discussiócontribucions)

Ja vaig preguntar-li al Vicenç i em va dir que com a somni està bé però que no es pot fer. Ho sigui que seguim amb accessos com sempre. Merci,

Amadalvarez (discussiócontribucions)

Cert. Ara ho faig !

Jmarchn (discussiócontribucions)

Ja funciona (en versió simple i sense abreviacions}: {{Statement++}}. He arreglat els exemples per fer-los més ajustats al format de sortida de CreateStatement.

Amadalvarez (discussiócontribucions)

OK. M'espero a les abreviacions per provar amb els casos ja creats.

He fet una comparació i el consum de processador és només una mica millor, però la memòria baixa quasi a al meitat. !!

Jmarchn (discussiócontribucions)

M'he quedat encallat en un punt de captura de dades de WD, he demanat auxili a n'en Vicenç. Pots veure com queda a Mòdul:CreateStatement/prova.

Em venen unes ganes gairebé irrefrenables de canviar les icones rodones verdoses. Qua gairebé no es distingeix el dibuix. Només es tractaria de deixar el fons transparent i llavors contrastaria amb el groc clar. Amb l'Inkscape hi tinc la mà trencada....

Amadalvarez (discussiócontribucions)

No és que m'agradin especialment, és que són les icones oficials de cada constrain. Però si mantenim l'esperit , tira milles.

Amadalvarez (discussiócontribucions)

Queden força bé. Bona feina.

Jmarchn (discussiócontribucions)

Ja funciona. No sé si falta quelcom... Encara està en CreateStatement/prova. He vist que el que captura sovint no és d'ajuda...

Amadalvarez (discussiócontribucions)

Igual cal fer un "filtre subjectiu".

Quan ho feia a mà, ja vaig detectar que la meitat de les coses me les saltava perquè enredaven més que una altra cosa.

El problema de filtrar és que requereix un manteniment per si canvien la definició de les constrains. Però pots fer una prova.


Avui i demà estaré a la Viquitrobada a Cervera. A veure si puc fer alguna provatura.

Merci

Amadalvarez (discussiócontribucions)

Primeres proves: Estic treballant a Plantilla:Proves amadalvarez/Prova3

  • El contingut generat per CreateStatement/prova funcionen igual a Statement+ com a Statement++ Fet!
  • Statement++ no entén les "V", de valor, en majúscules. Veure exemple a Special:permalink/22436604 Fet!
  • CreateStatement/prova no cal que generi:
    • el tipus de data {{int:Wikibase-time-calendar-gregorian}}. Si de cas, podria mostrar els casos que no siguin gregoriana, que és la més comú. Fet!
    • el {{label|Qnnnnn}} que posa a la següent línia de la "P", si es genera "doc=", ja que ja apareixerà dins de doc. Així mantenim la similitud amb la interface de WD. No fet!
    • Cal que generi |doc={{{doc|}}} dins la crida a {{DocInfobox docStatement}}. No es veu la utilitat quan fas servir directament el cas que generes, però com que les crides a Statement+ van dins una pàgina per cada exemple, quan aquestes pàgines es fan servir des d'altres exemples i no t'agrada el doc generat (en aquest cas pel createStatement, els pots canviar o anul·lar informant un nou doc manualment. No fet!

De moment, això. Bona feina !.


Amadalvarez (discussiócontribucions)

Més:

{{#invoke:CreateStatement/prova|main|item=Q76735573|property=P1552}}, dóna error Error de Lua: bad argument #1 to 'gsub' (string expected, got nil). Fet!


Quan genera la crida a {{DocInfobox docStatement}}, genera un c=Qnnnnnn, i ha de ser qid=Qnnnnn, ja que la "c" és l'abreviatura per contemporary. Fet!

Amadalvarez (discussiócontribucions)

Un cas per nota: {{#invoke:CreateStatement/prova|main|item=Q76736492|property=P1963}} genera:

{{Statement+ |P = {{P-|1963}} {{label|Q76736492}}

|v1= {{Q-|166}} |v1.q1.p = {{P-|2561}} |v1.q1.v1=premis |v1.q2.p = {{P-|518}}

|v1.q2.v1={{Q-|199693}} |v1.q3.p = <nowiki>{{P-|2306}}

|v1.q3.v1={{Q-|585}}

|doc = {{DocInfobox docStatement |p=P1963 |e={{DocInfobox prefix}}/doc/P1963 |c=Q76736492 |m=2 |d= {{Button ST|red}} {{label|Q21503247}} → {{p-|P279}}

{{Button ST|red}} {{label|Q21510865} → {{q-|Q18616576}} }} }}

propietat de Wikidata per aquest tipus

Bloc temàtic "premis" per Template:Global Infobox person

mar Negra modifica
nom premis
s'aplica a Viquipèdia en català
propietat Oslo
0 referència
+ afegiu una referència
   
restricció de declaració requerida → subclasse de

restricció de tipus del valor → propietat de Wikidata

+ afegiu un valor
  • Els valors acostumen a ser Qs i per representar-los, la CreteStatement genera {{Q-|nnnnn}}. Però a vegades el valor recuperat pot ser una propietat. Llavors, cal generar {{P-|nnnnn}}. A l'exemple afecta a la v1 i la v1.q3.v1
  • Suposo que, per alguna cosa derivada del punt anterior, quan arriba a la P2306 (que la interpreta com Q2306), només tracta el primer valor -P585-, però no la resta.
  • En aquest mateix cas la propietat nom (P2561) porta llengua i no es mostra (no recordo si això ho haviem parlat).
Jmarchn (discussiócontribucions)

Arreglat un petit error que generava un innecessari ".q1.v2=ca" en aquest exemple.

Amadalvarez (discussiócontribucions)

{{#invoke:CreateStatement/prova|main|item=Q76736492|property=P31}}, genera un q=y dins la crida de {{DocInfobox docStatement}} que es duplica amb el q=llista de qualificadors , què és el correcte. Fet!

Amadalvarez (discussiócontribucions)

Petita correcció a les especificacions inicials: Si a la crida del CreateStatement li aporten un valor a |doc=, l'ha d'agafar i no fer la generació del {{DocInfobox docStatement}} Fet!

Jmarchn (discussiócontribucions)

Corregit, desfeta la indicació prèvia. Falten les dues correccions anteriors a aquesta.

Amadalvarez (discussiócontribucions)
Amadalvarez (discussiócontribucions)

{{#invoke:CreateStatement/prova|main|item=Q859|property=P1477}}, dona Error de Lua a Mòdul:CreateStatement/prova a la línia 93: attempt to concatenate local 'val1' (a nil value). Fet!

Jmarchn (discussiócontribucions)

Aquesta ha estat fàcil, el problema és que retorna (grc), grec antic, i per fer-ne la conversió a nom cal una plantilla. Però aquesta plantilla no és habitual: {{Nom de l'idioma}}, per això, fora que tinguin una millor alternativa, ho deixo tal com queda:

Contingut desplegable

{{Statement+
|P ={{P-|1477}}
{{label|Q859}}
|v1 =Αριστοκλής (grc)
|doc ={{DocInfobox docStatement |p=P1477 |e={{DocInfobox prefix}}/doc/P1477 |q=Q859 |q=y |m=1 |q=P2440, P2125, P1721, P1942, P1814, P898, P2183, P2719, P4187, P1480, P282, P1552, P5139, P2001, P3680, P1310, P828, P407 |d=
{{Button ST|red}} {{label|Q21503250}} → {{q-|Q5}}, {{q-|Q729}}, {{q-|Q95074}}
}}
}}

Amadalvarez (discussiócontribucions)

Mes que suficient. Merci.

Jmarchn (discussiócontribucions)

Arreglat l'embolic amb les q, un corresponia a qid i una altra era sobrera, ara l'única q és la dels qualificadors.

Amadalvarez (discussiócontribucions)
Jmarchn (discussiócontribucions)

He copiat el contingut del mòdul CreateStatement/prova al normal CreateStatement. Fes servir ara aquest últim mentre arreglo lo de les properties en el de prova (és per si ho vols fer servir mentrestant).

Amadalvarez (discussiócontribucions)

pel tema de les propietats, pots mirar {{Multi P-}} per inspirar-te

Amadalvarez (discussiócontribucions)

{{#invoke:CreateStatement|main|item=Q530891|property=P569}} dona Error de Lua a Mòdul:CreateStatement a la línia 86: attempt to index local 'dv' (a nil value). Fet!

Jmarchn (discussiócontribucions)

{{#invoke:CreateStatement/prova|main|item=Q76736492|property=P1963}}, ja està arreglat. El que passa és que per veure'l bé ja has d'utilitzar la {{Statement++}} doncs hi ha més de 3 .v. en el cas de "propietat". Fet!

Ja l'he posat com a exemple al final de Mòdul:CreateStatement/ús.

Jmarchn (discussiócontribucions)

{{#invoke:CreateStatement|main|item=Q530891|property=P569}} arreglat.

Jmarchn (discussiócontribucions)

@Amadalvarez{{#invoke:CreateStatement/prova|main|item=Q21503247|property=P746}} arreglat ({{Button ST|red}} {{label|Q21503247}} → {{p-|P21}}, {{p-|P19}}, {{p-|P569}})

Jmarchn (discussiócontribucions)

Fes-me un resum del que falta. No em vaig aclarir del que volies referent al doc (havia fet dues modificacions)... Suposo que vols crear un paràmetre de doc alternatiu de mode |doc_extra= per a |doc={{DocInfobox docStatement| doc={{{doc_extra|}}} ....

Amadalvarez (discussiócontribucions)

Aquest tema és més fàcil del que sembla. Si mires les instruccions de {{DocInfobox docStatement}}, veuràs que explica que sempre s'ha de posar un doc={{{doc|}}}.

Doncs això és el que li falta quan generes la crida al {{DocInfobox docStatement}}.

Resposta a «ampliació Statement+»