|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
| 개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 | |||||||||
public interface DOMConfiguration
DOMConfiguration 인터페이스는 문서의 구성을 나타내, 인정되고 있는 파라미터의 테이블을 보관 유지합니다. 이 구성을 사용하면(자),CDATASection 노드를 Text 노드에 옮겨놓거나Document 의 검증이 요구되었을 때에 사용하는 schema의 형태를 지정하거나 하는 등,Document.normalizeDocument() 의 동작을 변경할 수 있습니다. DOMConfiguration 객체는,DOMParser 인터페이스나 DOMSerializer 인터페이스의「DOM Level 3 Load and Save」에서도 사용할 수 있습니다.
DOMConfiguration 객체로 사용하는 파라미터명은, DOM 레벨 3 스펙 전체로 정의되고 있습니다. 이름은 대문자와 소문자가 구별됩니다. 충돌을 피하기 (위해)때문에, 규칙으로서 DOM 스펙의 범위외에서 정의된 파라미터를 참조하는 이름은 일의로 할 필요가 있습니다. 파라미터는 프로퍼티으로서 공개되므로, 이름은, 추가의 문자 「-」(HYPHEN-MINUS)을 포함한 「Unicode」의 섹션 5.16 「식별자」에 따르는 것을 추천합니다만, DOM 구현에 의해 강제는 되지 않습니다. DOM 레벨 3 코어 구현에서는, 이 스펙으로 정의 떠날 수 있어 모든 파라미터를 인식할 필요가 있습니다. 일부의 파라미터치도, 이 구현으로 지원될 필요가 있습니다. 값이 지원되고 있는지 어떤지에 대해서는, 파라미터의 정의를 참조해 주세요.
주: 파라미터는, SAX2「SAX」로 사용되는 기능 및 프로퍼티과 같습니다.
다음의 파라미터 리스트는 DOM 로 정의되고 있습니다.
"canonical-form"trueDocumentType 노드 (존재하는 경우)를 트리로부터 삭제하거나 개개의 요소로부터 불필요한 이름 공간 선언을 삭제해 문서를 표준화 합니다. 이것은 DOM 로 표현할 수 있는 컨텐츠에 제한됩니다. 특히, DOM 로 속성의 순서를 지정하는 방법은 없습니다. 또, 이 파라미터를 true 로 설정하면(자), 아래와 같은 파라미터 상태도 설정됩니다. 나중에, 그 중의 1 개(살)로 변경하면(자), 「canonical-form」는 false 에 돌아옵니다. false 로 설정되는 파라미터는 「entities」, 「normalize-characters」, 「cdata-sections」로,true 로 설정되는 파라미터는 「namespaces」, 「namespace-declarations」, 「well-formed」, 「element-content-whitespace」입니다. 그 이외의 파라미터는, 파라미터의 설명에 명시적으로 지정되어 있지 않은 한, 변경되지 않습니다. false"cdata-sections"trueCDATASection 노드를 유지합니다. falseCDATASection 노드를 Text 노드로 변환합니다. 이것에 의해, 새로운 Text 노드는, 인접하는 Text 노드와 결합됩니다. "check-character-normalization"trueDOMError.type 에러는, 「check-character-normalization-failure」가 발행되는 것과 같습니다. false"comments"trueComment 노드를 유지합니다. falseComment 노드를 파기합니다. "datatype-normalization"truetrue 로 설정됩니다. 「validate」가 false 때에 이 파라미터를 액티브하게 해도 효과는 없고, schema의 정규화는 행해지지 않습니다.
주: 문서는 XML 1.0 처리의 결과를 포함하고 있으므로, 이 파라미터는,「XML 1.0」의 섹션 3.3. 3 으로 정의되고 있는 속성치 정규화에는 적용되지 않고, 문서형 정의 (DTD) 이외의 schema 언어만을 대상으로 하고 있습니다.
false"element-content-whitespace"truefalseText 노드를 파기합니다. 구현에서는,Text.isElementContentWhitespace 속성을 사용해,Text 노드를 파기할 필요가 있을지 어떨지를 판정하는 것이 요구됩니다. "entities"trueEntityReference 노드를 유지합니다. falseEntityReference 노드를 삭제해, 그 위치에서 엔티티 확장을 실시합니다. Text 노드는,Node.normalize 로 정의되고 있는 대로 정규화됩니다. 확장되어 있지 않은 엔티티 참조만이 문서에 유지됩니다. 주: 이 파라미터는 Entity 노드에는 영향을 주지 않습니다.
"error-handler"DOMErrorHandler 객체를 포함합니다. 문서로 에러가 발생했을 경우, 구현에서는, 이 파라미터를 사용해 등록된 DOMErrorHandler 를 호출합니다. 구현에서는, 디폴트의 DOMErrorHandler 객체가 제공되는 경우가 있습니다. 불려 갔을 경우,DOMError.relatedData 에는 에러가 발생한 장소에 가장 가까운 노드가 포함됩니다. 에러가 발생한 장소를 구현으로 특정할 수 없는 경우는,DOMError.relatedData 에 Document 노드가 포함됩니다. 에러 핸들러내로부터 문서에 대해서 변경을 더하면(자), 구현에 의존한 동작이 됩니다. "infoset"truefalse 로 설정됩니다. 또, namespace-declarations, well-formed, element-content-whitespace, comments, namespaces 파라미터는 true 로 설정됩니다. 다른 파라미터는, 파라미터의 기술로 명시적으로 지정하지 않는 한, 변경되지 않습니다. getParameter 로 이 파라미터를 조회하면(자), 상기의 파라미터가 적절히 설정되어 있는 경우만,true 가 돌려주어집니다. falseinfoset 를 false 로 설정해도 영향은 없습니다. "namespaces"truefalse"namespace-declarations"false 로 설정해도 영향은 없습니다.
truefalsefalse 로 설정되어 있어도, 이름 공간 접두사 ( Node.prefix)는 보관 유지됩니다. "normalize-characters"truefalse"schema-location"DOMString 객체를 나타냅니다. 이 객체는, 검증을 하는 schema (현재의 schema)를 나타냅니다. 이 리스트로 참조되는 schema의 형태는,schema-type 로 지정된 형태에 일치하지 않으면 안됩니다. 일치하지 않는 경우, 구현의 동작은 보증되지 않습니다. 이 프로퍼티을 사용해 지정된 schema는, 문서로 독자적으로 지정된 schema 정보보다 우선됩니다. 이름 공간 인식 schema의 경우, 이 프로퍼티으로 지정된 schema와 schema 문서 (schema import 메카니즘을 사용)의 문서 인스턴스 (schemaLocation 속성을 사용)로 지정된 schema가 같은 targetNamespace 를 공유할 때, 사용자가 이 프로퍼티을 사용해 지정한 schema가 사용됩니다. 이 프로퍼티을 사용해 지정된 2 개의 schema가, 같은 targetNamespace 를 공유하는지, 이름 공간을 가지지 않는 경우, 동작은 구현에 의존해 정해집니다. 장소를 지정하지 않았던 경우, 이 파라미터는 null 가 됩니다.
주: schema-type 파라미터치를 설정하지 않는 한,「schema-location」파라미터는 무시됩니다. Document.documentURI 를 설정해, 참조된 외부 엔티티를 구현으로 문제 없게 해결할 수 있도록(듯이) 하는 것을 강하게 추천합니다.
"schema-type"DOMString 객체를 표현합니다. 절대 URI 로, 자구 체크는 행해지지 않는 것에 주의. 이 파라미터가 설정되지 않는 경우, 구현에서는, 지원되고 있는 schema 언어나 로드시에 사용된 schema 언어에 응해, 디폴트의 값을 지정할 수 있습니다. 값을 지정하지 않는 경우, 이 파라미터는 null 가 됩니다.
주: XML schema「XML Schema Part 1」 의 경우는, 어플리케이션으로 값「http://www.w3.org/2001/XMLSchema」를 사용할 필요가 있습니다. XML DTD「XML 1.0」의 경우는, 어플리케이션으로 값「http://www.w3.org/TR/REC-xml」를 사용할 필요가 있습니다. 다른 schema 언어는 W3C 의 범위외이기 (위해)때문에, 이 메소드를 사용하려면 , 절대 URI 를 사용하는 것을 추천합니다.
"split-cdata-sections"trueDOMError.type 가 「cdata-sections-splitted」이며,DOMError.relatedData 가 문서의 최초의 CDATASection 노드인 경고가 통지됩니다. falseCDATASection 를 표현할 수 없는 문자를 포함한 경우에 에러를 통지합니다. "validate"truetrue 로 설정되어 있지 않은 한, 사용되고 있는 schema에 따라 schema 정규화치는 공개되지 않습니다.
Attr 인터페이스의 설명으로 지정되고 있도록(듯이),At tr.specified 가 false 인 속성 노드
Text.isElementContentWhitespace 속성의 값
Attr 노드의 Attr.isId 속성의 값
Element.schemaTypeInfo 속성과 Attr.schemaTypeInfo 속성
주: 「validate-if-schema」와「validate」는 서로 배타적입니다. 한편을 true 로 설정하면(자), 한편은 false 로 설정됩니다. 어플리케이션에서는, 문서의 검증시, 이 옵션의 디폴트인 well-formed 파라미터를 true 로 설정하는 일도 고려할 필요가 있습니다.
falsetrue 인 경우는, 검증을 할 가능성이 있습니다. "validate-if-schema"truetrue 로 설정되어 있을 때와 같은 동작을 합니다.
주: 「validate-if-schema」와「validate」는 서로 배타적입니다. 한편을 true 로 설정하면(자), 한편은 false 로 설정됩니다.
false true 인 경우는, 검증을 합니다. "well-formed"trueDocument.xmlVersion 로 사용되고 있는 XML 버젼에 따라, 모든 노드가 정형식의 XML 일지 어떨지를 체크합니다.
Node.nodeName 속성이 노드형에 대해서 무효인 문자를 포함하고 있는지 어떤지를 체크해, 필요에 따라서DOMError.SEVERITY_ERROR 중요도를 포함한 「wf-invalid-character-in-node-name」 형의 DOMError 를 생성한다
Attr,Element, Comment,Text,CDATASection 등의 노드내의 텍스트 컨텐츠가 무효인 문자를 포함하고 있는지 어떤지를 체크해, 필요에 따라서 DOMError.SEVERITY_ERROR 중요도를 포함한 「wf-invalid-character」형의 DOMError 를 생성한다
ProcessingInstruction 노드내의 데이터가 무효인 문자를 포함하고 있는지 어떤지를 체크해, 필요에 따라서 DOMErr or.SEVERITY_ERROR 중요도를 포함한「wf-invalid-character」 형의 DOMError 를 생성한다
false 엔티티에 관련하는 시스템 식별자의 해결은,Document.documentURI 를 사용해 행해집니다. 다만,「DOM Level 3 Load and Save」로 정의되고 있는 「LS」기능을 DOM 구현이 지원하고 있을 때는,Document 노드에 추가되고 있는 DOMConfiguration 객체로 「resource-resolver」파라미터를 사용할 수도 있습니다. 이 파라미터가 설정되어 있으면(자),Document.normalizeDocument() 는 Document.documentURI 를 이용하는 대신에 자원 리절버를 호출합니다.
「Document Object Model (DOM) Level 3 Core Specification」를 참조해 주세요.
| 메소드의 개요 | |
|---|---|
boolean |
canSetParameter (String name,
Object value)
특정의 값에 대해서 파라미터를 설정하는 것이 지원되고 있는지 어떤지를 체크합니다. |
Object |
getParameter (String name)
기존의 경우는, 파라미터의 값을 돌려줍니다. |
DOMStringList |
getParameterNames ()
DOMConfiguration 객체가 지원하고 있는 파라미터의 리스트. |
void |
setParameter (String name,
Object value)
파라미터의 값을 설정합니다. |
| 메소드의 상세 |
|---|
void setParameter(String name,
Object value)
throws DOMException
name - 설정하는 파라미터의 이름value - 새로운 값 또는 사용자가 파라미터를 설정하지 않는 경우는
null. 파라미터의 치 형은
DOMUserData 에 의해 정의되지만,
객체형은 파라미터의 정의에 의해 정의된 형태에 일치해야 한다. 예를 들어,
파라미터가 error-handler 인 경우, 값은 DOMErrorHandler
형태가 아니면 안된다
DOMException - NOT_FOUND_ERR:파라미터명이 인식되지 않는 경우
Object getParameter(String name)
throws DOMException
name - 파라미터의 이름
null
DOMException - NOT_FOUND_ERR:파라미터명이 인식되지 않는 경우
boolean canSetParameter(String name,
Object value)
name - 체크하는 파라미터의 이름value - 객체. null 의 경우, 반환되는 값은
true.
true.
파라미터가 인식되지 않는 경우나 요구된 값이
지원되어 있지 않은 경우는 false. 이것에 의해,
파라미터 자체의 현재의 값은 변경되지 않는다DOMStringList getParameterNames()
DOMConfiguration 객체가 지원하고 있는 파라미터의 리스트. 어플리케이션에서는 적어도 1 개의 값을 이러한 파라미터에 대해서 설정할 수 있습니다. 이 리스트에는, 이 스펙의 외부에서 정의된 파라미터명도 포함될 가능성이 있는 것에 주의해 주세요.
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
| 개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.