API for zip-filter - clojure-contrib v1.2 (stable)

by Chris Houser

Full namespace name: clojure.contrib.zip-filter

Overview

System for filtering trees and nodes generated by zip.clj in
general, and xml trees in particular.

Public Variables and Functions



ancestors

function
Usage: (ancestors loc)
Returns a lazy sequence of all ancestors of location loc, starting
with loc and proceeding to loc's parent node and on through to the
root of the tree.
Source


children

function
Usage: (children loc)
Returns a lazy sequence of all immediate children of location loc,
left-to-right.
Source


children-auto

function
Usage: (children-auto loc)
Returns a lazy sequence of all immediate children of location loc,
left-to-right, marked so that a following tag= predicate will auto-descend.
Source


descendants

function
Usage: (descendants loc)
Returns a lazy sequence of all descendants of location loc, in
depth-first order, left-to-right, starting with loc.
Source


left-locs

function
Usage: (left-locs loc)
Returns a lazy sequence of locations to the left of loc, starting with loc.
Source


leftmost?

function
Usage: (leftmost? loc)
Returns true if there are no more nodes to the left of location loc.
Source


right-locs

function
Usage: (right-locs loc)
Returns a lazy sequence of locations to the right of loc, starting with loc.
Source


rightmost?

function
Usage: (rightmost? loc)
Returns true if there are no more nodes to the right of location loc.
Source

zip-filter.xml






attr

function
Usage: (attr attrname)
       (attr loc attrname)
Returns the xml attribute named attrname, of the xml node at location loc.
Source

attr=

function
Usage: (attr= attrname attrval)
Returns a query predicate that matches a node when it has an
attribute named attrname whose value is attrval.
Source

seq-test

function
Usage: (seq-test preds)
Returns a query predicate that matches a node when its xml content
matches the query expresions given.
Source

tag=

function
Usage: (tag= tagname)
Returns a query predicate that matches a node when its is a tag
named tagname.
Source

text

function
Usage: (text loc)
Returns the textual contents of the given location, similar to
xpaths's value-of
Source

text=

function
Usage: (text= s)
Returns a query predicate that matches a node when its textual
content equals s.
Source

xml->

function
Usage: (xml-> loc & preds)
The loc is passed to the first predicate.  If the predicate returns
a collection, each value of the collection is passed to the next
predicate.  If it returns a location, the location is passed to the
next predicate.  If it returns true, the input location is passed to
the next predicate.  If it returns false or nil, the next predicate
is not called.

This process is repeated, passing the processed results of each
predicate to the next predicate.  xml-> returns the final sequence.
The entire chain is evaluated lazily.

There are also special predicates: keywords are converted to tag=,
strings to text=, and vectors to sub-queries that return true if
they match.

See the footer of zip-query.clj for examples.
Source

xml1->

function
Usage: (xml1-> loc & preds)
Returns the first item from loc based on the query predicates
given.  See xml->
Source
Logo & site design by Tom Hickey.
Clojure auto-documentation system by Tom Faulhaber.