패키지최상위
클래스public final dynamic class XML
상속XML Inheritance Object

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 클래스에는 XML 객체를 사용하는 메서드와 속성이 들어 있습니다. XML 클래스는 XMLList, Namespace 및 QName 클래스와 더불어 E4X(ECMAScript for XML) 사양(ECMA-357 버전 2)에 정의된 강력한 XML 처리 표준을 구현합니다.

XML 객체의 내용이 간단한지 복잡한지에 관계없이 XML 객체의 문자열 표현을 반환하려면 toXMLString() 메서드를 사용합니다.

참고: ActionScript 2.0의 XML 클래스 및 관련 클래스는 XMLDocument로 이름이 바뀌었고 flash.xml 패키지로 옮겨졌습니다. 이 클래스는 ActionScript 3.0에 이전 버전과의 호환성을 위해 포함되어 있습니다.

예제를 통해 확인하십시오.

참고 사항

Namespace
QName
XMLList
XML.toXMLString()
ECMAScript for XML (E4X) specification (ECMA-357 edition 2)
XML 객체


Public 속성
 속성다음에 의해 정의됨
 Inheritedconstructor : Object
지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다.
Object
  ignoreComments : Boolean
[static] XML 객체에서 소스 XML 데이터를 파싱할 때 XML 주석을 무시할지 여부를 결정합니다.
XML
  ignoreProcessingInstructions : Boolean
[static] XML 객체에서 소스 XML 데이터를 파싱할 때 XML 처리 명령을 무시할지 여부를 결정합니다.
XML
  ignoreWhitespace : Boolean
[static] 파싱 도중 텍스트 노드의 시작 부분과 끝 부분에 있는 공백 문자를 무시할지 여부를 결정합니다.
XML
  prettyIndent : int
[static] XML.prettyPrinting 속성이 true로 설정된 경우 toString() 및 toXMLString() 메서드에서 적용할 들여쓰기 양을 결정합니다.
XML
  prettyPrinting : Boolean
[static] toString() 및 toXMLString() 메서드에서 일부 태그 사이의 공백을 정규화할지 여부를 결정합니다.
XML
 Inheritedprototype : Object
[static] 클래스 또는 함수 객체의 프로토타입 객체에 대한 참조입니다.
Object
Public 메서드
 메서드다음에 의해 정의됨
  
XML(value:Object)
새 XML 객체를 만듭니다.
XML
  
XML 객체의 범위 내 네임스페이스 집합에 네임스페이스를 추가합니다.
XML
  
지정된 자식을 XML 객체의 속성 끝에 추가합니다.
XML
  
attribute(attributeName:*):XMLList
이름이 특성 이름 매개 변수와 일치하는 특성의 XML 값을 반환합니다.
XML
  
지정된 XML 객체의 특성 값 목록을 반환합니다.
XML
  
child(propertyName:Object):XMLList
XML 객체의 자식을 나열합니다.
XML
  
부모 컨텍스트 내에서 이 XML 객체의 인덱스 위치(0부터 시작)를 식별합니다.
XML
  
XML 객체의 자식을 표시되는 순서대로 나열합니다.
XML
  
XML 주석이 포함된 XML 객체의 속성을 나열합니다.
XML
  
XML 객체를 지정된 값 매개 변수와 비교합니다.
XML
  
copy():XML
지정된 XML 객체의 복사본을 반환합니다.
XML
  
[static] ignoreComments, ignoreProcessingInstructions, ignoreWhitespace, prettyIndent 및 prettyPrinting 속성이 기본값으로 설정된 객체를 반환합니다.
XML
  
지정된 이름 매개 변수가 있는 XML 객체의 모든 자손(자식, 손자, 증손자 등)을 반환합니다.
XML
  
elements(name:Object = *):XMLList
XML 객체의 요소를 나열합니다.
XML
  
XML 객체에 복잡한 내용이 들어 있는지 여부를 확인합니다.
XML
  
객체에 p 매개 변수로 지정된 속성이 있는지 여부를 확인합니다.
XML
  
XML 객체에 간단한 내용이 들어 있는지 여부를 확인합니다.
XML
  
객체의 부모를 기준으로 XML 객체의 네임스페이스를 나열합니다.
XML
  
insertChildAfter(child1:Object, child2:Object):*
이 XML 객체의 자식1 매개 변수 뒤에 지정된 자식2 매개 변수를 삽입하고 결과 객체를 반환합니다.
XML
  
insertChildBefore(child1:Object, child2:Object):*
이 XML 객체의 자식1 매개 변수 앞에 지정된 자식2 매개 변수를 삽입하고 결과 객체를 반환합니다.
XML
 Inherited
Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다.
Object
  
XML 객체의 경우 이 메서드는 항상 정수 1을 반환합니다.
XML
  
XML 객체의 정규화된 이름에서 로컬 이름 부분을 반환합니다.
XML
  
XML 객체의 정규화된 이름을 반환합니다.
XML
  
namespace(prefix:String = null):*
매개 변수를 제공하지 않으면 이 XML 객체의 정규화된 이름에 연결된 네임스페이스를 반환합니다.
XML
  
XML 객체에 연결된 네임스페이스 선언을 부모 컨텍스트에서 나열합니다.
XML
  
노드 유형을 텍스트, 주석, 처리 명령, 특성 또는 요소로 지정합니다.
XML
  
XML 객체와 모든 자손 XML 객체에서 인접한 텍스트 노드를 병합하고 빈 텍스트 노드를 제거합니다.
XML
  
parent():*
XML 객체의 부모를 반환합니다.
XML
  
XML 요소에서 해당 요소의 모든 기존 XML 속성 앞에 지정된 child 객체의 복사본을 삽입합니다.
XML
  
이름 매개 변수를 제공한 경우 XML 객체에서 해당 이름의 처리 명령이 포함된 모든 자식을 나열합니다.
XML
  
p 속성이 XML 객체에 적용되는 for..in 문에서 반복할 수 있는 속성 집합에 포함되는지 여부를 확인합니다.
XML
  
이 객체와 모든 자손에서 지정된 네임스페이스를 제거합니다.
XML
  
replace(propertyName:Object, value:XML):XML
속성 이름 매개 변수로 지정된 속성을 지정된 값 매개 변수로 바꿉니다.
XML
  
XML 객체의 자식 속성을 값 매개 변수에 지정된 XML 속성 집합으로 바꿉니다.
XML
  
XML 객체의 로컬 이름을 지정된 이름 매개 변수로 바꿉니다.
XML
  
XML 객체의 이름을 지정된 정규화된 이름 또는 특성 이름으로 설정합니다.
XML
  
XML 객체에 연결된 네임스페이스를 설정합니다.
XML
 Inherited
루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다.
Object
  
[static] ignoreComments, ignoreProcessingInstructions, ignoreWhitespace, prettyIndent 및 prettyPrinting XML 속성의 값을 설정합니다.
XML
  
[static] ignoreComments, ignoreProcessingInstructions, ignoreWhitespace, prettyIndent 및 prettyPrinting 속성을 검색합니다.
XML
  
XML 텍스트 노드를 나타내는 XML 객체의 모든 XML 속성에 대한 XMLList 객체를 반환합니다.
XML
  
XML 객체의 문자열 표현을 반환합니다.
XML
  
XML 객체의 문자열 표현을 반환합니다.
XML
  
XML 객체를 반환합니다.
XML
속성 정보
ignoreComments속성
ignoreComments:Boolean  [read-write]

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체에서 소스 XML 데이터를 파싱할 때 XML 주석을 무시할지 여부를 결정합니다. 기본적으로는 주석이 무시됩니다(true). XML 주석을 포함하려면 이 속성을 false로 설정합니다. ignoreComments 속성은 XML 파싱 도중에만 사용되며 myXMLObject.child(*).toXMLString() 등의 메서드를 호출할 때는 사용되지 않습니다. 소스 XML에 포함된 주석 노드는 XML 파싱 과정에서 유지되거나 또는 삭제됩니다.


