<?xml version="1.0" encoding="iso-8859-1"?>
<module name="Ft.Rdf.Parsers.Versa.Optimizer" file="/work/a/ports/textproc/py-4suite/work/4Suite-1.0b1/build/lib.freebsd-7.1-RELEASE-i386-2.4/Ft/Rdf/Parsers/Versa/Optimizer.py">
  <modification-date>2003-05-18 19:38:50</modification-date>
  <abstract>Support routines for Versa optimizations
WWW: http://4suite.org/4XSLT        e-mail: support@4suite.org</abstract>
  <description>Copyright (c) 1999-2001 Fourthought Inc, USA.   All Rights Reserved.
See  http://4suite.org/COPYRIGHT  for license and copyright information</description>
  <functions>
    <function public="yes" name="IsCoreFunction" id="IsCoreFunction">
      <abstract/>
      <description/>
      <arguments>
        <arg name="expr"/>
        <arg name="name"/>
      </arguments>
    </function>
    <function public="yes" name="IsDotExpression" id="IsDotExpression">
      <abstract/>
      <description/>
      <arguments>
        <arg name="expr"/>
      </arguments>
    </function>
    <function public="yes" name="IsFixedResourceCollection" id="IsFixedResourceCollection">
      <abstract/>
      <description/>
      <arguments>
        <arg name="expr"/>
      </arguments>
    </function>
    <function public="yes" name="IsSimpleBackwardTraverse" id="IsSimpleBackwardTraverse">
      <abstract/>
      <description/>
      <arguments>
        <arg name="expr"/>
      </arguments>
    </function>
    <function public="yes" name="IsSimpleForwardTraverse" id="IsSimpleForwardTraverse">
      <abstract/>
      <description/>
      <arguments>
        <arg name="expr"/>
      </arguments>
    </function>
    <function public="yes" name="IsSimpleForwardTraverseChain" id="IsSimpleForwardTraverseChain">
      <abstract/>
      <description/>
      <arguments>
        <arg name="expr"/>
        <arg name="con"/>
      </arguments>
    </function>
    <function public="yes" name="IsSimpleTextSearch" id="IsSimpleTextSearch">
      <abstract/>
      <description/>
      <arguments>
        <arg name="expr"/>
      </arguments>
    </function>
    <function public="yes" name="SubQueryFunction" id="SubQueryFunction">
      <abstract>Handles subqueries of functions such as distribute, filter, map, etc.
The main optimization is that in some cases, e.g. simple traversal,
one overall relation can be computed and it's a simple dictionary lookup
for each cycle of the function</abstract>
      <description/>
      <arguments>
        <arg name="expr"/>
        <arg name="con"/>
      </arguments>
    </function>
    <function public="yes" name="TextSearch" id="TextSearch">
      <abstract>Returns a dictionary of lists.  The dict maps properties to text matches.
Each list contains subjects that had the given text match for each property</abstract>
      <description/>
      <arguments>
        <arg name="start"/>
        <arg name="criteria"/>
        <arg name="con"/>
        <arg default="1" name="useSubProps"/>
      </arguments>
    </function>
  </functions>
</module>
