노드 형식 테스트
요소 노드 외에 다른 노드 형식을 선택하려면 노드 형식 테스트를 사용합니다. 노드 형식 테스트를 사용하면 지정된 축의 주 노드 형식이 무시됩니다. 예를 들어, 하위 축의 주 노드 형식이 요소인 경우에도 descendant::text()
는 컨텍스트 노드의 하위 노드인 모든 텍스트 노드를 찾습니다.
다음 표에서 볼 수 있듯이 네 가지 노드 형식 테스트를 사용할 수 있습니다.
노드 형식 | 반환 값 | 예제 |
---|---|---|
|
주석 노드에 대해 True |
|
|
모든 형식의 노드에 대해 True |
|
|
처리 명령 노드에 대해 True |
|
|
텍스트 노드에 대해 True |
|
![]() |
---|
processing-instruction() 테스트에는 리터럴인 인수가 있을 수 있습니다. 이 경우 이름이 리터럴 값과 같은 모든 처리 명령에 대해 True입니다.자세한 내용은 대상 처리 명령 테스트를 참조하십시오.
|
노드 형식 테스트의 끝에 괄호 ()
를 넣어야 합니다. 그러면 소스 문서에 이름이 comment, text, processing-instruction 또는 node인 노드가 있을 경우 발생할 수 있는 문제를 방지할 수 있습니다. XPath 응용 프로그램에서 이중 괄호를 발견할 경우 이 이름의 노드에 대한 이름 테스트가 아니라 노드 형식 테스트로 인식합니다. 마찬가지로 괄호가 비어 있든 비어 있지 않든 간에 노드 형식 테스트는 괄호를 포함하는 참조인 XPath 함수가 아닙니다.