Implementing Version Handling in Yet Another CMS

Just Another CMS , JACMS for short, is the evolution and current iteration of the author’s long-standing dream to create a content management system using XML technologies and tools. JACMS, a content management application built on top of eXist-db, is very much a work in progress, and whilst this paper started as a tale of the entire system, from authoring to publishing and everything between, that approach turned out to be prohibitive. As a sanity-saving measure, the author eventually decided to focus on JACMS’s version management, itself based on XML. JACMS’s version handling is based on Version Markup Language (VML), a versioning abstraction designed to identify “meaningful” versions on an arbitrary number of levels, e.g. 1.2.3.4.5, etc. The implementation, on-going at the time of this writing, is written in XQuery and XSLT, with the UIs produced by XForms, and includes not only VML instances and code to describing and managing version histories but also an extended XLink linkbase.

Authors

Publication Details

Journal
Balisage series on markup technologies
Published
2025-07-26
DOI
https://doi.org/10.4242/balisagevol30.nordstrom01
Primary Topic
Scientific Computing and Data Management
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Implementing Version Handling in Yet Another CMS

Ari Nordström
Balisage series on markup technologies
Scientific Computing and Data Management
article

Implementing Version Handling in Yet Another CMS

Ari Nordström
article en

Abstract

Just Another CMS , JACMS for short, is the evolution and current iteration of the author’s long-standing dream to create a content management system using XML technologies and tools. JACMS, a content management application built on top of eXist-db, is very much a work in progress, and whilst this paper started as a tale of the entire system, from authoring to publishing and everything between, that approach turned out to be prohibitive. As a sanity-saving measure, the author eventually decided to focus on JACMS’s version management, itself based on XML. JACMS’s version handling is based on Version Markup Language (VML), a versioning abstraction designed to identify “meaningful” versions on an arbitrary number of levels, e.g. 1.2.3.4.5, etc. The implementation, on-going at the time of this writing, is written in XQuery and XSLT, with the UIs produced by XForms, and includes not only VML instances and code to describing and managing version histories but also an extended XLink linkbase.

Balisage series on markup technologiesVol. 30
Openalex Percentile: Top 45%
Scientific Computing and Data Management
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.