I'll add non-throwing `getAttributes` as `tryGetAttributes`. Should I document it?