http://swpat.ffii.org/Action against software patents http://www.gnome.org/Gnome2 Logo http://www.w3.org/StatusW3C Logo http://www.redhat.com/Red Hat Logo http://xmlsoft.org/Made with Libxml2 Logo 
Module xmlautomata from libxml2
API Menu ../index.htmlMain Menu ../docs.htmlDeveloper Menu ../examples/index.htmlCode Examples index.htmlAPI Menu libxml-parser.htmlParser API libxml-tree.htmlTree API libxml-xmlreader.htmlReader API ../guidelines.htmlXML Guidelines ../ChangeLog.htmlChangeLog API Indexes ../APIchunk0.htmlAlphabetic ../APIconstructors.htmlConstructors ../APIfunctions.htmlFunctions/Types ../APIfiles.htmlModules ../APIsymbols.htmlSymbols Related links http://mail.gnome.org/archives/xml/Mail archive http://xmlsoft.org/XSLT/XSLT libxslt http://phd.cs.unibo.it/gdome2/DOM gdome2 http://www.aleksey.com/xmlsec/XML-DSig xmlsec ftp://xmlsoft.org/FTP http://www.zlatkovic.com/projects/libxml/Windows binaries http://www.blastwave.org/packages.php/libxml2Solaris binaries http://www.explain.com.au/oss/libxml2xslt.htmlMacOsX binaries http://libxmlplusplus.sourceforge.net/C++ bindings http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4PHP bindings http://sourceforge.net/projects/libxml2-pas/Pascal bindings http://rubyforge.org/projects/xml-tools/Ruby bindings http://tclxml.sourceforge.net/Tcl bindings http://bugzilla.gnome.org/buglist.cgi?product=libxml2Bug Tracker libxml-xmlIO.htmlPrev libxml-xmlIO.htmlxmlIO index.htmlUp index.htmlAPI documentation ../index.htmlHome ../index.htmlThe XML C parser and toolkit of Gnome libxml-xmlerror.htmlxmlerror libxml-xmlerror.htmlNext the API to build regexp automata 
Table of Contents
Structure #xmlAutomataxmlAutomata struct _xmlAutomata
The content of this structure is not made public by the API.
Typedef libxml-xmlautomata.html#xmlAutomataxmlAutomata  * xmlAutomataPtr Structure #xmlAutomataStatexmlAutomataState struct _xmlAutomataState
The content of this structure is not made public by the API.
Typedef libxml-xmlautomata.html#xmlAutomataStatexmlAutomataState  * xmlAutomataStatePtr libxml-xmlregexp.html#xmlRegexpPtrxmlRegexpPtr 	#xmlAutomataCompilexmlAutomataCompile 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataGetInitStatexmlAutomataGetInitState 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am)int	#xmlAutomataIsDeterministxmlAutomataIsDeterminist 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewAllTransxmlAutomataNewAllTrans 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 						 int lax) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewCountTransxmlAutomataNewCountTrans 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token, 							 int min, 							 int max, 							 void * data) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewCountTrans2xmlAutomataNewCountTrans2 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token2, 							 int min, 							 int max, 							 void * data) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewCountedTransxmlAutomataNewCountedTrans 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 int counter)int	#xmlAutomataNewCounterxmlAutomataNewCounter 		( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 					 int min, 					 int max) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewCounterTransxmlAutomataNewCounterTrans 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 int counter) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewEpsilonxmlAutomataNewEpsilon 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewNegTransxmlAutomataNewNegTrans 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 						 const libxml-xmlstring.html#xmlCharxmlChar  * token, 						 const libxml-xmlstring.html#xmlCharxmlChar  * token2, 						 void * data) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewOnceTransxmlAutomataNewOnceTrans 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 						 const libxml-xmlstring.html#xmlCharxmlChar  * token, 						 int min, 						 int max, 						 void * data) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewOnceTrans2xmlAutomataNewOnceTrans2 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token2, 							 int min, 							 int max, 							 void * data) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewStatexmlAutomataNewState 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewTransitionxmlAutomataNewTransition 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token, 							 void * data) libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	#xmlAutomataNewTransition2xmlAutomataNewTransition2 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token2, 							 void * data)int	#xmlAutomataSetFinalStatexmlAutomataSetFinalState 	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 					 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  state)void	#xmlFreeAutomataxmlFreeAutomata 			( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am) libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr 	#xmlNewAutomataxmlNewAutomata 		(void)Description
Structure xmlAutomata 
Structure xmlAutomatastruct _xmlAutomata {
The content of this structure is not made public by the API.
}
      A libxml automata description, It can be compiled into a regexp
    
Structure xmlAutomataState 
Structure xmlAutomataStatestruct _xmlAutomataState {
The content of this structure is not made public by the API.
}
      A state int the automata description,
    
