Name Description
AttributeChecker Class for checking attributes against declared values.
Chain Factory to setup and wire tokenization and validation components for SGML parsing.
Chainmanager Provides callback implementations for Recordhandler events.
Diverter Diverts records (text lines) to either SGML declaration parsing, SGML content parsing, or markdown parsing, based on configuration and on the record's position and content.
Docinfo Container and utility functions for global per-instance parsing state.
EmptyCompletionCallback No-op implementation of Completioncallback interface.
Entitydefinitions Container object representing parsed (general and parameter) entity declarations in an SGML prolog.
FPI Class for parsing and representation of formal public identifiers.
Linkhandler Content handler implementing a link process.
Locator Class wrapping a stack of entity reference names and related external system identifiers (file names currently processed, if applicable).
MarkdownOutputFilter SAX handler acting as output filter and forwarder for markdown-generated SAX event streams.
Markupdefinitions Container holding document prolog metadata and associated parsing/maintenance routines.
Markupencoder Utility class for encoding and decoding markup delimiters in content and attributes.
Outputhandler Class serializing received SAX events to an output stream according to a configured output markup language (SGML, HTML, or XML).
Sgmldecl Container and parsing/manipulation routines for properties representing SGML/WebSGML declaration options.
SuppressDocumentElementFilter SAX handler forwarding all but the first start-element and last end-element event.
SystemSpecificEntityResolver Resolver for system-specific and external subset entities.
Tokenizer Central SGML parsing module receiving input record events (from a Recordmanager and emitting SAX events to the registerered DocumentHandler, DTDHandler, and LexicalHandler implementations.
URN Class for URI representation and parsing, modelled after the HTML5 URL class/function.
Validator State machine for SGML validation and tag inference.

Name Description
Completioncallback Interface containing a single `done()` function.
DocumentHandler Callback interface for receiving general markup events according to the SAX 1.
DTDHandler Callback interfaces for notation and entity declarations.
Entitymanager Interface used by Ouputhandlers to append content of data entities to a configured output stream or DOM.
Errorhandler Interface for an errorhandler the SGML library user must implement and supply to processing components.
LexicalHandler Extension callback interfaces for SGML lexical events.
Prologhandler Callback interface for SGML prolog completion/content start events.
Recordhandler Interface for record callbacks.
Recordmanager Interface used by Tokenizer and other code to start, stop, and resume receiving input records (input lines).
Saxeventmanager Interface containing a pair of functions that an outputhandler is supposed to call before and after materializing a data entity/template to stop SAX events from being submitted to it meanwhile.

SGML Library Internals

Record Emitter (must be provided) Records (Text Lines) Record Manager Event Manager (asynchronous control flow interfaces) Output Handler (must be provided) SAX Events Diverter Records Markdown Parser SGML Tokenizer Parsed SAX Events Validator and Tag Inferrer Inferred SAX Events Link Processor