Cross-platform Xml API.

See also:

Static variables

@:value(XmlType.CData)staticread onlyCData:XmlType = XmlType.CData

XML character data type.

@:value(XmlType.Comment)staticread onlyComment:XmlType = XmlType.Comment

XML comment type.

@:value(XmlType.DocType)staticread onlyDocType:XmlType = XmlType.DocType

XML doctype element type.

@:value(XmlType.Document)staticread onlyDocument:XmlType = XmlType.Document

XML document type.

@:value(XmlType.Element)staticread onlyElement:XmlType = XmlType.Element

XML element type.

@:value(XmlType.PCData)staticread onlyPCData:XmlType = XmlType.PCData

XML parsed character data type.

@:value(XmlType.ProcessingInstruction)staticread onlyProcessingInstruction:XmlType = XmlType.ProcessingInstruction

XML processing instruction type.

Static methods

staticcreateCData(data:String):Xml

Creates a node of the given type.

staticcreateComment(data:String):Xml

Creates a node of the given type.

staticcreateDocType(data:String):Xml

Creates a node of the given type.

staticcreateDocument():Xml

Creates a node of the given type.

staticcreateElement(name:String):Xml

Creates a node of the given type.

staticcreatePCData(data:String):Xml

Creates a node of the given type.

staticcreateProcessingInstruction(data:String):Xml

Creates a node of the given type.

staticparse(str:String):Xml

Parses the String into an Xml document.

Variables

@:isVarnodeName:String

Returns the node name of an Element.

read onlynodeType:XmlType

Returns the type of the Xml Node. This should be used before accessing other functions since some might raise an exception if the node type is not correct.

@:isVarnodeValue:String

Returns the node value. Only works if the Xml node is not an Element or a Document.

read onlyparent:Xml

Returns the parent object in the Xml hierarchy. The parent can be null, an Element or a Document.

Methods

addChild(x:Xml):Void

Adds a child node to the Document or Element. A child node can only be inside one given parent node, which is indicated by the parent property. If the child is already inside this Document or Element, it will be moved to the last position among the Document or Element's children. If the child node was previously inside a different node, it will be moved to this Document or Element.

attributes():Iterator<String>

Returns an Iterator on all the attribute names.

elements():Iterator<Xml>

Returns an iterator of all child nodes which are Elements. Only works if the current node is an Element or a Document.

elementsNamed(name:String):Iterator<Xml>

Returns an iterator of all child nodes which are Elements with the given nodeName. Only works if the current node is an Element or a Document.

exists(att:String):Bool

Tells if the Element node has a given attribute. Attributes are case-sensitive.

inlinefirstChild():Xml

Returns the first child node.

firstElement():Xml

Returns the first child node which is an Element.

get(att:String):String

Get the given attribute of an Element node. Returns null if not found. Attributes are case-sensitive.

insertChild(x:Xml, pos:Int):Void

Inserts a child at the given position among the other childs. A child node can only be inside one given parent node, which is indicated by the [parent] property. If the child is already inside this Document or Element, it will be moved to the new position among the Document or Element's children. If the child node was previously inside a different node, it will be moved to this Document or Element.

inlineiterator():Iterator<Xml>

Returns an iterator of all child nodes. Only works if the current node is an Element or a Document.

remove(att:String):Void

Removes an attribute for an Element node. Attributes are case-sensitive.

removeChild(x:Xml):Bool

Removes a child from the Document or Element. Returns true if the child was successfuly removed.

set(att:String, value:String):Void

Set the given attribute value for an Element node. Attributes are case-sensitive.

inlinetoString():String

Returns a String representation of the Xml node.