Справочник по ActionScript® 3.0 для платформы Adobe® Flash®
Домашняя страница  |  Скрыть список пакетов и классов |  Пакеты  |  Классы  |  Что нового  |  Указатель  |  Приложения  |  Почему по-английски?
Фильтры: Получение данных с сервера...
Получение данных с сервера...
flash.xml 

XMLNode  - AS3

Пакетflash.xml
Классpublic class XMLNode
НаследованиеXMLNode Inheritance Object
Подклассы XMLDocument

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Класс XMLNode представляет устаревший объект XML, который использовался в ActionScript 2.0 и в ActionScript 3.0 был переименован. Вместо него в ActionScript 3.0 следует использовать новый XML-класс верхнего уровня и связанные классы с поддержкой E4X (ECMAScript для XML). Класс XMLNode является обратно совместимым.

Посмотреть примеры

Связанные элементы API



Общедоступные свойства
 СвойствоОпределено
  attributes : Object
Объект, содержащий все атрибуты заданного экземпляра XMLNode.
XMLNode
  childNodes : Array
[только для чтения] Массив дочерних узлов указанного объекта XMLNode.
XMLNode
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
  firstChild : XMLNode
Оценивает указанный объект XMLDocument и ссылается на первый дочерний узел в списке дочерних узлов родительского узла.
XMLNode
  lastChild : XMLNode
Значение XMLNode, ссылающееся на последний узел того же уровня в списке дочерних узлов вышестоящего узла.
XMLNode
  localName : String
[только для чтения] Локальная часть имени узла XML.
XMLNode
  namespaceURI : String
[только для чтения] Если у узла XML есть префикс, namespaceURI является значением объявления xmlns для этого префикса (URI), который обычно называют URI области имен.
XMLNode
  nextSibling : XMLNode
Значение XMLNode, ссылающееся на следующий родственный элемент того же уровня в списке дочерних узлов родительского узла.
XMLNode
  nodeName : String
Строковое представление имени узла объекта XMLNode.
XMLNode
  nodeType : uint
Значение константы nodeType: XMLNodeType.ELEMENT_NODE в случае элемента XML или XMLNodeType.TEXT_NODE в случае текстового узла.
XMLNode
  nodeValue : String
Значение узла объекта XMLDocument.
XMLNode
  parentNode : XMLNode
Значение XMLNode, которое ссылается на родительский узел указанного объекта XML, либо возвращает значение null при отсутствии родительского узла для данного узла.
XMLNode
  prefix : String
[только для чтения] Префикс имени узла XML.
XMLNode
  previousSibling : XMLNode
Значение XMLNode, ссылающееся на предыдущий родственный элемент того же уровня в списке дочерних узлов родительского узла.
XMLNode
Общедоступные методы
 МетодОпределено
  
XMLNode(type:uint, value:String)
Создает новый объект XMLNode.
XMLNode
  
Добавляет указанный узел к списку дочерних узлов объекта XML.
XMLNode
  
Формирует и возвращает новый узел XML того же типа, с тем же именем, значением и атрибутами, что и заданный объект XML.
XMLNode
  
Возвращает URI пространства имен, связанный с заданным префиксом узла.
XMLNode
  
Возвращает префикс, связанный с заданным URI пространства имен узла.
XMLNode
  
Показывает, есть ли у заданного объекта XMLNode дочерние узлы.
XMLNode
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
  
Добавляет новый дочерний узел в список дочерних узлов объекта XML перед узлом beforeNode.
XMLNode
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
  
Удаляет заданный объект XML из его родительского объекта.
XMLNode
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
 Inherited
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали.
Object
  
Вычисляет заданный объект XMLNode, формирует текстовое представление структуры XML, включая узел, его дочерние объекты и атрибуты, и возвращает результат в виде строки.
XMLNode
 Inherited
Возвращает элементарное значение заданного объекта.
Object
Сведения о свойстве

attributes

свойство
attributes:Object

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Объект, содержащий все атрибуты заданного экземпляра XMLNode. Объект XMLNode.attributes содержит по одной переменной для каждого атрибута экземпляра XMLNode. Так как эти переменные определены как часть объекта, они обычно принимаются за свойства объекта. Значение каждого атрибута хранится в соответствующем свойстве в виде строки. Например, если существует атрибут с именем color, значение этого атрибута можно получить, задав имя свойства color, как показано в следующем примере:

	 var myColor:String = doc.firstChild.attributes.color
	 



Реализация
    public function get attributes():Object
    public function set attributes(value:Object):void

childNodes

