Package com.sun.xml.analysis.frequency
Class FrequencyHandler
- java.lang.Object
-
- org.xml.sax.helpers.DefaultHandler
-
- com.sun.xml.analysis.frequency.FrequencyHandler
-
- All Implemented Interfaces:
org.xml.sax.ContentHandler
,org.xml.sax.DTDHandler
,org.xml.sax.EntityResolver
,org.xml.sax.ErrorHandler
public class FrequencyHandler extends org.xml.sax.helpers.DefaultHandler
A SAX-based handler to collect the frequency of occurences of properties of information items in one or more infosets.
-
-
Field Summary
Fields Modifier and Type Field Description private FrequencySet<javax.xml.namespace.QName>
attributes
private FrequencySet<java.lang.String>
attributeValues
private FrequencySet<javax.xml.namespace.QName>
elements
private FrequencySet<java.lang.String>
localNames
private FrequencySet<java.lang.String>
namespaces
private java.util.Map<java.lang.String,java.util.Set<javax.xml.namespace.QName>>
namespacesToAttributes
private java.util.Map<java.lang.String,java.util.Set<javax.xml.namespace.QName>>
namespacesToElements
private java.util.Map<java.lang.String,java.lang.String>
namespaceURIToPrefix
private java.lang.StringBuilder
prefixBuilder
private char
prefixCharacter
private FrequencySet<java.lang.String>
prefixes
private FrequencySet<java.lang.String>
textContentValues
-
Constructor Summary
Constructors Constructor Description FrequencyHandler()
The default frequency handler.FrequencyHandler(SchemaProcessor sp)
A frequency handler initiated with information generated from aSchemaProcessor
.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description private void
addAll(java.util.Set to, java.util.Set<?> from)
private void
addQName(javax.xml.namespace.QName q, java.util.Map<java.lang.String,java.util.Set<javax.xml.namespace.QName>> m, FrequencySet<javax.xml.namespace.QName> fhm)
void
addQNameToAttributes(javax.xml.namespace.QName q)
void
addQNameToElements(javax.xml.namespace.QName q)
void
addXsiAttributes()
private void
bucketQNamesToNamespace(java.util.Set<javax.xml.namespace.QName> s, java.util.Map<java.lang.String,java.util.Set<javax.xml.namespace.QName>> m)
private javax.xml.namespace.QName
createQName(java.lang.String uri, java.lang.String localName, java.lang.String qName)
void
generateQNamesWithPrefix()
Generate qualified names that have not been processed.private void
generateQNamesWithPrefix(java.util.Map<java.lang.String,java.util.Set<javax.xml.namespace.QName>> m, FrequencySet<javax.xml.namespace.QName> fhm, java.util.Map<java.lang.String,java.lang.String> namespaceURIToPrefix)
FrequencyBasedLists
getLists()
Deprecated.java.util.Map<java.lang.String,java.lang.String>
getNamespaceURIToPrefixMap()
private java.lang.String
getNewPrefix()
Vocabulary
getVocabulary()
Get the vocabularyvoid
startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts)
void
startPrefixMapping(java.lang.String prefix, java.lang.String uri)
-
-
-
Field Detail
-
namespacesToElements
private java.util.Map<java.lang.String,java.util.Set<javax.xml.namespace.QName>> namespacesToElements
-
namespacesToAttributes
private java.util.Map<java.lang.String,java.util.Set<javax.xml.namespace.QName>> namespacesToAttributes
-
namespaceURIToPrefix
private java.util.Map<java.lang.String,java.lang.String> namespaceURIToPrefix
-
prefixes
private FrequencySet<java.lang.String> prefixes
-
namespaces
private FrequencySet<java.lang.String> namespaces
-
localNames
private FrequencySet<java.lang.String> localNames
-
elements
private FrequencySet<javax.xml.namespace.QName> elements
-
attributes
private FrequencySet<javax.xml.namespace.QName> attributes
-
attributeValues
private FrequencySet<java.lang.String> attributeValues
-
textContentValues
private FrequencySet<java.lang.String> textContentValues
-
prefixBuilder
private java.lang.StringBuilder prefixBuilder
-
prefixCharacter
private char prefixCharacter
-
-
Constructor Detail
-
FrequencyHandler
public FrequencyHandler()
The default frequency handler.
-
FrequencyHandler
public FrequencyHandler(SchemaProcessor sp)
A frequency handler initiated with information generated from aSchemaProcessor
.- Parameters:
sp
- the schema processor.
-
-
Method Detail
-
addXsiAttributes
public void addXsiAttributes()
-
addQNameToElements
public void addQNameToElements(javax.xml.namespace.QName q)
-
addQNameToAttributes
public void addQNameToAttributes(javax.xml.namespace.QName q)
-
getLists
public FrequencyBasedLists getLists()
Deprecated.Get the frequency based lists of properties of information items.- Returns:
- the frequency based lists.
-
getVocabulary
public Vocabulary getVocabulary()
Get the vocabulary- Returns:
- the vocabulary.
-
generateQNamesWithPrefix
public void generateQNamesWithPrefix()
Generate qualified names that have not been processed.Prefixes are automatically chosen.
TODO: check for clashes with prefixes generated and prefixes that have already occured.
-
getNamespaceURIToPrefixMap
public java.util.Map<java.lang.String,java.lang.String> getNamespaceURIToPrefixMap()
-
addAll
private void addAll(java.util.Set to, java.util.Set<?> from)
-
bucketQNamesToNamespace
private void bucketQNamesToNamespace(java.util.Set<javax.xml.namespace.QName> s, java.util.Map<java.lang.String,java.util.Set<javax.xml.namespace.QName>> m)
-
startPrefixMapping
public void startPrefixMapping(java.lang.String prefix, java.lang.String uri) throws org.xml.sax.SAXException
- Specified by:
startPrefixMapping
in interfaceorg.xml.sax.ContentHandler
- Overrides:
startPrefixMapping
in classorg.xml.sax.helpers.DefaultHandler
- Throws:
org.xml.sax.SAXException
-
startElement
public void startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts) throws org.xml.sax.SAXException
- Specified by:
startElement
in interfaceorg.xml.sax.ContentHandler
- Overrides:
startElement
in classorg.xml.sax.helpers.DefaultHandler
- Throws:
org.xml.sax.SAXException
-
addQName
private void addQName(javax.xml.namespace.QName q, java.util.Map<java.lang.String,java.util.Set<javax.xml.namespace.QName>> m, FrequencySet<javax.xml.namespace.QName> fhm)
-
createQName
private javax.xml.namespace.QName createQName(java.lang.String uri, java.lang.String localName, java.lang.String qName)
-
generateQNamesWithPrefix
private void generateQNamesWithPrefix(java.util.Map<java.lang.String,java.util.Set<javax.xml.namespace.QName>> m, FrequencySet<javax.xml.namespace.QName> fhm, java.util.Map<java.lang.String,java.lang.String> namespaceURIToPrefix)
-
getNewPrefix
private java.lang.String getNewPrefix()
-
-