-
- All Known Implementing Classes:
- DefaultHandler2
public interface DeclHandler
SAX2 extension handler for DTD declaration events.This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org for further information.
This is an optional extension handler for SAX2 to provide more complete information about DTD declarations in an XML document. XML readers are not required to recognize this handler, and it is not part of core-only SAX2 distributions.
Note that data-related DTD declarations (unparsed entities and notations) are already reported through the
DTDHandler
interface.If you are using the declaration handler together with a lexical handler, all of the events will occur between the
startDTD
and theendDTD
events.To set the DeclHandler for an XML reader, use the
setProperty
method with the property namehttp://xml.org/sax/properties/declaration-handler
and an object implementing this interface (or null) as the value. If the reader does not report declaration events, it will throw aSAXNotRecognizedException
when you attempt to register the handler.- Since:
- SAX 2.0 (extensions 1.0)
-
-
Method Summary
Methods Modifier and Type Method and Description void
attributeDecl(String eName, String aName, String type, String mode, String value)
Report an attribute type declaration.void
elementDecl(String name, String model)
Report an element type declaration.void
externalEntityDecl(String name, String publicId, String systemId)
Report a parsed external entity declaration.void
internalEntityDecl(String name, String value)
Report an internal entity declaration.
-
-
-
Method Detail
-
elementDecl
void elementDecl(String name, String model) throws SAXException
Report an element type declaration.The content model will consist of the string "EMPTY", the string "ANY", or a parenthesised group, optionally followed by an occurrence indicator. The model will be normalized so that all parameter entities are fully resolved and all whitespace is removed,and will include the enclosing parentheses. Other normalization (such as removing redundant parentheses or simplifying occurrence indicators) is at the discretion of the parser.
- Parameters:
name
- The element type name.model
- The content model as a normalized string.- Throws:
SAXException
- The application may raise an exception.
-
attributeDecl
void attributeDecl(String eName, String aName, String type, String mode, String value) throws SAXException
Report an attribute type declaration.Only the effective (first) declaration for an attribute will be reported. The type will be one of the strings "CDATA", "ID", "IDREF", "IDREFS", "NMTOKEN", "NMTOKENS", "ENTITY", "ENTITIES", a parenthesized token group with the separator "|" and all whitespace removed, or the word "NOTATION" followed by a space followed by a parenthesized token group with all whitespace removed.
The value will be the value as reported to applications, appropriately normalized and with entity and character references expanded.
- Parameters:
eName
- The name of the associated element.aName
- The name of the attribute.type
- A string representing the attribute type.mode
- A string representing the attribute defaulting mode ("#IMPLIED", "#REQUIRED", or "#FIXED") or null if none of these applies.value
- A string representing the attribute's default value, or null if there is none.- Throws:
SAXException
- The application may raise an exception.
-
internalEntityDecl
void internalEntityDecl(String name, String value) throws SAXException
Report an internal entity declaration.Only the effective (first) declaration for each entity will be reported. All parameter entities in the value will be expanded, but general entities will not.
- Parameters:
name
- The name of the entity. If it is a parameter entity, the name will begin with '%'.value
- The replacement text of the entity.- Throws:
SAXException
- The application may raise an exception.- See Also:
externalEntityDecl(java.lang.String, java.lang.String, java.lang.String)
,DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
-
externalEntityDecl
void externalEntityDecl(String name, String publicId, String systemId) throws SAXException
Report a parsed external entity declaration.Only the effective (first) declaration for each entity will be reported.
If the system identifier is a URL, the parser must resolve it fully before passing it to the application.
- Parameters:
name
- The name of the entity. If it is a parameter entity, the name will begin with '%'.publicId
- The entity's public identifier, or null if none was given.systemId
- The entity's system identifier.- Throws:
SAXException
- The application may raise an exception.- See Also:
internalEntityDecl(java.lang.String, java.lang.String)
,DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
-
-
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 11/06/2005 gemaakt, de laatste keer de 04/03/2020 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/java-api-rf-org/xml/sax/ext/declhandler.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.