And also please don't add defaults. On crossing=unmarked the addition of crossing:markings=no is redundant. On 'Trottoirüberfahrt' (not sure how it translates, ask Google for pictures) it's physically impossible to have a crossing:island. The default is always "crossing:island=no", it's just the questmakers that loath the idea of implicit defaults. We generally define objects by what they are (*=yes), and not by what they aren't, because that would be an endless list of useless data. With explicit sidewalk mapping, we have (ten-)thousands of "crossing", that aren't real crossings but just an acknowledgement, that a road passes over a sidewalk (pedestrian priority, and vehicles have to give way). This requires to think about mapping, and not just add tags because iD or StreetComplete suggest them.

Use the tag crossing:island only where crossing islands actually exist – however if the highway element is split around such islands "crossing:island=yes" is incorrect, because the node only represents the segment leading to the crossing island. That's again abstraction: you have an unsplitted way – you have to do an abstraction and get to add island=yes; you have a splitted way – no abstraction anymore and no island tag to add.

Also: a crossing island (or transit stop island) is _not_ a traffic calming element, this one[2] is. And here again: if the highway elements are splitted around, you don't get to tag it, because traffic_calming tags are designed as an abstract (node) in another abstract (way).


[2] https://maps.zh.ch/s/plxyespw