구현
    public static function get ignoreComments():Boolean
    public function set ignoreComments(value:Boolean):void

참고 사항


예제

다음 예제에서는 XML.ignoreCommentsfalsetrue로 설정한 결과를 보여 줍니다.
XML.ignoreComments = false;
var xml1:XML = 
        <foo>
            <!-- comment -->
        </foo>;
trace(xml1.toXMLString()); // <foo><!-- comment --></foo>

XML.ignoreComments = true;
var xml2:XML = 
        <foo>
            <!-- example -->
        </foo>;
trace(xml2.toXMLString()); // <foo/>
ignoreProcessingInstructions속성 
ignoreProcessingInstructions:Boolean  [read-write]

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체에서 소스 XML 데이터를 파싱할 때 XML 처리 명령을 무시할지 여부를 결정합니다. 기본적으로는 처리 명령이 무시됩니다(true). XML 처리 명령을 포함하려면 이 속성을 false로 설정합니다. ignoreProcessingInstructions 속성은 XML 파싱 도중에만 사용되며 myXMLObject.child(*).toXMLString() 등의 메서드를 호출할 때는 사용되지 않습니다. 소스 XML에 포함된 처리 명령 노드는 XML 파싱 과정에서 유지되거나 또는 삭제됩니다.


구현
    public static function get ignoreProcessingInstructions():Boolean
    public function set ignoreProcessingInstructions(value:Boolean):void

참고 사항


예제

다음 예제에서는 XML.ignoreProcessingInstructionsfalsetrue로 설정한 결과를 보여 줍니다.
XML.ignoreProcessingInstructions = false;
var xml1:XML = 
        <foo>
            <?exampleInstruction ?>
        </foo>;
trace(xml1.toXMLString()); // <foo><?exampleInstruction ?></foo>

XML.ignoreProcessingInstructions = true;
var xml2:XML = 
        <foo>
            <?exampleInstruction ?>
        </foo>;
trace(xml2.toXMLString()); // <foo/>
ignoreWhitespace속성 
ignoreWhitespace:Boolean  [read-write]

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

파싱 도중 텍스트 노드의 시작 부분과 끝 부분에 있는 공백 문자를 무시할지 여부를 결정합니다. 기본적으로는 공백 문자가 무시됩니다(true). 텍스트 노드 전체가 공백이고 ignoreWhitespace 속성이 true로 설정된 경우에는 노드가 만들어지지 않습니다. 텍스트 노드의 공백을 표시하려면 ignoreWhitespace 속성을 false로 설정합니다.


구현
    public static function get ignoreWhitespace():Boolean
    public function set ignoreWhitespace(value:Boolean):void

예제

다음 예제에서는 XML.ignoreWhitespacefalsetrue로 설정한 결과를 보여 줍니다.
XML.ignoreWhitespace = false;
var xml1:XML = <foo>    </foo>;
trace(xml1.children().length()); // 1

XML.ignoreWhitespace = true;
var xml2:XML = <foo>    </foo>;
trace(xml2.children().length()); // 0
prettyIndent속성 
prettyIndent:int  [read-write]

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML.prettyPrinting 속성이 true로 설정된 경우 toString()toXMLString() 메서드에서 적용할 들여쓰기 양을 결정합니다. 들여쓰기는 탭 문자가 아닌 공백 문자로 적용됩니다. 기본값은 2입니다.


구현
    public static function get prettyIndent():int
    public function set prettyIndent(value:int):void

참고 사항


예제

다음 예제에서는 정적 속성인 XML.prettyIndent를 설정한 결과를 보여 줍니다.
var xml:XML = <foo><bar/></foo>;
XML.prettyIndent = 0;
trace(xml.toXMLString());

XML.prettyIndent = 1;
trace(xml.toXMLString());

XML.prettyIndent = 2;
trace(xml.toXMLString());
prettyPrinting속성 
prettyPrinting:Boolean  [read-write]

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

toString()toXMLString() 메서드에서 일부 태그 사이의 공백 문자를 정규화할지 여부를 결정합니다. 기본값은 true입니다.


구현
    public static function get prettyPrinting():Boolean
    public function set prettyPrinting(value:Boolean):void

참고 사항


예제

다음 예제에서는 정적 속성인 XML.prettyPrinting를 설정한 결과를 보여 줍니다.
var xml:XML = <foo><bar/></foo>;
XML.prettyPrinting = false;
trace(xml.toXMLString());

XML.prettyPrinting = true;
trace(xml.toXMLString());
생성자 정보
XML()생성자
public function XML(value:Object)

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

새 XML 객체를 만듭니다. XML 클래스의 메서드를 호출하기 전에 생성자를 사용하여 XML 객체를 만들어야 합니다.

XML 객체의 내용이 간단한지 복잡한지부에 관계없이 XML 객체의 문자열 표현을 반환하려면 toXMLString() 메서드를 사용합니다.

매개 변수
value:Object — 최상위 XML() 함수를 사용하여 XML로 변환할 수 있는 객체입니다.

참고 사항

메서드 정보
addNamespace()메서드
AS3 function addNamespace(ns:Object):XML

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 범위 내 네임스페이스 집합에 네임스페이스를 추가합니다. 네임스페이스가 XML 객체의 범위 내 네임스페이스에 이미 있고 접두어가 지정된 매개 변수와 일치하는 경우 기존 네임스페이스의 접두어가 undefined로 설정됩니다. 입력 매개 변수가 Namespace 객체인 경우에는 이 객체가 바로 사용됩니다. 입력 매개 변수가 QName 객체인 경우에는 입력 매개 변수의 URI를 사용하여 새 네임스페이스를 만듭니다. 그렇지 않으면 입력 매개 변수가 문자열로 변환되고 이 문자열을 통해 네임스페이스를 만듭니다.

매개 변수

ns:Object — XML 객체에 추가할 네임스페이스입니다.

반환값
XML — 네임스페이스가 추가된 새 XML 객체입니다.

참고 사항


예제

다음 예제에서는 XML 객체 하나에 정의된 네임스페이스를 사용하고 다른 XML 객체에 적용합니다.
var xml1:XML = <ns:foo xmlns:ns="www.example.com/ns" />;
var nsNamespace:Namespace = xml1.namespace();

var xml2:XML = <bar />;
xml2.addNamespace(nsNamespace);
trace(xml2.toXMLString()); // <bar xmlns:ns="www.example.com/ns"/>
appendChild()메서드 
AS3 function appendChild(child:Object):XML

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

지정된 자식을 XML 객체의 속성 끝에 추가합니다. appendChild() 메서드에는 XML 객체, XMLList 객체 또는 String으로 변환되는 기타 데이터 유형을 전달할 수 있습니다.

XML 노드를 제거하려면 delete(XML) 연산자를 사용합니다.

매개 변수

child:Object — 추가할 XML 객체입니다.

반환값
XML — 결과 XML 객체입니다.

참고 사항


예제

다음 예제에서는 XML 객체의 자식 목록 끝에 새 요소를 추가합니다.
var xml:XML = 
        <body>
            <p>hello</p>
        </body>;
        
xml.appendChild(<p>world</p>);    
trace(xml.p[0].toXMLString()); // <p>hello</p>
trace(xml.p[1].toXMLString()); // <p>world</p>
attribute()메서드 
AS3 function attribute(attributeName:*):XMLList

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

이름이 attributeName 매개 변수와 일치하는 특성의 XML 값을 반환합니다. 특성은 XML 요소 내에 있습니다. 다음 예제에서 <first gender="boy">John</first> 요소에는 이름이 "gender"이고 값이 "boy"인 특성이 있습니다.

