Math Archives
Math Archives organize the different dimensions of mathematical knowledge into a standardized directory tree layout to facilitate archiving (details and discussion). MathHub has adopted Math Archives as the main packaging format, manages knowledge in this format, and stores all knowledge as versioned math archives in the MathHub GitLab Server.
The dimensions of a Math Archive include (other dimensions are possible, but are not standardized in MathHub)
source
: the human-editable surface language representations.content
: the OMDoc/MMT generated from thesource
dimension.narration
:presentation
:relational
:errors
: the errors encountered by the compilation pipelines organized into subdirectories by the build targets that produced them.export
: ??????latexml
: the OMDoc 1.3 version of thesource
dimension.
All of these are given as subdirectories of the math archive, which also contains
- the
META_INF
directory for metadata, it contains- a file
MANIFEST.MF
, which specifies the archive nameid
, base URLs (source-base
andnarration-base
, dependencies on other math archives (dependencies
; these can be cyclic), maintainers (responsible
), documentation strings for the libraries page (title
,teaser
, anddescription
), and information on generated branches (generated-branches
). - other HTML5 files with further description (if they are
referenced in the
MANIFEST.MF
file.) - Legacy/convenience Scala scripts like
serve.msl
andbuild.msl
. These are a mostly deprecated mechanism and are not used in MathHub.
- a file