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

QName  - AS3

ПакетВерхний уровень
Классpublic final class QName
НаследованиеQName Inheritance Object

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

Объекты QName представляют полные имена элементов и атрибутов XML. У каждого объекта QName существует локальное имя и унифицированный идентификатор ресурса пространства имен (URI). Если в качестве значения пространства имен выбрано null, объект QName совпадает с любым пространством имен. Создайте с помощью конструктора QName новый объект QName, который либо является копией другого объекта QName либо представляет собой новый объект QName, для которого параметр uri берется из объекта Namespace, а параметр localName - из объекта QName.

Применяя методы, относящиеся к E4X, можно использовать поочередно строки и объекты QName. Методы E4X представлены в классах QName, Namespace, XML и XMLList. Эти методы принимают как строки, так и объекты QName. Эта взаимозаменяемость проявляется, например, в том, как поддержка пространства имен обрабатывает метод XML.child().

В классе QName (а также в классах XML, XMLList и Namespace) реализованы мощные стандарты обработки XML, определенные в языке ECMAScript для спецификации XML E4X (ECMA-357, второе издание).

Результаты оценки с помощью классифицированного идентификатора записываются в объект QName. Если объект QName элемента XML задается без указания пространства имен, свойству uri связанного объекта QName присваивается значение глобального пространства имен по умолчанию. Если объект QName атрибута XML задается без указания пространства имен, свойству uri присваивается пустая строка.

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

Дополнительно

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



Общедоступные свойства
 СвойствоОпределено
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
  localName : String
[только для чтения] Локальное имя объекта QName.
QName
  uri : String
[только для чтения] Унифицированный идентификатор ресурса (URI-адрес) объекта QName.
QName
Общедоступные методы
 МетодОпределено
  
QName(qname:QName)
Создает объект QName, который является копией другого объекта QName.
QName
  
QName(uri:Namespace, localName:QName)
Создает объект QName с URI из объекта Namespace и свойством localName из объекта QName.
QName
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
 Inherited
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали.
Object
  
Возвращает строку, составленную из URI и локального имени для объекта QName, разделенных символами «::».
QName
  
Возвращает объект QName.
QName
Сведения о свойстве

localName

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

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

Локальное имя объекта QName.



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

uri

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

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

Унифицированный идентификатор ресурса (URI-адрес) объекта QName.



Реализация
    public function get uri():String
Сведения о конструкторе

QName

()Конструктор
public function QName(qname:QName)

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

Создает объект QName, который является копией другого объекта QName. Если переданный конструктору параметр является объектом QName, создается копия объекта QName. Если параметр не является объектом QName, то он преобразуется в строку и присваивается свойству localName нового экземпляра QName. Если параметр undefined (не определен) или не указан, создается новый объект QName, где для свойства localName выбрана пустая строка.

Примечание. В этом классе показаны две записи конструктора, поскольку каждая из них поддерживает разные параметры. Режим работы конструктора меняется в зависимости от типа и количества переданных параметров (см. описание в записях). ActionScript 3.0 не поддерживает переопределение метода или конструктора.

Параметры
qname:QName — Копируемый объект QName. Объекты других типов преобразуются в строки, которые присваиваются свойству localName нового объекта QName.

QName

()Конструктор 
public function QName(uri:Namespace, localName:QName)

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

Создает объект QName с URI из объекта Namespace и свойством localName из объекта QName. Если любой из параметров не относится к ожидаемому типу данных, то он преобразуется в строку и присваивается соответствующему свойству нового объекта QName. Например, если оба параметра представляют собой строки, возвращается новый объект QName. При этом свойство uri устанавливается для первого параметра, а свойство localName — для второго параметра. Иными словами, следующие перестановки наряду со многими другими являются действительными формами конструктора:

QName (uri:Namespace, localName:String);
QName (uri:String, localName: QName);
QName (uri:String, localName: String);

Если значение null передается для параметра uri, свойство uri нового объекта QName получает значение null.

Примечание. В этом классе показаны две записи конструктора, поскольку каждая из них поддерживает разные параметры. Режим работы конструктора меняется в зависимости от типа и количества переданных параметров (см. описание в записях). ActionScript 3.0 не поддерживает переопределение метода или конструктора.

Параметры
uri:Namespace — Объект Namespace, из которого копируется значение uri. Параметр любого другого типа преобразуется в строку.
 
