If a tram is created with no tram_type property, OpenTTD will use the default ELRL. But if a tram_type property is set (even to ELRL) without a tramtypetable, OpenTTD does not default to ELRL
NML should throw an error in this scenario.
Possibly also around some similar "You've set tram_type but no ROADVEH_FLAG_TRAM" edge cases (and vice versa), if required, I generally found it a bit confusing to create a tram with no feedback when I was missing properties and multiple are required