You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Tony Garnock-Jones fbda60c96b Merge branch 'schema-notes' into 'main' 1 month ago
_layouts Proper layouting 3 years ago
_plugins Proper layouting 3 years ago
doc Update docs 4 months ago
git-hooks Rearrange tests to include test data. As part of this, remove tests for python2; from here out, python2 compatibility will likely rot. 9 months ago
historical Correct names 7 months ago
implementations preserves-python version 0.16.1 2 months ago
path Implement count function 4 months ago
schema Repair schemac invocations 9 months ago
tests New test of very long integer 9 months ago
.gitignore Update PDF generation 3 months ago
.gitlab-ci.yml Update CI script 1 year ago
LICENSE LICENSE, NOTICE, README.md 3 years ago
Makefile Update PDF generation 3 months ago
NOTICE NOTICE 4 months ago
README.md Split up spec! 3 months ago
TODO.md Note in TODO.md 2 years ago
TUTORIAL.md Correct names 7 months ago
_config.yml Split up spec! 3 months ago
canonical-binary.md Split up spec! 3 months ago
conventions.md Specify RFC3339 convention further. 12 months ago
index.md Tweak jekyll setup 3 years ago
normalize.css Proper layouting 3 years ago
notes.mb.md Proper layouting 3 years ago
preserves-binary.md Clean up named links 3 months ago
preserves-path.md Idea for preserves path count function 4 months ago
preserves-schema.md Merge branch 'schema-notes' into 'main' 1 month ago
preserves-text.md Clean up named links 3 months ago
preserves.css Update PDF generation 3 months ago
preserves.el Revised preserves.el instructions 2 years ago
preserves.md Update PDF generation 3 months ago
questions.md Whitespace questions 2 years ago
quoting.rkt Explore quoting. 4 years ago
quoting.v Drastically improve quoting.v - including a much better main theorem 2 years ago
representations.md Proper layouting 3 years ago
run-jekyll run-jekyll 4 months ago
setup.sh The Racket preserves package needs a local copy of schema.prs for the package-builder to work. Use a git hook to keep it in sync with the master copy 1 year ago
why-not-json.md Proper layouting 3 years ago
xml-infoset.prs XML Infoset convention 1 year ago

README.md

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

This repository contains a proposal 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.