User:Tpt/Support of external ids
In the Technical proposal of the Wikidata project an optional goal for phase 1 is: "Extend the system to store external IDs to other data collections, like the Linked Open Data Cloud URIs, ISBNs, IMDB identifiers, Eurostat identifier, UN standards, and PID. This is expected to dramatically increase support from third-party data providers." I believe it would be an amazing thing to support some of these identifiers in Wikidata. This proposal is only about Ids that are unique and can be managed as URI.
This proposal is split in two part, the first one about how this ids may be managed in Wikidata inteface and in Wikibase code and the second on is about some possible IDs to support.
The list of links inside of the item pages my be split in two, with before the Wikipedia links and then an other section with external IDs. Here is an example of what it can be (without any styling and with dummy values):
The edition of these IDs may be done using the same way as links to Wikipedia are edit: first the identifier of the ID provider ("viaf", "imdb"...) is selected and then the ID is written.
Each ID provider related code is implemented into a class extended from SiteObject and provide a method that validate the ids using ID provider API when it is possible. A row for each of the IDs provider is added to the site table of the database. All of these websites are regroup into a group call "external" or "other". No change is, I hope, needed in API.
VIAF (The Virtual International Authority File) is an international autority file operated by OCLC that regroup data of most important libraries of the world under |http://opendatacommons.org/licenses/by/1.0/ ODC-BY] license that is compatible with CC BY-SA. Some contributors of English Wikipedia are working in order to add links to VIAF in their article. VIAF is also one of the four IDs managed by Normdaten template of the German Wikipedia. So I believe that adding VIAF id with a bot will be possible and pretty easy.
VIAF provide stable URI formed with "http://viaf.org/viaf/" + the numerical ID of the entry.
The documentation of VIAF API is available here.