When I crop OpenStreetMap data using Osmosis with the --bounding-box option, it seems to only give me nodes and ways that are fully contained within the bounding box. There are several long highways through my region that don't show up at all because no segments lie inside my (relatively small) query area. I don't mind if the long features extend beyond the bounding box, only that all of the features that overlap the bounding box be included. Keep in mind I'm using Osmosis to chop down a large osm file (a cloudmade California file); I'm not running an XAPI query.
You can make some test with completeWays, completeRelations or cascadingRelations options. On of them should do the trick .....(the first one I guess).
If not, what about making your -bounding-box larger to keep all needed information, and crop again later after transforming data into shapefile or other format with your software tool.
Edit : the clipIncompleteEntities=yes option is probably even better, according to that post.