Module talk:Wd

Latest comment: 43 minutes ago by Teslaton in topic Support for P5017 last update

Another update

edit

I once again altered the internal workings of the citation-rendering function in the sandbox, but also /i18n. Apart from a bugfix, in this update I tried to make much template- and param-specific behavior (previously hardcoded into the function) configurable in /i18n. Changes to /i18n are not backward-compatible. Some testcases are here. Janhrach (talk) 18:40, 15 August 2024 (UTC)Reply

Thanks for the info — Martin (MSGJ · talk) 18:46, 15 August 2024 (UTC)Reply
  Done. Janhrach (talk) 09:45, 26 August 2024 (UTC)Reply

Reference error message improvement

edit

Finally, I improved the reference error messages. The code is in the sandbox. /i18n has also been modified. You can see the difference of the outputs here. I appreciate your feedback. Janhrach (talk) 17:17, 27 August 2024 (UTC)Reply

  Done. Janhrach (talk) 17:06, 2 September 2024 (UTC)Reply
edit

  You are invited to join the discussion at Template talk:Wikidata entity link § Not picking up mul labels from Wikidata entities. Peaceray (talk) 01:10, 30 August 2024 (UTC)Reply

@Thayts, Janhrach, et al.: What do you think? I was thinking to change Module:Wd#L-704 from label = mw.wikibase.getLabelByLang(id, self.langCode) to label = mw.wikibase.getLabelByLang(id, self.langCode) or mw.wikibase.getLabel(id) (at least as an interim step). Is this the right thing to do or should we just remove getLabelByLang() all together? Currently it is also being (mis)used at Module:Wd#L-1294 (with a hardcoded "en" for the language). Incidentally this module currently also uses getDescription() (and not getDescriptionByLang()) at Module:Wd#L-2523. It seems like the language usage (and their fallbacks) is not very unified here. Thank you, —Uzume (talk) 15:11, 30 August 2024 (UTC)Reply
I am not familiar with the Wikibase API. As for the status quo, it is not good and I already have had to fix a bug arising from a lack of label fallback. I don't know whether getLabel provides a good fallback mechanism, and I don't now have time to check the documentation. (Though maybe tomorrow I will have.)
As for the hardcoded "en", it is required that the language is hardcoded, because the fetched label is used in a Geohack call. (However, I find it much preferable for this string to be fetched from a WD property and not from the label, because in the future, there will be no guarantee that the label will be accepted as a Geohack param.) Janhrach (talk) 19:26, 1 September 2024 (UTC)Reply
Update: I found the documentation is linked in the linked discussion, so I didn't have to search for it. It seems that it is desirable use getLabel only. There may arise some issues, but they would (in my speculation) only affect multilingual wikis. I will look into this possible bug later. Janhrach (talk) 19:36, 1 September 2024 (UTC)Reply
The hypothetical bug I have mentioned quite probably won't arise, so ignore this part of the comment. Janhrach (talk) 17:53, 2 September 2024 (UTC)Reply

Proposed fix

edit

I made a fix to the sandbox. Sample output:

  • English label:
    • live module: Europe
    • sandbox: Europe
  • Multilingual label:
    • live module: Douglas Adams
    • sandbox: Douglas Adams

Janhrach (talk) 16:36, 8 September 2024 (UTC)Reply

  Done. Janhrach (talk) 18:29, 12 September 2024 (UTC)Reply

Property mapping and ignoring unrecognized parameters

edit

I was brought here by the following citation errors which had too much information:

Extended content
  1. d:Q625794#P569 {{wikidata|references|Q625794|P569}}[1][2][3][4]
  2. d:Q625794#P570 {{wikidata|references|Q625794|P570}}[5][1][6][2][3][4]
  3. d:Q625794#P20 {{wikidata|references|Q625794|P20}}[4][5][7]

References

  1. ^ a b "John Money". SNAC. Retrieved 9 October 2017.
  2. ^ a b "John Money, Ph.D." Kinsey Institute for Research in Sex, Gender, and Reproduction. Archived from the original on 4 June 2016.
  3. ^ a b "Money, John, 1921-2006". Library of Congress Authorities. 1 April 2014. Retrieved 23 September 2024.
  4. ^ a b c "John Money bio". University of Minnesota. 24 July 2015. Archived from the original on 24 July 2015.
  5. ^ a b Benedict Carey (11 July 2006). "John William Money, 84, Sexual Identity Researcher, Dies". The New York Times. ISSN 0362-4331. Wikidata Q123754895.
  6. ^ "John Money". Base biographique.
  7. ^ "Kiwi sexologist dies in US hospital". The New Zealand Herald. 10 July 2006. ISSN 1170-0777. Wikidata Q130374766. Archived from the original on 30 September 2007.

This is partially just an edit request to add some properties to the property mapping. author (P50) and place of publication (P291) are common citation parameters that need to be added to the property mappings documented at Template:Cite Q § Bibliographic parameters and Template:Wikidata § References. I would further map genre (P136) to |type= and published in (P1433) to |work=.

However, I also think that this template/module refusing to produce any citation when there are unrecognized parameters is not ideal. I suggest that it should ignore unrecognized parameters without error messages in published articles, and only show a green warning message on previews.

Pinging Sdkb from their prior interest at Module talk:Wd/Archive 1 § References mapping.

Daask (talk) 08:03, 24 September 2024 (UTC)Reply

As for the errors containing too much information, there were repeated complaints that the previous error message, which only indicated that an error had occured and linked to the documentation, was unclear. And I think too little information is a lesser problem than too much information, especially when there is no middle ground.
As for the requested mappings, the usage of the mentioned properties in WD refs is not standard per wikidata:Help:Sources.
Ignoring unknown properties is problematic, because some properties may be deliberately left from the Cite web mapping to force the module to use Cite Q. This will be very important if new output templates are added, which is something I want to do eventually. Janhrach (talk) 15:06, 27 September 2024 (UTC)Reply
@Janhrach: I apologize for my unclear comment. My concern was not that the error message was verbose, but rather that the error was caused by Wikidata having too much information about the citation. Daask (talk) 15:36, 27 September 2024 (UTC)Reply
I have made some edits to the refs on Wikidata, and I will also modify the module later. Janhrach (talk) 18:01, 27 September 2024 (UTC)Reply
I have added support for place of publication (P291) into the Cite web mapping. Janhrach (talk) 13:20, 5 October 2024 (UTC)Reply
Why? When citing a web source, that source exists somewhere (or multiple somewheres) on the intarwebs but is not tied to a physical location. Just because a box can be filled, it does not mean that it should be filled.
Trappist the monk (talk) 13:44, 5 October 2024 (UTC)Reply
I added the property because the reference number two above displayed an error, as it contained the P291, which was not in the mapping. Is the usage of "Bloomington" in publication-place in the above reference incorrect? Should all instances of usage like this be removed from Wikidata? Janhrach (talk) 13:58, 5 October 2024 (UTC)Reply
Yes, incorrect. And because you are citing a website, the proper parameter is |website= not |publisher=. Wikidata should contain correct data. The problem there is that there are few if any standards so editors will fill-in the boxes because 'omg!-there-is-an-empty-box!-I-must-fill-it!' All that you can do is recognize that and choose {{cite web}} parameters appropriately.
Trappist the monk (talk) 14:12, 5 October 2024 (UTC)Reply
OK, I fixed the incorrect publication-place properties on WD and reverted my edits to this module. Janhrach (talk) 14:24, 5 October 2024 (UTC)Reply
May I ask why you think Kinsley Institute should be in website, not in publisher? Janhrach (talk) 16:48, 5 October 2024 (UTC)Reply
Because we cite the work (|website=Kinsey Institute in this case – note spelling) not the publisher (Indiana University).
Trappist the monk (talk) 18:38, 5 October 2024 (UTC)Reply
Is the Kinsey Institute a work? It quite seems to match the definition of "publisher" from the Cite web documentation (The publisher is the company, organization or other legal entity that publishes the work being cited.).
We could say that we cite the institute's website, which has the same name as the institute. Is this what you mean?
(Thanks for the spelling correction; I sometimes misread words and misspell them afterwards.)
Janhrach (talk) 12:55, 11 October 2024 (UTC)Reply

Summing values across items

edit

Hi,

I am already using this module to call values for specific items (in my case, political parties, such as their number of members).

Is there a way to sum these values for several items that are all instances of an item. For instance, the parties I deal with are all instances of "European political parties", and I am trying to sum their values to display the result (e.g., the sum total number of members of all European political parties).

Is these feasible one way or another?

Thanks! Julius Schwarz (talk) 07:47, 21 October 2024 (UTC)Reply

This is not possible with this module. Janhrach (talk) 15:41, 25 October 2024 (UTC)Reply
Thanks for the reply! And too bad. Julius Schwarz (talk) 07:48, 28 October 2024 (UTC)Reply

Support for P5017 last update

edit

@Thayts and Janhrach: Hi. Is it possible to add support for P5017 last update property? It seems to be perfectly valid citation/reference property for continuously updated sources to indicate last-update date of the version actually cited and it is being used all over WD this way, see backlinks and stat. Right now rendering attempt of a citation having this property filled here on enwiki leads to a nasty error output:

{{#invoke:wd|reference|Q733993|P2046}}[1]
  1. ^ Error: Unable to display the reference from Wikidata properly. Technical details:
    • Reason for the failure of {{Cite web}}: The Wikidata reference contains the property last update (P5017), which is not assigned to any parameter of this template.
    • Reason for the failure of {{Cite Q}}: The Wikidata reference contains the property last update (P5017), which is not assigned to any parameter of this template.
    See the documentation for further details.

On other wikis such citations are citable at least, even if the last update value is not used. E.g.: [1].

If there really is a good reason to keep current strict semantics (i.e. to fail with error on any unknown/unmapped citation property instead of just ignoring it or maybe including some hidden note and a monitoring cat. assignment), maybe an explicit whitelist of "tolerated" though unused citation properties would be useful. It doesn't make much sense to be completely unable to render citations that are valid on WD itself and renderable on other projects. And another negative side effect of this approach is that if anyone adds such an unsupported property on WD side later, unaware of the limitations of this module, it will introduce an unintentional error here, that is out of control of the original author, who inserted a (then working) citation. That's definitely not nice behavior. --Teslaton (talk) 18:41, 24 November 2024 (UTC)Reply