I found crossings with lights to be difficult. I looked at the wiki, did what it said (and what somebody had previously done before me for one of the crossings), and no lights appeared. So I looked harder at the wiki, found suggestions for different combinations of tags, and no lights appeared.
After several attempts, I found that:
highway=traffic_signals
crossing=traffic_signals
traffic_signals=pedestrian_crossing
made traffic lights show up without triggering errors from any of the validators. Although there may be better ways of doing it. And maybe somebody will point out that what I did is horribly wrong, but it works.
You can then add other things depending on how the signals operate. Such as button_operated=yes (if it is), crossing_ref=pelican (or other traditional, region-specific tag for type of crossing, although only UK ones have been defined at present), kerb=lowered (if it is), tactile_paving=contrasted (or whatever), traffic_signals:sound (if there’s an audible alert). There are other traffic_signals:whatever defined, depending on what features are present, such as a tactile arrow. Oh, and I introduced traffic_signals:rotating_cone=yes for UK use, but it’s not documented anywhere.
Oh, and don’t assume that all crossing lights in your area have the same features. Most UK pelican crossings have audible alerts, but there are situations where an audible alert is legally prohibited (such as independent lights to a traffic island in the middle of the road). In the UK, where the audible alert is legally prohibited then a rotating_cone must be present; where the audible alert is present fitting a rotating cone is at the discretion of the local authority. There’s only one way to know for sure what features a crossing has, and that’s to go and try it.