JavaTM Platform
Standard Ed. 6

org.xml.sax
인터페이스 DTDHandler

기존의 서브 인터페이스의 일람:
TransformerHandler
기존의 구현 클래스의 일람:
DefaultHandler , DefaultHandler2 , HandlerBase , XMLFilterImpl


public interface DTDHandler

표준 DTD 관련 이벤트의 통지를 받습니다.

이 모듈은, 원시 코드, 문서 모두 공개 도메인에 놓여져 있습니다. 따라서, 내용에 관한보증은 일절 제공되지 않습니다. 상세한 것에 대하여는,http://www.saxproject.org 를 참조해 주세요.

표기법이나 해석 대상외의 엔티티에 관한 정보가 필요한 경우, SAX 어플리케이션은 이 인터페이스를 구현해, 퍼서의 setDTDHandler 메소드를 사용해 인스턴스를 SAX 퍼서에게 등록합니다. 퍼서는 이 인스턴스를 사용해, 표기법이나 해석 대상외의 엔티티의 선언을 어플리케이션에 보고합니다.

이 인터페이스에는, XML 권고로 프로세서가 보고하지 않으면 안 된다고 여겨지고 있는 DTD 이벤트 (표기법과 해석 대상외 엔티티의 선언)만이 포함됩니다.

SAX 퍼서는, 이러한 이벤트를, 표기법이나 해석 대상외의 엔티티가 선언된 순서와는 관계없이, 임의의 순서로 보고합니다. 다만, 모든 DTD 이벤트는, 문서 핸들러의 startDocument 이벤트의 뒤와 최초의 startElement 이벤트의 전으로 보고되지 않으면 안됩니다. LexicalHandler 가 사용되고 있는 경우, 이러한 이벤트는 endDTD event 의 전에서도 보고될 필요가 있습니다.

장래 사용할 수 있도록(듯이) 정보를 해시 테이블이나 객체 트리내에 포함하는 어플리케이션과 그렇지 않은 어플리케이션이 있습니다. 「NOTATION」, 「ENTITY」또는 「ENTITIES」형의 속성이 검출되었을 경우, 어플리케이션은 이 인터페이스로부터 취득한 정보를 사용해 속성치에 대응하는 엔티티나 표기법을 검출할 수 있습니다.

도입된 버젼:
SAX 1.0
관련 항목:
XMLReader.setDTDHandler(org.xml.sax.DTDHandler)

메소드의 개요
 void notationDecl (String  name, String  publicId, String  systemId)
          표기법선언 이벤트의 통지를 받습니다.
 void unparsedEntityDecl (String  name, String  publicId, String  systemId, String  notationName)
          해석 대상외 엔티티 선언 이벤트의 통지를 받습니다.
 

메소드의 상세

notationDecl

void notationDecl(String  name,
                  String  publicId,
                  String  systemId)
                  throws SAXException 
표기법선언 이벤트의 통지를 받습니다.

나중에 참조할 수 있도록(듯이) 표기법을 기록하는 어플리케이션과 기록하지 않는 어플리케이션이 있습니다. 표기법은 속성치로서 해석 대상외 엔티티의 선언에 표시되는 일이 있어, 처리 명령의 타겟명으로 사용되는 일이 있습니다.

1 개 이상의 publicId 및 systemId 가 null 이외의 값이 아니면 안됩니다. 시스템 식별자가 존재해, 이것이 URL 인 경우, SAX 퍼서는 이 식별자를 이 이벤트로부터 어플리케이션에 건네주기 전에 완전하게 해결할 필요가 있습니다.

표기법선언이 이것을 사용하는 해석 대상외 엔티티의 전에 보고될지 어떨지는 보증되고 있지 않습니다.

파라미터:
name - 표기 법명
publicId - 표기법의 공개 식별자. 지정되지 않았던 경우는 null
systemId - 표기법의 시스템 식별자. 지정되지 않았던 경우는 null
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String) , Attributes

unparsedEntityDecl

void unparsedEntityDecl(String  name,
                        String  publicId,
                        String  systemId,
                        String  notationName)
                        throws SAXException 
해석 대상외 엔티티 선언 이벤트의 통지를 받습니다.

표기 법명은,notationDecl 이벤트에 의해 보고되는 표기법으로 일치하고 있습니다. 나중에 참조할 수 있도록(듯이) 엔티티를 기록하는 어플리케이션과 기록하지 않는 어플리케이션이 있습니다. 해석 대상외의 엔티티는 속성치로서 표시되는 일이 있습니다.

시스템 식별자가 URL 의 경우, 퍼서는 이것을 어플리케이션에 건네주기 전에 완전하게 해결할 필요가 있습니다.

파라미터:
name - 해석 대상외 엔티티명
publicId - 엔티티의 공개 식별자. 지정되지 않았던 경우는 null
systemId - 엔티티의 시스템 식별자
notationName - 관련 표기 법명
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
notationDecl(java.lang.String, java.lang.String, java.lang.String) , Attributes

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 도 참조해 주세요.