localName:QName — Объект QName, из которого копируется значение localName. Параметр любого другого типа преобразуется в строку.
Сведения о методе

toString

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

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

Возвращает строку, составленную из URI и локального имени для объекта QName, разделенных символами «::».

Формат зависит от свойства uri объекта QName:

If uri == "" 
		toString returns localName
	else if uri == null
		toString returns *::localName 
	else
		toString returns uri::localName

Возвращает
String — Полное имя в виде строки.

valueOf

()метод 
AS3 function valueOf():QName

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

Возвращает объект QName.

Возвращает
QName — Элементарное значение экземпляра QName.
QNameExample.as

В следующем примере показан способ создания экземпляра QName и его применения для выбора элементов XML. Демонстрируются два метода использования QName:
  1. Создание экземпляра пространства имен и последующее использование его в качестве входных данных для конструктора QName. Этот подход является наилучшим, если необходимо позднее воспользоваться свойством Namespace.prefix в других целях.
  2. Создание экземпляра QName с помощью простого строчного значения параметра uri в конструкторе QName.

Этот код выполняет следующие функции:

  1. Определяет переменную XML с именем rssXML.
  2. Создает новый объект Namespace с префиксом dc.
  3. Создает новый объект QName с помощью объекта Namespace, которому присваивается локальное имя creator.
  4. Вызывает метод showDescendants(), использующий метод XML.descendants() для получения экземпляра XMLList, в котором содержатся все элементы-потомки, классифицированное имя которых соответствует данному экземпляру QName.
  5. Показывает классифицированное имя и текстовое значение каждого элемента в списке с помощью цикла for each.
  6. Создает еще один объект QName, применяя строковое значение параметра uri и локальное имя date.
  7. Снова вызывает метод showDescendants() для показа имени и текстового значения элементов-потомков.
package
{
    import flash.display.Sprite;
    
    public class QNameExample extends Sprite
    {
        public function QNameExample()
        {
            var rssXML:XML =  <rdf:RDF
              xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
              xmlns="http://purl.org/rss/1.0/"
              xmlns:dc="http://purl.org/dc/elements/1.1/">
              <channel rdf:about="http://www.xml.com/cs/xml/query/q/19">
                <title>Test RSS</title>
                <link>http://www.adobe.com/</link>
                <description>This is a test RSS document.</description>
                <language>en-us</language>
                <items>
                  <rdf:Seq>
                <rdf:li rdf:resource="http://www.adobe.com/devnet/flash/"/>
                <rdf:li rdf:resource="http://www.adobe.com/devnet/flex/"/>
                  </rdf:Seq>
                </items>
              </channel>
              <item rdf:about="http://www.adobe.com/devnet/flash/">
                <title>Flash Developer Center</title>
                <link>http://www.adobe.com/devnet/flash/</link>
                <description>Welcome to the Flash Developer Center</description>
                <dc:creator>Adobe</dc:creator>
                <dc:date>2005-08-08</dc:date>    
              </item>
              <item rdf:about="http://www.adobe.com/devnet/flex/">
                <title>Flex Developer Center</title>
                <link>http://www.adobe.com/devnet/flex/</link>
                <description>Welcome to the Flex Developer Center</description>
                <dc:creator>Adobe</dc:creator>
                <dc:date>2005-10-16</dc:date>    
              </item>
            </rdf:RDF>;
            
            var dcNamespace:Namespace = new Namespace("dc", "http://purl.org/dc/elements/1.1/");
            var creatorQName:QName = new QName(dcNamespace, "creator");
            trace(creatorQName.uri); // http://purl.org/dc/elements/1.1/
            trace(creatorQName.localName); // creator
            
            showDescendants(rssXML, creatorQName);
            
            var dateQName:QName = new QName("http://purl.org/dc/elements/1.1/", "date");
            trace(dateQName.uri); // http://purl.org/dc/elements/1.1/
            trace(dateQName.localName); // date
            
            showDescendants(rssXML, dateQName);
        }
        
        public function showDescendants(xmlData:XML, qualifiedName:QName):void
        {
            var decendantList:XMLList = xmlData.descendants(qualifiedName);
            
            for each (var element:XML in decendantList)
            {
                trace(element.name()); // the fully qualified name, 
                                       // like "http://purl.org/dc/elements/1.1/::creator"
                trace(element); // the simple text value of each element, like "Adobe"
            }                
        }
    }
}




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

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