свойство 
childNodes:Array  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Массив дочерних узлов указанного объекта XMLNode. Каждый элемент массива является ссылкой на объект XMLNode, которым представлен дочерний узел. Это свойство типа только для чтения, и его невозможно использовать для обработки дочерних узлов. Для обработки дочерних узлов пользуйтесь методами appendChild(), insertBefore() и removeNode().

Данное свойство не определено для текстовых узлов (nodeType == 3).



Реализация
    public function get childNodes():Array

Связанные элементы API

firstChild

свойство 
public var firstChild:XMLNode

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Оценивает указанный объект XMLDocument и ссылается на первый дочерний узел в списке дочерних узлов родительского узла. Это свойство принимает значение null, если для узла не существует дочерних узлов. Это свойство не определено (имеет значение undefined), если узел является текстовым. Это свойство работает в режиме только для чтения, его невозможно использовать для обработки дочерних узлов. Для обработки дочерних узлов используйте методы appendChild(), insertBefore() и removeNode().

Связанные элементы API

lastChild

свойство 
public var lastChild:XMLNode

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Значение XMLNode, ссылающееся на последний узел того же уровня в списке дочерних узлов вышестоящего узла. Свойство XMLNode.lastChild принимает значение null, если для узла не существует дочерних узлов. Это свойство невозможно использовать для обработки дочерних узлов. Для обработки дочерних узлов используйте методы appendChild(), insertBefore() и removeNode().

Связанные элементы API

localName

свойство 
localName:String  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Локальная часть имени узла XML. Это имя элемента без префикса области имен. Например, у узла <contact:mailbox/>ivan@example.ru</contact:mailbox> есть локальное имя mailbox и префикс contact, которые составляют полное имя элемента contact.mailbox.

Префикс области имен доступен через свойство prefix объекта узла XML. Свойство nodeName возвращает полное имя (включая префикс и локальное имя).



Реализация
    public function get localName():String

namespaceURI

свойство 
namespaceURI:String  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Если у узла XML есть префикс, namespaceURI является значением объявления xmlns для этого префикса (URI), который обычно называют URI области имен. Объявление xmlns содержится в текущем узле или в узле, расположенном выше в иерархии XML.

Если у узла XML нет префикса, значение свойства namespaceURI зависит от того, определена ли области имен по умолчанию (как в примере xmlns="http://www.example.com/"). Если существует область имен по умолчанию, значение свойства namespaceURI является значением области имен по умолчанию. Если области имен по умолчанию не существует, свойство namespaceURI для этого узла будет пустой строкой ("").

Можно использовать метод getNamespaceForPrefix() для определения области имен, ассоциируемой с конкретным префиксом. Свойство namespaceURI возвращает префикс, ассоциируемый с именем узла.



Реализация
    public function get namespaceURI():String

Связанные элементы API

nextSibling

свойство 
public var nextSibling:XMLNode

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Значение XMLNode, ссылающееся на следующий родственный элемент того же уровня в списке дочерних узлов родительского узла. Это свойство принимает значение null, если для узла не существует следующего родственного элемента того же уровня. Это свойство невозможно использовать для обработки дочерних узлов. Для обработки дочерних узлов используйте методы appendChild(), insertBefore() и removeNode().

Связанные элементы API

nodeName

свойство 
public var nodeName:String

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Строковое представление имени узла объекта XMLNode. Если объект XMLNode является элементом XML (nodeType == 1), nodeName — это имя метки, представляющей узел в XML-файле. Например, TITLE — это параметр nodeName метки TITLE в формате HTML. Если объект XMLNode является текстовым узлом (nodeType == 3), то nodeName принимает значение null.

Связанные элементы API

nodeType

свойство 
public var nodeType:uint

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Значение константы nodeType: XMLNodeType.ELEMENT_NODE в случае элемента XML или XMLNodeType.TEXT_NODE в случае текстового узла.

nodeType является числовой величиной, которая определена списком NodeType, приведенным в рекомендации W3C DOM для Уровня 1: http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core.html. В следующей таблице приведены значения:

Целое значениеОпределенная константа
1ELEMENT_NODE
3TEXT_NODE
5ENTITY_REFERENCE_NODE
7PROCESSING_INSTRUCTION_NODE
9DOCUMENT_NODE
11DOCUMENT_FRAGMENT_NODE

Встроенный в программу Flash Player класс XMLNode поддерживает только значения XMLNodeType.ELEMENT_NODE и XMLNodeType.TEXT_NODE.

Связанные элементы API

nodeValue

свойство 
public var nodeValue:String

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Значение узла объекта XMLDocument. Если объект XMLDocument является текстовым узлом, значение nodeType — 3, а nodeValue — это текст узла. Если объект XMLDocument является элементом XML (nodeType имеет значение 1), то nodeValue принимает значение null и работает в режиме только для чтения.

