using uCalcSoftware; var uc = new uCalc(); var FruitsXML = """ """; var t = new uCalc.Transformer(); var fruitsTagRule = t.FromTo("", "List of fruits"); var fruitRule = t.FromTo("CommonName={@string:name}", "- {name}"); Console.WriteLine("--- Using Maximum (Rule-Level) ---"); fruitRule.Maximum = 3; // Rule fails if more than 3 fruits are found. t.Filter(FruitsXML); Console.WriteLine($"Match count when fruit rule fails: {t.Matches.Count()}"); // The 'fruitsTagRule' still matches. Console.WriteLine(t.Matches.Text); Console.WriteLine(""); Console.WriteLine("--- Using GlobalMaximum (Transformer-Level) ---"); fruitRule.Maximum = -1; // Reset local maximum fruitRule.GlobalMaximum = 3; // Transformer fails if more than 3 fruits are found. t.Filter(FruitsXML); Console.WriteLine($"Match count when global rule fails: {t.Matches.Count()}"); // All matches are invalidated. Console.WriteLine(t.Matches.Text);