패키지 | 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):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/>bob@example.com</contact:mailbox>
노드에는 전체 요소 이름 "contact.mailbox"를 구성하는 로컬 이름 "mailbox"와 접두어 "contact"가 있습니다.
XML 노드 객체의 prefix
속성을 통해 네임스페이스 접두어에 액세스할 수 있습니다. nodeName
속성은 접두어와 로컬 이름을 포함한 전체 이름을 반환합니다.
구현
public function get localName():String
namespaceURI | 속성 |
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():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 — 노드 유형: 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