Связанные элементы API

parentNode

свойство 
public var parentNode:XMLNode

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Значение XMLNode, которое ссылается на родительский узел указанного объекта XML, либо возвращает значение null при отсутствии родительского узла для данного узла. Это свойство работает в режиме только для чтения, его невозможно использовать для обработки дочерних узлов. Для обработки дочерних узлов используйте методы appendChild(), insertBefore() и removeNode().

Связанные элементы API

prefix

свойство 
prefix:String  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Префикс имени узла XML. Например, узел <contact:mailbox/>ivan@example.ru</contact:mailbox>, префикс contact и локальное имя mailbox, которые составляют полное имя элемента contact.mailbox.

Свойство nodeName объекта узла XML возвращает полное имя (включая префикс и локальное имя). Локальная часть имени элемента доступна через свойство localName.



Реализация
    public function get prefix():String

previousSibling

свойство 
public var previousSibling:XMLNode

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Значение XMLNode, ссылающееся на предыдущий родственный элемент того же уровня в списке дочерних узлов родительского узла. Свойство имеет значение null, если для узла не существует предыдущего родственного элемента того же уровня. Это свойство невозможно использовать для обработки дочерних узлов. Для обработки дочерних узлов используйте методы appendChild(), insertBefore() и removeNode().

Связанные элементы API

Сведения о конструкторе

XMLNode

()Конструктор
public function XMLNode(type:uint, value:String)

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Создает новый объект XMLNode. Для создания объекта XMLNode следует использовать конструктор перед вызовом каких-либо методов класса XMLNode.

Примечание. Пользуйтесь методами createElement() и createTextNode() для добавления элементов и текстовых узлов в дерево XML-документа.

Параметры
type:uint — Тип узла: 1 в случае элемента XML и 3 в случае текстового узла.
 
value:String — Текст XML разбирается, и в результате создается новый объект XMLNode.

Связанные элементы API

Сведения о методе

appendChild

()метод
public function appendChild(node:XMLNode):void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Добавляет указанный узел к списку дочерних узлов объекта XML. Данный метод применяется непосредственно на узле, на который ссылается параметр childNode. Он не добавляет копию узла. Если добавляемый узел уже существует в другой древовидной структуре, при добавлении узла в новое местоположение он будет удален из текущего места. Если параметр childNode относится к узлу, который уже существует в другой древовидной структуре XML, добавляемый дочерний узел помещается в новое дерево после того, как он удаляется из текущего родительского узла.

Параметры

node:XMLNode — XMLNode, представляющий узел, который необходимо переместить из текущего местоположения в список дочерних узлов объекта my_xml.

cloneNode

()метод 
public function cloneNode(deep:Boolean):XMLNode

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Формирует и возвращает новый узел XML того же типа, с тем же именем, значением и атрибутами, что и заданный объект XML. При назначении параметру deep значения true все дочерние узлы рекурсивно клонируются, и в результате получается точная копия дерева документа объекта.

Клон возвращаемого узла более не связан с деревом клонированного элемента. Следовательно, nextSibling, parentNode и previousSibling принимают значение null. Если параметр deep имеет значение false или узел my_xml не имеет дочерних узлов, firstChild и lastChild также принимают значение null.

Параметры

deep:Boolean — Логическое значение: при значении true дочерние узлы указанного объекта XML рекурсивно клонируются.

Возвращает
XMLNode — Объект XMLNode.

getNamespaceForPrefix

()метод 
public function getNamespaceForPrefix(prefix:String):String

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Возвращает URI пространства имен, связанный с заданным префиксом узла. Для определения URI getPrefixForNamespace() производит поиск в иерархии XML от узла (по мере необходимости) и возвращает URI области имен первого определения xmlns для данного prefix.

Если область имен не определена ля указанного префикса, метод возвращает значение null.

Если в качестве prefix указана пустая строка (""), а для узла определена область имен по умолчанию (как, например, здесь: xmlns="http://www.example.com/"), метод возвращает URI области имен по умолчанию.

Параметры

prefix:String — Префикс, для которого метод возвращает ассоциируемую область имен.

Возвращает
String — Область имен, ассоциируемая с указанным префиксом.

Связанные элементы API

getPrefixForNamespace

()метод 
public function getPrefixForNamespace(ns:String):String

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Возвращает префикс, связанный с заданным URI пространства имен узла. Для определения префикса getPrefixForNamespace() производит поиск в иерархии XML от узла (по мере необходимости) и возвращает префикс первого определения xmlns с URI области имен, соответствующим ns.

Если для данного URI не задан xmlns, метод возвращает null. Если данному URI присвоен xmlns, но с этим присваиванием не ассоциирован префикс, метод возвращает пустую строку ("").

