SurveyOS publishes three standards at launch, and a fourth is in development. Each is a PDF on this site and on SourceForge, licensed under CC BY 4.0, and covered by our Patent Non-Assertion Pledge.
| Standard | What it governs | Version | Status | Example implementation |
|---|---|---|---|---|
| SurveyLISP AutoLISP Coding Standard | How AutoLISP and DCL code is named, structured, tested, and made portable | 100.0.0 | Released | SurveyLISP libraries |
| SurveyLISP Bundle Specification | How AutoLISP code is packaged in a zip with a bundle.toml manifest for installation |
100.0.0 | Released | SurveyLISP Bundle Manager (RH Labs) |
| UAV Image Metadata Standard | A sidecar metadata record for each UAV image, in TOML or XML | 100.0.0 | Draft for comment | Imago Aeria Curator (RH Labs) |
| Survey Calculation Annotation Standard | A standard way to annotate survey calculations | — | In development | — |
SurveyLISP AutoLISP Coding Standard
This standard makes AutoLISP code readable to a new reader and portable between AutoCAD and BricsCAD. It separates code into three layers: libraries that only take and return data, adapters that are the only code to touch the drawing, and commands that do all the prompting. It also covers naming, comments, error handling, dialog (DCL) files, testing, and loading. Rules marked [lint] and [warn] are checked by the SurveyLISP linter.
[Download PDF] · SourceForge
SurveyLISP Bundle Specification
A bundle is a standard zip file with a bundle.toml manifest. The manifest names the bundle, its version, the files it installs and where, the modules it provides and depends on, the files to load at CAD startup, and its entries in the shared SurveyLISP menu. The specification also defines the SurveyLISP workspace folders a bundle may install into and the paths it may never write.
The specification does not depend on any one tool. Anyone may write a program that builds or installs bundles. The SurveyLISP Bundle Manager from RH Labs is the example implementation. To learn how to package your code, see the Bundle Packaging Guide.
[Download PDF] · SourceForge
UAV Image Metadata Standard
This standard describes one UAV image in one metadata record, so images can be cataloged, searched, and reviewed for asset management and inspection. A record identifies the exact image file, separates where the camera was from where it pointed and what it shows, and records which assets appear in the image and whether each identification has been verified. It states the exposure time without ambiguity and records where each value came from. Records can be written in TOML or XML, and an XML Schema is provided.
This standard is a Draft for comment. Comments are open for 30 days from the date its comment post appears under Latest. See Contribute for how to send them.
[Download PDF] · [Download XML Schema] · SourceForge
Survey Calculation Annotation Standard
We are developing a standard way to annotate survey calculations. A draft will be posted for comment under Latest.
Versions and status
Every standard and every library has a version number in the form MAJOR.MINOR.PATCH, starting at 100.0.0.
- MAJOR changes when something that conformed before would no longer conform.
- MINOR changes when we add something that does not break existing conforming work.
- PATCH changes for corrections and clarifications that do not change meaning.
Standards and libraries are versioned separately. Every library release states which standard versions it implements. We always write the name with the version, for example “SurveyLISP Bundle Specification 100.0.0.”
Each standard has one of four statuses:
| Status | Meaning |
|---|---|
| In development | Being written; not yet available |
| Draft for comment | Published so you can comment; may change before release |
| Released | Stable; safe to implement |
| Superseded | Replaced by a newer version; kept for reference |