diff --git a/crates/clawhdf5-format/src/vl_data.rs b/crates/clawhdf5-format/src/vl_data.rs
index f37638b..378ada4 100644
--- a/crates/clawhdf5-format/src/vl_data.rs
+++ b/crates/clawhdf5-format/src/vl_data.rs
@@ -305,6 +305,24 @@ impl<'a, S: crate::storage::Storage + ?Sized> VlResolver<'a, S> {
Ok(Some(data))
}
+ /// [`VlResolver::element`] over any storage: the element's bytes
+ /// (borrowed from the resolver's cache of heap collections, so they
+ /// live until the next call), or `None` for a null element.
+ pub fn element_in(
+ &mut self,
+ elem: &[u8],
+ base_size: usize,
+ ) -> Result