aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/sisudoc/ocda/abstraction/load.d
diff options
context:
space:
mode:
authorRalph Amissah <ralph.amissah@gmail.com>2026-09-08 18:44:45 -0400
committerRalph Amissah <ralph.amissah@gmail.com>2026-09-09 19:04:06 -0400
commitc6e822e3ce4b096163e0016e5735ef9c16e8997f (patch)
treee1ac0ae768cd04c37644d2cc9183a49f82bb2515 /src/sisudoc/ocda/abstraction/load.d
parent--ocda-db replaces --show-abstraction-db (diff)
html metadata: a link to the ocda.db
The metadata page gains a line between the markup source and the source digests. (assisted by Claude-Code)
Diffstat (limited to 'src/sisudoc/ocda/abstraction/load.d')
-rw-r--r--src/sisudoc/ocda/abstraction/load.d17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/sisudoc/ocda/abstraction/load.d b/src/sisudoc/ocda/abstraction/load.d
index f429595..ebdd1a5 100644
--- a/src/sisudoc/ocda/abstraction/load.d
+++ b/src/sisudoc/ocda/abstraction/load.d
@@ -61,6 +61,23 @@ module sisudoc.ocda.abstraction.load;
.ssp + images the abstraction, as text
.ocda.db the abstraction, sqlite, images inside
+ A source may also be remote. spine already takes a URL argument ending
+ in .zip: it is downloaded to a temp file (downloadZipUrl in
+ ocda/io_in/read_zip_pod.d, guarded by rgx_url_zip and by --allow-
+ downloads) and the local path is processed in its place. The same should
+ be offered for .ocda.db, which is the one other artefact that is
+ self-sufficient enough to be fetched on its own: it carries its images.
+ What that needs is small and is not done here:
+
+ - rgx_url_zip is `^https?://...[.]zip$`; a sibling pattern for
+ `[.]ocda[.]db$`, or one pattern covering both
+ - the same download path, which is already generic apart from that
+ regex, and the same temp-file cleanup
+ - dispatch, which this module already does once the file is local
+
+ A .ssp URL would want its images too, so it is a pod or a database that
+ travels, not a .ssp on its own.
+
This module names those sources, tells them apart, and loads the two
that are self-describing artefacts, returning the value the parser
produces.