<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Specifications on Data Canon</title><link>https://marianettigroup.github.io/data-canon/docs/specifications/</link><description>Recent content in Specifications on Data Canon</description><generator>Hugo</generator><language>en</language><atom:link href="https://marianettigroup.github.io/data-canon/docs/specifications/index.xml" rel="self" type="application/rss+xml"/><item><title>DataCanon Core</title><link>https://marianettigroup.github.io/data-canon/docs/specifications/data_canon_v1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marianettigroup.github.io/data-canon/docs/specifications/data_canon_v1/</guid><description>&lt;h1 id="version-1-draft"&gt;Version 1 Draft&lt;/h1&gt;&#10;&lt;hr&gt;&#10;&lt;h1 id="introduction"&gt;Introduction&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;DataCanon (DC)&lt;/strong&gt; is a data model for structured scientific data with a&#10;canonical identity encoding.&lt;/p&gt;&#10;&lt;p&gt;DataCanon defines a set of data types and their equality relations, together with a&#10;unique canonical byte encoding for every instance.&lt;/p&gt;&#10;&lt;p&gt;The type and encoding definitions provide a common, representation-independent basis for&#10;communicating, identifying, comparing, and preserving structured scientific&#10;data across software implementations and persistence mechanisms.&lt;/p&gt;&#10;&lt;p&gt;The identity of a DataCanon Instance is determined solely by its type and its&#10;constituent information. It does not depend on any particular programming&#10;language, textual notation, parser, renderer, or persistence format.&lt;/p&gt;</description></item><item><title>Shorthand</title><link>https://marianettigroup.github.io/data-canon/docs/specifications/shorthand_v1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marianettigroup.github.io/data-canon/docs/specifications/shorthand_v1/</guid><description>&lt;h1 id="datacanon-shorthand--version-1-draft"&gt;DataCanon Shorthand — Version 1 Draft&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;Status:&lt;/strong&gt; Draft for independent implementation review&lt;br&gt;&#10;&lt;strong&gt;Depends on:&lt;/strong&gt; DataCanon Core Version 1&lt;br&gt;&#10;&lt;strong&gt;Scope:&lt;/strong&gt; Strict Shorthand parsing and identity-preserving rendering&lt;br&gt;&#10;&lt;strong&gt;Out of scope:&lt;/strong&gt; Optional Shorthand preprocessing, YAML interchange, HDF5, and persistence conventions&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h1 id="introduction"&gt;Introduction&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;DataCanon Shorthand&lt;/strong&gt; is a human-readable textual representation of DataCanon Instances (DCIs). It provides notation for all 24 DataCanon Types (DCTs) defined by DataCanon Core Version 1.&lt;/p&gt;&#10;&lt;p&gt;Shorthand does &lt;strong&gt;not&lt;/strong&gt; define DCI identity. The core specification defines DCTs, equality, canonical binary encoding, and fingerprinting. A Shorthand document represents exactly one DCI; its whitespace and textual layout do not participate in that DCI&amp;rsquo;s identity.&lt;/p&gt;</description></item><item><title>Shorthand Preprocessing</title><link>https://marianettigroup.github.io/data-canon/docs/specifications/shorthand_preprocessing_v1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marianettigroup.github.io/data-canon/docs/specifications/shorthand_preprocessing_v1/</guid><description>&lt;h1 id="datacanon-shorthand-preprocessing--version-1-draft"&gt;DataCanon Shorthand Preprocessing — Version 1 Draft&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;Status:&lt;/strong&gt; Draft for independent implementation review&lt;br&gt;&#10;&lt;strong&gt;Depends on:&lt;/strong&gt; DataCanon Shorthand Version 1; DataCanon Core Version 1&lt;br&gt;&#10;&lt;strong&gt;Scope:&lt;/strong&gt; Optional textual transformation of augmented Shorthand into strict Shorthand&lt;br&gt;&#10;&lt;strong&gt;Out of scope:&lt;/strong&gt; DCI construction, canonical encoding, persistence, application-specific mathematical aliases&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h1 id="introduction"&gt;Introduction&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;DataCanon Shorthand preprocessing&lt;/strong&gt; is an optional text-to-text transformation intended for human-authored Shorthand. It supports three conveniences:&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;compact List notation;&lt;/li&gt;&#10;&lt;li&gt;named textual substitutions; and&lt;/li&gt;&#10;&lt;li&gt;explicitly requested scalar arithmetic with &lt;code&gt;eval(...)&lt;/code&gt;.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;The preprocessor does &lt;strong&gt;not&lt;/strong&gt; construct, inspect, or validate DataCanon Instances (DCIs). Its output is intended to be parsed by a &lt;strong&gt;strict Shorthand parser&lt;/strong&gt;, which remains responsible for all syntax and DCT validity checks. Preprocessing does not change DataCanon Core identity or canonical encoding.&lt;/p&gt;</description></item><item><title>YAML Interchange</title><link>https://marianettigroup.github.io/data-canon/docs/specifications/yaml_interchange_v1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marianettigroup.github.io/data-canon/docs/specifications/yaml_interchange_v1/</guid><description>&lt;h1 id="datacanon-yaml-interchange--version-1-draft"&gt;DataCanon YAML Interchange — Version 1 Draft&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;Status:&lt;/strong&gt; Draft for independent implementation review&lt;br&gt;&#10;&lt;strong&gt;Depends on:&lt;/strong&gt; DataCanon Core Version 1; DataCanon Shorthand Version 1&lt;br&gt;&#10;&lt;strong&gt;Scope:&lt;/strong&gt; Interchange between YAML documents and DataCanon Instances (DCIs)&lt;br&gt;&#10;&lt;strong&gt;Out of scope:&lt;/strong&gt; Canonical binary encoding rules, HDF5 persistence, Shorthand preprocessing, and application-specific YAML tags&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h1 id="introduction"&gt;Introduction&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;DataCanon YAML Interchange&lt;/strong&gt; permits ordinary YAML values to represent DataCanon Instances (DCIs), while preserving DataCanon-specific structures through an embedded Shorthand convention called the &lt;strong&gt;&lt;code&gt;$&lt;/code&gt; airlock&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>HDF5</title><link>https://marianettigroup.github.io/data-canon/docs/specifications/hdf5_v1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marianettigroup.github.io/data-canon/docs/specifications/hdf5_v1/</guid><description>&lt;h1 id="datacanon-hdf5--version-1-draft"&gt;DataCanon HDF5 — Version 1 Draft&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;Status:&lt;/strong&gt; Draft for independent implementation review&lt;br&gt;&#10;&lt;strong&gt;Depends on:&lt;/strong&gt; DataCanon Core Version 1&lt;br&gt;&#10;&lt;strong&gt;Scope:&lt;/strong&gt; Identity-preserving HDF5 representation of DataCanon Instances (DCIs), including embedded external resources&lt;br&gt;&#10;&lt;strong&gt;Out of scope:&lt;/strong&gt; Canonical byte encoding, Shorthand and YAML syntax, filesystem packaging conventions, and application-specific source-resolution APIs&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h1 id="introduction"&gt;Introduction&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;DataCanon HDF5&lt;/strong&gt; defines a portable representation of DataCanon Instances (DCIs) in HDF5 files. Its purpose is to permit independent implementations, including Python and Julia, to exchange structured scientific data while preserving DataCanon identity.&lt;/p&gt;</description></item><item><title>Persistence</title><link>https://marianettigroup.github.io/data-canon/docs/specifications/persistence_v1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marianettigroup.github.io/data-canon/docs/specifications/persistence_v1/</guid><description>&lt;h1 id="datacanon-persistence--version-1-draft"&gt;DataCanon Persistence — Version 1 Draft&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;Status:&lt;/strong&gt; Draft for independent implementation review&lt;br&gt;&#10;&lt;strong&gt;Depends on:&lt;/strong&gt; DataCanon Core Version 1; DataCanon Shorthand Version 1; DataCanon HDF5 Version 1&lt;br&gt;&#10;&lt;strong&gt;Related:&lt;/strong&gt; DataCanon YAML Interchange Version 1; DataCanon Shorthand Preprocessing Version 1&lt;br&gt;&#10;&lt;strong&gt;Scope:&lt;/strong&gt; Storage-format selection, reading and writing, external-resource namespaces, deferred retrieval, integrity verification, and identity-preserving transfer&lt;br&gt;&#10;&lt;strong&gt;Out of scope:&lt;/strong&gt; DCT definitions, canonical byte encoding, Shorthand grammar, HDF5 object layout, YAML scalar semantics, and implementation-language APIs&lt;/p&gt;</description></item><item><title>Conventional Types</title><link>https://marianettigroup.github.io/data-canon/docs/specifications/conventional_types_v1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marianettigroup.github.io/data-canon/docs/specifications/conventional_types_v1/</guid><description>&lt;h1 id="datacanon-conventional-types--version-1-draft"&gt;DataCanon Conventional Types — Version 1 Draft&lt;/h1&gt;&#10;&lt;p&gt;&lt;strong&gt;Status:&lt;/strong&gt; Draft for independent implementation review&lt;br&gt;&#10;&lt;strong&gt;Depends on:&lt;/strong&gt; DataCanon Core Version 1&lt;br&gt;&#10;&lt;strong&gt;Related:&lt;/strong&gt; DataCanon Persistence Version 1&lt;br&gt;&#10;&lt;strong&gt;Scope:&lt;/strong&gt; Optional conventional numerical and collection types, their operations, and conversion relationships with DCIs&lt;br&gt;&#10;&lt;strong&gt;Out of scope:&lt;/strong&gt; DCT definitions, canonical encoding, textual syntax, and complete symbolic algebra&lt;/p&gt;&#10;&lt;h1 id="purpose-and-boundaries"&gt;Purpose and boundaries&lt;/h1&gt;&#10;&lt;p&gt;DataCanon Core defines data and identity. Core does not perform arithmetic.&#10;An implementation can also provide &lt;strong&gt;conventional types&lt;/strong&gt; used directly for&#10;data and computation in its programming language. Conventional types include&#10;built-in, library-provided, and user-defined types.&lt;/p&gt;</description></item></channel></rss>