Ok! Thank you very much for the answers!
Cheers,
Thomas
Le 11 nov. 2016 à 17:27, Daniel Kinzler daniel.kinzler@wikimedia.de a écrit :
Am 11.11.2016 um 14:38 schrieb Thiemo Mättig:
Tpt asked:
why having both the Term and the MonolingualText data structures? Is it just for historical reasons (labels have been introduced before statements and so before all the DataValue system) or is there an architectural reason behind?
That's not the only reason.
Besides the code perspective that Thiemo just explained, there is also the conceptual perspective: Terms are editorial information attached to an entity for search and display. DataValues such as MonolingualText represent a value withing a Statement, citing an external authority. This leads to slight differences in behavior - for instance, the set of languages available for Terms is suptly different from the set of languages available for MonolongualText.
Anyway, the fact that the two are totally separate has historical reasons. One viable approach for code sharing would be to have MonolingualText contain a Term object. But that would introduce more coupling between our components. I don't think the little bit of code that could be shared is worth the effort.
-- Daniel Kinzler Senior Software Developer
Wikimedia Deutschland Gesellschaft zur Förderung Freien Wissens e.V.
Wikidata-tech mailing list Wikidata-tech@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikidata-tech