created: 20150124182127000 modified: 20230710074414361 tags: [[Filter Run]] title: Filter Step type: text/vnd.tiddlywiki A <<.def "filter step">> represents a single operation within a <<.def "filter run">>. In programming terms, it is akin to a function call to which the step's input is passed as a parameter. A step's output is a [[title selection|Title Selection]] that contributes to a [[filter run|Filter Run]] and hence to the entire [[filter expression|Filter Expression]] that contains it. <$railroad text=""" \start none \end none [:"!"] ( / "if omitted, defaults to: title" /|: ( - | :[[operator|"Filter Operators"]] ) { [:":" [[suffix|"Filter Operators"]] ] } ) { [[parameter|"Filter Parameter"]] + "," } """/> The step's <<.def operator>> is drawn from a list of predefined keywoards which are known as [[filter operators|Filter Operators]]. Many steps require an explicit <<.def parameter>>, that further defines what the step is to do. The <<.def suffix>> is additional text, often the name of a [[field|TiddlerFields]], that extends the meaning of certain operators. If a step's <<.def operator>> and <<.def suffix>> are //omitted// altogether, it defaults to the [[title|title Operator]] operator. <<.from-version "5.1.23">> Some steps accept multiple <<.def parameter>>s which are separated by a `,` character. Any unrecognised operator is treated as if it was the suffix to the <<.olink field>> operator. Filter operators can be extended by plugins. {{Selection Constructors}}