using uCalcSoftware;
var uc = new uCalc();
var FruitsXML =
"""
""";
var t = new uCalc.Transformer();
t.Text = FruitsXML;
var fruitsTagRule = t.Pattern("");
var fruitRule = t.Pattern("CommonName={@string:name}");
Console.WriteLine("--- Using Minimum (Rule-Level Invalidation) ---");
fruitRule.Minimum = 4; // Rule fails if fewer than 4 fruits are found.
t.Find();
Console.WriteLine($"Match count when fruit rule fails: {t.Matches.Count()}");
Console.WriteLine("Matches found:");
foreach(var m in t.Matches) {
Console.WriteLine($" {m.Text}");
};
Console.WriteLine("");
Console.WriteLine("--- Using GlobalMinimum (Transformer-Level Invalidation) ---");
fruitRule.Minimum = 0; // Reset local minimum
fruitRule.GlobalMinimum = 4; // Transformer fails if fewer than 4 fruits are found.
t.Find();
Console.WriteLine($"Match count when global rule fails: {t.Matches.Count()}");
Console.WriteLine("Matches found:");
foreach(var m in t.Matches) {
Console.WriteLine($" {m.Text}");
};