water.parser
Class PMMLParser

java.lang.Object
  extended by water.parser.PMMLParser

public class PMMLParser
extends java.lang.Object

Parse PMML models Full recursive-descent style parsing. MUCH easier to track the control flows than a SAX-style parser, and does not require the entire doc like a DOM-style. More tightly tied to the XML structure, but in theory PMML is a multi-vendor standard and fairly stable. Like a good R-D parser, uses a separate function for parsing each XML element. Each function expects to be at a particular parse-point (generally after the openning '<' and before the tag is parsed), and always leaves the parse just after the close-tag '>'. The semantic interpretation is then interleaved with the parsing, with higher levels passing down needed info to lower element levels, and lower levels directly returning results to the higher levels.


Nested Class Summary
static class PMMLParser.And
           
static class PMMLParser.BooleanOperators
           
static class PMMLParser.Comparison
           
static class PMMLParser.CompoundPredicate
           
static class PMMLParser.DataTypes
          Features datatypes promoted by PMML spec.
static class PMMLParser.Equals
           
static class PMMLParser.GreaterOrEqual
           
static class PMMLParser.GreaterThan
           
static class PMMLParser.IsIn
           
static class PMMLParser.IsMissing
           
static class PMMLParser.IsNotIn
           
static class PMMLParser.LessOrEqual
          Less or equal
static class PMMLParser.LessThan
           
static class PMMLParser.Operators
           
static class PMMLParser.Or
           
static class PMMLParser.ParseException
           
static class PMMLParser.Predicate
           
static class PMMLParser.True
           
 
Field Summary
 java.util.HashMap<java.lang.String,java.lang.String[]> _enums
           
 java.util.HashMap<java.lang.String,PMMLParser.DataTypes> _types
           
 
Method Summary
 java.util.HashMap<java.lang.String,java.lang.String> attrs()
           
 PMMLParser barf(char tok, char c)
           
 PMMLParser expect(char tok)
           
 PMMLParser expect(java.lang.String toks)
           
 int get()
           
static double getBoolean(java.lang.Comparable o)
           
static double getBoolean(java.util.HashMap<java.lang.String,java.lang.Comparable> row, java.lang.String s)
           
static double getNumber(java.lang.Comparable o)
           
static double getNumber(java.util.HashMap<java.lang.String,java.lang.Comparable> row, java.lang.String s)
           
static java.lang.String getString(java.lang.Comparable o)
           
static java.lang.String getString(java.util.HashMap<java.lang.String,java.lang.Comparable> row, java.lang.String s)
           
static ScoreModel parse(java.io.InputStream is)
           
 int peek()
           
 PMMLParser pGeneric(java.lang.String hdr)
           
 PMMLParser.Predicate pPredicate()
           
 int qget()
           
 void skipAttrs()
           
 PMMLParser skipWS()
           
 java.lang.String token()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_types

public final java.util.HashMap<java.lang.String,PMMLParser.DataTypes> _types

_enums

public final java.util.HashMap<java.lang.String,java.lang.String[]> _enums
Method Detail

parse

public static ScoreModel parse(java.io.InputStream is)

pGeneric

public PMMLParser pGeneric(java.lang.String hdr)

pPredicate

public PMMLParser.Predicate pPredicate()

get

public int get()

peek

public int peek()

qget

public int qget()

skipWS

public PMMLParser skipWS()

expect

public PMMLParser expect(char tok)

expect

public PMMLParser expect(java.lang.String toks)

barf

public PMMLParser barf(char tok,
                       char c)

token

public java.lang.String token()

attrs

public java.util.HashMap<java.lang.String,java.lang.String> attrs()

skipAttrs

public void skipAttrs()

getNumber

public static double getNumber(java.util.HashMap<java.lang.String,java.lang.Comparable> row,
                               java.lang.String s)

getNumber

public static double getNumber(java.lang.Comparable o)

getBoolean

public static double getBoolean(java.util.HashMap<java.lang.String,java.lang.Comparable> row,
                                java.lang.String s)

getBoolean

public static double getBoolean(java.lang.Comparable o)

getString

public static java.lang.String getString(java.util.HashMap<java.lang.String,java.lang.Comparable> row,
                                         java.lang.String s)

getString

public static java.lang.String getString(java.lang.Comparable o)