Why Law Is Law-Shaped
This article explores the structural constraints that shape law, arguing its form parallels software development due to incremental maintenance, distributed authorship, and the need for stable references. It posits that law, while presented as a hierarchical tree, fundamentally operates as a complex graph of interconnected provisions. The author introduces LawVM, an open-source project designed to provide a robust, version-controlled text layer for legal systems by treating amendments as typed operations across multiple temporal dimensions, filling a critical gap in legal informatics.
The Lowdown
The article "Why Law Is Law-Shaped" delves into the inherent structural characteristics of legal systems, drawing insightful parallels to software development. It argues that the form and function of law are direct consequences of its evolutionary process as an "incrementally maintained system authored by distributed agents with partial authority over time, requiring stable fine-grained addresses for external reference."
- Structural Constraints: Law's structure is dictated by continuous, piecemeal updates from various authorities, necessitating stable internal and external references, much like software APIs or imports. The article notes the convergent evolution with version control systems like git.
- Tree vs. Graph: While statutes are serialized as linear trees (due to paper's constraints), law operates as a graph through cross-references, conditional overrides, and cross-jurisdictional dependencies. The tree structure merely holds content; the graph defines interactions.
- Amendments as Operations: Amendments are not simple text edits but structured, typed operations (replace, repeal, insert, renumber) targeting specific addresses, each with a source and effective date. This system allows for precise tracking of changes to the "text layer," distinguishing it from "semantic operations" like interpretive overlays or delegated legislation.
- Multiple Time Axes: Law operates on at least two independent temporal dimensions: publication/enactment time and legal effect time. This introduces complexities like retroactive or ultra-active provisions, making point-in-time legal queries multi-dimensional.
- Granularity of Atoms: The smallest unit of change (the "atom") in law is defined by the amendment system, which can target content at a finer granularity than structural nodes, such as specific words within a sentence.
- Convergent Addressing: Systems requiring stable addressing in hierarchical, distributed contexts consistently adopt path-based identifiers (e.g., §12(2)(c) in law, OIDs, filesystem paths), although legal cross-references often lack the live-update mechanisms of modern digital systems.
- Varying Authority Models: The legal authority of consolidated texts differs significantly across jurisdictions (e.g., informational in Finland, authoritative in Estonia), which impacts the social function and legal implications of a text compiler.
- The Problem Space: The challenge of building an end-to-end replay compiler for law spans computer science, legal informatics, public administration, and linguistics, explaining why a comprehensive open-source solution has been elusive despite existing efforts in related areas.
The article concludes by introducing LawVM, an open-source "semantic version control system for law." LawVM aims to provide a robust, verified, and temporally versioned text layer, treating law as a graph of provision versions and legislative operations. This foundational tool is designed to serve as a reliable substrate for more complex semantic and normative reasoning systems, ensuring accuracy at the textual level before deeper legal interpretation begins.