This is an automated email from the ASF dual-hosted git repository.
rok pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/main by this push:
new 071ffaf263 GH-41256: [Format][Docs] Add a canonical extension type
specification for JSON (#41257)
071ffaf263 is described below
commit 071ffaf2633eb58540a872514507ab362cc26fb4
Author: Rok Mihevc <[email protected]>
AuthorDate: Thu May 9 00:22:02 2024 +0200
GH-41256: [Format][Docs] Add a canonical extension type specification for
JSON (#41257)
### Rationale for this change
As per #41256 this proposes a specification of a canonical extension type
for JSON serialized data.
### What changes are included in this PR?
This adds to documentation of canonical extension types.
### Are these changes tested?
No as only docs are changed.
### Are there any user-facing changes?
No.
* GitHub Issue: #41256
Lead-authored-by: Rok Mihevc <[email protected]>
Co-authored-by: Will Jones <[email protected]>
Co-authored-by: Antoine Pitrou <[email protected]>
Signed-off-by: Rok Mihevc <[email protected]>
---
docs/source/format/CanonicalExtensions.rst | 25 ++++++++++++++++++++++++-
1 file changed, 24 insertions(+), 1 deletion(-)
diff --git a/docs/source/format/CanonicalExtensions.rst
b/docs/source/format/CanonicalExtensions.rst
index 1f055b7f8e..47c161c14c 100644
--- a/docs/source/format/CanonicalExtensions.rst
+++ b/docs/source/format/CanonicalExtensions.rst
@@ -51,7 +51,7 @@ types:
3) Its serialization *must* be described in the proposal and should
not require unduly implementation work or unusual software dependencies
- (for example, a trivial custom text format or JSON would be acceptable).
+ (for example, a trivial custom text format or a JSON-based format would
be acceptable).
4) Its expected semantics *should* be described as well and any
potential ambiguities or pain points addressed or at least mentioned.
@@ -251,6 +251,27 @@ Variable shape tensor
Values inside each **data** tensor element are stored in
row-major/C-contiguous
order according to the corresponding **shape**.
+.. _json_extension:
+
+JSON
+====
+
+* Extension name: ``arrow.json``.
+
+* The storage type of this extension is ``String`` or
+ or ``LargeString`` or ``StringView``.
+ Only UTF-8 encoded JSON as specified in `rfc8259`_ is supported.
+
+* Extension type parameters:
+
+ This type does not have any parameters.
+
+* Description of the serialization:
+
+ Metadata is either an empty string or a JSON string with an empty object.
+ In the future, additional fields may be added, but they are not required
+ to interpret the array.
+
=========================
Community Extension Types
=========================
@@ -268,3 +289,5 @@ GeoArrow
Arrow extension types for representing vector geometries. It is well known
within the Arrow geospatial subcommunity. The GeoArrow specification is not yet
finalized.
+
+.. _rfc8259: https://datatracker.ietf.org/doc/html/rfc8259