scala.xml
Type members
Classlikes
The class Atom
provides an XML node for text (PCDATA
).
It is used in both non-bound and bound XML representations.
The class Atom
provides an XML node for text (PCDATA
).
It is used in both non-bound and bound XML representations.
- Value Params
- data
the text contained in this node, may not be
'''null'''
.
This singleton object contains the apply
and unapply
methods for
convenient construction and deconstruction.
This singleton object contains the apply
and unapply
methods for
convenient construction and deconstruction.
- Companion
- class
The Attribute
trait defines the interface shared by both
scala.xml.PrefixedAttribute and scala.xml.UnprefixedAttribute.
The Attribute
trait defines the interface shared by both
scala.xml.PrefixedAttribute and scala.xml.UnprefixedAttribute.
- Companion
- object
The class Comment
implements an XML node for comments.
The class Comment
implements an XML node for comments.
- Value Params
- commentText
the text contained in this node, may not contain "--" and the final character may not be
-
to prevent a closing span of-->
which is invalid. https://www.w3.org/TR/xml11//#IDA5CES
A document information item (according to InfoSet spec). The comments
are copied from the Infoset spec, only augmented with some information
on the Scala types for definitions that might have no value.
Also plays the role of an XMLEvent
for pull parsing.
A document information item (according to InfoSet spec). The comments
are copied from the Infoset spec, only augmented with some information
on the Scala types for definitions that might have no value.
Also plays the role of an XMLEvent
for pull parsing.
This singleton object contains the apply
and unapplySeq
methods for
convenient construction and deconstruction. It is possible to deconstruct
any Node
instance (that is not a SpecialNode
or a Group
) using the
syntax case Elem(prefix, label, attribs, scope, child @ _*) => ...
This singleton object contains the apply
and unapplySeq
methods for
convenient construction and deconstruction. It is possible to deconstruct
any Node
instance (that is not a SpecialNode
or a Group
) using the
syntax case Elem(prefix, label, attribs, scope, child @ _*) => ...
- Companion
- class
An immutable data object representing an XML element.
An immutable data object representing an XML element.
Child elements can be other Elems or any one of the other Node types.
XML attributes are implemented with the scala.xml.MetaData base class.
Optional XML namespace scope is represented by scala.xml.NamespaceBinding.
- Value Params
- attributes1
the attribute map
- child
the children of this node
- label
the element name
- minimizeEmpty
true
if this element should be serialized as minimized (i.e. "<el/>") when empty;false
if it should be written out in long form.- prefix
namespace prefix (may be null, but not the empty string)
- scope
the scope containing the namespace bindings
- Companion
- object
The class EntityRef
implements an XML node for entity references.
The class EntityRef
implements an XML node for entity references.
- Value Params
- entityName
the name of the entity reference, for example
amp
.
In an attempt to contain the damage being inflicted on consistency by the
ad hoc equals
methods spread around xml
, the logic is centralized and
all the xml
classes go through the xml.Equality trait
. There are two
forms of xml
comparison.
In an attempt to contain the damage being inflicted on consistency by the
ad hoc equals
methods spread around xml
, the logic is centralized and
all the xml
classes go through the xml.Equality trait
. There are two
forms of xml
comparison.
'''def''' strict_==(other: scala.xml.Equality)
This one tries to honor the little things like symmetry and hashCode
contracts. The equals
method routes all comparisons through this.
xml_==(other: Any)
This one picks up where strict_==
leaves off. It might declare any two
things equal.
As things stood, the logic not only made a mockery of the collections equals contract, but also laid waste to that of case classes.
Among the obstacles to sanity are/were:
Node extends NodeSeq extends Seq[Node] MetaData extends Iterable[MetaData] The hacky "Group" xml node which throws exceptions with wild abandon, so don't get too close Rampant asymmetry and impossible hashCodes Most classes claiming to be equal to "String" if some specific stringification of it was the same. String was never going to return the favor.
- Companion
- class
This class represents an attribute and at the same time a linked list of attributes. Every instance of this class is either
This class represents an attribute and at the same time a linked list of attributes. Every instance of this class is either
- an instance of
UnprefixedAttribute key,value
or - an instance of
PrefixedAttribute namespace_prefix,key,value
or - `Null, the empty attribute list.
Namespace URIs are obtained by using the namespace scope of the element
owning this attribute (see getNamespace
).
- Companion
- object
Governs how empty elements (i.e. those without child elements) should be serialized.
Governs how empty elements (i.e. those without child elements) should be serialized.
The class NamespaceBinding
represents namespace bindings
and scopes. The binding for the default namespace is treated as a null
prefix. the absent namespace is represented with the null uri. Neither
prefix nor uri may be empty, which is not checked.
The class NamespaceBinding
represents namespace bindings
and scopes. The binding for the default namespace is treated as a null
prefix. the absent namespace is represented with the null uri. Neither
prefix nor uri may be empty, which is not checked.
This singleton object contains the unapplySeq
method for
convenient deconstruction.
This singleton object contains the unapplySeq
method for
convenient deconstruction.
- Companion
- class
An abstract class representing XML with nodes of a labeled tree. This class contains an implementation of a subset of XPath for navigation.
An abstract class representing XML with nodes of a labeled tree. This class contains an implementation of a subset of XPath for navigation.
- scala.xml.Comment — XML comment
- scala.xml.Elem — XML element
- scala.xml.EntityRef — XML entity
- scala.xml.PCData — Character data section (CDATA)
- scala.xml.ProcInstr — Processing instruction (PI)
- scala.xml.Text — Stand-alone parsed character data
- Companion
- object
This class acts as a Buffer for nodes. If it is used as a sequence of
nodes Seq[Node]
, it must be ensured that no updates occur after that
point, because scala.xml.Node
is assumed to be immutable.
This class acts as a Buffer for nodes. If it is used as a sequence of
nodes Seq[Node]
, it must be ensured that no updates occur after that
point, because scala.xml.Node
is assumed to be immutable.
Despite this being a sequence, don't use it as key in a hashtable. Calling the hashcode function will result in a runtime error.
This class implements a wrapper around Seq[Node]
that adds XPath
and comprehension methods.
This class implements a wrapper around Seq[Node]
that adds XPath
and comprehension methods.
- Companion
- object
Essentially, every method in here is a dummy, returning Zero[T]. It provides a backstop for the unusual collection defined by MetaData, sort of a linked list of tails.
Essentially, every method in here is a dummy, returning Zero[T]. It provides a backstop for the unusual collection defined by MetaData, sort of a linked list of tails.
This class (which is not used by all XML parsers, but always used by the XHTML one) represents parseable character data, which appeared as CDATA sections in the input and is to be preserved as CDATA section in the output.
This class (which is not used by all XML parsers, but always used by the XHTML one) represents parseable character data, which appeared as CDATA sections in the input and is to be preserved as CDATA section in the output.
- Companion
- object
This singleton object contains the apply
and unapply
methods for
convenient construction and deconstruction.
This singleton object contains the apply
and unapply
methods for
convenient construction and deconstruction.
- Companion
- class
prefixed attributes always have a non-null namespace.
prefixed attributes always have a non-null namespace.
- Value Params
- value
the attribute value
- Companion
- object
Class for pretty printing. After instantiating, you can use the format() and formatNode() methods to convert XML to a formatted string. The class can be reused to pretty print any number of XML nodes.
Class for pretty printing. After instantiating, you can use the format() and formatNode() methods to convert XML to a formatted string. The class can be reused to pretty print any number of XML nodes.
- Value Params
- minimizeEmpty
self-close empty tags
- step
indentation
- width
the width to fit the output into
- Note
This class is not threadsafe and should not be accessed by multiple threads at the same time.
an XML node for processing instructions (PI)
an XML node for processing instructions (PI)
- Value Params
- proctext
text contained in this node, may not contain "?>"
- target
target name of this PI
This object provides an extractor method to match a qualified node with its namespace URI
This object provides an extractor method to match a qualified node with its namespace URI
SpecialNode
is a special XML node which represents either text
(PCDATA)
, a comment, a PI
, or an entity ref.
SpecialNode
is a special XML node which represents either text
(PCDATA)
, a comment, a PI
, or an entity ref.
The class Text
implements an XML node for text (PCDATA).
It is used in both non-bound and bound XML representations.
The class Text
implements an XML node for text (PCDATA).
It is used in both non-bound and bound XML representations.
- Value Params
- data
the text contained in this node, may not be null.
- Companion
- object
This singleton object contains the apply
and unapply
methods for
convenient construction and deconstruction.
This singleton object contains the apply
and unapply
methods for
convenient construction and deconstruction.
- Companion
- class
The class TextBuffer
is for creating text nodes without surplus
whitespace. All occurrences of one or more whitespace in strings
appended with the append
method will be replaced by a single space
character, and leading and trailing space will be removed completely.
The class TextBuffer
is for creating text nodes without surplus
whitespace. All occurrences of one or more whitespace in strings
appended with the append
method will be replaced by a single space
character, and leading and trailing space will be removed completely.
- Companion
- object
top level namespace scope. only contains the predefined binding for the "xml" prefix which is bound to "http://www.w3.org/XML/1998/namespace"
top level namespace scope. only contains the predefined binding for the "xml" prefix which is bound to "http://www.w3.org/XML/1998/namespace"
An XML node for unparsed content. It will be output verbatim, all bets are off regarding wellformedness etc.
An XML node for unparsed content. It will be output verbatim, all bets are off regarding wellformedness etc.
- Value Params
- data
content in this node, may not be null.
- Companion
- object
This singleton object contains the apply
and unapply
methods for
convenient construction and deconstruction.
This singleton object contains the apply
and unapply
methods for
convenient construction and deconstruction.
- Companion
- class
Unprefixed attributes have the null namespace, and no prefix field
Unprefixed attributes have the null namespace, and no prefix field
- Companion
- object
The Utility
object provides utility functions for processing instances
of bound and not bound XML classes, as well as escaping text nodes.
The Utility
object provides utility functions for processing instances
of bound and not bound XML classes, as well as escaping text nodes.
The object XML
provides constants, and functions to load
and save XML elements. Use this when data binding is not desired, i.e.
when XML is handled using Symbol
nodes.
The object XML
provides constants, and functions to load
and save XML elements. Use this when data binding is not desired, i.e.
when XML is handled using Symbol
nodes.