I think, we won't need anymore the getId(StructuredDataId) method, so you can remove it. It's functionality partially implemented in the LoggerFields class.
On the other hand, as far as I can see we used the eventPrefix to mark all key-value pairs in a StructuredDataMessage. I forgot to reimplement this during the partial refactor, but after all, I think there is a better solution. Now, you can create a new SD-Element from a StructuredDataMessage, which is IMHO a more elegant way to "prefix" our key-value pairs.
But, it's easy to use the eventPrefix again. What do you think about it?
P.S: for demonstrating the behaviour what I described above, I'm going to upload a new testcase to RFC5424LayoutTest.java.