|
Class: XMLNodeBuilder (in XML)
Object
|
+--XML::XMLNodeBuilder
|
+--XML::NodeBuilder
|
+--XML::SourceNodeBuilder
|
+--XML::SourceScannerNodeBuilder
- Package:
- stx:goodies/xml/vw
- Category:
- XML-VW-Parsing
- Version:
- rev:
1.18
date: 2021/01/20 15:20:31
- user: cg
- file: XMLNodeBuilder.st directory: goodies/xml/vw
- module: stx stc-classLibrary: vw
This class along with it's subclass NodeBuilder is used by the XMLParser to distill an XML document into it's component elements. Since XML elements are tag delimited and nest
properly within each other in a well-formed XML document, this class contains code to
process the tags and build a dictionary of xml elements
Instance Variables:
tagStack <OrderedCollection>
tags <Dictionary>
constants
-
reservedXmlNamespace
-
Namespace constraint: Reserved Prefixes and Namespace Names
The prefix xml is by definition bound to the namespace name http://www.w3.org/XML/1998/namespace. It may, but need not, be declared, and must not be bound to any other namespace name. No other prefix may be bound to this namespace name.
The prefix xmlns is used only to declare namespace bindings and is by definition bound to the namespace name http://www.w3.org/2000/xmlns/. It must not be declared. No other prefix may be bound to this namespace name.
All other prefixes beginning with the three-letter sequence x, m, l, in any case combination, are reserved. This means that
* users should not use them except as defined by later specifications
* processors must not treat them as fatal errors.
instance creation
-
new
-
(comment from inherited method)
return an instance of myself without indexed variables
accessing
-
currentElement
-
cg: added for twoFlower *compatibility with newer XMLParser framework
-
currentTag
-
-
elementStack
-
cg: added for twoFlower *compatibility with newer XMLParser framework
-
popTag
-
cg: added for twoFlower *compatibility with newer XMLParser framework
-
pushTag: tag
-
cg: added for twoFlower *compatibility with newer XMLParser framework
-
pushTag: tag whileDoing: aBlock
-
-
unresolvableNamespace
-
get the namespace to be used, if it cannot be resolved.
An error is raised if this is nil.
-
unresolvableNamespace: aString
-
set the namespace to be used, if it cannot be resolved.
An error is raised if this is nil.
building
-
externalGeneralEntity: nameString id: arrayIDs ndata: ndata uri: aUri
-
Needed for SAX. REW
-
externalParameterEntity: nameString id: arrayIDs
-
Needed for SAX. REW
-
internalGeneralEntity: nameString value: string
-
Needed for SAX. REW
-
internalParameterEntity: nameString value: string
-
Needed for SAX. REW
initialization
-
initialize
-
(comment from inherited method)
just to ignore initialize to objects which do not need it
namespaces
-
correctAttributeTag: attribute
-
-
correctTag: tag
-
-
findNamespace: ns
-
-
postProcessElement: anElement
-
-
resolveNamespaces: attributes
-
-
unresolvableNamespaceFor: aNsQualifier
-
if a namespace qualifier cannot be resolved
queries
-
isTreeBuilding
-
answer true, if our builder wants the XML parser to build
a tree of elements.
Subclasses may redefine this.
|