Homie auto discovery: What fields are mandatory, what values are understood by OH3?

Tags: #<Tag:0x00007f434ae6f700> #<Tag:0x00007f434ae6f3b8>

openHAB version: 3.0.1
Issue of the topic:
I am building an arduino interface that publishes it’s channels in the Homie convention to be auto discovered by openHab. I run into troubles regularly. Both OH and Homie are documented, but I can’t find a description of what fields are mandatory, what values are understood by OH3 etc.

Appreciating some direction here.