|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
| 개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 | |||||||||
public interface Document
Document 인터페이스는, HTML 문서 또는 XML 문서 전체를 나타냅니다. 개념상은 문서 트리의 루트이며, 문서 데이터에 최초로 액세스 하는 수단을 제공합니다.
요소, 텍스트 노드, 코멘트, 처리 명령등의 객체는,Document 의 문맥외에서는 존재 할 수 있지 않습니다. 이 때문에,Document 인터페이스에는, 이러한 객체를 작성하기 위해서 필요한 팩토리 메소드가 포함되어 있습니다. 작성된 Node 객체는, 그 작성 문맥내에서 자신과 Document 를 관련짓는 ownerDocument 속성을 가지고 있습니다.
「Document Object Model (DOM) Level 3 Core Specification」를 참조해 주세요.
| 필드의 개요 |
|---|
| 메소드의 개요 | |
|---|---|
Node |
adoptNode (Node source)
다른 문서의 노드를 현재의 문서에 임포트 합니다. |
Attr |
createAttribute (String name)
주어진(given) 이름의 Attr 를 작성합니다. |
Attr |
createAttributeNS (String namespaceURI,
String qualifiedName)
주어진(given) 수식명과 이름 공간 URI 를 가지는 속성을 작성합니다. |
CDATASection |
createCDATASection (String data)
지정된 캐릭터 라인을 값으로 해서 가지는 CDATASection 노드를 작성합니다. |
Comment |
createComment (String data)
지정된 캐릭터 라인을 가지는 Comment 노드를 작성합니다. |
DocumentFragment |
createDocumentFragment ()
빈 상태(empty)의 DocumentFragment 객체를 생성합니다. |
Element |
createElement (String tagName)
지정된 형태의 요소를 작성합니다. |
Element |
createElementNS (String namespaceURI,
String qualifiedName)
주어진(given) 수식명과 이름 공간 URI 를 가지는 요소를 작성합니다. |
EntityReference |
createEntityReference (String name)
EntityReference 객체를 작성합니다. |
ProcessingInstruction |
createProcessingInstruction (String target,
String data)
지정된 이름 및 데이터를 가지는 ProcessingInstruction 노드를 작성합니다. |
Text |
createTextNode (String data)
지정된 캐릭터 라인을 가지는 Text 노드를 작성합니다. |
DocumentType |
getDoctype ()
이 문서에 관련지을 수 있고 있는 문서형 선언 ( DocumentType 를 참조). |
Element |
getDocumentElement ()
문서의 문서 요소가 되어 있는 자식(child) 노드에의 직접 액세스를 가능하게 하는 편리한 속성입니다. |
String |
getDocumentURI ()
문서의 장소. |
DOMConfiguration |
getDomConfig ()
Document.normalizeDocument() 가 불려 갔을 때에 사용되는 설정. |
Element |
getElementById (String elementId)
주어진(given) 값의 ID 속성을 가지는 Element 를 돌려줍니다. |
NodeList |
getElementsByTagName (String tagname)
주어진(given) 태그명과 함께, 문서에 포함되는 모든 Elements 의 NodeList 를 문서순서에 돌려줍니다. |
NodeList |
getElementsByTagNameNS (String namespaceURI,
String localName)
주어진(given) 로컬명과 이름 공간 URI 와 함께, 모든 Elements 의 NodeList 를 문서순서에 돌려줍니다. |
DOMImplementation |
getImplementation ()
이 문서를 처리하는 DOMImplementation 객체입니다. |
String |
getInputEncoding ()
이 문서를 해석할 경우에 사용하는 인코딩을 지정합니다. |
boolean |
getStrictErrorChecking ()
에러 체크를 적용할지 어떨지를 지정합니다. |
String |
getXmlEncoding ()
이 문서의 인코딩을 XML 선언의 일부로서 지정합니다. |
boolean |
getXmlStandalone ()
이 문서가 스탠드얼론인가 어떤가를 XML 선언의 일부로서 지정합니다. |
String |
getXmlVersion ()
이 문서의 버젼 번호를 XML 선언의 일부로서 지정합니다. |
Node |
importNode (Node importedNode,
boolean deep)
다른 문서로부터 현재의 문서에 노드를 임포트 합니다. |
void |
normalizeDocument ()
이 메소드는, 문서를 일반적으로의 형식으로 변환해, 보존 및 로드하도록(듯이) 동작합니다. |
Node |
renameNode (Node n,
String namespaceURI,
String qualifiedName)
ELEMENT_NODE 또는 ATTRIBUTE_NODE 형의 기존의 노드의 이름을 변경합니다. |
void |
setDocumentURI (String documentURI)
문서의 장소. |
void |
setStrictErrorChecking (boolean strictErrorChecking)
에러 체크를 적용할지 어떨지를 지정합니다. |
void |
setXmlStandalone (boolean xmlStandalone)
이 문서가 스탠드얼론인가 어떤가를 XML 선언의 일부로서 지정합니다. |
void |
setXmlVersion (String xmlVersion)
이 문서의 버젼 번호를 XML 선언의 일부로서 지정합니다. |
| 인터페이스 org.w3c.dom. Node 로부터 상속된 메소드 |
|---|
appendChild , cloneNode , compareDocumentPosition , getAttributes , getBaseURI , getChildNodes , getFeature , getFirstChild , getLastChild , getLocalName , getNamespaceURI , getNextSibling , getNodeName , getNodeType , getNodeValue , getOwnerDocument , getParentNode , getPrefix , getPreviousSibling , getTextContent , getUserData , hasAttributes , hasChildNodes , insertBefore , isDefaultNamespace , isEqualNode , isSameNode , isSupported , lookupNamespaceURI , lookupPrefix , normalize , removeChild , replaceChild , setNodeValue , setPrefix , setTextContent , setUserData |
| 메소드의 상세 |
|---|
DocumentType getDoctype()
DocumentType 를 참조). 문서형 선언을 가지지 않는 XML 문서의 경우는 null 를 돌려줍니다. HTML 문서에서는, 문서내의 문서형 선언의 유무와는 관계없이 DocumentType 객체를 돌려줄 수가 있습니다. DocumentType 노드와 이 Document 의 자식(child) 노드에 직접 액세스 합니다. 이 노드는 문서 작성시로 설정되어 그 이후는 Node.insertBefore,Node.replaceChild 등의 자식(child) 노드 조작 메소드를 사용해 변경할 수 있습니다. 다만, 일부의 구현에서는, 작성시로 지정된 DocumentType 에 근거해, 「HTML」의「DOM Level 2 HTML」등의 「Core」이외의 추가 기능을 지원하고 있는 다양한 Document 객체를 인스턴스화할 수 있습니다. 나중에 변경해도 지원되고 있는 기능이 변화하는 것은 거의 없습니다.
DOMImplementation getImplementation()
DOMImplementation 객체입니다. DOM 어플리케이션은, 복수의 구현으로부터의 객체를 사용할 수 있습니다.
Element getDocumentElement()
Element createElement(String tagName)
throws DOMException
Element 인터페이스를 구현하기 위해(때문에), 속성은 반환되는 객체에 직접 지정할 수 있습니다. Attr 노드가 자동적으로 작성되어 요소에 부가됩니다. createElementNS 메소드를 사용합니다.
tagName - 인스턴스화하는 요소형의 이름. XML 의 경우,
알파벳의 대문자와
소문자가 구별된다. XML 이외의 경우에는,
대문자와 소문자의 구별은, 사용하고 있는 마크업 언어에 의존해,
DOM 구현에 의해 그 정규 마크 업에 매핑 된다
tagName 로 설정된 nodeName 속성,
localName,prefix,null 로 설정되었다
namespaceURI 를 가지는 새롭다
Element 객체
DOMException - INVALID_CHARACTER_ERR:지정된 이름이, 사용중의 XML 버젼
(Document.xmlVersion 속성으로 지정되고 있다)
에 정해져 있는 XML 명이 아닌 경우DocumentFragment createDocumentFragment()
DocumentFragment 객체를 생성합니다.
DocumentFragmentText createTextNode(String data)
Text 노드를 작성합니다.
data - 노드의 데이터
Text 객체Comment createComment(String data)
Comment 노드를 작성합니다.
data - 노드의 데이터
Comment 객체
CDATASection createCDATASection(String data)
throws DOMException
CDATASection 노드를 작성합니다.
data - CDATASection 에 포함되는 데이터
CDATASection 객체
DOMException - NOT_SUPPORTED_ERR:이 문서가 HTML 문서의 경우
ProcessingInstruction createProcessingInstruction(String target,
String data)
throws DOMException
ProcessingInstruction 노드를 작성합니다.
target - 처리 명령의 타겟 부분.
Document.createElementNS 나
Document.createAttributeNS 과는 달리,
이 타겟명이 이름 공간 정형식인가 어떤가는 확인되지 않는다. 이 타겟명을 이름 공간 정형식으로 하려면 ,
어플리케이션은 「namespaces」파라미터를
true 로 설정해,Document.normalizeDocument()
(을)를 호출할 필요가 있는data - 노드의 데이터
ProcessingInstruction 객체
DOMException - INVALID_CHARACTER_ERR:지정된 타겟이, 사용중의 XML 버젼
(Document.xmlVersion 속성으로 지정되고 있다)
에 정해져 있는 XML 명이 아닌 경우
Attr createAttribute(String name)
throws DOMException
Attr 를 작성합니다. 그 후, 이 Attr 인스턴스는,setAttributeNode 메소드에 의해 Element 로 설정되는 것에 주의해 주세요. createAttributeNS 메소드를 사용합니다.
name - 속성의 이름
name 로 설정된 nodeName 속성,
localName,prefix,
null 로 설정된 namespaceURI 를 가지는 새롭다
Attr 객체. 속성의 값은 빈 상태(empty)의 캐릭터 라인
DOMException - INVALID_CHARACTER_ERR:지정된 이름이, 사용중의 XML 버젼
(Document.xmlVersion 속성으로 지정되고 있다)
에 정해져 있는 XML 명이 아닌 경우
EntityReference createEntityReference(String name)
throws DOMException
EntityReference 객체를 작성합니다. 게다가 참조되는 엔티티가 기존의 경우에는, 대응하는 Entity 노드의 아이 리스트와 같이 EntityReference 노드의 아이 리스트가 작성됩니다.
주:Entity 노드의 하위 노드의 이름 공간 접두사의 바인드가 해제되고 있는 경우에는, 작성된 EntityReference노드의 대응하는 하위 노드의 바인드도 해제됩니다 (그 namespaceURI 는null). DOM Level 2 로 DOM Level 3 에서는, 이러한 경우에 이름 공간 접두사를 해결하는 기구가 지원되고 있지 않습니다.
name - 참조되는 엔티티의 이름.
Document.createElementNS 나
Document.createAttributeNS 과는 달리,
이 엔티티명이 이름 공간 정형식인가 어떤가는 확인되지 않는다. 이 엔티티명을 이름 공간 정형식으로 하려면 ,
어플리케이션은 「namespaces」파라미터를
true 로 설정해,Document.normalizeDocument()
(을)를 호출할 필요가 있다
EntityReference 객체
DOMException - INVALID_CHARACTER_ERR:지정된 이름이, 사용중의 XML 버젼
(Document.xmlVersion 속성으로 지정되고 있다)
에 정해져 있는 XML 명이 아닌 경우
NodeList getElementsByTagName(String tagname)
Elements 의 NodeList 를 문서순서에 돌려줍니다.
tagname - 일치하는 태그의 이름. 특수한 값 「*」은
모든 태그에 일치한다. XML에서는,tagname 파라미터의
대문자와 소문자가 구별된다. XML 가 아닌 경우, 대문자와 소문자의 구별은,
사용하고 있는 마크업 언어에 의존한다
Elements 를 포함한 새로운 NodeList
객체
Node importNode(Node importedNode,
boolean deep)
throws DOMException
parentNode 는 null). nodeName 및 n odeType 와 완전히 같은 속성치에 가세해, 이름 공간에 관련지을 수 있고 있는 속성 (prefix,localName,namespaceURI)을 가지고 있습니다. cloneNode 조작의 경우와 같이, 소스 노드는 변경되지 않습니다. 임포트 되고 있는 노드에 관련하는 사용자 데이터는 미루어지지 않습니다. 다만, 관련하는 데이터와 함께 UserDataHandlers 가 지정되었을 경우, 핸들러는 이 메소드가 돌려주기 전에 해당하는 파라미터와 함께 불려 갑니다. nodeType 에 카피됩니다. XML 소스 또는 HTML 소스의 fragment가 한편의 문서로부터 이제(벌써) 한편의 문서에 카피되었을 경우, 2 개의 문서가 XML 케이스내에 다른 DTD 를 가질 가능성이 있는 것을 받아, 적절한 동작의 밀러화가 시행됩니다. 다음의 리스트에서는, 각 노드에 대해 설명합니다.
Attr 상에서,ownerElement 속성은 null,specified 플래그는 true 로 설정됩니다. 소스인 Attr 의 자손의 재귀적 임포트와 결과 노드의 재어셈블(assemble)에 의해, 대응하는 서브 트리가 형성됩니다. 덧붙여deep 파라미터는 Attr 노드에 영향을 미치지 않습니다. 이러한 파라미터는, 아이와 함께 임포트 됩니다. deep 옵션이 true 로 설정되어 있는 경우에는, 소스 DocumentFragment 의 자손은 재귀적으로 임포트 되어 결과 노드는 임포트 한 DocumentFragment 아래에서재어셈블(assemble) 되어, 대응하는 서브 트리가 형성됩니다. 그 이외의 경우는, 빈 상태(empty)의 DocumentFragment 가 생성될 뿐입니다. Document 노드는 임포트 할 수 없습니다. DocumentType 노드는 임포트 할 수 없습니다. Attr 노드가 같이 생성된 Element 에 접속됩니다. 임포트 되는 문서가 이 요소명의 디폴트 속성 (할당하고가 끝난 상태)을 정의하는 경우도, 디폴트 속성은 「카피되지 않습니다」. importNode 의 deep 파라미터가 true 로 설정되어 있는 경우는, 소스 요소의 자손이 재귀적으로 임포트 되어 결과 노드가 재어셈블(assemble) 되어, 대응하는 서브 트리가 형성됩니다. DocumentType 는 읽어내 전용입니다만,Entity 노드는 임포트 가능합니다. 이렇게 해 임포트 된 노드를 DocumentType 에 추가하는 기능은, 장래의 DOM 의 릴리스로 추가될 예정입니다. 임포트시에는,publicId,systemId,notationName 의 각 속성이 카피됩니다. deep 의 임포트가 요구되었을 경우는,Entity (소스)의 자손이 재귀적으로 임포트 되어 결과 노드가 재어셈블(assemble) 되어, 대응하는 서브 트리를 형성합니다. deep 의 임포트가 요구되었을 경우도, 소스 문서와 목적지 문서로 엔티티의 정의가 다른 경우가 있으므로,EntityReference 만이 카피되게 됩니다. 임포트 되는 문서가 이 엔트리명을 정의하는 경우는, 그 값을 할당할 수 있습니다. DocumentType 는 읽어내 전용입니다만,Notation 노드는 임포트 가능합니다. 이렇게 해 임포트 된 노드를 DocumentType 에 추가하는 기능은, 장래의 DOM 릴리스로 추가될 예정입니다. 임포트시에는,publicId 속성과 systemId 속성이 카피됩니다. 이러한 노드는 아이를 가질 수가 없기 때문에,deep 파라미터는 어떤 영향도 미치지 않습니다. target 와 data 의 값을 카피합니다. 이러한 노드는 아이를 가질 수가 없기 때문에,deep 파라미터는 어떤 영향도 미치지 않습니다. CharacterData 를 상속하는 3 개의 노드형으로,data 속성과 length 속성을 소스 노드로부터 카피합니다. 이러한 노드는 아이를 가질 수가 없기 때문에,deep 파라미터는 어떤 영향도 미치지 않습니다.
importedNode - 임포트 되는 노드deep - true 의 경우는 지정된 노드의 서브 트리를 임포트 해,
false 의 경우는 지정된 노드만을 임포트 한다
(상기의 설명을 참조). 아이를 가질 수가 없는 노드나
Attr,EntityReference 노드에는
영향을 미치지 않는다
Document 에 소속하는, 임포트 된 노드
DOMException - NOT_SUPPORTED_ERR:임포트 되는 노드형이 지원 대상외
의 경우
Document.xmlVersion 속성으로 지정되고 있다)
에 정해져 있는 XML 명이 아닌 경우. 이것은, XML 1.1「XML 1.1」요소를
XML 1.0 문서에 임포트 할 때 등에
발생하는 일이 있는
Element createElementNS(String namespaceURI,
String qualifiedName)
throws DOMException
null 치를 사용할 필요가 있습니다.
namespaceURI - 작성하는 요소의 이름 공간 URIqualifiedName - 인스턴스화하는 요소형의
수식명
Element
객체
| 속성 | 치 |
|---|---|
Node.nodeName |
qualifiedName |
Node.namespaceURI |
namespaceURI |
Node.prefix |
qualifiedName
(으)로부터 추출된 접두사. 접두사가 없는 경우는
null |
Node.localName |
qualifiedName 로부터 추출되었다
로컬명 |
Element.tagName |
qualifiedName |
DOMException - INVALID_CHARACTER_ERR:지정되었다
qualifiedName 가 사용중의 XML 버젼
(Document.xmlVersion 속성으로 지정되고 있다)에 정해져 있다
XML 명이 아닌 경우
qualifiedName 가 부정한 수식명인 경우.
qualifiedName 가 접두사를 가져,
namespaceURI 가 null 의 경우.
qualifiedName 가 접두사 「xml」를 가져,
namespaceURI 가
「http://www.w3.org/XML/1998/namespace」의 XML 이름 공간과는 다른 경우.
qualifiedName 또는 그 접두사가 「xmlns」로,
namespaceURI 가「http://www.w3.org/2000/xmlns/」(이)란 다른 경우. namespaceURI 가「http://www.w3.org/2000/xmlns/」여,qualifiedName 도 그 접두사도 「xmlns」가 아닌 경우
「XML」에 의해 정의되고 있기 (위해)때문에,
현재의 문서가 「XML」기능을 지원하지 않는 경우는
항상 throw 되는
Attr createAttributeNS(String namespaceURI,
String qualifiedName)
throws DOMException
namespaceURI 파라미터에 null 치를 사용할 필요가 있습니다.
namespaceURI - 작성하는 속성의 이름 공간 URIqualifiedName - 인스턴스화하는 속성의
수식명
Attr 객체
| 속성 | 치 |
|---|---|
Node.nodeName |
qualifiedName |
Node.namespaceURI |
namespaceURI |
Node.prefix |
qualifiedName
(으)로부터 추출된 접두사. 접두사가 없는 경우는
null |
Node.localName |
qualifiedName 로부터 추출되었다
로컬명 |
Attr.name |
qualifiedName |
Node.nodeName |
빈 상태(empty)의 캐릭터 라인 |
DOMException - INVALID_CHARACTER_ERR:지정되었다
qualifiedName 가 사용중의 XML 버젼
(Document.xmlVersion 속성으로 지정되고 있다)에 정해져 있다
XML 명이 아닌 경우
qualifiedName 가 부정한 수식명인 경우.
qualifiedName 가 접두사를 가져,
namespaceURI 가 null 의 경우.
qualifiedName 가 접두사 「xml」를 가져,
namespaceURI 가
「http://www.w3.org/XML/1998/namespace」란 다른 경우. qualifiedName 또는 그 접두사가 「xmlns」로,
namespaceURI 가「http://www.w3.org/2000/xmlns/」(이)란 다른 경우. namespaceURI 가「http://www.w3.org/2000/xmlns/」여,qualifiedName 도 그 접두사도 「xmlns」가 아닌 경우
「XML」에 의해 정의되고 있기 (위해)때문에,
현재의 문서가 「XML」기능을 지원하지 않는 경우는
항상 throw 되는
NodeList getElementsByTagNameNS(String namespaceURI,
String localName)
Elements 의 NodeList 를 문서순서에 돌려줍니다.
namespaceURI - 일치하는 요소의 이름 공간 URI. 특수한
값 「*」은 모든 이름 공간에 일치하는localName - 일치하는 요소의 로컬명. 특수한
값 「*」은 모든 로컬명에 일치한다
Elements 를 포함한 새로운 NodeList
객체Element getElementById(String elementId)
Element 를 돌려줍니다. 이러한 요소가 없는 경우는,null 를 돌려줍니다. 복수의 요소가 주어진(given) 값의 ID 속성을 가지고 있는 경우에는, 어느 값이 돌려주어질까는 정의되고 있지 않습니다. Attr.isId 속성을 사용해, ID 속성인가 어떤가를 판정하는 것이 요구됩니다.
주: 속성명에 「ID」또는 「id」가 포함되어 있어도, 그처럼 정의되어 있지 않은 경우에는, ID 속성이 아닙니다.
elementId - 요소의 일의의 id 치
nullString getInputEncoding()
Document 가 메모리로 작성되었을 때 등, 미지의 경우는 null 입니다.
String getXmlEncoding()
Document 가 작성되었을 경우 등, 미지정의 경우나 인식되지 않는 경우는 null 입니다.
boolean getXmlStandalone()
false 입니다.
주: 이 속성을 설정할 경우에, 값의 검증은 행해지지 않습니다. 어플리케이션은 「validate」파라미터를 가지는 Document.normalizeDocument() 를 사용해, 값이「XML 1.0」으로 정의되는스탠드얼론 문서 선언에 대한 유효성의 제약에 일치할지 어떨지를 검증할 필요가 있습니다.
void setXmlStandalone(boolean xmlStandalone)
throws DOMException
false 입니다.
주: 이 속성을 설정할 경우에, 값의 검증은 행해지지 않습니다. 어플리케이션은 「validate」파라미터를 가지는 Document.normalizeDocument() 를 사용해, 값이「XML 1.0」으로 정의되는스탠드얼론 문서 선언에 대한 유효성의 제약에 일치할지 어떨지를 검증할 필요가 있습니다.
DOMException - NOT_SUPPORTED_ERR:이 문서가 「XML」기능을 지원해
없는 경우String getXmlVersion()
1.0 입니다. 이 문서가 「XML」기능을 지원하고 있지 않는 경우에는, 값은 항상 null 입니다. 이 속성을 변경하면(자), XML 명의 무효인 문자를 확인하는 메소드에 영향을 줍니다. 이 Document 의 기존의 Node 에 무효인 문자가 있을지 어떨지를 확인하려면 , 어플리케이션으로 Document.normalizeDocument() 를 호출할 필요가 있습니다. DOMImplementation.hasFeature(feature, version) 메소드를 사용합니다. DOM 어플리케이션으로 구현이「XML 1.1」을 지원하고 있을지 어떨지를 판정할 때는, 파라미터치 「XMLVersion」와「1.1」을 지정해 같은 메소드를 사용합니다. 어느 쪽의 XML 를 지원하는 경우에서도, 이 스펙에 정의되고 있는 「XML」기능을 구현이 지원하고 있을 필요가 있습니다. 「XMLVersion」기능의 버젼을 지원하고 있는 Document 객체가,Document.xmlVersion 를 사용하고 있을 때, 같은 버젼의 NOT_SUPPORTED_ERR 예외를 throw 할 것은 없습니다.
void setXmlVersion(String xmlVersion)
throws DOMException
1.0 입니다. 이 문서가 「XML」기능을 지원하고 있지 않는 경우에는, 값은 항상 null 입니다. 이 속성을 변경하면(자), XML 명의 무효인 문자를 확인하는 메소드에 영향을 줍니다. 이 Document 의 기존의 Node 에 무효인 문자가 있을지 어떨지를 확인하려면 , 어플리케이션으로 Document.normalizeDocument() 를 호출할 필요가 있습니다. DOMImplementation.hasFeature(feature, version) 메소드를 사용합니다. DOM 어플리케이션으로 구현이「XML 1.1」을 지원하고 있을지 어떨지를 판정할 때는, 파라미터치 「XMLVersion」와「1.1」을 지정해 같은 메소드를 사용합니다. 어느 쪽의 XML 를 지원하는 경우에서도, 이 스펙에 정의되고 있는 「XML」기능을 구현이 지원하고 있을 필요가 있습니다. 「XMLVersion」기능의 버젼을 지원하고 있는 Document 객체가,Document.xmlVersion 를 사용하고 있을 때, 같은 버젼의 NOT_SUPPORTED_ERR 예외를 throw 할 것은 없습니다.
DOMException - NOT_SUPPORTED_ERR:Document 가 지원하고 있지 않는 값이 버젼으로 설정되어 있는 경우.
또는, 이 문서가 「XML」기능을
지원하고 있지 않는 경우boolean getStrictErrorChecking()
false 로 설정했을 경우, 이 구현은 DOM 처리에 일반적으로 정의되고 있는 모든 에러 케이스를 테스트하지 않습니다. 또, DOM 처리에 관한 DOMException 를 throw 하지 않고,Document.normalizeDocument() 를 사용하고 있을 때는 에러를 보고하지 않습니다. 에러가 발생했을 경우의 동작은 미정도리입니다. 이 속성은 디폴트로 true 입니다.
void setStrictErrorChecking(boolean strictErrorChecking)
false 로 설정했을 경우, 이 구현은 DOM 처리에 일반적으로 정의되고 있는 모든 에러 케이스를 테스트하지 않습니다. 또, DOM 처리에 관한 DOMException 를 throw 하지 않고,Document.normalizeDocument() 를 사용하고 있을 때는 에러를 보고하지 않습니다. 에러가 발생했을 경우의 동작은 미정도리입니다. 이 속성은 디폴트로 true 입니다.
String getDocumentURI()
Document 가 DOMImplementation.createDocument 를 사용해 작성되었을 경우는,null 입니다. 이 속성이 설정되어 있는 경우에는, 자구는 확인되지 않기 때문에,Node.baseURI 를 사용했을 때에 null 치가 돌려주어질 가능성이 있습니다. Document 가 「HTML」의「DOM Level 2 HTML」기능을 지원하고 있을 때는,Node.baseURI 를 계산할 때, HTML BASE 요소의 href 속성이 이 속성보다 우선됩니다.
void setDocumentURI(String documentURI)
Document 가 DOMImplementation.createDocument 를 사용해 작성되었을 경우는,null 입니다. 이 속성이 설정되어 있는 경우에는, 자구는 확인되지 않기 때문에,Node.baseURI 를 사용했을 때에 null 치가 돌려주어질 가능성이 있습니다. Document 가 「HTML」의「DOM Level 2 HTML」기능을 지원하고 있을 때는,Node.baseURI 를 계산할 때, HTML BASE 요소의 href 속성이 이 속성보다 우선됩니다.
Node adoptNode(Node source)
throws DOMException
ownerDocument, 그 아이, 및 접속되고 있는 속성 노드 (존재하는 경우)를 변경합니다. 소스 노드가 부모를 가지고 있는 경우에는, 그 소스 노드가 부모의 아이 리스트로부터 최초로 삭제됩니다. 이것에 의해, 어느 문서의 서브 트리를 다른 문서에 임포트 할 수 있습니다 (importNode() 의 경우는, 소스 노드를 임포트 하는 대신에 카피를 작성한다). 실패했을 경우는, 대신에 어플리케이션으로 Document.importNode() 를 사용할 필요가 있습니다. 임포트 한 노드가 벌써 이 문서의 일부인 경우 (즉, 소스와 타겟 문서가 같은 경우), 이 메소드는, 부모의 아이로부터 소스 노드를 삭제하는 경우에도 효과적입니다 (존재하는 경우). 다음의 리스트에서는, 각 노드에 대해 설명합니다.
Attr 의 ownerElement 속성을 null 로 설정해,specified 플래그를 true 로 설정합니다. 소스 Attr 의 자손을 재귀적으로 임포트 합니다. Document 노드는 임포트 할 수 없습니다. DocumentType 노드는 임포트 할 수 없습니다. Entity 노드는 임포트 할 수 없습니다. EntityReference 만을 임포트 해, 자손은 파기합니다. 임포트 되는 문서가 이 엔트리명을 정의하는 경우는, 그 값을 할당할 수 있습니다. Notation 노드는 임포트 할 수 없습니다. 주: 이 메소드는,Document.importNode() 메소드와는 달라, 새로운 노드를 작성하지 않기 때문에,INVALID_CHARACTER_ERR 예외를 throw 하지 않습니다. 어플리케이션에서는,Document.normalizeDocument() 메소드를 사용해, 임포트 한 이름이 사용중의 XML 버젼에 정해져 있는 XML 명이 아닌지 어떤지를 확인할 필요가 있습니다.
source - 이 문서로 이동하는 노드
null
(소스 노드의 구현이 차이가 나는 경우
등)
DOMException - NOT_SUPPORTED_ERR:소스 노드가 DOCUMENT,DOCUMENT_TYPE
형태인 경우
DOMConfiguration getDomConfig()
Document.normalizeDocument() 가 불려 갔을 때에 사용되는 설정.
void normalizeDocument()
Node.normalize() 메소드의 정의에 근거해,EntityReference 노드의 치환 트리를 갱신해,Text 노드를 정규화합니다. Document.domConfig 객체로 설정되어 있는 기능과 그 기능이 어떤 처리를 실제로 실행할까에 응해 다릅니다. 예를 들어, 기술되고 있는 알고리즘에 따라, 문서를 이름 공간 정형식으로 변환하거나 문자가 정규화되고 있는지 어떤지를 확인하거나CDATASection 노드를 삭제할 수도 있습니다. 자세한 것은,DOMConfiguration 를 참조해 주세요.
// Keep in the document
the information defined // in the XML Information Set (Java example)
DOMConfiguration docConfig = myDocument.getDomConfig();
docConfig.setParameter("infoset", Boolean.TRUE);
myDocument.normalizeDocument();
Node.nodeName 에 포함되어 있는 경우등)에는, error-handler 파라미터에 관련지을 수 있고 있는 DOMErrorHandler 객체를 사용해, 에러 또는 경고 (DOMError.SEVERITY_ERROR 또는 DOMError.SEVERITY_WARNING)가 보고됩니다. 또, 구현이 에러로부터 회복할 수 없는 경우에, 치명적인 에러 (DOMError.SEVERITY_FATAL_ERROR)를 보고하는 일이 있습니다.
Node renameNode(Node n,
String namespaceURI,
String qualifiedName)
throws DOMException
ELEMENT_NODE 또는 ATTRIBUTE_NODE 형의 기존의 노드의 이름을 변경합니다. Element 의 경우에는, 그 속성이 새로운 노드로 이동합니다. 새로운 노드는, 부모의 자식(child) 노드 리스트내에서 낡은 노드가 있던 위치에 삽입됩니다. 낡은 노드에 사용자 데이터를 관련지을 수 있고 있었을 경우에는, 그 사용자 데이터는 새로운 노드에 관련지을 수 있습니다. Element 의 경우, 지정한 속성만이 이동해, DTD 에 근거해 설정된 디폴트 속성이 새로운 요소명에 근거해 갱신됩니다. 이 구현은, 다른 schema로부터 디폴트 속성을 갱신하는 일도 있습니다. 어플리케이션은,Document.normalizeDocument() 를 사용해, 이러한 속성을 갱신할 필요가 있습니다. Attr 로,Element 에 관련지을 수 있고 있을 때는, 그 노드는 우선 Element 속성 맵으로부터 삭제됩니다. 다음에, 노드의 이름을 변경하면(자) (기존의 노드를 변경하는지, 전술의 순서로 새로운 노드를 작성한다), 노드가 원래대로 돌아갑니다. NODE_RENAMED 가 발생한다
http://www.w3.org/2001/xml-events, DOMElementNameChanged} 또는 { http://www.w3.org/2001/xml-events, DOMAttributeNameChanged} 가 발생한다
n - 이름을 변경하는 노드namespaceURI - 새로운 이름 공간 URIqualifiedName - 새로운 수식명
DOMException - NOT_SUPPORTED_ERR:지정된 노드의 형태가
ELEMENT_NODE 도 ATTRIBUTE_NODE 도 아닌 경우,
또는 구현이 문서 요소의 이름 변경을 지원하고 있지 않다
경우
Document.xmlVersion 속성으로 지정되고 있다)
에 정해져 있는 XML 명이 아닌 경우
qualifiedName 가 부정한 수식명인 경우.
qualifiedName 가 접두사를 가져,
namespaceURI 가 null 인 경우.
혹은,qualifiedName 가 접두사 「xml」를 가져,
namespaceURI 가
「http://www.w3.org/XML/1998/namespace」의 XML 이름 공간과는 다른 경우.
. 또는, 이름을 변경하고 있는 노드가 속성인 경우.
qualifiedName 또는 그 접두사가 「xmlns」로,
namespaceURI 가「http://www.w3.org/2000/xmlns/」(이)란 다른 경우
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
| 개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.