attributeName 매개 변수는 모든 데이터 유형이 될 수 있지만 문자열이 가장 일반적으로 사용됩니다. QName 객체가 아닌 다른 객체를 전달하면 attributeName 매개 변수에서는 toString() 메서드를 사용하여 매개 변수를 문자열로 변환합니다.

정규화된 이름 참조가 필요한 경우 QName 객체를 전달해야 합니다. QName 객체는 특성의 정규화된 이름을 정의하는 데 사용할 수 있는 네임스페이스와 로컬 이름을 정의합니다. 따라서 attribute(qname) 호출은 attribute(qname.toString()) 호출과 다릅니다.

매개 변수

attributeName:* — 특성의 이름입니다.

반환값
XMLList — XMLList 객체 또는 빈 XMLList 객체입니다. 특성 값이 정의되지 않은 경우에는 빈 XMLList 객체가 반환됩니다.

참고 사항


예제

다음 예제에서는 attribute() 메서드에 전달된 QName 객체를 보여 줍니다. localName 속성은 attr이고 namespace 속성은 ns입니다.
var xml:XML = <ns:node xmlns:ns = "http://uri" ns:attr = '7' />       
var qn:QName = new QName("http://uri", "attr");
trace(xml.attribute(qn)); // 7

이름이 ActionScript 예약어와 일치하는 특성을 반환하려면 다음 예제와 같이 특성 식별자 연산자(@) 대신 attribute() 메서드를 사용합니다.
var xml:XML = <example class="first" />
trace(xml.attribute("class"));
 
attributes()메서드 
AS3 function attributes():XMLList

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

지정된 XML 객체의 특성 값 목록을 반환합니다. 특성 이름을 반환하려면 attributes() 메서드와 함께 name() 메서드를 사용합니다. 모든 특성의 이름을 반환하려면 @*를 사용합니다.

반환값
XMLList — 특성 값의 목록입니다.

참고 사항


예제

다음 예제에서는 특성 이름을 반환합니다.
var xml:XML=<example id='123' color='blue'/>
trace(xml.attributes()[1].name()); //color

다음 예제에서는 모든 특성의 이름을 반환합니다.
 
var xml:XML = <example id='123' color='blue'/>
var attNamesList:XMLList = xml.@*;

trace(attNamesList is XMLList); // true
trace(attNamesList.length()); // 2

for (var i:int = 0; i < attNamesList.length(); i++)
{ 
    trace(typeof (attNamesList[i])); // xml
    trace(attNamesList[i].nodeKind()); // attribute
    trace(attNamesList[i].name()); // id and color
} 
child()메서드 
AS3 function child(propertyName:Object):XMLList

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 자식을 나열합니다. XML 자식은 XML 요소, 텍스트 노드, 주석 또는 처리 명령입니다.

특정 XML 자식의 내용을 나열하려면 propertyName 매개 변수를 사용합니다. 예를 들어 <first>라는 자식의 내용을 반환하려면 child.name("first")를 사용합니다. 자식의 인덱스 번호를 사용하여 동일한 결과를 얻을 수도 있습니다. 인덱스 번호는 여러 XML 자식으로 구성된 목록에서 자식의 위치를 식별합니다. 예를 들어 name.child(0)은 목록의 첫 번째 자식을 반환합니다.

XML 문서의 모든 자식을 출력하려면 별표(*)를 사용합니다. 예를 들면 doc.child("*")와 같습니다.

자식의 전체 개수를 출력하려면 child() 메서드에 별표(*) 매개 변수를 사용하고 length() 메서드를 사용합니다. 예를 들면 numChildren = doc.child("*").length()와 같습니다.

매개 변수

propertyName:Object — XML 자식의 요소 이름 또는 정수입니다.

반환값
XMLList — 입력 매개 변수와 일치하는 자식 노드의 XMLList 객체입니다.

참고 사항


예제

다음 예제에서는 child() 메서드를 사용하여 지정된 이름의 자식 요소를 식별하는 방법을 보여 줍니다.
var xml:XML = 
        <foo>
            <bar>text1</bar>
            <bar>text2</bar>
        </foo>;
trace(xml.child("bar").length());  // 2
trace(xml.child("bar")[0].toXMLString()); // <bar>text1</bar>
trace(xml.child("bar")[1].toXMLString()); // <bar>text2</bar>
childIndex()메서드 
AS3 function childIndex():int

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

부모 컨텍스트 내에서 이 XML 객체의 인덱스 위치(0부터 시작)를 식별합니다.

반환값
int — 객체의 위치입니다. 양의 정수 또는 -1을 반환합니다.

참고 사항


예제

다음 예제에서는 childIndex() 메서드를 사용하는 방법을 보여 줍니다.
var xml:XML = 
            <foo>
                <bar />
                text
                <bob />
            </foo>;
trace(xml.bar.childIndex()); // 0
trace(xml.bob.childIndex()); // 2
children()메서드 
AS3 function children():XMLList

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 자식을 표시되는 순서대로 나열합니다. XML 자식은 XML 요소, 텍스트 노드, 주석 또는 처리 명령입니다.

반환값
XMLList — XML 객체의 자식이 포함된 XMLList 객체입니다.

참고 사항


예제

다음 예제에서는 children() 메서드를 사용하는 방법을 보여 줍니다.
XML.ignoreComments = false;
XML.ignoreProcessingInstructions = false;
var xml:XML = 
        <foo id="22">
            <bar>44</bar>
            text
            <!-- comment -->
            <?instruction ?>
        </foo>;
trace(xml.children().length()); // 4
trace(xml.children()[0].toXMLString()); // <bar>44</bar>
trace(xml.children()[1].toXMLString()); // text
trace(xml.children()[2].toXMLString()); // <!-- comment -->
trace(xml.children()[3].toXMLString()); // <?instruction ?>
comments()메서드 
AS3 function comments():XMLList

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 주석이 포함된 XML 객체의 속성을 나열합니다.

반환값
XMLList — 주석이 포함된 속성이 들어 있는 XMLList 객체입니다.

참고 사항


예제

다음 예제에서는 comments() 메서드를 사용하는 방법을 보여 줍니다.
XML.ignoreComments = false;
var xml:XML = 
        <foo>
            <!-- example -->
            <!-- example2 -->
        </foo>;
trace(xml.comments().length()); // 2
trace(xml.comments()[1].toXMLString()); // <!-- example2 -->
contains()메서드 
AS3 function contains(value:XML):Boolean

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체를 지정된 value 매개 변수와 비교합니다.

매개 변수

value:XML — 현재 XML 객체와 비교할 값입니다.

반환값
Boolean — XML 객체가 value 매개 변수와 일치하면 true이고, 그렇지 않으면 false입니다.

참고 사항


예제

다음 예제에서는 contains() 메서드를 사용하는 방법을 보여 줍니다.
var xml:XML = 
        <order>
            <item>Rice</item>
            <item>Kung Pao Shrimp</item>
        </order>;
trace(xml.item[0].contains(<item>Rice</item>)); // true
trace(xml.item[1].contains(<item>Kung Pao Shrimp</item>)); // true
trace(xml.item[1].contains(<item>MSG</item>)); // false
copy()메서드 
AS3 function copy():XML

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

지정된 XML 객체의 복사본을 반환합니다. 이 복사본은 노드 트리 전체를 복제한 것입니다. 복사된 XML 객체에는 부모가 없으며 parent() 메서드를 호출하면 null이 반환됩니다.

반환값
XML — 객체의 복사본입니다.

참고 사항


예제

다음 예제에서는 copy() 메서드를 사용하여 XML 객체의 새 인스턴스를 만드는 방법을 보여 줍니다. 복사본을 수정해도 원본은 변경되지 않습니다.
var xml1:XML = <foo />;
var xml2:XML = xml1.copy();
xml2.appendChild(<bar />);
trace(xml1.bar.length()); // 0
trace(xml2.bar.length()); // 1
defaultSettings()메서드 
AS3 static function defaultSettings():Object

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

