Shouldn't the extension name be `parquet.file`? It's really a direct mapping of the Parquet FILE type, not something we decided to standardize independently.

Also I wonder if it's the Arrow community's role to standardize such extension types, or if we should let the Parquet community do it?

Regards

Antoine.



Le 02/09/2026 à 22:51, Mandukhai Alimaa a écrit :
Hi everyone,

Following the recent addition and subsequent refinement of the FILE
LogicalType to the Parquet format specification [1, 2] and the
corresponding Parquet C++
reader/writer support currently underway [3], we (@rok and I) would
like to propose defining a matching Canonical Extension Type for the
Apache Arrow specification: arrow.file.

Motivation
As storage formats standardize file-level references, Arrow needs a
canonical in-memory representation to preserve these semantics across
IPC streams, the C Data Interface, Arrow Flight, and language
bindings. Without a canonical extension type, file fields lose their
semantic metadata during serialization.

Proposed High-Level Design:
The intended design is to directly align with the finalized Parquet spec [4].

* Extension name: ``arrow.file``.
* Storage Type: StructType containing standard optional fields:
* ``uri`` (Utf8)
* ``offset`` (Int64)
* `` size`` (Int64)
* ``content_type`` (Utf8)
* `` checksum`` (Utf8)
* ``inline`` (Binary)

I have created a GitHub issue to track this [5]. Please share your
thoughts! Thanks!

[1] https://github.com/apache/parquet-format/pull/585
[2] https://github.com/apache/parquet-format/pull/603
[3] https://github.com/apache/arrow/issues/50891
[4] https://github.com/apache/parquet-format/blob/master/LogicalTypes.md#file
[5] https://github.com/apache/arrow/issues/51143

Reply via email to