tweak as_data_structure to handle missing observable