Руководство по actionscript. часть 3, стр. 056
:
Рассмотрим код для обхода дерева, который преобразует имена всех элементов и атрибутов из предыдущего XML-фрагмента в нижний регистр:
for each (var chi1d:XML in message..*) { // Если узел является элементом… if (child. nodeKind( ) == «element») { // …преобразуем его имя в нижний регистр, child. setName(child. named ).toString( ).toLowerCase( )): // Если узел имеет атрибуты, преобразуем их имена в нижний регистр, for each (var attribute:XML in child.@*) { attribute. setName(attribute. name( ).toString( ).toLowerCase( )):
}
}
}
Вот новый фрагмент XML, полученный в результате выполнения предыдущего кода, — все имена тегов и атрибутов преобразованы в нижний регистр.
HEY!I just wanted to say that your site is so cool!!
You should Visit mine sometime.
На протяжении всей этой главы мы знакомились со способами обращения к содержимому существующих XML-документов. Теперь рассмотрим, как создавать или изменять это содержимое.
Изменение или создание нового содержимого XML
В расширении Е4Х наиболее распространенные операции добавления и изменения существующего экземпляра класса XML могут быть выполнены с помощью обычных операторов присваивания. Тем не менее результаты операторов присваивания расширения Е4Х отличаются и зависят от типа присваиваемого значения и типа целевого объекта присваивания. Рассмотрим различные сценарии по отдельности.
Изменение содержимого элемента
Чтобы изменить содержимое XML-элемента, мы присваиваем ему любое значение, не являющееся объектом XMLList или XML. Это значение преобразуется в строку и заменяет текущее содержимое элемента. Вспомним наш фрагмент :
var novel:XML =
Ulysses
Чтобы изменить содержимое элемента со строки «Ulysses» на строку «The Sun Also Rises», мы используем следующий код:
novel. TITLEC0] = «The Sun Also Rises»:
Однако не забывайте, что расширение Е4Х по возможности позволяет интерпретировать объект XMLList в виде объекта XML. Поскольку объект XMLList, возвращаемый выражением novel. TITLE, имеет один-единственный экземпляр класса XML, мы можем использовать следующий более удобный код:
novel. TITLE = «The Sun Also Rises»; // Опущено [0]
Однако если бы объект XMLList, возвращаемый выражением novel. TITLE, содержал несколько элементов, операция присваивания имела бы другой результат, описываемый далее, в подразд. «Присваивание значений объекту XMLList» разд. «Изменение или создание нового содержимого XML».