ignoreComments, ignoreProcessingInstructions, ignoreWhitespace, prettyIndentprettyPrinting 속성이 기본값으로 설정된 객체를 반환합니다. 기본값은 다음과 같습니다.

참고: XML 클래스의 인스턴스에는 이 메서드를 적용하지 마십시오. 이 메서드는 var df:Object = XML.defaultSettings() 코드와 같이 XML에 적용해야 합니다.

반환값
Object — 속성이 기본값으로 설정된 객체입니다.

참고 사항


예제

다음 예제에서는 XML 객체를 설정하기 전에 주석 및 처리 명령을 포함하기 위해 몇 가지 사용자 정의 설정을 적용하는 방법, 다른 XML 객체를 설정하기 전에 기본 설정으로 되돌리는 방법 및 추가 XML 객체를 설정하기 위해 사용자 정의 설정을 다시 설정하는 방법을 보여 줍니다.
XML.ignoreComments = false;
XML.ignoreProcessingInstructions = false;
var customSettings:Object = XML.settings();

var xml1:XML = 
        <foo>
            <!-- comment -->
            <?instruction ?>
        </foo>;
trace(xml1.toXMLString());
//    <foo>
//        <!-- comment -->
//         <?instruction ?>
//    </foo>

XML.setSettings(XML.defaultSettings());
var xml2:XML = 
        <foo>
            <!-- comment -->
            <?instruction ?>
        </foo>;
trace(xml2.toXMLString());
descendants()메서드 
AS3 function descendants(name:Object = *):XMLList

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

지정된 name 매개 변수가 있는 XML 객체의 모든 자손(자식, 손자, 증손자 등)을 반환합니다. name 매개 변수는 선택적입니다. name 매개 변수는 QName 객체, String 데이터 유형 또는 나중에 String 데이터 유형으로 변환되는 기타 모든 데이터 유형이 될 수 있습니다.

모든 자손을 반환하려면 "*" 매개 변수를 사용합니다. 매개 변수를 전달하지 않으면 "*" 문자열이 전달되고 XML 객체의 모든 자손이 반환됩니다.

매개 변수

name:Object (default = *) — 비교할 요소 이름입니다.

반환값
XMLList — 일치하는 자손이 포함된 XMLList 객체입니다. 자손이 없으면 빈 XMLList 객체가 반환됩니다.

참고 사항


예제

이름이 ActionScript 예약어와 일치하는 자손을 반환하려면 다음 예제와 같이 자손 연산자(..) 대신 descendants() 메서드를 사용합니다.
var xml:XML = 
  <enrollees>
    <student id="239">
        <class name="Algebra" />
        <class name="Spanish 2"/>
    </student>
    <student id="206">
        <class name="Trigonometry" />
        <class name="Spanish 2" />
    </student>
  </enrollees>
trace(xml.descendants("class")); 

다음 예제에서는 descendants() 메서드를 사용하여 자식, 손자 등의 모든 자손 객체가 포함된 XMLList 객체를 반환하는 방법을 보여 줍니다.
XML.ignoreComments = false;
var xml:XML = 
        <body>
            <!-- comment -->
            text1
            <a>
                <b>text2</b>
            </a>
        </body>;
trace(xml.descendants("*").length()); // 5
trace(xml.descendants("*")[0]); // // <!-- comment -->
trace(xml.descendants("*")[1].toXMLString()); // text1
trace(xml.descendants("a").toXMLString()); // <a><b>text2</b></a>
trace(xml.descendants("b").toXMLString()); // <b>text2</b>
elements()메서드 
AS3 function elements(name:Object = *):XMLList

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 요소를 나열합니다. 요소는 <first></first>와 같이 시작 태그와 끝 태그로 구성됩니다. name 매개 변수는 선택적입니다. name 매개 변수는 QName 객체, String 데이터 유형 또는 나중에 String 데이터 유형으로 변환되는 기타 모든 데이터 유형이 될 수 있습니다. 특정 요소를 나열하려면 name 매개 변수를 사용합니다. 예를 들어 <first>John</first>에서 요소 "first"는 "John"을 반환합니다.

모든 요소를 나열하려면 매개 변수로 별표(*)를 사용합니다. 또한 별표는 기본 매개 변수입니다.

요소의 전체 개수를 출력하려면 별표 매개 변수와 함께 length() 메서드를 사용합니다. 예를 들면 numElement = addressbook.elements("*").length()와 같습니다.

매개 변수

name:Object (default = *) — 요소의 이름입니다. 요소의 이름은 각괄호 사이에 포함됩니다. 예를 들어 <first></first>에서 name은 "first"입니다.

반환값
XMLList — 요소의 내용이 포함된 XMLList 객체입니다. 요소의 내용은 시작 태그와 끝 태그 사이에 들어 있습니다. 별표(*)를 사용하여 모든 요소를 호출하면 요소의 태그와 내용이 모두 반환됩니다.

참고 사항


예제

다음 예제에서는 elements() 메서드가 주석, 텍스트 속성 또는 처리 명령을 제외하고 요소만 포함된 목록을 반환하는 것을 보여 줍니다.
var xml:XML = 
        <foo>
            <!-- comment -->
            <?instruction ?>
            text
            <a>1</a>
            <b>2</b>
        </foo>;
trace(xml.elements("*").length()); // 2
trace(xml.elements("*")[0].toXMLString()); // <a>1</a>
trace(xml.elements("b").length()); // 1
trace(xml.elements("b")[0].toXMLString()); // <b>2</b>

이름이 ActionScript 예약어와 일치하는 요소를 반환하려면 다음 예제와 같이 XML 도트 연산자(.) 대신 elements() 메서드를 사용합니다.
var xml:XML =
 <student id="206">
    <class name="Trigonometry" />
    <class name="Spanish 2" />
 </student>
trace(xml.elements("class")); 
hasComplexContent()메서드 
AS3 function hasComplexContent():Boolean

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체에 복잡한 내용이 들어 있는지 여부를 확인합니다. XML 객체에 자식 요소가 있으면 복잡한 내용이 들어 있는 것입니다. 특성, 주석, 처리 명령 및 텍스트 노드를 나타내는 XML 객체에는 복잡한 내용이 없습니다. 그러나 이러한 항목이 포함된 객체는 자식 요소가 있는 경우 복잡한 내용이 들어 있는 것으로 간주됩니다.

반환값
Boolean — XML 객체에 복잡한 내용이 들어 있으면 true이고, 그렇지 않으면 false입니다.

참고 사항


예제

다음 예제에서는 간단한 내용이 들어 있는 a라는 속성 하나와 복잡한 내용이 들어 있는 a라는 속성 하나가 포함된 XML 객체를 보여 줍니다.
var xml:XML = 
        <foo>
            <a>
                text
            </a>
            <a>
                <b/>
            </a>
        </foo>;
trace(xml.a[0].hasComplexContent()); // false
trace(xml.a[1].hasComplexContent()); // true

trace(xml.a[0].hasSimpleContent()); // true
trace(xml.a[1].hasSimpleContent()); // false
hasOwnProperty()메서드 
AS3 function hasOwnProperty(p:String):Boolean

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

객체에 p 매개 변수로 지정된 속성이 있는지 여부를 확인합니다.

매개 변수

p:String — 비교할 속성입니다.

반환값
Boolean — 속성이 있으면 true이고 그렇지 않으면 false입니다.

참고 사항


예제

다음 예제에서는 hasOwnProperty() 메서드를 사용하여 속성(b)이 있는지 확인한 후 이 속성을 사용하는 표현식(b == "11")을 평가하는 방법을 보여 줍니다.
var xml:XML = 
        <foo>
            <a />
            <a>
                <b>10</b>
            </a>
            <a>
                <b>11</b>
            </a>
        </foo>;
