Bounding box + all intersecting bus routes

I would like to extract from someregion.osm all data in a bounding box, and in addition all bus routes that cross it, or maybe more generally relations of certain type. So, naively speaking, something like

osmconvert kaohsiung_large.osm -b=120.2593,22.5828,120.3935,22.6886 --complete-ways --complex-ways -o=kauhsiung_smaller.osm

with an additional flag “–complete-busroutes”.

The routes appear as “incomplete” in JOSM, cf. the image attached. While there is a way to “download incomplete members” in JOSM, I would like to do this auto/programmatically.

Thank you.