Docs

User Guides


Cookbook

The cookbook contains samples for some simple Amazon Ion use cases with examples in Java. The samples include reading and writing Ion data, formatting Ion text, performing sparse reads, and converting non-hierarchical data to Ion.


Why Ion

Why Ion discusses features that differentiate Amazon Ion from other formats. Some of those features are Ion’s dual-format interoperability, rich type system, self-describing format, read-optimized binary format.


Developer Guides


Symbols

The Developers’ Guide to Ion Symbols provides developer-focused commentary on the Symbols section of the specification and discusses the implementation of symbol table, symbol token, and catalog APIs.


Path Extraction

The Developers’ Guide to Path Extraction APIs discusses how to implement an API which aims to combine the convenience of a DOM API with the speed of a streaming API.


References


Specification

This document covers the Amazon Ion data model and the Ion text format.


ANTLR grammar

This grammar formally covers the text Ion format. It is intended to aid in understanding and provide a machine readable description that is mostly complete and correct. It is not considered authoritative, though that is a goal. Known gaps and ambiguities are documented as comments.


Binary format

This document covers the binary Ion format.


Symbols

This document defines the various concepts and data structures related to symbol management. Amazon Ion symbols are critical to the binary format performance and space-efficiency.


Decimal support

Amazon Ion supports a decimal numeric type to allow accurate representation of base-10 floating point values such as currency amounts. This representation preserves significant trailing zeros when converting between text and binary forms.


Float support

Amazon Ion supports IEEE-754 binary floating point values using the IEEE-754 32-bit (binary32) and 64-bit (binary64) encodings. In the data model, all floating point values are treated as though they are binary64 (all binary32 encoded values can be represented exactly in binary64).


Strings and Clobs

This document clarifies the semantics of the Amazon Ion string and clob data types with respect to escapes and the Unicode standard.


Glossary

These terms have particular definitions as it relates to their usage within the Amazon Ion Specification documents.