Wouldn't you say that the choice of property vs type based interop is one of pragmatism vs best-practice rn?
Where the pragmatic choice is the one that will make general interop increasingly harder, not easier?
"Here's my as:Document which is really something else and you can figure that out in your if-then-else constructs based on the properties"
Esp. while still lacking good solid mechanisms/practices to convey the semantics of a msg. Except hand-wavy "It's LD".