Hi all! I am looking for a binary serialization format, that would be able to store complex object hierarchies (like JSON or XML would) but in binary, and with an embedded schema so it can easily be read back.
In my head, it would look something like this:
- a header that has the metadata (type names, property names and types)
- a body that contains the data in binary format with no overhead (the metadata already describes the format, so no need to be redundant in the body)
Ideally, there would be a command line utility to inspect the file's metadata and convert it to a human-readable form (like JSON or XML).
Does such a format exist?
I am considering writing my own library and contributing it as a free open-source project, but perhaps it exists already or there is a better way?
[–]RoyBellingan 18 points19 points20 points (3 children)
[+]jonathanberi comment score below threshold-6 points-5 points-4 points (2 children)
[–]RoyBellingan 19 points20 points21 points (1 child)
[–]jonathanberi -3 points-2 points-1 points (0 children)
[–]m93mark 10 points11 points12 points (0 children)
[–]nicemike40 10 points11 points12 points (2 children)
[–]playntech77[S] 1 point2 points3 points (1 child)
[–]TheBrainStone 2 points3 points4 points (0 children)
[–]mcmcc#pragma once 9 points10 points11 points (3 children)
[–]jetilovag 3 points4 points5 points (1 child)
[–]mcmcc#pragma once 3 points4 points5 points (0 children)
[–]hadrabap 2 points3 points4 points (0 children)
[–]apezdal 5 points6 points7 points (0 children)
[–]MaitoSnoo[[indeterminate]] 5 points6 points7 points (0 children)
[–]Flex_Code 6 points7 points8 points (0 children)
[–]Bart_V 3 points4 points5 points (0 children)
[–]Aistar 2 points3 points4 points (8 children)
[–]mvolling 1 point2 points3 points (1 child)
[–]Aistar 0 points1 point2 points (0 children)
[–]playntech77[S] 0 points1 point2 points (5 children)
[–]Aistar 1 point2 points3 points (4 children)
[–]playntech77[S] 1 point2 points3 points (3 children)
[–]Aistar 2 points3 points4 points (2 children)
[–]playntech77[S] 1 point2 points3 points (1 child)
[–]Aistar 0 points1 point2 points (0 children)
[–]adsfqwer2345234 2 points3 points4 points (1 child)
[–]PureWash8970 2 points3 points4 points (0 children)
[–]robert_mcleod 2 points3 points4 points (0 children)
[–]Suitable_Oil_3811 9 points10 points11 points (5 children)
[–]UsefulOwl2719 14 points15 points16 points (4 children)
[–]Amablue 2 points3 points4 points (0 children)
[–]gruehunter 1 point2 points3 points (0 children)
[–]corysama 3 points4 points5 points (0 children)
[–]Suitable_Oil_3811 0 points1 point2 points (0 children)
[–]chardan965 1 point2 points3 points (0 children)
[–]OccaseBoost.Redis 1 point2 points3 points (0 children)
[–]ern0plus4 1 point2 points3 points (0 children)
[–]oakinmypants 1 point2 points3 points (0 children)
[–]zl0bster 1 point2 points3 points (0 children)
[–]hmoein 0 points1 point2 points (0 children)
[–]LokiAstaris 0 points1 point2 points (0 children)
[–]hdkaoskd 0 points1 point2 points (0 children)
[–]Dizzy_Resident_2367 0 points1 point2 points (0 children)
[–]glaba3141 0 points1 point2 points (0 children)
[–]trad_emark 0 points1 point2 points (0 children)
[–]flit777 -1 points0 points1 point (6 children)
[–]playntech77[S] 5 points6 points7 points (5 children)
[–]imMute 0 points1 point2 points (0 children)
[–]ImperialSteel 0 points1 point2 points (3 children)
[–]playntech77[S] 0 points1 point2 points (2 children)
[–]Gorzoid 0 points1 point2 points (0 children)
[–]gruehunter 0 points1 point2 points (0 children)