Hello,
This is an important information regarding our database, for people running
tools and scripts.
*The change*
In the wb_terms table, a new column term_full_entity_id containing strings
with the full ID including the letter (ie. “Q42”) will be created, and will
be used instead of the current column term_entity_id that only stores the
numeric part of the ID (ie. “42”).
This change is made, among other things, to support the new entity types to
come, and then to store terms of entities that have non-numeric IDs, for
example Forms (“L42-F1”).
*Implications*
- This change only affects tools that directly access the database.
Other tools, for example those getting data through the API, pywikibot,
gadgets, etc. will not be affected and will work as before with no action
required from the maintainers.
- in order to adapt tools to the new database structure, database
queries using wb_terms should be changed so that they use
term_full_entity_id column instead of term_entity_id. This might
potentially simplify queries. For example, instead of having a
condition WHERE
term_entity_type='item' AND term_entity_id=42, one could now do: WHERE
term_full_entity_id='Q42'.
- term_entity_type is not affected by this change, and will still be
available as before.
*The process*
Starting now, we will work through several steps to achieve this change.
Note that the dates indicated below may not be exact. We will announce each
of the steps separately. Here is a rough timeline:
- June 22th: the new column, term_full_entity_id, becomes visible on
Labs. It will be fully populated in the testwikidatawiki database replica
on Labs. Note that this column will remain incomplete in the wikidatawiki
database until later! Tools that use the wb_terms table can test new
code that uses the new term_full_entity_id column with the
testwikidatawiki database, but must keep using the old code with the
wikidatawiki database.
- Some time later: testwikidatawiki should be fully populated, and
become usable on the wikidatawiki database. Tools that use the wb_terms
table can now switch to using new code that no longer uses the old
term_entity_id column on all databases.
- Eventually (not before July 6th): the old term_entity_id column is
removed from the testwikidatawiki and wikidatawiki database replicas on
labs. Any code that still uses the old term_entity_id will break.
If you have any question or problem regarding this change, feel free to
answer to this mail or write directly to me.
--
Léa Lacroix
Project Manager Community Communication for Wikidata
Wikimedia Deutschland e.V.
Tempelhofer Ufer 23-24
10963 Berlin
www.wikimedia.de
Wikimedia Deutschland - Gesellschaft zur Förderung Freien Wissens e. V.
Eingetragen im Vereinsregister des Amtsgerichts Berlin-Charlottenburg unter
der Nummer 23855 Nz. Als gemeinnützig anerkannt durch das Finanzamt für
Körperschaften I Berlin, Steuernummer 27/029/42207.