Hello,
I think ideally all information, users see in openHAB, should be translated in the preferred for the user language. This applies also to thing property names, thing property values and items’ labels. That is, looking on a property of a thing, instead of serialNumber, users should see “Serial Number”, “Сериен №”, "Seriennummer”.
A discussion at https://github.com/openhab/openhab-docs/pull/2605 demonstrated, that there are different views on this: having everywhere property names in camelCase, allows to create system wide list of firmware versions of all devices.
My suggestion is to translate (internationalize/i18n) thing properties, as well. For example Thing.PROPERTY_SERIAL_NUMBER = "serialNumber" is translated in English to “Serial Number”. Or other means are used, which eventually show to the user translated property names.
On the same note I think for items, which have no explicit label and are bound to one channel, the label of the item should be inherited by the channel, instead of being the item’s name. This allows less typing when defining an item, if the add-on vendor provides good enough labels for the channel.
But it also allows the add-on vendor to offer translations for the labels, based on user preferences (language set in Regional Settings, or in the browser for Accept-Language header). This eventually will allow for the same openHAB setup to show different labels for items on different devices, depending on the preferred language per device.
Greetings // Dilyan