|
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
객체를 생성합니다.
DocumentFragment
Text 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
치
null
String 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 도 참조해 주세요.