|Logiweb online help|
|Crossbrowser external formats windows|
The Common Lisp S-expression uses sharpsign equal-sign and sharpsign sharpsign to express sharing. As an example of use, the S-expression (#1=abc #2=def ghi #2# #1#) is equivalent to (abc def ghi def abc).
The XML format is described in comments in the XML source.
The Lisp and XML versions of bibliography, dictionary, and body may be used as input for foreign tools which need to access Logiweb internal data. Note that if foreign tools need access to Logiweb internals, then one may instead choose to define a Logiweb renderer which generates the data needed by the external tool. In general, one should expect Logiweb to be much more able to adapt to foreign tools than the other way round.
Foreign tools which need access to all Logiweb internal data and not just bibliography, dictionary, and body and which do not want to rely on Logiweb rendering should mirror the Logiweb page locally and then access the Logiweb cache. The cache resides in memory during processing. Whenever the 'cache' option of the pyk compiler is set (c.f. man pyk), the pyk compiler dumps the cache to a file in the directory pointed out by the cache option. The name of the file is constructed from the reference of the page. The cache file contains the largest amount of information one can reasonably get from Logiweb. The file system cache contains all of the in-memory cache except the 'code' and 'cache' branches. The code branch contains compiled code and is easy to regenerate from the other parts of the cache. The cache branche contains the caches of all transitively referenced Logiweb pages which is a huge structure but which is easy to regenerate if one has access to file system versions of the caches of the referenced pages. The amount of sharing present in Logiweb caches is so massive that a custom format was needed. For documentation of that format, read the sections 'Dump state to file' and 'Load state from file' in codify.lisp in the source code of Logiweb.
Click here to open a sample crossbrowser external formats menu.