#javascript #python #racket #data-model #step #parser

preserves-path

Implementation of preserves-path, a query language for Preserves documents

21 releases (13 stable)

4.1.0 Jan 28, 2023
4.0.1 Oct 26, 2022
3.2.0 Jun 8, 2022
3.1.0 Jan 19, 2022
0.5.0 Aug 28, 2021

#297 in Filesystem

Download history 7/week @ 2023-06-02 31/week @ 2023-06-16 5/week @ 2023-06-23 44/week @ 2023-06-30 35/week @ 2023-07-07 9/week @ 2023-07-14 9/week @ 2023-07-21 4/week @ 2023-07-28 4/week @ 2023-08-04 23/week @ 2023-08-11 5/week @ 2023-08-18 21/week @ 2023-08-25 3/week @ 2023-09-01 50/week @ 2023-09-08 4/week @ 2023-09-15

79 downloads per month
Used in preserves-tools

Apache-2.0

500KB
12K SLoC


projectpages: "https://gitlab.com/preserves/preserves" projecttree: "https://gitlab.com/preserves/preserves/tree/main" title: "Preserves: an Expressive Data Language" no_site_title: true

This repository contains a definition and various implementations of Preserves, a new data model, with associated serialization formats, in many ways comparable to JSON, XML, S-expressions, CBOR, ASN.1 BER, and so on.

Core documents

Preserves data model and serialization formats

Preserves is defined in terms of a syntax-neutral data model and semantics which all transfer syntaxes share. This allows trivial, completely automatic, perfect-fidelity conversion between syntaxes.

Preserves schema and queries

Implementations

Implementations of the data model, plus the textual and/or binary transfer syntaxes:

Implementations of the data model, plus Syrup transfer syntax:

Tools

Preserves documents

Preserves Schema documents and codegen

Additional resources

Contact

Tony Garnock-Jones tonyg@leastfixedpoint.com

Licensing

The contents of this repository are made available to you under the Apache License, version 2.0 (http://www.apache.org/licenses/LICENSE-2.0), and are Copyright 2018-2022 Tony Garnock-Jones.

Dependencies

~4.5–6MB
~110K SLoC