2010-06-09 1 views
1

Action 스크립트를 사용하여 응용 프로그램을 작성합니다. 3 웹에서 XML을 가져 오지만 노드 이름은 mm입니다. Image mms : Results etc 내 작업 스크립트 컴파일러에서 오류가 발생 함 becuase 노드 이름에 세미 콜론이 표시 될 것으로 예상하지 않습니다. 노드에 액세스하는 방법은 무엇입니까?Actionscript 3 E4X XML의 네임 스페이스 값을 사용하여 작업

감사합니다.

답변

5

이들은 XML 네임 스페이스이며 사용하기가 어려울 수 있습니다. Using XML namespaces에 대한 Adobe 문서를 살펴보십시오.

var mmsNS:Namespace = message.namespace("mms"); 

// alternatively for nested namespaces: 

var mmsNS:Namespace = new Namespace("mms", " ... url of namespace ... "); 

그리고 당신이에 적용되는 노드 싶어 할 때 사용 : 당신의 XML의 모든 경우

var data:XML = [email protected]::Results; 

바로 가기를

는 기본적으로 네임 스페이스를 얻을 수 있습니다 특정 네임 스페이스에있는 것은 기본 네임 스페이스를 설정하는 것입니다.

default xml namespace = mmsNs; 

편집 : 액세스하려고하는 XML 네임 스페이스는 XML 조각 내에서 선언해야합니다

<root xmlns:mms="http://example.com/mms"> 
    <mms:someNode someAttr="someVal" /> 
</root> 

이 문서를 보장하기 XML Namespaces에 대한 W3C의 문서를 보라는 (잘 형성 어쩌면 통해 통과입니다 유효성 검사기).

+0

고마워, 나는 그것을 시도하고 "네임 스페이스에 대한 불법 가치"라는 아이디어를 계속 얻는다. –

+1

또한 네임 스페이스의 URL이 무엇인지 어떻게 알 수 있습니까? –

+0

xml 네임 스페이스는 XML 내에서 선언되어야합니다. 예제를 추가하겠습니다. –