Go to file
Tony Garnock-Jones fd8395c7a3 Merge branch 'main' into newrust/main 2023-06-27 22:42:16 +02:00
_data Update 2023-03-17 15:25:44 +01:00
_includes Document preserves.schema 2023-03-17 15:24:53 +01:00
_layouts Fancy nav, plus craiyon logo! 2023-03-17 12:02:27 +01:00
_plugins Proper layouting 2019-08-18 22:08:55 +01:00
doc Update docs 2022-06-08 16:13:17 +02:00
git-hooks Rearrange tests to include test data. As part of this, remove tests for python2; from here out, python2 compatibility will likely rot. 2022-01-07 21:14:21 +01:00
historical Correct names 2022-03-07 08:31:24 +01:00
implementations Merge branch 'main' into newrust/main 2023-06-27 22:42:16 +02:00
path Implement count function 2022-06-06 15:28:11 +02:00
python Improve links a little 2023-03-17 15:45:19 +01:00
schema Repair syntax in schema.prs and regenerate schema.bin 2023-02-07 10:34:42 +01:00
tests Update test cases 2022-11-23 11:39:27 +01:00
.gitignore Versioned docs! 2023-03-17 09:07:53 +01:00
.gitlab-ci.yml Update CI script 2021-05-21 21:58:31 +02:00
LICENSE LICENSE, NOTICE, README.md 2019-08-08 14:46:03 +01:00
Makefile Update PDF generation 2022-06-18 21:51:09 +02:00
NOTICE NOTICE 2022-06-10 17:48:30 +02:00
README.md Link to latest 2023-03-17 09:08:34 +01:00
TODO.md Note in TODO.md 2020-10-26 14:15:03 +01:00
TUTORIAL.md Correct names 2022-03-07 08:31:24 +01:00
_config.yml Versioned docs! 2023-03-17 09:07:53 +01:00
canonical-binary.md Split up spec! 2022-06-18 19:12:05 +02:00
cheatsheet.md This is the bulk of the improvements from the `blue` branch 2022-11-08 20:11:11 +01:00
conventions.md Copy across easy wins from the wip branch 2023-03-15 15:18:46 +01:00
craiyon_111353.png Fancy nav, plus craiyon logo! 2023-03-17 12:02:27 +01:00
gitlab-logo-200.svg Fancy nav, plus craiyon logo! 2023-03-17 12:02:27 +01:00
gitlab-logo-500.svg Fancy nav, plus craiyon logo! 2023-03-17 12:02:27 +01:00
gitlab-logo-700.svg Fancy nav, plus craiyon logo! 2023-03-17 12:02:27 +01:00
index.md Tweak jekyll setup 2019-08-11 16:19:08 +01:00
logo-64x64.png Fancy nav, plus craiyon logo! 2023-03-17 12:02:27 +01:00
logo-256x256.png Fancy nav, plus craiyon logo! 2023-03-17 12:02:27 +01:00
normalize.css Proper layouting 2019-08-18 22:08:55 +01:00
notes.mb.md Proper layouting 2019-08-18 22:08:55 +01:00
preserves-binary.md Clean up named links 2022-06-18 20:28:38 +02:00
preserves-path.md Slightly improve text in path spec 2023-03-17 10:38:43 +01:00
preserves-schema.md Document preserves.schema 2023-03-17 15:24:53 +01:00
preserves-text.md Print ordering 2023-03-22 13:35:46 +01:00
preserves-zerocopy.md Repair examples 2023-06-27 22:27:41 +02:00
preserves.css Fix anchor link scrolling behind navbar 2023-03-17 20:57:03 +01:00
preserves.el Revised preserves.el instructions 2021-03-11 09:10:11 +01:00
preserves.md Merges 2023-03-27 23:07:41 +02:00
questions.md Whitespace questions 2021-03-07 21:49:57 +01:00
quoting.rkt Explore quoting. 2018-12-06 21:25:51 +00:00
quoting.v Drastically improve quoting.v - including a much better main theorem 2020-06-18 23:57:42 +02:00
representations.md Proper layouting 2019-08-18 22:08:55 +01:00
run-jekyll run-jekyll 2022-06-09 15:39:54 +02:00
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 2021-05-26 14:27:03 +02:00
why-not-json.md Link to FeepingCreature's post 2023-01-23 10:36:44 +01:00
xml-infoset.prs XML Infoset convention 2021-09-30 14:46:46 +02:00

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 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.