trace(xml.a.(hasOwnProperty("b") && b == "11")); 
이 예제의 마지막 행이 다음과 같으면 a라는 첫 번째 요소에 b라는 속성이 없으므로 예외가 발생합니다.

trace(xml.a.(b == "11"));


다음 예제에서는 hasOwnProperty() 메서드를 사용하여 속성(item)이 있는지 확인한 후 이 속성을 사용하는 표현식(item.contains("toothbrush"))을 평가하는 방법을 보여 줍니다.
var xml:XML = 
        <orders>
            <order id='1'>
                <item>toothbrush</item>
                <item>toothpaste</item>
            </order>
            <order>
                <returnItem>shoe polish</returnItem>
            </order>
        </orders>;
trace(xml.order.(hasOwnProperty("item") && item.contains("toothbrush"))); 
hasSimpleContent()메서드 
AS3 function hasSimpleContent():Boolean

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체에 간단한 내용이 들어 있는지 여부를 확인합니다. XML 객체가 텍스트 노드, 특성 노드 또는 자식 요소가 없는 XML 요소를 나타내는 경우에는 간단한 내용이 들어 있는 것으로 간주됩니다. 주석 및 처리 명령을 나타내는 XML 객체는 간단한 내용이 들어 있지 않은 것으로 간주됩니다.

반환값
Boolean — XML 객체에 간단한 내용이 들어 있으면 true이고, 그렇지 않으면 false입니다.

참고 사항


예제

다음 예제에서는 간단한 내용이 들어 있는 a라는 속성 하나와 복잡한 내용이 들어 있는 a라는 속성 하나가 포함된 XML 객체를 보여 줍니다.
var xml:XML = 
        <foo>
            <a>
                text
            </a>
            <a>
                <b/>
            </a>
        </foo>;
trace(xml.a[0].hasComplexContent()); // false
trace(xml.a[1].hasComplexContent()); // true

trace(xml.a[0].hasSimpleContent()); // true
trace(xml.a[1].hasSimpleContent()); // false
inScopeNamespaces()메서드 
AS3 function inScopeNamespaces():Array

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

객체의 부모를 기준으로 XML 객체의 네임스페이스를 나열합니다.

반환값
Array — Namespace 객체의 배열입니다.

참고 사항

insertChildAfter()메서드 
AS3 function insertChildAfter(child1:Object, child2:Object):*

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

이 XML 객체의 child1 매개 변수 뒤에 지정된 child2 매개 변수를 삽입하고 결과 객체를 반환합니다. child1 매개 변수가 null이면 child2의 내용이 XML 객체의 모든 자식 앞에 삽입됩니다. 즉, 이 매개 변수 앞에 어떠한 항목도 놓이지 않습니다. child1을 제공했지만 XML 객체에 이 자식이 없는 경우 XML 객체가 수정되지 않고 undefined가 반환됩니다.

텍스트, 특성, 주석, 처리 명령 등의 요소가 아닌 XML 자식에 이 메서드를 호출하면 undefined가 반환됩니다.

XML 노드를 제거하려면 delete(XML) 연산자를 사용합니다.

매개 변수

child1:Object — 소스 객체에서 child2 앞에 삽입할 객체입니다.
 
child2:Object — 삽입할 객체입니다.

반환값
* — 결과 XML 객체 또는 undefined입니다.

참고 사항


예제

다음 예제에서는 XML 객체의 자식 요소 끝에 요소를 추가합니다.
var xml:XML = 
        <menu>
            <item>burger</item>
            <item>soda</item>
        </menu>;
xml.insertChildAfter(xml.item[0], <saleItem>fries</saleItem>);
trace(xml);
trace() 출력은 다음과 같습니다.
<menu> <item>burger</item> <saleItem>fries</saleItem> <item>soda</item> </menu>
insertChildBefore()메서드 
AS3 function insertChildBefore(child1:Object, child2:Object):*

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

이 XML 객체의 child1 매개 변수 앞에 지정된 child2 매개 변수를 삽입하고 결과 객체를 반환합니다. child1 매개 변수가 null이면 child2의 내용이 XML 객체의 모든 자식 뒤에 삽입됩니다. 즉, 이 매개 변수 뒤에 어떠한 항목도 놓이지 않습니다. child1을 제공했지만 XML 객체에 이 자식이 없는 경우 XML 객체가 수정되지 않고 undefined가 반환됩니다.

텍스트, 특성, 주석, 처리 명령 등의 요소가 아닌 XML 자식에 이 메서드를 호출하면 undefined가 반환됩니다.

XML 노드를 제거하려면 delete(XML) 연산자를 사용합니다.

매개 변수

child1:Object — 소스 객체에서 child2 뒤에 삽입할 객체입니다.
 
child2:Object — 삽입할 객체입니다.

반환값
* — 결과 XML 객체 또는 undefined입니다.

참고 사항


예제

다음 예제에서는 XML 객체의 자식 요소 끝에 요소를 추가합니다.
var xml:XML = 
        <menu>
            <item>burger</item>
            <item>soda</item>
        </menu>;
xml.insertChildBefore(xml.bar[0], <saleItem>fries</saleItem>);
trace(xml);
trace() 출력은 다음과 같습니다.
<menu> <saleItem>fries</saleItem> <item>burger</item> <item>soda</item> </menu>
length()메서드 
AS3 function length():int

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 경우 이 메서드는 항상 정수 1을 반환합니다. XMLList 객체에 값이 하나만 포함된 경우 XMLList 클래스의 length() 메서드는 1을 반환합니다.

반환값
int — 모든 XML 객체에 대해 항상 1을 반환합니다.

참고 사항

localName()메서드 
AS3 function localName():Object

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 정규화된 이름에서 로컬 이름 부분을 반환합니다.

반환값
Object — 로컬 이름을 나타내는 String 또는 null입니다.

참고 사항


예제

다음 예제에서는 localName() 메서드를 사용하는 방법을 보여 줍니다.
var xml:XML = 
        <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
            soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

                        <soap:Body xmlns:wx = "http://example.com/weather">
                <wx:forecast>
                    <wx:city>Quito</wx:city>
                </wx:forecast>
            </soap:Body>
        </soap:Envelope>;
        
trace(xml.localName()); // Envelope
name()메서드 
AS3 function name():Object

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 정규화된 이름을 반환합니다.

반환값
Object — 정규화된 이름을 나타내는 QName 또는 null입니다.

참고 사항


예제

다음 예제에서는 name() 메서드를 사용하여 XML 객체의 정규화된 이름을 얻는 방법을 보여 줍니다.
var xml:XML = 
        <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
            soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

                        <soap:Body xmlns:wx = "http://example.com/weather">
                <wx:forecast>
                    <wx:city>Quito</wx:city>
                </wx:forecast>
            </soap:Body>
        </soap:Envelope>;
        
trace(xml.name().localName); // Envelope
trace(xml.name().uri); // "http://www.w3.org/2001/12/soap-envelope"

다음 예제에서는 XML 속성, 텍스트 요소 및 특성에서 호출된 name() 메서드를 사용하는 방법을 보여 줍니다.
var xml:XML = 
        <foo x="15" y="22">
            text
        </foo>;
        
trace(xml.name().localName); // foo
trace(xml.name().uri == ""); // true
trace(xml.children()[0]); // text
trace(xml.children()[0].name()); // null
trace(xml.attributes()[0]); // 15
trace(xml.attributes()[0].name()); // x
namespace()메서드 
AS3 function namespace(prefix:String = null):*

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

매개 변수를 제공하지 않으면 이 XML 객체의 정규화된 이름에 연결된 네임스페이스를 반환합니다. prefix 매개 변수를 지정하면 XML 객체의 범위에 있고 prefix 매개 변수와 일치하는 네임스페이스가 반환됩니다. 일치하는 네임스페이스가 없으면 undefined가 반환됩니다.