Function: xmlAutomataCompile
libxml-xmlregexp.html#xmlRegexpPtrxmlRegexpPtr 	xmlAutomataCompile	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am)Compile the automata into a Reg Exp ready for being executed. The automata should be free after this point.
am: an automata Returns: the compiled regexp or NULL in case of error Function: xmlAutomataGetInitState
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataGetInitState	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am)Initial state lookup
am: an automata Returns: the initial state of the automata Function: xmlAutomataIsDeterminist
int	xmlAutomataIsDeterminist	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am)Checks if an automata is determinist.
am: an automata Returns: 1 if true, 0 if not, and -1 in case of error Function: xmlAutomataNewAllTrans
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewAllTrans	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 						 int lax)If @to is NULL, this creates first a new target state in the automata and then adds a an ALL transition from the @from state to the target state. That transition is an epsilon transition allowed only when all transitions from the @from node have been activated.
am: an automata from: the starting point of the transition to: the target point of the transition or NULL lax: allow to transition if not all all transitions have been activated Returns: the target state or NULL in case of error Function: xmlAutomataNewCountTrans
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewCountTrans	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token, 							 int min, 							 int max, 							 void * data)If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and whose number is between @min and @max
am: an automata from: the starting point of the transition to: the target point of the transition or NULL token: the input string associated to that transition min: the minimum successive occurences of token max: the maximum successive occurences of token data: data associated to the transition Returns: the target state or NULL in case of error Function: xmlAutomataNewCountTrans2
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewCountTrans2	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token2, 							 int min, 							 int max, 							 void * data)If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and @token2 and whose number is between @min and @max
am: an automata from: the starting point of the transition to: the target point of the transition or NULL token: the input string associated to that transition token2: the second input string associated to that transition min: the minimum successive occurences of token max: the maximum successive occurences of token data: data associated to the transition Returns: the target state or NULL in case of error Function: xmlAutomataNewCountedTrans
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewCountedTrans	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 int counter)If @to is NULL, this creates first a new target state in the automata and then adds an epsilon transition from the @from state to the target state which will increment the counter provided
am: an automata from: the starting point of the transition to: the target point of the transition or NULL counter: the counter associated to that transition Returns: the target state or NULL in case of error Function: xmlAutomataNewCounter
int	xmlAutomataNewCounter		( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 					 int min, 					 int max)Create a new counter
am: an automata min: the minimal value on the counter max: the maximal value on the counter Returns: the counter number or -1 in case of error Function: xmlAutomataNewCounterTrans
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewCounterTrans	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 int counter)If @to is NULL, this creates first a new target state in the automata and then adds an epsilon transition from the @from state to the target state which will be allowed only if the counter is within the right range.
am: an automata from: the starting point of the transition to: the target point of the transition or NULL counter: the counter associated to that transition Returns: the target state or NULL in case of error Function: xmlAutomataNewEpsilon
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewEpsilon	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to)If @to is NULL, this creates first a new target state in the automata and then adds an epsilon transition from the @from state to the target state
am: an automata from: the starting point of the transition to: the target point of the transition or NULL Returns: the target state or NULL in case of error Function: xmlAutomataNewNegTrans
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewNegTrans	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 						 const libxml-xmlstring.html#xmlCharxmlChar  * token, 						 const libxml-xmlstring.html#xmlCharxmlChar  * token2, 						 void * data)If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by any value except (@token,@token2) Note that if @token2 is not NULL, then (X, NULL) won't match to follow # the semantic of XSD ##other
am: an automata from: the starting point of the transition to: the target point of the transition or NULL token: the first input string associated to that transition token2: the second input string associated to that transition data: data passed to the callback function if the transition is activated Returns: the target state or NULL in case of error Function: xmlAutomataNewOnceTrans
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewOnceTrans	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 						 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 						 const libxml-xmlstring.html#xmlCharxmlChar  * token, 						 int min, 						 int max, 						 void * data)If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and whose number is between @min and @max, moreover that transition can only be crossed once.
am: an automata from: the starting point of the transition to: the target point of the transition or NULL token: the input string associated to that transition min: the minimum successive occurences of token max: the maximum successive occurences of token data: data associated to the transition Returns: the target state or NULL in case of error Function: xmlAutomataNewOnceTrans2
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewOnceTrans2	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token2, 							 int min, 							 int max, 							 void * data)If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and @token2 and whose number is between @min and @max, moreover that transition can only be crossed once.
am: an automata from: the starting point of the transition to: the target point of the transition or NULL token: the input string associated to that transition token2: the second input string associated to that transition min: the minimum successive occurences of token max: the maximum successive occurences of token data: data associated to the transition Returns: the target state or NULL in case of error Function: xmlAutomataNewState
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewState	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am)Create a new disconnected state in the automata
am: an automata Returns: the new state or NULL in case of error Function: xmlAutomataNewTransition
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewTransition	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token, 							 void * data)If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by the value of @token
am: an automata from: the starting point of the transition to: the target point of the transition or NULL token: the input string associated to that transition data: data passed to the callback function if the transition is activated Returns: the target state or NULL in case of error Function: xmlAutomataNewTransition2
libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr 	xmlAutomataNewTransition2	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  from, 							 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  to, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token, 							 const libxml-xmlstring.html#xmlCharxmlChar  * token2, 							 void * data)If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by the value of @token
am: an automata from: the starting point of the transition to: the target point of the transition or NULL token: the first input string associated to that transition token2: the second input string associated to that transition data: data passed to the callback function if the transition is activated Returns: the target state or NULL in case of error Function: xmlAutomataSetFinalState
int	xmlAutomataSetFinalState	( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am, 					 libxml-xmlautomata.html#xmlAutomataStatePtrxmlAutomataStatePtr  state)Makes that state a final state
am: an automata state: a state in this automata Returns: 0 or -1 in case of error Function: xmlFreeAutomata
void	xmlFreeAutomata			( libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr  am)Free an automata
am: an automata Function: xmlNewAutomata
libxml-xmlautomata.html#xmlAutomataPtrxmlAutomataPtr 	xmlNewAutomata		(void)Create a new automata
Returns: the new object or NULL in case of failure ../bugs.htmlDaniel Veillard 
