Laz2_DOM unit
Provides an implementation of DOM interfaces.
laz2_dom.pas provides an Implementation of DOM (Document Object
Model) interfaces. It is a modified copy of the FCL dom.pp unit (revision
15251) adapted to use UTF-8 instead of WideString by Mattias Gaertner.
Copyright (c) 1999-2000 by Sebastian Guenther, sg@freepascal.org
Modified in 2006 by Sergei Gorelkin, sergei_gorelkin@mail.ru
This unit provides classes which implement the interfaces defined in the DOM (Document Object Model) specification. The current state is:
- DOM Levels 1 and 2 - Completely implemented
- DOM Level 3 - Partially implemented
Specification used for this implementation:
Document Object Model (DOM) Level 2 Specification
laz2_dom.pas is part of the
lazutils package.
Classes and records
EDOMError | class | Base class for exceptions raised in DOM interface classes. |
EDOMHierarchyRequest | class | Exception raised when an inserted node is not valid for the Document Object Model (DOM). |
EDOMIndexSize | class | Exception raised for an invalid index size. |
EDOMInUseAttribute | class | Exception raised when adding an attribute that is already in use. |
EDOMInvalidAccess | class | Exception raised when a parameter or operation is not supported by the object. |
EDOMInvalidModification | class | Exception raised when an attempt was made to modify the type for an object. |
EDOMInvalidState | class | Exception raised when accessing an object that is no longer usable. |
EDOMNamespace | class | Exception raised when an object is changed in a way that is invalid for its Namespaces. |
EDOMNotFound | class | Exception raised when a node is accessed in a context where it does not exist. |
EDOMNotSupported | class | Exception raised when the DOM implementation does not support the requested object type or operation. |
EDOMSyntax | class | Exception raised when an invalid or illegal value is specified for a DOM object. |
EDOMWrongDocument | class | Exception raised when a node is used in a document other than the one that created it. |
TDOMAttr | class | Implements a DOM Node for attributes with Namespace support. |
TDOMAttrDef | class | Implements the default attribute node introduced in DOM Level 2. |
TDOMCDATASection | class | Implements the DOM CDataSection interface from the DOM specification. |
TDOMCharacterData | class | Implements the CharacterData interface from the DOM specification. |
TDOMComment | class | Implements the DOM Comment interface from the DOM specification. |
TDOMDocument | class | Implements the DOM Document interface. |
TDOMDocumentFragment | class | Implements the DocumentFragment interface from the DOM specification. |
TDOMDocumentType | class | Implements the DOM DocumentType interface from the DOM specification. |
TDOMElement | class | Implements the DOM Element interface from the DOM specification. |
TDOMElementList | class | Provides a recursive list of DOM Elements. |
TDOMEntity | class | Implements the DOM Entity interface from the DOM specification. |
TDOMEntityReference | class | Implements the DOM EntityReference interface from the DOM specification. |
TDOMImplementation | class | Implements the DOMImplementation interface from the DOM specification. |
TDOMNamedNodeMap | class | Implements the NamedNodeMap interface in the DOM specification. |
TDOMNode | class | Implements the DOM Node interface. |
TDOMNode_NS | class | Implements a DOM Node with Namespace support. |
TDOMNode_WithChildren | class | Extends TDOMNode to allocate storage for child nodes. |
TDOMNodeAllChildEnumerator | class | Implements an enumerator that visits all Children in the sub-tree for a DOM node. |
TDOMNodeEnumerator | class | Implements an enumerator for DOM Nodes. |
TDOMNodeList | class | Implements an ordered list of DOM Nodes. |
TDOMNotation | class | Implements the DOM Notation interface from the DOM specification. |
TDOMProcessingInstruction | class | Implements the DOM ProcessingInstruction interface from the DOM specification. |
TDOMText | class | Implements the DOM Text interface from the DOM specification. |
TExtent | record | Record type with a pointer to its extent, followed by an array TDOMNode instances. |
TNamespaceInfo | record | Represents Namespace Information used in DOM Node specializations. |
TNodePool | class | Provides custom memory management when DOM Nodes are created. |
TXMLDocument | class | Implements an XML Document. |
Procedures and functions
EncodeLesserAndGreaterThan | function | Converts instance of the reserved characters. |
StrToXMLValue | function | Converts a string to it representation as XML character data. |
XMLValueToStr | function | Converts XML character data to its representation as a string value. |
Types
DOMChar | type | Type used for Char values in DOM interfaces. |
DOMPChar | type | Type used for Pointers to Char values in DOM interfaces. |
DOMString | type | Type used for String values in DOM interfaces. |
PDOMString | type | Type used for Pointers to DOMString values. |
PExtent | type | Pointer to a TExtent type. |
PNodePoolArray | type | Pointer to a TNodePoolArray instance. |
TAttrDataType | enumeration | Enumeration with values for attribute types used in DOM Nodes. |
TAttrDefault | enumeration | Enumerated type with methods for getting the attribute node value. |
TDOMNodeClass | type | Class type used to create TDOMNode instances. |
TFilterResult | enumeration | Determines the Node types included in a DOM node list. |
TNamespaces | type | Type used for namespaces in a DOM Document. |
TNodeFlagEnum | enumeration | Enumeration with flag values for DOM Nodes. |
TNodeFlags | set | Set type used to store TNodeFlagEnum values. |
TNodePoolArray | type | Specifies an array of TNodePool instances. |
Constants
ATTRIBUTE_NODE | constant | Represents the node type for DOM Attributes. |
CDATA_SECTION_NODE | constant | Represents the node type for DOM CDATA nodes. |
COMMENT_NODE | constant | Represents the node type for DOM Comments. |
DOCUMENT_FRAGMENT_NODE | constant | Represents the node type for DOM Document Fragments. |
DOCUMENT_NODE | constant | Represents the node type for DOM Document Elements. |
DOCUMENT_TYPE_NODE | constant | Represents the node type for DOM Document Type Declarations (DTD). |
DOMSTRING_SIZE_ERR | constant | Represents DOM exception code 2. |
ELEMENT_NODE | constant | Represents the node type for DOM Elements. |
ENTITY_NODE | constant | Represents the node type for DOM Entities. |
ENTITY_REFERENCE_NODE | constant | Represents the node type for DOM Entity References. |
HIERARCHY_REQUEST_ERR | constant | Represents DOM exception code 3. |
INDEX_SIZE_ERR | constant | Represents DOM exception code 1. |
INUSE_ATTRIBUTE_ERR | constant | Represents DOM exception code 10. |
INVALID_ACCESS_ERR | constant | Represents DOM exception code 15. |
INVALID_CHARACTER_ERR | constant | Represents DOM exception code 5. |
INVALID_MODIFICATION_ERR | constant | Represents DOM exception code 13. |
INVALID_STATE_ERR | constant | Represents DOM exception code 11. |
NAMESPACE_ERR | constant | Represents DOM exception code 14. |
NO_DATA_ALLOWED_ERR | constant | Represents DOM exception code 6. |
NO_MODIFICATION_ALLOWED_ERR | constant | Represents DOM exception code 7. |
NOT_FOUND_ERR | constant | Represents DOM exception code 8. |
NOT_SUPPORTED_ERR | constant | Represents DOM exception code 9. |
NOTATION_NODE | constant | Represents the node type for DOM Notation Declarations. |
PROCESSING_INSTRUCTION_NODE | constant | Represents the node type for DOM Processing Instructions. |
stduri_xml | constant | Namespace URI for the xml prefix. |
stduri_xmlns | constant | Namespace URI for the xmlns prefix. |
SYNTAX_ERR | constant | Represents DOM exception code 12. |
TEXT_NODE | constant | Represents the node type for DOM Text nodes. |
WRONG_DOCUMENT_ERR | constant | Represents DOM exception code 4. |
Uses
An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
