nu.validator.spec.html5
Class Html5SpecBuilder

java.lang.Object
  extended by nu.validator.spec.html5.Html5SpecBuilder
All Implemented Interfaces:
ContentHandler

public class Html5SpecBuilder
extends Object
implements ContentHandler


Nested Class Summary
private static class Html5SpecBuilder.State
           
 
Field Summary
private static Pattern ATTRIBUTES
           
private  Map<Name,DocumentFragment> attributesByElement
           
private  int captureDepth
           
private static Pattern CONTENT_MODEL
           
private  Map<Name,DocumentFragment> contentModelsByElement
           
private static Pattern CONTEXT
           
private  Map<Name,DocumentFragment> contextsByElement
           
private  String currentId
           
private  Name currentName
           
private static Pattern ELEMENT
           
private  TreeBuilder fragmentBuilder
           
private  StringBuilder nameText
           
private static String NS
           
private  StringBuilder referenceText
           
private static String SPEC_URI
           
private  Html5SpecBuilder.State state
           
private  Map<Name,String> urisByElement
           
 
Constructor Summary
private Html5SpecBuilder()
           
 
Method Summary
private  Spec buildSpec()
           
 void characters(char[] ch, int start, int length)
           
 void endDocument()
           
 void endElement(String uri, String localName, String qName)
           
 void endPrefixMapping(String prefix)
           
 void ignorableWhitespace(char[] ch, int start, int length)
           
static void main(String[] args)
           
static Spec parseSpec(InputSource in)
           
 void processingInstruction(String target, String data)
           
 void setDocumentLocator(Locator locator)
           
 void skippedEntity(String name)
           
 void startDocument()
           
 void startElement(String uri, String localName, String qName, Attributes atts)
           
 void startPrefixMapping(String prefix, String uri)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NS

private static final String NS
See Also:
Constant Field Values

SPEC_URI

private static final String SPEC_URI
See Also:
Constant Field Values

ELEMENT

private static final Pattern ELEMENT

CONTEXT

private static final Pattern CONTEXT

CONTENT_MODEL

private static final Pattern CONTENT_MODEL

ATTRIBUTES

private static final Pattern ATTRIBUTES

state

private Html5SpecBuilder.State state

captureDepth

private int captureDepth

currentId

private String currentId

nameText

private StringBuilder nameText

referenceText

private StringBuilder referenceText

fragmentBuilder

private TreeBuilder fragmentBuilder

currentName

private Name currentName

urisByElement

private Map<Name,String> urisByElement

contextsByElement

private Map<Name,DocumentFragment> contextsByElement

contentModelsByElement

private Map<Name,DocumentFragment> contentModelsByElement

attributesByElement

private Map<Name,DocumentFragment> attributesByElement
Constructor Detail

Html5SpecBuilder

private Html5SpecBuilder()
Method Detail

parseSpec

public static Spec parseSpec(InputSource in)
                      throws IOException,
                             SAXException
Throws:
IOException
SAXException

main

public static void main(String[] args)
                 throws IOException,
                        SAXException
Throws:
IOException
SAXException

buildSpec

private Spec buildSpec()

characters

public void characters(char[] ch,
                       int start,
                       int length)
                throws SAXException
Specified by:
characters in interface ContentHandler
Throws:
SAXException

endDocument

public void endDocument()
                 throws SAXException
Specified by:
endDocument in interface ContentHandler
Throws:
SAXException

endElement

public void endElement(String uri,
                       String localName,
                       String qName)
                throws SAXException
Specified by:
endElement in interface ContentHandler
Throws:
SAXException

endPrefixMapping

public void endPrefixMapping(String prefix)
                      throws SAXException
Specified by:
endPrefixMapping in interface ContentHandler
Throws:
SAXException

ignorableWhitespace

public void ignorableWhitespace(char[] ch,
                                int start,
                                int length)
                         throws SAXException
Specified by:
ignorableWhitespace in interface ContentHandler
Throws:
SAXException

processingInstruction

public void processingInstruction(String target,
                                  String data)
                           throws SAXException
Specified by:
processingInstruction in interface ContentHandler
Throws:
SAXException

setDocumentLocator

public void setDocumentLocator(Locator locator)
Specified by:
setDocumentLocator in interface ContentHandler

skippedEntity

public void skippedEntity(String name)
                   throws SAXException
Specified by:
skippedEntity in interface ContentHandler
Throws:
SAXException

startDocument

public void startDocument()
                   throws SAXException
Specified by:
startDocument in interface ContentHandler
Throws:
SAXException

startElement

public void startElement(String uri,
                         String localName,
                         String qName,
                         Attributes atts)
                  throws SAXException
Specified by:
startElement in interface ContentHandler
Throws:
SAXException

startPrefixMapping

public void startPrefixMapping(String prefix,
                               String uri)
                        throws SAXException
Specified by:
startPrefixMapping in interface ContentHandler
Throws:
SAXException