| 패키지 | flash.xml |
| 클래스 | public class XMLNode |
| 상속 | XMLNode Object |
| 하위 클래스 | XMLDocument |
| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.0, Flash Player 9, Flash Lite 4 |
관련 API 요소
| 속성 | 정의 주체 | ||
|---|---|---|---|
| attributes : Object
지정된 XMLNode 인스턴스의 특성이 모두 들어 있는 객체입니다. | XMLNode | ||
| childNodes : Array [읽기 전용]
지정된 XMLNode 객체의 자식 배열입니다. | XMLNode | ||
![]() | constructor : Object
지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다. | Object | |
| firstChild : XMLNode
지정된 XMLDocument 객체를 평가하고 부모 노드의 자식 목록에서 첫 번째 자식을 참조합니다. | XMLNode | ||
| lastChild : XMLNode
노드의 자식 목록에서 마지막 자식을 참조하는 XMLNode 값입니다. | XMLNode | ||
| localName : String [읽기 전용]
XML 노드 이름의 로컬 이름 부분입니다. | XMLNode | ||
| namespaceURI : String [읽기 전용]
XML 노드에 접두어가 있는 경우 namespaceURI는 일반적으로 네임스페이스 URI라고 하는 해당 접두어(URI)에 대한 xmlns 선언 값입니다. | XMLNode | ||
| nextSibling : XMLNode
부모 노드의 자식 목록에서 다음 형제 노드를 참조하는 XMLNode 값입니다. | XMLNode | ||
| nodeName : String
XMLNode 객체의 노드 이름을 나타내는 문자열입니다. | XMLNode | ||
| nodeType : uint
nodeType 상수 값으로, XML 요소의 경우 XMLNodeType.ELEMENT_NODE이고 텍스트 노드의 경우 XMLNodeType.TEXT_NODE입니다. | XMLNode | ||
| nodeValue : String
XMLDocument 객체의 노드 값입니다. | XMLNode | ||
| parentNode : XMLNode
지정된 XML 객체의 부모 노드를 참조하는 XMLNode 값입니다. 노드에 부모가 없으면 null이 반환됩니다. | XMLNode | ||
| prefix : String [읽기 전용]
XML 노드 이름의 접두어 부분입니다. | XMLNode | ||
| previousSibling : XMLNode
부모 노드의 자식 목록에서 이전 형제를 참조하는 XMLNode 값입니다. | XMLNode | ||
| 메서드 | 정의 주체 | ||
|---|---|---|---|
새 XMLNode 객체를 만듭니다. | XMLNode | ||
지정된 노드를 XML 객체의 자식 목록에 추가합니다. | XMLNode | ||
지정된 XML 객체와 유형, 이름, 값 및 특성이 동일한 새 XML 노드를 구성하여 반환합니다. | XMLNode | ||
노드의 지정된 접두어와 연결된 네임스페이스 URI를 반환합니다. | XMLNode | ||
노드의 지정된 네임스페이스 URI와 연결된 접두어를 반환합니다. | XMLNode | ||
지정된 XMLNode 객체에 자식 노드가 있는지 여부를 나타냅니다. | XMLNode | ||
![]() |
지정된 속성이 객체에 정의되어 있는지 여부를 나타냅니다. | Object | |
XML 객체의 자식 목록에서 beforeNode 노드 앞에 새 자식 노드를 삽입합니다. | XMLNode | ||
![]() |
Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다. | Object | |
![]() |
지정된 속성이 존재하고 열거 가능한지 여부를 나타냅니다. | Object | |
부모에서 지정된 XML 객체를 제거합니다. | XMLNode | ||
![]() |
루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다. | Object | |
![]() |
로캘별 규칙에 따라 서식이 지정된 이 객체의 문자열 표현을 반환합니다. | Object | |
지정된 XMLNode 객체를 평가하여 노드, 자식 및 특성을 비롯한 XML 구조의 텍스트 표현을 구성한 후 결과를 문자열로 반환합니다. | XMLNode | ||
![]() |
지정된 객체의 프리미티브 값을 반환합니다. | 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):voidchildNodes | 속성 |
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/>bob@example.com</contact:mailbox> 노드에는 전체 요소 이름 "contact.mailbox"를 구성하는 로컬 이름 "mailbox"와 접두어 "contact"가 있습니다.
XML 노드 객체의 prefix 속성을 통해 네임스페이스 접두어에 액세스할 수 있습니다. nodeName 속성은 접두어와 로컬 이름을 포함한 전체 이름을 반환합니다.
구현
public function get localName():StringnamespaceURI | 속성 |
namespaceURI:String [읽기 전용] | 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.0, Flash Player 9, Flash Lite 4 |
XML 노드에 접두어가 있는 경우 namespaceURI는 일반적으로 네임스페이스 URI라고 하는 해당 접두어(URI)에 대한 xmlns 선언 값입니다. 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은 HTML TITLE 태그의 nodeName입니다. XMLNode 객체가 텍스트 노드인 경우(nodeType == 3) nodeName은 null입니다.
관련 API 요소
nodeType | 속성 |
public var nodeType:uint| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.0, Flash Player 9, Flash Lite 4 |
nodeType 상수 값으로, XML 요소의 경우 XMLNodeType.ELEMENT_NODE이고 텍스트 노드의 경우 XMLNodeType.TEXT_NODE입니다.
nodeType은 W3C DOM 수준 1 권장 사항(http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core.html)의 NodeType 열거형 숫자 값입니다. 다음 표에서는 이러한 값을 보여 줍니다.
| 정수 값 | 정의된 상수 |
|---|---|
| 1 | ELEMENT_NODE |
| 3 | TEXT_NODE |
| 5 | ENTITY_REFERENCE_NODE |
| 7 | PROCESSING_INSTRUCTION_NODE |
| 9 | DOCUMENT_NODE |
| 11 | DOCUMENT_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 |
지정된 XML 객체의 부모 노드를 참조하는 XMLNode 값입니다. 노드에 부모가 없으면 null이 반환됩니다. 이 속성은 읽기 전용이므로 자식 노드를 조작하는 데 사용할 수 없습니다. 자식 노드를 조작하려면 appendChild(), insertBefore() 및 removeNode() 메서드를 사용합니다.
관련 API 요소
prefix | 속성 |
prefix:String [읽기 전용] | 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.0, Flash Player 9, Flash Lite 4 |
XML 노드 이름의 접두어 부분입니다. 예를 들어 <contact:mailbox/>bob@example.com</contact:mailbox> 노드에는 전체 요소 이름 "contact.mailbox"를 구성하는 접두어 "contact"와 로컬 이름 "mailbox"가 있습니다.
XML 노드 객체의 nodeName 속성은 접두어와 로컬 이름을 포함한 전체 이름을 반환합니다. localName 속성을 통해 요소 이름의 로컬 이름 부분에 액세스할 수 있습니다.
구현
public function get prefix():StringpreviousSibling | 속성 |
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 — 노드 유형: XML 요소의 경우 1, 텍스트 노드의 경우 3.
| |
value:String — 새 XMLNode 객체를 만들기 위해 파싱할 XML 텍스트입니다.
|
관련 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 — 현재 위치에서 my_xml 객체의 자식 목록으로 이동할 노드를 나타내는 XMLNode입니다.
|
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 계층 구조에서 해당 노드부터 위쪽으로 검색하고 지정된 prefix에 대한 첫 번째 xmlns 선언의 네임스페이스 URI를 반환합니다.
지정된 접두어에 대해 정의된 네임스페이스가 없으면 이 메서드는 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 계층 구조에서 해당 노드를 검색하고 ns와 일치하는 네임스페이스 URI가 있는 첫 번째 xmlns 선언의 접두어를 반환합니다.
지정된 URI에 할당된 xmlns가 없으면 이 메서드는 null을 반환합니다. 지정된 URI에 할당된 xmlns가 있지만 할당에 연결된 접두어가 없으면 빈 문자열("")이 반환됩니다.
매개 변수
ns:String — 메서드에서 연결된 접두어를 반환할 네임스페이스 URI입니다.
|
String — 지정된 네임스페이스와 연결된 접두어입니다.
|
관련 API 요소
hasChildNodes | () | 메서드 |
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 — childNode에 대한 삽입점 앞에 있는 XMLNode 객체입니다.
|
관련 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() 메서드는 XMLDocument.xmlDecl 속성에 저장된 문서의 XML 선언, XMLDocument.docTypeDecl 속성에 저장된 문서의 DOCTYPE 선언, 객체의 모든 XML 노드에 대한 텍스트 표현을 차례로 출력합니다. XMLDocument.xmlDecl 속성이 null이면 XML 선언이 출력되지 않습니다. 또한 XMLDocument.docTypeDecl 속성이 null이면 DOCTYPE 선언이 출력되지 않습니다.
String — XMLNode 객체를 나타내는 문자열입니다.
|
관련 API 요소
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";
}
}
Tue Jun 12 2018, 03:17 PM Z
상속되는 공용 속성 숨기기
상속되는 공용 속성 표시