com.jaxfront.core.xsdgen
Class DTDGenerator

java.lang.Object
  extended by org.xml.sax.helpers.DefaultHandler
      extended by com.jaxfront.core.xsdgen.DTDGenerator
All Implemented Interfaces:
org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

public class DTDGenerator
extends org.xml.sax.helpers.DefaultHandler

DTDGenerator
Generates a possible DTD from an XML document instance. Pure SAX version of the Saxon DTDGenerator The program has no remaining dependencies on Saxon; all it needs is: JAXP 1.1 SAX2 A JAXP 1.1 conformant XML parser Java 1.2

Version:
7.0: separated from Saxon source, now works with any JAXP 1.1 XML parser
Author:
M.H.Kay

Constructor Summary
DTDGenerator()
           
 
Method Summary
 void characters(char[] ch, int start, int length)
          Handle character data.
 void endElement(java.lang.String uri, java.lang.String localName, java.lang.String name)
          End of element.
static java.net.URL generate(java.net.URL xmlURL)
          Entry point Usage: java DTDSAXGen input-file >output-file
static java.net.URL generateXSD(java.net.URL xmlURL)
           
 void startElement(java.lang.String uri, java.lang.String localName, java.lang.String name, org.xml.sax.Attributes attributes)
          Handle the start of an element.
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DTDGenerator

public DTDGenerator()
Method Detail

generate

public static java.net.URL generate(java.net.URL xmlURL)
                             throws java.lang.Exception
Entry point Usage: java DTDSAXGen input-file >output-file

Throws:
java.lang.Exception

generateXSD

public static java.net.URL generateXSD(java.net.URL xmlURL)
                                throws java.lang.Exception
Throws:
java.lang.Exception

startElement

public void startElement(java.lang.String uri,
                         java.lang.String localName,
                         java.lang.String name,
                         org.xml.sax.Attributes attributes)
                  throws org.xml.sax.SAXException
Handle the start of an element. Record information about the position of this element relative to its parent, and about the attributes of the element.

Specified by:
startElement in interface org.xml.sax.ContentHandler
Overrides:
startElement in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

endElement

public void endElement(java.lang.String uri,
                       java.lang.String localName,
                       java.lang.String name)
                throws org.xml.sax.SAXException
End of element. If sequenced, check that all expected children are accounted for.

Specified by:
endElement in interface org.xml.sax.ContentHandler
Overrides:
endElement in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

characters

public void characters(char[] ch,
                       int start,
                       int length)
                throws org.xml.sax.SAXException
Handle character data. Make a note whether significant character data is found in the element

Specified by:
characters in interface org.xml.sax.ContentHandler
Overrides:
characters in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException