I’ve just examined styles/china-national-standard-gb-t-7714-2015-numeric.csl at master · citation-style-language/styles · GitHub with all examples from the official style but I failed to implement three specified features.
-
CSL always uses sort-separator
as the delimiter of suffix and other name parts for inverted names. The china’s style specified a name format like PEEBLES P Z, Jr
where the delimiter before suffix is different from other name parts. I guess a new option like suffix-separator
may be added.
-
The style uses different affixes for full dates and partial dates. If the issued
variable has all three date-parts it is formatted like (2021-10-01)
otherwise the parentheses are omitted for dated like 2021
. Is it possible to check if a variable is complete?
-
The style specifies a rule that the DOI should be omitted if it’s part of the URL. An example is http://onlinelibrary.wiley.com/doi/10.1002/9781444305036.ch2/summary with DOI 10.1002/9781444305036.ch2.
For (1), could you check to see if these features are implemented in the CSL-M extension, which currently has better support for East Asian languages than standard CSL?
CSL-M Docs (juris-m.github.io)
For (2), this will be possible in CSL 1.1, when testing for date parts will be possible.
For (3), it will not be possible to do this in CSL. A better approach to this idea than the stated rule there would be to always prefer a URL-formatted DOI over any other URL. For example, this is used in APA style:
<choose>
<if variable="DOI">
<text variable="DOI" prefix="https://doi.org/"/>
</if>
<else>
<text variable="URL"/>
</else>
</choose>
Thanks for the suggestions! For (1), the name format is for European names with no relation to East Asian names. I checked the code of citeproc-js and find comma-suffix
in the input data. If it is set to true, ", "
is used as the separator between suffix and other name parts (see an example in https://github.com/citation-style-language/test-suite/blob/3be4027034e6e3affa604caaaffbb14e7fbb856d/processor-tests/humans/name_ArticularWithCommaNameAsSortOrder.txt). This attribute is in the CSL schema but not documented yet.