The interface for a lot of programs with regards to keywords is to show them as a comma separated string. But the important thing to remember is that they are not stored as such. They are stored as individual, separate items, as in @Romeo Ninov XMP example.
To do this in exiftool, you command would be
exiftool -Subject=Tulips -Subject=Flower FILE
See exiftool's Metadata Sidecar Files example #15
The command needs to be altered a bit due to some irregularities in the XMP sample you give. The best thing to do would be to grab the xmp2exif.args file and place that in the same directory as exiftool. This will allow tags in the XMP file to be copied to the correct place in the EXIF group.
Now, there's ...
The XMP files created by Lightroom seems to follow the MWG description (website currently down), as it contains this link to describe its content :
I took a random XMP file from one of my picture containing a recognized person : the part mwg-rs:Region is structured as follows :
Here is how Lightroom write in XMP keywords for file:
Here are two more programs that may fit into your nice overview table above.
DigiKAM (OpenSource, free). People tagging is present, stored as XMP regions.
You just need to configure digiKam so that the XMP data is stored inside the files:
Configure / Metadata / Behaviour / Face Tags (including face areas)
(Check this checkbox to let digiKam write the face ...