Параметры

ns:String — URI области имен, для которого метод возвращает ассоциируемый префикс.

Возвращает
String — Префикс, ассоциируемый с указанной областью имен.

Связанные элементы API

hasChildNodes

()метод 
public function hasChildNodes():Boolean

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Показывает, есть ли у заданного объекта XMLNode дочерние узлы. Данное свойство принимает значение true, если у объекта XMLNode есть дочерние узлы, в остальных случаях — значение false.

Возвращает
Boolean — Возвращает значение true, если у указанного объекта XMLNode есть дочерние узлы, в остальных случаях возвращает false.

insertBefore

()метод 
public function insertBefore(node:XMLNode, before:XMLNode):void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Добавляет новый дочерний узел в список дочерних узлов объекта XML перед узлом beforeNode. Если параметр beforeNode не определен или имеет значение null, узел добавляется с помощью метода appendChild(). Если beforeNode не является дочерним узлом my_xml, добавление не выполняется.

Параметры

node:XMLNode — Объект XMLNode, который необходимо добавить.
 
before:XMLNode — Объект XMLNode до точки добавления childNode.

Связанные элементы API

removeNode

()метод 
public function removeNode():void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Удаляет заданный объект XML из его родительского объекта. Также удаляет всех потомков узла.

toString

()метод 
public function toString():String

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Вычисляет заданный объект XMLNode, формирует текстовое представление структуры XML, включая узел, его дочерние объекты и атрибуты, и возвращает результат в виде строки.

При работе с объектами XMLDocument верхнего уровня (созданными с помощью конструктора) метод XMLDocument.toString() выводит объявление документа XML (хранится в свойстве XMLDocument.xmlDecl) перед объявлением DOCTYPE документа (хранится в свойстве XMLDocument.docTypeDecl) и перед текстовым представлением всех узлов XML в объекте. XML-объявление не выводится, если свойство XMLDocument.xmlDecl имеет значение null. Декларация DOCTYPE не выводится, если свойство XMLDocument.docTypeDecl имеет значение null.

Возвращает
String — Строка, представляющая объект XMLNode.

Связанные элементы API

XMLDocumentExample.as

В следующем примере показано, как классы XMLDocument и XMLNode используются для разбора и форматирования XML-документа. Вместо загрузки внешнего XML-файла для создания и разбора XML-документа используется класс XML верхнего уровня.
package {
    import flash.display.Sprite;
    import flash.xml.XMLDocument;
    import flash.xml.XMLNode;
    import flash.xml.XMLNodeType;

    public class XMLDocumentExample extends Sprite {
        public function XMLDocumentExample() {
            var result:XMLDocument = new XMLDocument();
            result.ignoreWhite = true;
            result.parseXML(getXMLString());

            var books:Array = parseBooks(result.firstChild);
            trace("books: \n" + books);
        }

        private function parseBooks(node:XMLNode):Array {
            var books:Array = new Array();

            var kids:Array = node.childNodes;
            for each(var item:XMLNode in kids) {
                parseBook(item, books);
            }

            return books;
        }

        private function parseBook(node:XMLNode, books:Array):void {
            var item:Book = new Book();
            item.setPublisher(node.attributes.publisher);
            item.setName(node.attributes.name);
            books.push(item);
        }

        private function getXMLString():String {
            var list:XML = <books>
                                <book publisher="Addison-Wesley" name="Design Patterns" />
                                <book publisher="Addison-Wesley" name="The Pragmatic Programmer" />
                                <book publisher="Addison-Wesley" name="Test Driven Development" />
                                <book publisher="Addison-Wesley" name="Refactoring to Patterns" />
                                <book publisher="O'Reilly Media" name="The Cathedral & the Bazaar" />
                                <book publisher="O'Reilly Media" name="Unit Test Frameworks" />
                            </books>;
            return list.toXMLString();
        }
    }

}
class Book {
    private var publisher:String;
    private var name:String;

    public function setPublisher(publisher:String):void {
        this.publisher = publisher;
    }

    public function setName(name:String):void {
        this.name = name;
    }

    public function toString():String {
        return "[Book name: " + name + " publisher: " + publisher + "]\n";
    }
}




[ X ]Почему по-английски?
Содержимое Справочника ActionScript 3.0 отображается на английском языке

Не все части Справочника ActionScript 3.0 переводятся на все языки. Если какой-то текстовый элемент не переведен, он отображается на английском языке. Например, компонент ga.controls.HelpBox не переведен ни на один из языков. Это значит, что в русской версии справки компонент ga.controls.HelpBox будет отображаться на английском языке.