Warning: Work in progress! Leave feedback on Zulip or Github if you'd like this doc to be updated.

Tables, Object, and Documents - Notation, Query, Creation, Schema

This is part of maximal YSH!

Table of Contents
Philosophy
Tables
Note: SQL Databases Support all three models!
Design Issues
Streaming
Mutual Nesting
HTML5 whitespace rules
Related
Notes
RelaxNG, XSD, DTD
Algorithms?
Naming

Philosophy

Tables

Data Type Notation Query Creation Schema
Table TSV, CSV csvkit, xsv, awk-ish, etc.
SQL, Data Frames
? ?
Object JSON jq
JSONPath: MySQL/Postgres/sqlite support it?
jq JSON Schema
Document HTML5 DOM API like getElementById()
CSS selectors
JSX Templates ?
Document XML XPath? XQuery? XSLT? three:
  • DTD (document type definition, 1986)
  • RelaxNG (2001)
  • XML Schema aka XSD (2001)
Existing

 

Data Type Notation Query Creation Schema In-Memory
Table TSV8 (is valid TSV) dplyr-like Data Frames
Maybe some SQL-pipe subset thing?
table { } ? By column: dict of "arrays"
By row: list of dicts
Object JSON8 (superset) JSONPath?
jq as a reshaping language
Hay? Package { } JSON Schema? List and Dict
Document HTM8 (subset) CSS selectors Markaby Style div { }
"sed" style
? DocFrag - a span within a doc
DocTree - an Obj representation
?
Oils

Note: SQL Databases Support all three models!

Design Issues

Streaming

Mutual Nesting

HTML5 whitespace rules

Related

Notes

RelaxNG, XSD, DTD

I didn't know there were these 3 schema types!

Algorithms?

Naming

Is

Generated on Fri, 10 Jan 2025 17:05:14 +0000