public function getParameterQNames()
	{
		$result = array();
		$forQNames = array(); // Need to ignore variables that are defined for the 'for' clause

		$this->traverseNodes( $this->exprTree, function( $node ) use( &$result, &$forQNames )
		{
			if ( $node instanceof ForNode )
			{
				$forQNames[] = $node->getQNVarName();
			}
			else if ( $node instanceof VarRefNode )
			{
				$qname = $node->getQNVarName();
				if ( ! in_array( $qname, $forQNames ) )
				{
					$result[] = $qname;
				}
			}

			return true;
		} );

		return $result;
	}