nu.xom.converters

Class DOMConverter

Object
  extended by nu.xom.converters.DOMConverter

public class DOMConverter
extends Object

Converts XOM Document objects to and from DOM Document objects. This class can also convert many DOM node objects into the corresponding XOM node objects. However, the reverse is not possible because DOM objects cannot live outside their containing Document.

Version:
1.2d1
Author:
Elliotte Rusty Harold

Method Summary
static Attributeconvert(org.w3c.dom.Attr attribute)

           Translates a DOM org.w3c.dom.Attr object into an equivalent nu.xom.Attribute object.
static Commentconvert(org.w3c.dom.Comment comment)

           Translates a DOM org.w3c.dom.Comment object into an equivalent nu.xom.Comment object.
static Documentconvert(org.w3c.dom.Document domDocument)

           Translates a DOM org.w3c.dom.Document object into an equivalent nu.xom.Document object.
static org.w3c.dom.Documentconvert(Document document, org.w3c.dom.DOMImplementation impl)

           Translates a XOM nu.xom.Document object into an equivalent org.w3c.dom.Document object.
static Nodesconvert(org.w3c.dom.DocumentFragment fragment)

           Translates a DOM org.w3c.dom.DocumentFragment object into an equivalent nu.xom.Nodes object.
static Nodesconvert(org.w3c.dom.DocumentFragment fragment, NodeFactory factory)

           Translates a DOM org.w3c.dom.DocumentFragment object into an equivalent nu.xom.Nodes object, converting each DOM node as specified by a factory.
static Documentconvert(org.w3c.dom.Document domDocument, NodeFactory factory)

           Translates a DOM org.w3c.dom.Document object into an equivalent nu.xom.Document object as controlled by a factory.
static DocTypeconvert(org.w3c.dom.DocumentType doctype)

           Translates a DOM org.w3c.dom.DocumentType object into an equivalent nu.xom.DocType object.
static Elementconvert(org.w3c.dom.Element element)

           Translates a DOM org.w3c.dom.Element object into an equivalent nu.xom.Element object.
static ProcessingInstructionconvert(org.w3c.dom.ProcessingInstruction pi)

           Translates a DOM org.w3c.dom.ProcessingInstruction object into an equivalent nu.xom.ProcessingInstruction object.
static Textconvert(org.w3c.dom.Text text)

           Translates a DOM org.w3c.dom.Text object into an equivalent nu.xom.Text.
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

convert

public static Document convert(org.w3c.dom.Document domDocument)

Translates a DOM org.w3c.dom.Document object into an equivalent nu.xom.Document object. The original DOM document is not changed. Some DOM Document objects cannot be serialized as namespace well-formed XML, and thus cannot be converted to XOM.

Parameters:
domDocument - the DOM document to translate
Returns:
a XOM document
Throws:
XMLException - if the DOM document is not a well-formed XML document

convert

public static Document convert(org.w3c.dom.Document domDocument,
                               NodeFactory factory)

Translates a DOM org.w3c.dom.Document object into an equivalent nu.xom.Document object as controlled by a factory. The original DOM document is not changed. Some DOM Document objects cannot be serialized as namespace well-formed XML, and thus cannot be converted to XOM.

Parameters:
domDocument - the DOM document to translate
factory - the factory that converts each DOM node into zero or more XOM nodes
Returns:
a XOM document
Throws:
XMLException - if the DOM document is not a well-formed XML document

convert

public static Nodes convert(org.w3c.dom.DocumentFragment fragment)

Translates a DOM org.w3c.dom.DocumentFragment object into an equivalent nu.xom.Nodes object. The original DOM document fragment is not changed. Some DOM DocumentFragment objects cannot be serialized as namespace well-balanced XML, and thus cannot be converted to XOM.

Parameters:
fragment - the DOM document fragment to translate
Returns:
a Nodes containing the converted fragment members
Throws:
XMLException - if the DOM object is not a well-balanced XML fragment

convert

public static Nodes convert(org.w3c.dom.DocumentFragment fragment,
                            NodeFactory factory)

