scala.xml

class Node

[source: scala/xml/Node.scala]

abstract class Node
extends NodeSeq
An abstract class representing XML with nodes of a labelled tree. This class contains an implementation of a subset of XPath for navigation.
Author
Burak Emir and others
Version
1.1
Direct Known Subclasses:
Elem, Group, SpecialNode

Method Summary
final def attribute (key : String) : Option[Seq[Node]]
Convenience method, looks up an unprefixed attribute in attributes of this node. Same as attributes.getValue(key)
final def attribute (uri : String, key : String) : Option[Seq[Node]]
Convenience method, looks up a prefixed attribute in attributes of this node. Same as attributes.getValue(uri, this, key)
def attributes : MetaData
Returns attribute meaning all attributes of this node, prefixed and unprefixed, in no particular order. In class Node, this defaults to Null (the empty attribute list).
abstract def child : Seq[Node]
Returns child axis i.e. all children of this node.
def descendant : List[Node]
Descendant axis (all descendants of this node, not including node itself) includes all text nodes, element nodes, comments and processing instructions.
def descendant_or_self : List[Node]
Descendant axis (all descendants of this node, including thisa node) includes all text nodes, element nodes, comments and processing instructions.
override def equals (x : Any) : Boolean
Returns true if x is structurally equal to this node. Compares prefix, label, attributes and children.
def getNamespace (pre : String) : String
Convenience method, same as scope.getURI(pre) but additionally checks if scope is null.
override def hashCode : Int

Returns a hashcode. The default implementation here calls only super.hashcode (which is the same as for objects). A more useful implementation can be invoked by calling Utility.hashCode(pre, label, attributes.hashCode(), child).

abstract def label : String
label of this node. I.e. "foo" for <foo/>)
def nameToString (sb : StringBuilder) : StringBuilder
Appends qualified name of this node to StringBuilder.
def namespace : String
convenience, same as getNamespace(this.prefix)
def prefix : String
prefix of this node
def scope : NamespaceBinding
method returning the namespace bindings of this node. by default, this is TopScope, which means there are no namespace bindings except the predefined one for "xml".
override def text : String
Returns a text representation of this node. Note that this is not equivalent to the XPath node-test called text(), it is rather an implementation of the XPath function string() Martin to Burak: to do: if you make this method abstract, the compiler will now complain if there's no implementation in a subclass. Is this what we want? Note that this would break doc/DocGenator and doc/ModelToXML, with an error message like: doc\DocGenerator.scala:1219: error: object creation impossible, since there is a deferred declaration of method text in class Node of type => String which is not implemented in a subclass new SpecialNode { ^
def theSeq : Seq[Node]
returns a sequence consisting of only this node
override def toString : String
Same as toString(false).
def toString (stripComment : Boolean) : String
String representation of this node
def xmlType : TypeSymbol
Returns a type symbol (e.g. DTD, XSD), default null.
Methods inherited from NodeSeq
length, elements, apply, apply, \, \\
Methods inherited from Seq
size, isEmpty, concat, last, lastOption, headOption, ++, isDefinedAt, lastIndexOf, map, flatMap, filter, take, drop, slice, takeWhile, dropWhile, reverse, contains, subseq, toArray, projection, equalsWith, startsWith, endsWith, indexOf, containsSlice
Methods inherited from Collection
stringPrefix
Methods inherited from Iterable
foreach, forall, exists, find, findIndexOf, indexOf, foldLeft, foldRight, /:, :\, reduceLeft, reduceRight, copyToBuffer, sameElements, toList, toStream, mkString, mkString, mkString, addString, addString, copyToArray, hasDefiniteSize
Methods inherited from PartialFunction
orElse, andThen
Methods inherited from Function1
compose
Methods inherited from AnyRef
getClass, clone, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized
Methods inherited from Any
==, !=, isInstanceOf, asInstanceOf