매개 변수

prefix:String (default = null) — 비교할 접두어입니다.

반환값
*null, undefined 또는 네임스페이스를 반환합니다.

참고 사항


예제

다음 예제에서는 namespace() 메서드를 사용하여 XML 객체의 네임스페이스를 가져와서 soap라는 Namespace 객체에 할당한 다음 xml 객체(xml.soap::Body[0])의 속성을 식별하는 방법을 보여 줍니다.
var xml:XML = 
        <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
            soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

                        <soap:Body xmlns:wx = "http://example.com/weather">
                <wx:forecast>
                    <wx:city>Quito</wx:city>
                </wx:forecast>
            </soap:Body>
        </soap:Envelope>;
        
var soap:Namespace = xml.namespace();
trace(soap.prefix); // soap
trace(soap.uri); // http://www.w3.org/2001/12/soap-envelope

var body:XML = xml.soap::Body[0];
trace(body.namespace().prefix); // soap
trace(xml.namespace().uri); // http://www.w3.org/2001/12/soap-envelope
trace(body.namespace("wx").uri); // "http://example.com/weather"

다음 예제에서는 namespace() 메서드를 사용하여 노드의 기본 네임스페이스 및 특정 접두어("dc")의 네임스페이스를 가져옵니다.
var xml:XML = 
        <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
            xmlns:dc="http://purl.org/dc/elements/1.1/" 
            xmlns="http://purl.org/rss/1.0/">
                <!-- ... -->
        </rdf:RDF>;
                    
trace(xml.namespace()); // http://www.w3.org/1999/02/22-rdf-syntax-ns#
trace(xml.namespace("dc")); // http://purl.org/dc/elements/1.1/
trace(xml.namespace("foo")); // undefined
namespaceDeclarations()메서드 
AS3 function namespaceDeclarations():Array

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체에 연결된 네임스페이스 선언을 부모 컨텍스트에서 나열합니다.

반환값
Array — Namespace 객체의 배열입니다.

참고 사항


예제

다음 예제에서는 XML 객체의 네임스페이스 선언을 출력합니다.
var xml:XML = 
        <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
            xmlns:dc="http://purl.org/dc/elements/1.1/" 
            xmlns="http://purl.org/rss/1.0/">

            <!-- ... -->
            
        </rdf:RDF>;
                    
for (var i:uint = 0; i < xml.namespaceDeclarations().length; i++) {
    var ns:Namespace = xml.namespaceDeclarations()[i]; 
    var prefix:String = ns.prefix;
    if (prefix == "") {
        prefix = "(default)";
    }
    trace(prefix + ":" , ns.uri);
}
trace() 출력은 다음과 같습니다.
rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# dc: http://purl.org/dc/elements/1.1/ (default): http://purl.org/rss/1.0/
nodeKind()메서드 
AS3 function nodeKind():String

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

노드 유형을 텍스트, 주석, 처리 명령, 특성 또는 요소로 지정합니다.

반환값
String — 사용되는 노드 유형입니다.

참고 사항


예제

다음 예제에서는 다섯 가지 노드 유형을 모두 추적합니다.
XML.ignoreComments = false;
XML.ignoreProcessingInstructions = false;

var xml:XML = 
    <example id="10">
        <!-- this is a comment -->
        <?test this is a pi ?>
        and some text
    </example>;

trace(xml.nodeKind()); // element
trace(xml.children()[0].nodeKind()); // comment
trace(xml.children()[1].nodeKind()); // processing-instruction
trace(xml.children()[2].nodeKind()); // text
trace(xml.@id[0].nodeKind()); // attribute
normalize()메서드 
AS3 function normalize():XML

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체와 모든 자손 XML 객체에서 인접한 텍스트 노드를 병합하고 빈 텍스트 노드를 제거합니다.

반환값
XML — 정규화된 결과 XML 객체입니다.

참고 사항


예제

다음 예제에서는 normalize() 메서드를 호출한 결과를 보여 줍니다.
var xml:XML = <body></body>;
xml.appendChild("hello");
xml.appendChild(" world");
trace(xml.children().length()); // 2
xml.normalize();
trace(xml.children().length()); // 1
parent()메서드 
AS3 function parent():*

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 부모를 반환합니다. XML 객체에 부모가 없으면 undefined가 반환됩니다.

반환값
* — 부모 XML 객체입니다. String 또는 null을 반환합니다.

참고 사항


예제

다음 예제에서는 parent() 메서드를 사용하여 XML 구조에서 특정 요소의 부모 요소를 식별합니다.
var xml:XML = 
    <body>
        <p id="p1">Hello</p>
        <p id="p2">Test:
            <ul>
                <li>1</li>
                <li>2</li>
            </ul>
        </p>
    </body>;
var node:XML = xml.p.ul.(li.contains("1"))[0]; // == <ul> ... </ul>
trace(node.parent().@id); // p2
prependChild()메서드 
AS3 function prependChild(value:Object):XML

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 요소에서 해당 요소의 모든 기존 XML 속성 앞에 지정된 child 객체의 복사본을 삽입합니다.

XML 노드를 제거하려면 delete(XML) 연산자를 사용합니다.

매개 변수

value:Object — 삽입할 객체입니다.

반환값
XML — 결과 XML 객체입니다.

참고 사항


예제

다음 예제에서는 prependChild() 메서드를 사용하여 XML 객체 자식 목록 맨 앞에 요소를 추가합니다.
var xml:XML = 
        <body>
            <p>hello</p>
        </body>;
        
xml.prependChild(<p>world</p>);    
trace(xml.p[0].toXMLString()); // <p>world</p>
trace(xml.p[1].toXMLString()); // <p>hello</p>
processingInstructions()메서드 
AS3 function processingInstructions(name:String = "*"):XMLList

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

name 매개 변수를 제공한 경우 XML 객체에서 해당 name의 처리 명령이 포함된 모든 자식을 나열합니다. 매개 변수를 제공하지 않은 경우 이 메서드는 XML 객체에서 처리 명령이 하나라도 포함된 모든 자식을 나열합니다.

매개 변수

name:String (default = "*") — 비교할 처리 명령의 이름입니다.

반환값
XMLList — 일치하는 자식 객체의 목록입니다.

참고 사항


예제

다음 예제에서는 processingInstructions() 메서드를 사용하여 XML 객체의 처리 명령으로 구성된 배열을 가져옵니다.
XML.ignoreProcessingInstructions = false;
var xml:XML =
    <body>
            foo
            <?xml-stylesheet href="headlines.css" type="text/css" ?>
            <?instructionX ?>
            
    </body>;

trace(xml.processingInstructions().length()); // 2
trace(xml.processingInstructions()[0].name()); // xml-stylesheet
propertyIsEnumerable()메서드 
AS3 function propertyIsEnumerable(p:String):Boolean

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

p 속성이 XML 객체에 적용되는 for..in 문에서 반복할 수 있는 속성 집합에 포함되는지 여부를 확인합니다. toString(p) == "0"인 경우에만 true를 반환합니다.

매개 변수

p:String — 확인할 속성입니다.

반환값
Booleanfor..in 문에서 속성을 반복할 수 있으면 true이고, 그렇지 않으면 false입니다.

참고 사항


예제

다음 예제에서는 XML 객체에 대해 propertyNameIsEnumerable() 메서드가 true(값이 0인 경우) 값을 반환하고, XMLList 객체의 경우에는 XMLList 객체의 유효한 각 인덱스 값에 대해 true임을 보여 줍니다.
var xml:XML = 
        <body>
             <p>Hello</p>
               <p>World</p>
        </body>;

