http://swpat.ffii.org/
Action against software patents
http://www.gnome.org/
Gnome2 Logo
http://www.w3.org/Status
W3C Logo
http://www.redhat.com/
Red Hat Logo
http://xmlsoft.org/
Made with Libxml2 Logo
Module xmlautomata from libxml2
API Menu
../index.html
Main Menu
../docs.html
Developer Menu
../examples/index.html
Code Examples
index.html
API Menu
libxml-parser.html
Parser API
libxml-tree.html
Tree API
libxml-xmlreader.html
Reader API
../guidelines.html
XML Guidelines
../ChangeLog.html
ChangeLog
API Indexes
../APIchunk0.html
Alphabetic
../APIconstructors.html
Constructors
../APIfunctions.html
Functions/Types
../APIfiles.html
Modules
../APIsymbols.html
Symbols
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/libxml2
Solaris binaries
http://www.explain.com.au/oss/libxml2xslt.html
MacOsX binaries
http://libxmlplusplus.sourceforge.net/
C++ bindings
http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4
PHP 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=libxml2
Bug Tracker
libxml-xmlIO.html
Prev
libxml-xmlIO.html
xmlIO
index.html
Up
index.html
API documentation
../index.html
Home
../index.html
The XML C parser and toolkit of Gnome
libxml-xmlerror.html
xmlerror
libxml-xmlerror.html
Next
the API to build regexp automata
Table of Contents
Structure
#xmlAutomata
xmlAutomata
struct _xmlAutomata
The content of this structure is not made public by the API.
Typedef
libxml-xmlautomata.html#xmlAutomata
xmlAutomata
*
xmlAutomataPtr
Structure
#xmlAutomataState
xmlAutomataState
struct _xmlAutomataState
The content of this structure is not made public by the API.
Typedef
libxml-xmlautomata.html#xmlAutomataState
xmlAutomataState
*
xmlAutomataStatePtr
libxml-xmlregexp.html#xmlRegexpPtr
xmlRegexpPtr
#xmlAutomataCompile
xmlAutomataCompile
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataGetInitState
xmlAutomataGetInitState
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am)
int
#xmlAutomataIsDeterminist
xmlAutomataIsDeterminist
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewAllTrans
xmlAutomataNewAllTrans
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
int lax)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewCountTrans
xmlAutomataNewCountTrans
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token,
int min,
int max,
void * data)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewCountTrans2
xmlAutomataNewCountTrans2
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token2,
int min,
int max,
void * data)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewCountedTrans
xmlAutomataNewCountedTrans
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
int counter)
int
#xmlAutomataNewCounter
xmlAutomataNewCounter
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
int min,
int max)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewCounterTrans
xmlAutomataNewCounterTrans
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
int counter)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewEpsilon
xmlAutomataNewEpsilon
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewOnceTrans
xmlAutomataNewOnceTrans
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token,
int min,
int max,
void * data)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewOnceTrans2
xmlAutomataNewOnceTrans2
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token2,
int min,
int max,
void * data)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewState
xmlAutomataNewState
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewTransition
xmlAutomataNewTransition
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token,
void * data)
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
#xmlAutomataNewTransition2
xmlAutomataNewTransition2
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token2,
void * data)
int
#xmlAutomataSetFinalState
xmlAutomataSetFinalState
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
state)
void
#xmlFreeAutomata
xmlFreeAutomata
(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am)
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
#xmlNewAutomata
xmlNewAutomata
(void)
Description
Structure xmlAutomata
Structure xmlAutomata
struct _xmlAutomata {
The content of this structure is not made public by the API.
}
Structure xmlAutomataState
Structure xmlAutomataState
struct _xmlAutomataState {
The content of this structure is not made public by the API.
}
Function: xmlAutomataCompile
libxml-xmlregexp.html#xmlRegexpPtr
xmlRegexpPtr
xmlAutomataCompile	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataGetInitState	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am)
Initial state lookup
am
:
an automata
Returns
:
the initial state of the automata
Function: xmlAutomataIsDeterminist
int	xmlAutomataIsDeterminist	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewAllTrans	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewCountTrans	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* 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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewCountTrans2	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token,
const
libxml-xmlstring.html#xmlChar
xmlChar
* 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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewCountedTrans	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
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#xmlAutomataPtr
xmlAutomataPtr
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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewCounterTrans	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewEpsilon	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
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: xmlAutomataNewOnceTrans
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewOnceTrans	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* 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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewOnceTrans2	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token,
const
libxml-xmlstring.html#xmlChar
xmlChar
* 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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewState	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewTransition	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* 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#xmlAutomataStatePtr
xmlAutomataStatePtr
xmlAutomataNewTransition2	(
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
from,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
to,
const
libxml-xmlstring.html#xmlChar
xmlChar
* token,
const
libxml-xmlstring.html#xmlChar
xmlChar
* 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#xmlAutomataPtr
xmlAutomataPtr
am,
libxml-xmlautomata.html#xmlAutomataStatePtr
xmlAutomataStatePtr
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#xmlAutomataPtr
xmlAutomataPtr
am)
Free an automata
am
:
an automata
Function: xmlNewAutomata
libxml-xmlautomata.html#xmlAutomataPtr
xmlAutomataPtr
xmlNewAutomata		(void)
Create a new automata
Returns
:
the new object or NULL in case of failure
../bugs.html
Daniel Veillard
