Converter from DOM nodes to yaidom nodes, in particular from org.w3c.dom.Element
to eu.cdevreeze.yaidom.simple.Elem and
from org.w3c.dom.Document
to eu.cdevreeze.yaidom.simple.Document.
Converter from DOM nodes to yaidom nodes, in particular from org.w3c.dom.Element
to eu.cdevreeze.yaidom.simple.Elem and
from org.w3c.dom.Document
to eu.cdevreeze.yaidom.simple.Document.
This converter regards the input more like an "ElemBuilder" than an "Elem", in that namespace declarations instead of scopes are extracted from input "elements", and in that conversions to yaidom Elems take an additional parent scope parameter (against which namespace declarations are resolved to get the scope of the yaidom element).
A StAX event combined with an optional ancestry path.
A StAX event combined with an optional ancestry path. After turning a stream of StAX events into a stream of EventWithAncestry objects, it is easy to create the entire element tree, or to query "an event" in the context of its ancestry.
The ancestry path is optional because it is absent before the first StartElement event and after the last EndElement event. Otherwise it must be present.
Converter from Scala XML nodes to yaidom nodes, in particular from scala.xml.Elem
to eu.cdevreeze.yaidom.simple.Elem and
from scala.xml.Document
to eu.cdevreeze.yaidom.simple.Document.
Converter from Scala XML nodes to yaidom nodes, in particular from scala.xml.Elem
to eu.cdevreeze.yaidom.simple.Elem and
from scala.xml.Document
to eu.cdevreeze.yaidom.simple.Document.
This converter is handy when one wants to use XML literals (as offered by standard Scala XML) in combination with yaidom.
This converter regards the input more like an "Elem" than an "ElemBuilder", in that scopes instead of namespace declarations are extracted from input "elements", and in that conversions to yaidom Elems do not take any additional parent scope parameter. On the other hand, Scala XML NamespaceBindings try to be a bit of both yaidom Scopes and yaidom Declarations.
Beware that conversions from Scala XML Elems to yaidom Elems will fail if the Scala XML Elem uses namespaces in element and/or attribute names that have not been declared!
Converter from StAX events to yaidom nodes, in particular from immutable.IndexedSeq[XMLEvent]
to eu.cdevreeze.yaidom.simple.Elem and
to eu.cdevreeze.yaidom.simple.Document.
Converter from StAX events to yaidom nodes, in particular from immutable.IndexedSeq[XMLEvent]
to eu.cdevreeze.yaidom.simple.Elem and
to eu.cdevreeze.yaidom.simple.Document.
There are also analogous conversions that take an Iterator[XMLEvent]
instead. These can be used to reduce memory usage.
This converter regards the input event stream more like an "ElemBuilder" than an "Elem", in that namespace declarations instead of scopes are extracted from input "elements", and in that conversions to yaidom Elems take an additional parent scope parameter (against which namespace declarations are resolved to get the scope of the yaidom element).
Converter from yaidom nodes to DOM nodes, in particular from eu.cdevreeze.yaidom.simple.Elem to a org.w3c.dom.Element
,
and from eu.cdevreeze.yaidom.simple.Document to a org.w3c.dom.Document
.
Converter from yaidom nodes to SAX event producers, in particular from eu.cdevreeze.yaidom.simple.Elem to SaxEventsProducer
,
and from eu.cdevreeze.yaidom.simple.Document to SaxEventsProducer
.
Converter from yaidom nodes to Scala XML nodes, in particular from eu.cdevreeze.yaidom.simple.Elem to a scala.xml.Elem
.
Converter from yaidom nodes to Scala XML nodes, in particular from eu.cdevreeze.yaidom.simple.Elem to a scala.xml.Elem
.
There is no conversion from yaidom Documents to Scala XML documents, because there is no direct way to create Scala XML documents.
Converter from yaidom nodes to StAX events, in particular from eu.cdevreeze.yaidom.simple.Elem to immutable.IndexedSeq[XMLEvent]
,
and from eu.cdevreeze.yaidom.simple.Document to immutable.IndexedSeq[XMLEvent]
.
Conversions between yaidom nodes and DOM nodes.
Conversions between yaidom nodes and DOM nodes.
These conversions are used in implementations of yaidom XML parsers and printers. They are also useful in application code. One scenario in which these conversions are useful is as follows:
val dbf = DocumentBuilderFactory.newInstance val db = dbf.newDocumentBuilder val domDoc = db.parse(inputFile) editDomTreeInPlace(domDoc) val doc = DomConversions.convertToDocument(domDoc) useImmutableDoc(doc)
Conversions between yaidom nodes and Scala XML nodes.
Conversions between yaidom nodes and Scala XML nodes.
These conversions are handy when one wants to use XML literals (as offered by standard Scala XML) in combination with yaidom.
Example usage:
val scalaXmlElem = <a xmlns="http://a"><b><c>test</c></b></a> val elem = ScalaXmlConversions.convertToElem(scalaXmlElem) useImmutableElem(elem)
See eu.cdevreeze.yaidom.convert.YaidomToScalaXmlConversions and in particular eu.cdevreeze.yaidom.convert.ScalaXmlToYaidomConversions for some pitfalls and peculiarities when using these conversions.
Conversions between yaidom nodes and StAX events.
Conversions between yaidom nodes and StAX events.
These conversions are used in implementations of yaidom XML parsers and printers. They are also useful in application code.
Support for conversions from/to yaidom. This package mostly contains conversions between yaidom objects and JAXP DOM or StAX objects, in both directions.
This conversion support is used by the Document parsers and printers in the
parse
andprint
packages, respectively. This package can also be used directly by consumers of the yaidom API.These JAXP-object conversions suggest that yaidom is optimistic about the available (heap) memory.
This package depends on the eu.cdevreeze.yaidom.core, eu.cdevreeze.yaidom.queryapi and eu.cdevreeze.yaidom.simple packages, and not the other way around. The eu.cdevreeze.yaidom.parse and eu.cdevreeze.yaidom.print packages depend on this package.