trace(xml.propertyIsEnumerable(0)); // true
trace(xml.propertyIsEnumerable(1)); // false

for (var propertyName:String in xml) {
    trace(xml[propertyName]);
}

var list:XMLList = xml.p;
trace(list.propertyIsEnumerable(0)); // true
trace(list.propertyIsEnumerable(1)); // true
trace(list.propertyIsEnumerable(2)); // false

for (var propertyName:String in list) { 
    trace(list[propertyName]);
}
removeNamespace()메서드 
AS3 function removeNamespace(ns:Namespace):XML

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

이 객체와 모든 자손에서 지정된 네임스페이스를 제거합니다. 네임스페이스가 객체의 정규화된 이름이나 객체 특성의 정규화된 이름에서 참조되는 경우 removeNamespaces() 메서드는 네임스페이스를 제거하지 않습니다.

매개 변수

ns:Namespace — 제거할 네임스페이스입니다.

반환값
XML — 결과 XML 객체의 복사본입니다.

참고 사항


예제

다음 예제에서는 XML 객체에서 네임스페이스 선언을 제거하는 방법을 보여 줍니다.
var xml:XML = 
    <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
        xmlns:dc="http://purl.org/dc/elements/1.1/" 
        xmlns="http://purl.org/rss/1.0/">
    
        <!-- ... -->
        
    </rdf:RDF>;

trace(xml.namespaceDeclarations().length); // 3
trace(xml.namespaceDeclarations()[0] is String); // 
var dc:Namespace = xml.namespace("dc");
xml.removeNamespace(dc);
trace(xml.namespaceDeclarations().length); // 2
replace()메서드 
AS3 function replace(propertyName:Object, value:XML):XML

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

propertyName 매개 변수로 지정된 속성을 지정된 value 매개 변수로 바꿉니다. propertyName과 일치하는 속성이 없으면 XML 객체가 수정되지 않습니다.

매개 변수

propertyName:Object — 숫자 값, XML 요소 집합의 정규화되지 않은 이름, XML 요소 집합의 정규화된 이름 또는 별표 와일드카드("*")가 될 수 있습니다. 기본 네임스페이스에서 XML 요소를 식별하려면 정규화되지 않은 이름을 사용합니다.
 
value:XML — 대체 값으로, XML 객체, XMLList 객체 또는 toString()으로 변환할 수 있는 모든 값이 될 수 있습니다.

반환값
XML — 일치하는 속성을 바꾼 결과 XML 객체입니다.

참고 사항


예제

다음 예제에서는 정수를 첫 번째 매개 변수로 사용하여 replace() 메서드를 호출하는 방법을 보여 줍니다.
var xml:XML = 
    <body>
        <p>Hello</p>
        <p>World</p>
        <hr/>
    </body>;

xml.replace(1, <p>Bob</p>);
trace(xml);
다음은 trace() 출력 결과입니다.
<body> <p>Hello</p> <p>Bob</p> <hr/> </body>

다음 예제에서는 문자열을 첫 번째 매개 변수로 사용하여 replace() 매개 변수를 호출합니다.
var xml:XML = 
    <body>
        <p>Hello</p>
        <p>World</p>
        <hr/>
    </body>;

xml.replace("p", <p>Hi</p>); 
trace(xml);
다음은 trace() 출력 결과입니다.
<body> <p>Hi</p> <hr/> </body>;

다음 예제에서는 QName을 첫 번째 매개 변수로 사용하여 replace() 메서드를 호출하는 방법을 보여 줍니다.
var xml:XML = 
    <ns:body xmlns:ns = "myNS">
        <ns:p>Hello</ns:p>
        <ns:p>World</ns:p>
        <hr/>
    </ns:body>;

var qname:QName = new QName("myNS", "p");
xml.replace(qname, <p>Bob</p>);
trace(xml);
다음은 trace() 출력 결과입니다.
<ns:body xmlns:ns = "myNS"> <p>Bob</p> <hr/> </ns:body>

다음 예제에서는 문자열 "*"를 첫 번째 매개 변수로 사용하여 replace() 메서드를 호출하는 방법을 보여 줍니다.
var xml:XML = 
    <body>
        <p>Hello</p>
        <p>World</p>
        <hr/>
    </body>;

xml.replace("*", <img src = "hello.jpg"/>);
trace(xml);
다음은 trace() 출력 결과입니다.
<body> <img src="hello.jpg"/> </body>
setChildren()메서드 
AS3 function setChildren(value:Object):XML

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 자식 속성을 value 매개 변수에 지정된 XML 속성 집합으로 바꿉니다.

매개 변수

value:Object — 대체 XML 속성입니다. 단일 XML 객체 또는 XMLList 객체가 될 수 있습니다.

반환값
XML — 결과 XML 객체입니다.

참고 사항


예제

다음 예제에서는 setChildren() 메서드를 호출하고 XML 객체를 매개 변수로 사용하고 다음에는 XMLList 객체를 매개 변수로 사용하는 방법을 보여 줍니다.
var xml:XML = 
    <body>
        <p>Hello</p>
        <p>World</p>
    </body>;

var list:XMLList = xml.p;

xml.setChildren(<p>hello</p>);
trace(xml);

//    <body>
//        <p>hello</p>
//    </body>

xml.setChildren(list);
trace(xml);

//    <body>
//        <p>Hello</p>
//        <p>World</p>
//    </body>
setLocalName()메서드 
AS3 function setLocalName(name:String):void

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 로컬 이름을 지정된 name 매개 변수로 바꿉니다.

매개 변수

name:String — 로컬 이름을 대체할 이름입니다.

참고 사항


예제

다음 예제에서는 setLocalName() 메서드를 사용하여 XML 요소의 로컬 이름을 바꿉니다.
var xml:XML = 
    <ns:item xmlns:ns="http://example.com">
        toothbrush
    </ns:item>;
    
xml.setLocalName("orderItem");
trace(xml.toXMLString()); // <ns:orderItem xmlns:ns="http://example.com">toothbrush</ns:orderItem>
setName()메서드 
AS3 function setName(name:String):void

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 이름을 지정된 정규화된 이름 또는 특성 이름으로 설정합니다.

매개 변수

name:String — 객체의 새 이름입니다.

참고 사항


예제

다음 예제에서는 setName() 메서드를 사용하여 XML 요소의 이름을 바꿉니다.
var xml:XML = 
    <item>
        toothbrush
    </item>;
    
xml.setName("orderItem");
trace(xml.toXMLString()); // <orderItem>toothbrush</orderItem>
setNamespace()메서드 
AS3 function setNamespace(ns:Namespace):void

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체에 연결된 네임스페이스를 설정합니다.

매개 변수

ns:Namespace — 새 네임스페이스입니다.

참고 사항


예제

다음 예제에서는 XML 객체 하나에 정의된 soap 네임스페이스를 사용하고 이를 다른 XML 객체의 네임스페이스(xml2)에 적용합니다.
var xml1:XML = 
        <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
            soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
            <!-- ... -->
        </soap:Envelope>;
var ns:Namespace = xml1.namespace("soap");

var xml2:XML = 
    <Envelope>
        <Body/>
    </Envelope>;
    
xml2.setNamespace(ns);

trace(xml2);
setSettings()메서드 
AS3 static function setSettings(... rest):void

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

ignoreComments, ignoreProcessingInstructions, ignoreWhitespace, prettyIndentprettyPrinting XML 속성의 값을 설정합니다. 다음은 setObj 매개 변수를 제공하지 않은 경우 적용되는 기본 설정입니다.

참고: XML 클래스의 인스턴스에는 이 메서드를 적용하지 마십시오. 이 메서드는 XML.setSettings() 코드와 같이 XML에 적용해야 합니다.

매개 변수

... rest — 다음 속성이 각각 포함된 객체입니다.
  • ignoreComments
  • ignoreProcessingInstructions
  • ignoreWhitespace
  • prettyIndent
  • prettyPrinting

