Advanced Data Layouts
Advanced Data Layouts ("ADLs") are a way to take data in IPLD and customize additional ways to see and interact it. ADLs can be thought of like a "lens" for data: they can take some data and make it legible in a different way.
One of the most common uses of ADLs is sharded datastructures. However, ADLs are a fairly open-ended plugin system; other uses are also possible.
There's a lot to cover about ADLs, so we've split most of the content up into pages:
|Intro to ADLs||-||Defining ADLs, examples of what ADLs are used for, and discussion of where ADLs fit in the "big picture".|
|ADL Naming||-||How are ADLs referred to and identified?|
|Signalling ADLs||-||How are ADLs applied? How does data signal that it should be interpreted with an ADL?|
|Dynamic Loading||-||Given that ADLs are a form of plugin, and contain code, how do we load them? This page discusses options.|
|Known ADLs||-||A brief overview of some ADLs that are commonly known, and that you might want to check out.|
There are also pages in the specs chapters about ADLs: see specs/advanced-data-layouts. Those pages talk mostly about common and popular ADLs that are well known, providing specifications (and including fixture data); whereas the docs you'll find in these pages here are about the general concept, and how to implement your own.