Skip stripping attributes for HAL resources from JSON

If the HAL object wasn't created from XML there shouldn't be any attributes to strip. As we can't be sure that
all resources have a source format set, we can only test that the format has been set and it's not XML.

For large collections we see a not insignificant overhead when stripping attributes and this seemed the cleanest way to identify cases where there weren't attributes to strip.

Existing tests cover that XML still attributes still get stripped where no source is set, so there should be no BC breaks.