Querying the CTAN Database with JSON – Author
The information about a single author can be obtained under the URL like
The last element in the URl is the key of the author as used by CTAN. Those keys are also listed in the list of authors.
The result is a JSON term as in the following listing:
{"key":"knuth","givenname":"Donald E.","familyname":"Knuth"}
The entry is an object. It has several attributes:
-
key
- This attribute contains the key of the author. This attribute is mandatory.
-
givenname
- This attribute contains the given name. It is optional and can be empty.
-
familyname
- This attribute is the family name. It is optional and can be empty.
Note that the authors information does not contain the email address of the author to protect the privacy.
Names
Names are a complicated matter. We are adopting a simplification inspired by BibTeX.
Examples:
Donald E. Knuth{ id:"...", givenname:"Donald E.", familyname:"Knuth" }Barbara Beeton
{ id:"..." familyname:"Beeton", givenname:"Barbara", female:"true" }Johann Wolfgang von Goethe
{ id:"..." givenname:"Johann Wolfgang" von:"von" familyname:"Goethe" died:"true" }Dr. Rainer Schöpf
{ id:"..." title:"Dr." givenname:"Rainer" familyname:"Schöpf" }King Richard III
{ id:"..." title:"King" givenname:"Richard" jr:"III" died:"true" }Wladimir Iljitsch Uljanow aka Lenin
{ id:"..." givenname:"Wladimir Iljitsch" familyname:"Uljanow" pseudonym:"Lenin" }
References
You can request that more information about the authors is
provided. This information is the list of packages in which the
author is mentioned. This is accomplished with the parameter
ref
. It can be set to
true
as in the following example:
This results in an json file like in the following listing;
{"key":"knuth","givenname":"Donald E.","familyname":"Knuth","packages":["ada","cmtest","gkpmac","graphbase",…]}
In this case an additional attribute is included.
-
packages
- This attribute which contains the list of package ids.