The RDF format is a complete rewrite of the old Scroll format from the second version of my Book library , this format implements a tree-based format that enables better data structures on the file, this means that instead of having a contiguous line of blocks for every object in the file, now those blocks are ordered in a tree that is located on the top of the file, next to the header, now the nodes are not hardcoded, instead, they are defined by an abstract class, so, its more easy to implement new data types on the format, by default, a node needs to have an 8-byte header to identify the datatype and two methods, a load method to decode the raw binary data from a block and the save method that creates a binary chunk of encoded data that the node type uses.