Class gxe.xml.DomProcessor
				
				
			
				Provides utility functions for processing an XML document.
(used when opening an existing document)
				
				
					
Defined in:  gxe.js.
				
			
| Constructor Attributes | Constructor Name and Description | 
|---|---|
| Method Attributes | Method Name and Description | 
|---|---|
| findMatchingChildAttribute(domParentNode, cfgChild)
								 Attempts to find the attribute of a DOM Node that matches the XML target 
associated with an editor configuration object. | |
| findMatchingChildElement(domParentNode, cfgChild)
								 Attempts to find an immediate child element of a DOM Node that matches 
the XML target associated with an editor configuration object. | |
| findMatchingChildElements(domParentNode, cfgChild)
								 Attempts to find the immediate child elements of a DOM Node that match 
the XML target associated with an editor configuration object. | |
| forEachElementNode(domParentNode, callback)
								 Executes a function for each immediate child element of a DOM Node. | |
| forEachMatchingElementNode(domParentNode, sNamespaceUri, sLocalName, callback)
								 Executes a function for each immediate child element of a DOM Node that matches
a supplied namespace and loca name. | |
| getNodeText(domNode)
								 Gets the text content of a DOM Node (element or attribute). | |
| hasChildrenOrAttributes(domNode)
								 Determines if a DOM Node has either: attributes, child elements or element text. | |
| isMatching(domNode, cfgObject)
								 Determines if the qualified name associated with a DOM Node matches the XML target 
associated with an editor configuration object. | |
| matchTopElement(xmlNamespaces, domNode, sMatchPath, sMatchTextNodeValue, bMust)
								 Determines if there is a match between a supplied DOM Node and a descendant condition. | |
| splitQualifiedName(sQualifiedName)
								 Splits a qualified name into a prefix plus localName pair. | 
					Method Detail
				
				
					 
					
					
					{Node}
					findMatchingChildAttribute(domParentNode, cfgChild)
					
					
					
						Attempts to find the attribute of a DOM Node that matches the XML target 
associated with an editor configuration object.
						
						
					
					
					
					
						
							- Parameters:
- {Node} domParentNode
- the DOM node whose attributes will be searched
- {Object} cfgChild
- the editor configuration object that will be used to determine a match
- Returns:
- {Node} a matching DOM attribute (null if no match)
					
					{Node}
					findMatchingChildElement(domParentNode, cfgChild)
					
					
					
						Attempts to find an immediate child element of a DOM Node that matches 
the XML target associated with an editor configuration object.
						
						
					
					
					
					
						
							- Parameters:
- {Node} domParentNode
- the DOM node whose children will be searched
- {Object} cfgChild
- the editor configuration object that will be used to determine a match
- Returns:
- {Node} a matching DOM element (null if no match)
					
					{Node[]}
					findMatchingChildElements(domParentNode, cfgChild)
					
					
					
						Attempts to find the immediate child elements of a DOM Node that match 
the XML target associated with an editor configuration object.
						
						
					
					
					
					
						
							- Parameters:
- {Node} domParentNode
- the DOM node whose children will be searched
- {Object} cfgChild
- the editor configuration object that will be used to determine a match
- Returns:
- {Node[]} the matching DOM elements (null if no match)
					
					
					forEachElementNode(domParentNode, callback)
					
					
					
						Executes a function for each immediate child element of a DOM Node.
Only child elements of nodeType=1 (ELEMENT_NODE) will be considered.
The callback function will have the following signature: function(domChildNode) {}
The callback function can return the String "break" to terminate the loop.
					
					
					
						
							Only child elements of nodeType=1 (ELEMENT_NODE) will be considered.
The callback function will have the following signature: function(domChildNode) {}
The callback function can return the String "break" to terminate the loop.
- Parameters:
- {Node} domParentNode
- the DOM node whose children will be searched
- {function} callback
- the callback function
					
					
					forEachMatchingElementNode(domParentNode, sNamespaceUri, sLocalName, callback)
					
					
					
						Executes a function for each immediate child element of a DOM Node that matches
a supplied namespace and loca name.
Only child elements of nodeType=1 (ELEMENT_NODE) will be considered.
The callback function will have the following signature: function(domChildNode) {}
The callback function can return the String "break" to terminate the loop.
					
					
					
						
							Only child elements of nodeType=1 (ELEMENT_NODE) will be considered.
The callback function will have the following signature: function(domChildNode) {}
The callback function can return the String "break" to terminate the loop.
- Parameters:
- {Node} domParentNode
- the DOM node whose children will be searched
- {String} sNamespaceUri
- the namespace URI to match (can be null)
- {String} sLocalName
- the local node name to match (i.e unqualified name)
- {function} callback
- the callback function
					
					{String}
					getNodeText(domNode)
					
					
					
						Gets the text content of a DOM Node (element or attribute).
						
						
					
					
					
					
						
							- Parameters:
- {Node} domNode
- the DOM node that is actively being processed
- Returns:
- {String} the text content (can be null)
					
					{boolean}
					hasChildrenOrAttributes(domNode)
					
					
					
						Determines if a DOM Node has either: attributes, child elements or element text.
						
						
					
					
					
					
						
							- Parameters:
- {Node} domNode
- the DOM node that is actively being processed
- Returns:
- {boolean} true if there is a match
					
					{boolean}
					isMatching(domNode, cfgObject)
					
					
					
						Determines if the qualified name associated with a DOM Node matches the XML target 
associated with an editor configuration object.
Editor configuration example for referencing a target XML element:
<g:element g:targetName="pfx:name" ..
					
					
					
						
							Editor configuration example for referencing a target XML element:
<g:element g:targetName="pfx:name" ..
- Parameters:
- {Node} domNode
- the DOM node that is actively being processed
- {Object} cfgObject
- the associated editor configuration object
- Returns:
- {boolean} true if there is a match
					
					{boolean}
					matchTopElement(xmlNamespaces, domNode, sMatchPath, sMatchTextNodeValue, bMust)
					
					
					
						Determines if there is a match between a supplied DOM Node and a descendant condition.
Note: matchTopElement does not support full XPath expressions
					
					
					
						
							Note: matchTopElement does not support full XPath expressions
- Parameters:
- {gxe.xml.XmlNamespaces} xmlNamespaces
- a configured list of target namespaces
- {Node} domNode
- the DOM node that is actively being processed
- {String} sMatchPath
- the relative path for the element to match (a simple path relative to the supplied parent DOM node)
- {String} sMatchTextNodeValue
- the text node value to match (null indicates no test should be made)
- {boolean} bMust
- true indicates that there must be a match (false indicates must not)
- Returns:
- {boolean} true if there is a match
					
					{"prefix":{String}|"localName":{String}}
					splitQualifiedName(sQualifiedName)
					
					
					
						Splits a qualified name into a prefix plus localName pair.
						
						
					
					
					
					
						
							- Parameters:
- {String} sQualifiedName
- the qualified name
- Returns:
- {"prefix":{String}|"localName":{String}} the prefix plus localName pair