참고 사항


예제

다음 예제에서는 XML 객체를 설정하기 전에 주석 및 처리 명령을 포함하기 위해 몇 가지 사용자 정의 설정을 적용하는 방법, 다른 XML 객체를 설정하기 전에 기본 설정으로 되돌리는 방법 및 추가 XML 객체를 설정하기 위해 사용자 정의 설정을 다시 설정하는 방법을 보여 줍니다.
XML.ignoreComments = false;
XML.ignoreProcessingInstructions = false;
var customSettings:Object = XML.settings();

var xml1:XML = 
        <foo>
            <!-- comment -->
            <?instruction ?>
        </foo>;
trace(xml1.toXMLString());
//    <foo>
//        <!-- comment -->
//         <?instruction ?>
//    </foo>

XML.setSettings(XML.defaultSettings());
var xml2:XML = 
        <foo>
            <!-- comment -->
            <?instruction ?>
        </foo>;
trace(xml2.toXMLString());
settings()메서드 
AS3 static function settings():Object

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

ignoreComments, ignoreProcessingInstructions, ignoreWhitespace, prettyIndentprettyPrinting 속성을 검색합니다.

반환값
Object — 다음 XML 속성이 포함된 객체입니다.
  • ignoreComments
  • ignoreProcessingInstructions
  • ignoreWhitespace
  • prettyIndent
  • prettyPrinting

참고 사항


예제

다음 예제에서는 XML 객체를 설정하기 전에 주석 및 처리 명령을 포함하기 위해 몇 가지 사용자 정의 설정을 적용하는 방법, 다른 XML 객체를 설정하기 전에 기본 설정으로 되돌리는 방법 및 추가 XML 객체를 설정하기 위해 사용자 정의 설정을 다시 설정하는 방법을 보여 줍니다.
XML.ignoreComments = false;
XML.ignoreProcessingInstructions = false;
var customSettings:Object = XML.settings();

var xml1:XML = 
        <foo>
            <!-- comment -->
            <?instruction ?>
        </foo>;
trace(xml1.toXMLString());
//    <foo>
//        <!-- comment -->
//         <?instruction ?>
//    </foo>

XML.setSettings(XML.defaultSettings());
var xml2:XML = 
        <foo>
            <!-- comment -->
            <?instruction ?>
        </foo>;
trace(xml2.toXMLString());
text()메서드 
AS3 function text():XMLList

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 텍스트 노드를 나타내는 XML 객체의 모든 XML 속성에 대한 XMLList 객체를 반환합니다.

반환값
XMLList — 속성의 목록입니다.

참고 사항


예제

다음 예제에서는 text() 메서드를 사용하여 XML 객체의 텍스트 노드를 가져오는 방법을 보여 줍니다.
var xml:XML =
        <body>
            text1
            <hr/>
            text2
        </body>;
trace(xml.text()[0]); // text1
trace(xml.text()[1]); // text2
toString()메서드 
AS3 function toString():String

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 문자열 표현을 반환합니다. 이 변환의 규칙은 XML 객체의 내용이 간단한지 복잡한지에 따라 다릅니다.

항상 XML 객체 전체를 반환하려면 toXMLString()을 사용합니다.

반환값
String — XML 객체의 문자열 표현입니다.

참고 사항


예제

다음 예제에서는 XML 객체의 내용이 간단한 경우에 toString() 메서드가 반환하는 내용을 보여 줍니다.
var test:XML = <type name="Joe">example</type>;
trace(test.toString()); //example

다음 예제에서는 XML 객체의 내용이 복잡한 경우에 toString() 메서드가 반환하는 내용을 보여 줍니다.
var test:XML = 
<type name="Joe">
    <base name="Bob"></base>
    example
</type>;
trace(test.toString());
  // <type name="Joe">
  // <base name="Bob"/>
  // example
  // </type> 
toXMLString()메서드 
AS3 function toXMLString():String

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체의 문자열 표현을 반환합니다. toString() 메서드와 달리 toXMLString() 메서드는 XML 객체의 내용이 간단한지 복잡한지에 관계없이 항상 XML 객체의 시작 태그, 특성 및 끝 태그를 반환합니다. toString() 메서드는 XML 객체에 간단한 내용이 포함되어 있는 경우 이러한 항목을 제거합니다.

반환값
String — XML 객체의 문자열 표현입니다.

참고 사항


예제

다음 예제에서는 toString() 메서드(기본적으로 trace() 메서드의 모든 매개 변수에 적용됨)를 사용할 때와 toXMLString() 메서드를 사용하는 방법을 보여 줍니다.
var xml:XML =
        <p>hello</p>;
trace(xml); // hello
trace(xml.toXMLString()); // <p>hello</p>
valueOf()메서드 
AS3 function valueOf():XML

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

XML 객체를 반환합니다.

반환값
XML — XML 인스턴스의 프리미티브 값입니다.

참고 사항


예제

다음 예제에서는 valueOf() 메서드의 반환값이 소스 XML 객체와 같음을 보여 줍니다.
var xml:XML = <p>hello</p>;
trace(xml.valueOf() === xml); // true
예제 예제 사용 방법
XMLExample.as

다음 예제에서는 XML 변수를 만든 다음 노드를 추가합니다. 그런 다음 XML 속성을 사용하여 XML 노드를 찾아 출력합니다. 특성 이름을 기준으로 "at"(@) 기호가 여러 trace() 호출에서 정보를 찾는 데 사용됩니다.
package {
    import flash.display.Sprite;

    public class XmlExample extends Sprite {        
        public function XmlExample() {
            var employees:XML =
                <employees>
                    <employee ssn="123-123-1234">
                        <name first="John" last="Doe"/>
                        <address>
                            <street>11 Main St.</street>
                            <city>San Francisco</city>
                            <state>CA</state>
                            <zip>98765</zip>
                        </address>
                    </employee>
                    <employee ssn="789-789-7890">
                        <name first="Mary" last="Roe"/>
                        <address>
                            <street>99 Broad St.</street>
                            <city>Newton</city>
                            <state>MA</state>
                            <zip>01234</zip>
                        </address>
                    </employee>
                </employees>;

            trace(employees.employee[0].address.zip);   // 98765

            trace(employees.employee[1].@ssn);          // 789-789-7890

            trace(employees.employee.name);             // <name first="John" last="Doe"/>
                                                        // <name first="Mary" last="Roe"/>

            trace(employees..zip[0]);                   // 98765

            trace(employees..@ssn[1]);                  // 789-789-7890

            trace(employees..name);                     // <name first="John" last="Doe"/>
                                                        // <name first="Mary" last="Roe"/>

            trace(employees.employee[0].address.*);     // <street>11 Main St.</street>    
                                                        // <city>San Francisco</city>
                                                        // <state>CA</state>
                                                        // <zip>98765</zip>
            var node:String = "zip";
            trace(employees.employee[0].address[node]); // 98765
            
            var attribute:String = "ssn";
            trace(employees.employee[1].@[attribute]);  // 789-789-7890
            
            for each (var num:XML in employees..@ssn) {
                trace(num);                             // 123-123-1234
            }                                           // 789-789-7890
            
            var ssnToFind:String = "789-789-7890";
            trace(employees.employee.(@ssn == ssnToFind).toXMLString());
                                                        // <employee ssn="789-789-7890">
                                                        // <name first="Mary" last="Roe"/>
                                                        // <address>
                                                        // <street>99 Broad St.</street>
                                                        // <city>Newton</city>
                                                        // <state>MA</state>
                                                        // <zip>01234</zip>
                                                        // </address>
                                                        // </employee>
        }
    }
}




 

이 페이지에 의견 추가되면 전자 메일 알림 받기 | 의견 보고서

현재 페이지: http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/XML.html