Of course, @platypus, all you have said makes sense, as long as you use XMP files.
But, if like me, you write directly to RAW files, then it gets rather more complicated.
If I set keywords or star rating in the RAW file, then PL will read them without any problem but, if I then edit them from my own app, PL will not read the new values unless I explicitly re-read the metadata. It will then create a DOP file that contains those values.
But, if I change the original values from within PL, they only get written to the DOP file and an XMP file doesn’t get created.
The “colour label” tag is actually an abuse of a simple text tag, which uses localised colour names which, once again, only gets written to the DOP file and, if the machine reading them isn’t set to the same localisation, they will not get read correctly. And Mac’s colour tags are totally invisible outside of the Finder ecosystem.
If orientation is written to the RAW file, PL will read it but will only ever write it to DOP and XMP files.
But, be warned, instead of following the SPOD (single point of definition) rule, for a RAW file, PL can actually use up to four!!! - the database, the DOP file, an XMP file and it can also read from, but not write to, the RAW file itself.
In summary, if you do want to “DIY” the orientation, do so with care and don’t forget to manually both read and write a file’s metadata.