JavaTM Platform
Standard Ed. 6

javax.xml.xpath
인터페이스 XPath



public interface XPath

XPath 는 XPath 평가 환경 및 식에의 액세스를 제공합니다.

XPath 식의 평가
문맥 문맥 항목이 없는 식을 평가하는 요구를 했을 경우, 문맥에는 빈 상태(empty)의 문서 노드가 사용된다. XPath 식을 평가하기 위해(때문에), DocumentFragment 가 문서 노드와 같게 다루어진다
변수 식에 변수의 참조가 포함되는 경우,setXPathVariableResolver(XPathVariableResolver resolver) 로 설정된 XPathVariableResolver 에 의해 그 값을 찾아낼 수 있다. 변수 리절버가 정의되어 있지 않은지, 리절버로부터 변수에 대해서 null 가 돌려주어졌을 경우,XPathExpressionException 가 생성된다. 변수의 값은, 1 회의 평가의 과정을 통해서 불변이 아니면 안된다

함수 식에 함수의 참조가 포함되는 경우,setXPathFunctionResolver(XPathFunctionResolver resolver) 로 설정된 XPathFunctionResolver 에 의해 함수를 찾아낼 수 있다. 함수 리절버가 정의되어 있지 않은지, 리절버로부터 함수에 대해서 null 가 돌려주어졌을 경우,XPathExpressionException 가 생성된다

QName 식안의 QName 는 setNamespaceContext(NamespaceContext nsContext) 로 설정된 XPath 이름 공간 문맥과 비추어, 해결된다
result 식의 평가의 결과는 목적의 반환값의 형태의 인스턴스에 변환된다. 유효한 반환값의 형태는,XPathConstants 에 정의한다. 반환값의 형태에의 변환은 XPath 변환 규칙에 따른다

 

XPath 객체는 thread에 대해서 안전하지 않고, 재입 불가능합니다. 즉, 어플리케이션측에서, 어떠한 경우에서도 1 개 XPath 객체가 복수의 thread로부터 사용되는 것이 없게 할 필요가 있습니다. 또,evaluate 메소드가 불려 가고 있는 동안, 어플리케이션은 재귀적으로 evaluate 메소드를 호출할 수가 없습니다.  

도입된 버젼:
1.5
관련 항목:
XML Path Language (XPath) Version 1.0

메소드의 개요
 XPathExpression compile (String  expression)
          나중에 평가하기 위해(때문에), Xpath 식을 컴파일 합니다.
 String evaluate (String  expression, InputSource  source)
          지정된 InputSource 의 문맥으로 XPath 식을 평가해, 결과를 String 로서 돌려줍니다.
 Object evaluate (String  expression, InputSource  source, QName  returnType)
          지정된 InputSource 의 문맥으로 XPath 식을 평가해, 결과가 지정된 형태로서 돌려줍니다.
 String evaluate (String  expression, Object  item)
          지정된 문맥으로 XPath 식을 평가해, 결과를 String 로서 돌려줍니다.
 Object evaluate (String  expression, Object  item, QName  returnType)
          지정된 문맥으로 XPath 식을 평가해, 결과가 지정된 형태로서 돌려줍니다.
 NamespaceContext getNamespaceContext ()
          현재의 이름 공간 문맥을 돌려줍니다.
 XPathFunctionResolver getXPathFunctionResolver ()
          현재의 함수 리절버를 돌려줍니다.
 XPathVariableResolver getXPathVariableResolver ()
          현재의 변수 리절버를 돌려줍니다.
 void reset ()
          이 XPath 를 원의 설정에 리셋 합니다.
 void setNamespaceContext (NamespaceContext  nsContext)
          이름 공간 문맥을 설정합니다.
 void setXPathFunctionResolver (XPathFunctionResolver  resolver)
          함수 리절버를 설정합니다.
 void setXPathVariableResolver (XPathVariableResolver  resolver)
          변수 리절버를 설정합니다.
 

메소드의 상세

reset

void reset()