Translates a DOM org.w3c.dom.DocumentFragment object into an equivalent nu.xom.Nodes object, converting each DOM node as specified by a factory. The original DOM document fragment is not changed. Some DOM DocumentFragment objects cannot be serialized as namespace well-balanced XML, and thus cannot be converted to XOM.

Parameters:
fragment - the DOM document fragment to translate
factory - the NodeFactory that converts each DOM node into a XOM node
Returns:
a Nodes containing the converted fragment members
Throws:
XMLException - if the DOM object is not a well-balanced XML fragment

convert

public static Comment convert(org.w3c.dom.Comment comment)

Translates a DOM org.w3c.dom.Comment object into an equivalent nu.xom.Comment object. The original DOM object is not changed. Some DOM Comment objects cannot be serialized as well-formed XML, and thus cannot be converted to XOM.

Parameters:
comment - the DOM comment to translate
Returns:
a XOM comment
Throws:
XMLException - if the DOM comment is not a well-formed XML comment

convert

public static Text convert(org.w3c.dom.Text text)

Translates a DOM org.w3c.dom.Text object into an equivalent nu.xom.Text. This method will also convert org.w3c.dom.CDATA objects. The original DOM object is not changed. Some DOM Text objects cannot be serialized as well-formed XML, and thus cannot be converted to XOM.

Parameters:
text - the DOM text to translate
Returns:
a XOM text
Throws:
XMLException - if the DOM text is not a well-formed XML text

convert

public static Attribute convert(org.w3c.dom.Attr attribute)

Translates a DOM org.w3c.dom.Attr object into an equivalent nu.xom.Attribute object. The original DOM object is not changed. Some DOM Attr objects cannot be serialized as well-formed XML, and thus cannot be converted to XOM. Furthermore, DOM uses Attr objects to represent namespace declarations. XOM does not. Converting an Attr object that represents an xmlns or xmlns:prefix attribute will cause an exception.

Parameters:
attribute - the DOM Attr to translate
Returns:
the equivalent XOM Attribute
Throws:
XMLException - if the DOM Attr is a namespace declaration or is not a well-formed XML attribute

convert

public static ProcessingInstruction convert(org.w3c.dom.ProcessingInstruction pi)

Translates a DOM org.w3c.dom.ProcessingInstruction object into an equivalent nu.xom.ProcessingInstruction object. The original DOM object is not changed. Some DOM ProcessingInstruction objects cannot be serialized as well-formed XML, and thus cannot be converted to XOM.

Parameters:
pi - the DOM ProcessingInstruction to convert
Returns:
a XOM ProcessingInstruction
Throws:
XMLException - if the DOM ProcessingInstruction is not a well-formed XML processing instruction

convert

public static DocType convert(org.w3c.dom.DocumentType doctype)

Translates a DOM org.w3c.dom.DocumentType object into an equivalent nu.xom.DocType object. The original DOM object is not changed. Some DOM DocumentType objects cannot be serialized as well-formed XML, and thus cannot be converted to XOM.

Parameters:
doctype - the DOM DocumentType to convert
Returns:
the equivalent XOM DocType
Throws:
XMLException - if the DOM DocumentType is not a well-formed XML document type declaration

convert

public static Element convert(org.w3c.dom.Element element)

Translates a DOM org.w3c.dom.Element object into an equivalent nu.xom.Element object. The original DOM object is not changed. Some DOM Element objects cannot be serialized as namespace well-formed XML, and thus cannot be converted to XOM.

Parameters:
element - the DOM Element to convert
Returns:
the equivalent XOM Element
Throws:
XMLException - if the DOM Element is not a well-formed XML element

convert

public static org.w3c.dom.Document convert(Document document,
                                           org.w3c.dom.DOMImplementation impl)

Translates a XOM nu.xom.Document object into an equivalent org.w3c.dom.Document object. The original XOM document is not changed. Since DOM2 internal subsets are read-only, the internal DTD subset is not converted. All other aspects of the document should be translated without a problem.

Parameters:
document - the XOM document to translate
impl - the specific DOM implementation into which this document will be converted
Returns:
a DOM document


Copyright 2002-2010 Elliotte Rusty Harold

elharo@ibiblio.org