EXIficient

com.siemens.ct.exi.grammar.rule
Class AbstractSchemaInformedRule

java.lang.Object
  extended by com.siemens.ct.exi.grammar.rule.AbstractRule
      extended by com.siemens.ct.exi.grammar.rule.AbstractSchemaInformedRule
All Implemented Interfaces:
Rule, SchemaInformedRule
Direct Known Subclasses:
AbstractSchemaInformedContent, DocEnd, Document, Fragment, SchemaInformedDocContent, SchemaInformedFragmentContent

public abstract class AbstractSchemaInformedRule
extends AbstractRule
implements SchemaInformedRule

TODO Description

Version:
0.4.20081009
Author:
Daniel.Peintner.EXT@siemens.com, Joerg.Heuer@siemens.com

Constructor Summary
AbstractSchemaInformedRule()
           
AbstractSchemaInformedRule(java.lang.String label)
           
 
Method Summary
 void addRule(Event event, Rule rule)
           
 SchemaInformedRule duplicate()
           
 int get1stLevelEventCodeLength(FidelityOptions fidelityOptions)
           
 int getLeastAttributeEventCode()
           
 int getNumberOfEvents()
           
 int getNumberOfSchemaDeviatedAttributes()
           
 Rule getTypeEmpty()
           
 boolean hasSecondOrThirdLevel(FidelityOptions fidelityOptions)
           
 boolean isSchemaInformed()
           
 void joinRules(Rule rule)
           
 EventInformation lookFor(int eventCode)
           
 EventInformation lookForAttribute(java.lang.String namespaceURI, java.lang.String localName)
           
 EventInformation lookForAttributeNS(java.lang.String namespaceURI)
           
 EventInformation lookForEvent(EventType eventType)
           
 EventInformation lookForStartElement(java.lang.String namespaceURI, java.lang.String localName)
           
 EventInformation lookForStartElementNS(java.lang.String namespaceURI)
           
 void setFirstElementRule()
           
 void setNillable(boolean nil, SchemaInformedRule typeEmpty)
           
 void setTypeCastable(boolean isTypeCastable)
           
 java.lang.String toString()
           
 
Methods inherited from class com.siemens.ct.exi.grammar.rule.AbstractRule
addTerminalRule, equals, get3rdLevelCharacteristics, get3rdLevelEvent, get3rdLevelEventCode, getElementContentRule, getLabel, hashCode, learnAttribute, learnCharacters, learnEndElement, learnStartElement, setLabel
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.siemens.ct.exi.grammar.rule.SchemaInformedRule
addTerminalRule, getLabel, setLabel
 
Methods inherited from interface com.siemens.ct.exi.grammar.rule.Rule
get2ndLevelCharacteristics, get2ndLevelEvent, get2ndLevelEventCode, get3rdLevelCharacteristics, get3rdLevelEvent, get3rdLevelEventCode, getElementContentRule, learnAttribute, learnCharacters, learnEndElement, learnStartElement
 

Constructor Detail

AbstractSchemaInformedRule

public AbstractSchemaInformedRule()

AbstractSchemaInformedRule

public AbstractSchemaInformedRule(java.lang.String label)
Method Detail

isSchemaInformed

public final boolean isSchemaInformed()
Specified by:
isSchemaInformed in interface Rule

hasSecondOrThirdLevel

public boolean hasSecondOrThirdLevel(FidelityOptions fidelityOptions)
Specified by:
hasSecondOrThirdLevel in interface Rule

get1stLevelEventCodeLength

public int get1stLevelEventCodeLength(FidelityOptions fidelityOptions)
Specified by:
get1stLevelEventCodeLength in interface Rule

setTypeCastable

public void setTypeCastable(boolean isTypeCastable)
Specified by:
setTypeCastable in interface SchemaInformedRule

setNillable

public void setNillable(boolean nil,
                        SchemaInformedRule typeEmpty)
Specified by:
setNillable in interface SchemaInformedRule

getTypeEmpty

public Rule getTypeEmpty()
Specified by:
getTypeEmpty in interface SchemaInformedRule

getNumberOfSchemaDeviatedAttributes

public int getNumberOfSchemaDeviatedAttributes()
Specified by:
getNumberOfSchemaDeviatedAttributes in interface Rule

getLeastAttributeEventCode

public int getLeastAttributeEventCode()
Specified by:
getLeastAttributeEventCode in interface Rule

getNumberOfEvents

public int getNumberOfEvents()
Specified by:
getNumberOfEvents in interface Rule

addRule

public void addRule(Event event,
                    Rule rule)
Specified by:
addRule in interface Rule

joinRules

public void joinRules(Rule rule)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

duplicate

public SchemaInformedRule duplicate()
Specified by:
duplicate in interface SchemaInformedRule

lookForEvent

public EventInformation lookForEvent(EventType eventType)
Specified by:
lookForEvent in interface Rule

lookForStartElement

public EventInformation lookForStartElement(java.lang.String namespaceURI,
                                            java.lang.String localName)
Specified by:
lookForStartElement in interface Rule

lookForStartElementNS

public EventInformation lookForStartElementNS(java.lang.String namespaceURI)
Specified by:
lookForStartElementNS in interface Rule

lookForAttribute

public EventInformation lookForAttribute(java.lang.String namespaceURI,
                                         java.lang.String localName)
Specified by:
lookForAttribute in interface Rule

lookForAttributeNS

public EventInformation lookForAttributeNS(java.lang.String namespaceURI)
Specified by:
lookForAttributeNS in interface Rule

lookFor

public EventInformation lookFor(int eventCode)
Specified by:
lookFor in interface Rule

setFirstElementRule

public void setFirstElementRule()
Specified by:
setFirstElementRule in interface SchemaInformedRule

EXIficient