XPath 를 원의 설정에 리셋 합니다.

 

XPath 는,XPathFactory.newXPath() 로 작성된 시점 상태에 리셋 됩니다. reset() 는, 기존의 XPath 의 재사용을 허가하도록(듯이) 설정되어 있기 (위해)때문에, 새로운 XPath 의 작성에 관련하는 자원을 절약할 수 있습니다.

 

XPath 를 리셋 했을 경우, 같은 XPathFunctionResolver ,XPathVariableResolver , 또는 NamespaceContext Object 를 가지는 것은 보증되지 않습니다. 예를 들어,Object.equals(Object obj) 등입니다. 기능적으로 같은 XPathFunctionResolver,XPathVariableResolver, 및 NamespaceContext 를 가지는 것은 보증됩니다.


setXPathVariableResolver

void setXPathVariableResolver(XPathVariableResolver  resolver)

변수 리절버를 설정합니다.

 

resolvernull 의 경우,NullPointerException 가 throw 됩니다.

파라미터:
resolver - 변수 리절버
예외:
NullPointerException - resolvernull 의 경우

getXPathVariableResolver

XPathVariableResolver  getXPathVariableResolver()

현재의 변수 리절버를 돌려줍니다.

 

유효한 변수 리절버가 없는 경우,null 가 돌려주어집니다.

반환값:
현재의 변수 리절버

setXPathFunctionResolver

void setXPathFunctionResolver(XPathFunctionResolver  resolver)

함수 리절버를 설정합니다.

 

resolvernull 의 경우,NullPointerException 가 throw 됩니다.

파라미터:
resolver - XPath 함수 리절버
예외:
NullPointerException - resolvernull 의 경우

getXPathFunctionResolver

XPathFunctionResolver  getXPathFunctionResolver()

현재의 함수 리절버를 돌려줍니다.

 

유효한 함수 리절버가 없는 경우,null 가 돌려주어집니다.

반환값:
현재의 함수 리절버

setNamespaceContext

void setNamespaceContext(NamespaceContext  nsContext)

이름 공간 문맥을 설정합니다.

 

nsContextnull 의 경우,NullPointerException 가 throw 됩니다.

파라미터:
nsContext - 사용하는 이름 공간 문맥
예외:
NullPointerException - nsContextnull 의 경우

getNamespaceContext

NamespaceContext  getNamespaceContext()

현재의 이름 공간 문맥을 돌려줍니다.

 

유효한 이름 공간 문맥이 없는 경우,null 가 돌려주어집니다.

반환값:
현재의 이름 공간 문맥

compile

XPathExpression  compile(String  expression)
                        throws XPathExpressionException 

나중에 평가하기 위해(때문에), Xpath 식을 컴파일 합니다.

 

expressionXPathFunction 가 포함되어 있는 경우는,XPathFunctionResolver 로 사용 가능한 필요가 있습니다. XPathFunctionXPathFunctionResolver 로 해결할 수 없는 경우,XPathExpressionException 가 throw 됩니다.

 

expression 에 변수가 포함되어 있는 경우는, 「컴파일시에」유효한 XPathVariableResolver 를 사용해 그것들을 해결합니다.

 

expressionnull 의 경우는,NullPointerException 가 throw 됩니다.

파라미터:
expression - XPath 식
반환값:
컴파일 된 XPath 식
예외:
XPathExpressionException - expression 를 컴파일 할 수 없는 경우
NullPointerException - expressionnull 의 경우

evaluate

Object  evaluate(String  expression,
                Object  item,
                QName  returnType)
                throws XPathExpressionException 

지정된 문맥으로 XPath 식을 평가해, 결과가 지정된 형태로서 돌려줍니다.

 

문맥 항목의 평가, 변수, 함수, 및 QName 의 해결과 반환값의 형태의 변환에 대해서는「XPath 식의 평가」를 참조해 주세요.

 

returnTypeXPathConstants ( NUMBER ,STRING ,BOOLEAN ,NODE , 또는 NODESET )에 정의된 형태가 아닌 경우,IllegalArgumentException 가 throw 됩니다.

 

