nu.xom.converters

Class 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 Documentconvert(Document domDocument)

Translates a DOM org.w3c.dom.Document object into an equivalent nu.xom.Document object.

static Documentconvert(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 Nodesconvert(DocumentFragment fragment)

Translates a DOM org.w3c.dom.DocumentFragment object into an equivalent nu.xom.Nodes object.

static Nodesconvert(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 Commentconvert(Comment comment)

Translates a DOM org.w3c.dom.Comment object into an equivalent nu.xom.Comment object.

static Textconvert(Text text)

Translates a DOM org.w3c.dom.Text object into an equivalent nu.xom.Text.

static Attributeconvert(Attr attribute)

Translates a DOM org.w3c.dom.Attr object into an equivalent nu.xom.Attribute object.

static ProcessingInstructionconvert(ProcessingInstruction pi)

Translates a DOM org.w3c.dom.ProcessingInstruction object into an equivalent nu.xom.ProcessingInstruction object.

static DocTypeconvert(DocumentType doctype)

Translates a DOM org.w3c.dom.DocumentType object into an equivalent nu.xom.DocType object.

static Elementconvert(Element element)

Translates a DOM org.w3c.dom.Element object into an equivalent nu.xom.Element object.

static Documentconvert(Document document, DOMImplementation impl)

Translates a XOM nu.xom.Document object into an equivalent org.w3c.dom.Document object.

Method Detail

convert

public static Document convert(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(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(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(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(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(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(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(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(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(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 Document convert(Document document, 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-2006 Elliotte Rusty Harold
elharo@metalab.unc.edu