jInfer

cz.cuni.mff.ksi.jinfer.xsdimportdom
Class DOMParser

java.lang.Object
  extended by cz.cuni.mff.ksi.jinfer.xsdimportdom.DOMParser
All Implemented Interfaces:
NamedModule, XSDParser

public class DOMParser
extends Object
implements XSDParser

Class responsible for creating Initial Grammar rules from XSD Schema. Provides XSD Schema parsing support using Xerces DOM parser from SUN.

Xerces DOM parser is used to build the DOM tree from a stream, this DOM tree is then passed to DOMHandler class to create rule-trees for each of the top level element tags. After the rule-trees are complete, rules from each rule-tree are extracted. The union of these extracted rules are the IG rules. IG rules may contain complex regular expressions (depending on a particular schema) and may need to be expanded using Expander before they can be simplified.

Please read package info.


Constructor Summary
DOMParser()
           
 
Method Summary
 String getDisplayName()
          Returns a user friendly name of the module.
 String getModuleDescription()
          Returns the information about this module's inner workings.
 String getName()
          Returns a user friendly yet unique name of the module.
 List<Element> parse(InputStream stream)
          Parses input Schema and returns the rules extracted from it.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DOMParser

public DOMParser()
Method Detail

parse

public List<Element> parse(InputStream stream)
                    throws XSDException,
                           InterruptedException
Description copied from interface: XSDParser
Parses input Schema and returns the rules extracted from it.

Specified by:
parse in interface XSDParser
Parameters:
stream - Stream containing XSDSchema document.
Returns:
Rules contained within. Empty list if there are no rules or an error occurs.
Throws:
XSDException - When parsing error occurs.
InterruptedException - When user cancels the operation.

getName

public String getName()
Description copied from interface: NamedModule
Returns a user friendly yet unique name of the module.

Specified by:
getName in interface NamedModule
Returns:
Unique module name.

getModuleDescription

public String getModuleDescription()
Description copied from interface: NamedModule
Returns the information about this module's inner workings. Most of the time will be equal to a call to NamedModule.getDisplayName(), but if the module for example consists of more sub-modules, their names should be listed here.

Specified by:
getModuleDescription in interface NamedModule
Returns:
String describing inner structure of the module.

getDisplayName

public String getDisplayName()
Description copied from interface: NamedModule
Returns a user friendly name of the module. This name is not neccessary unique.

Specified by:
getDisplayName in interface NamedModule
Returns:
Displayable module name.

jInfer

Generated on Fri Dec 9 00:01:25 CET 2011