itemnull 치가 제공되는 경우, 문맥에는 빈 상태(empty)의 문서가 사용됩니다. expression 또는 returnTypenull 의 경우는,NullPointerException 가 throw 됩니다.

파라미터:
expression - XPath 식
item - 초기 문맥 (노드 등)
returnType - 목적의 반환값의 형태
반환값:
returnTypeObject 로서의 XPath 식의 평가의 결과
예외:
XPathExpressionException - expression 를 평가할 수 없는 경우
IllegalArgumentException - returnTypeXPathConstants 에 정의된 형태가 아닌 경우
NullPointerException - expression 또는 returnTypenull 의 경우

evaluate

String  evaluate(String  expression,
                Object  item)
                throws XPathExpressionException 

지정된 문맥으로 XPath 식을 평가해, 결과를 String 로서 돌려줍니다.

 

이 메소드는,returnTypeXPathConstants.STRING 으로 evaluate(String expression, Object item, QName returnType) 를 호출합니다.

 

문맥 항목의 평가, 변수, 함수, 및 QName 의 해결과 반환값의 형태의 변환에 대해서는「XPath 식의 평가」를 참조해 주세요.

 

itemnull 치가 제공되는 경우, 문맥에는 빈 상태(empty)의 문서가 사용됩니다. expressionnull 의 경우는,NullPointerException 가 throw 됩니다.

파라미터:
expression - XPath 식
item - 초기 문맥 (노드 등)
반환값:
식을 평가해, 결과를 Object (으)로 변환한 결과인 String
예외:
XPathExpressionException - expression 를 평가할 수 없는 경우
NullPointerException - expressionnull 의 경우

evaluate

Object  evaluate(String  expression,
                InputSource  source,
                QName  returnType)
                throws XPathExpressionException 

지정된 InputSource 의 문맥으로 XPath 식을 평가해, 결과가 지정된 형태로서 돌려줍니다.

 

이 메소드는 InputSource 의 데이터 모델을 구축해, 결과의 문서 객체에 대해서 evaluate(String expression, Object item, QName returnType) 를 호출합니다.

 

문맥 항목의 평가, 변수, 함수, 및 QName 의 해결과 반환값의 형태의 변환에 대해서는「XPath 식의 평가」를 참조해 주세요.

 

returnTypeXPathConstants 에 정의된 형태가 아닌 경우,IllegalArgumentException 가 throw 됩니다.

 

expression,source, 또는 returnTypenull 의 경우,NullPointerException 가 throw 됩니다.

파라미터:
expression - XPath 식
source - 평가하는 문서의 입력 소스
returnType - 목적의 반환값의 형태
반환값:
식의 평가의 결과를 캡슐화하는 Object
예외:
XPathExpressionException - 식을 평가할 수 없는 경우
IllegalArgumentException - returnTypeXPathConstants 에 정의된 형태가 아닌 경우
NullPointerException - expression,source, 또는 returnTypenull 의 경우

evaluate

String  evaluate(String  expression,
                InputSource  source)
                throws XPathExpressionException 

지정된 InputSource 의 문맥으로 XPath 식을 평가해, 결과를 String 로서 돌려줍니다.

 

이 메소드는,returnTypeXPathConstants.STRING 으로 evaluate(String expression, InputSource source, QName returnType) 를 호출합니다.

 

문맥 항목의 평가, 변수, 함수, 및 QName 의 해결과 반환값의 형태의 변환에 대해서는「XPath 식의 평가」를 참조해 주세요.

 

expression 또는 sourcenull 의 경우,NullPointerException 가 throw 됩니다.

파라미터:
expression - XPath 식
source - 평가하는 문서의 InputSource
반환값:
식을 평가해, 결과를 Object (으)로 변환한 결과인 String
예외:
XPathExpressionException - 식을 평가할 수 없는 경우
NullPointerException - expression 또는 sourcenull 의 경우

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.