BR-003: Excel-style base-26 conversion is bijective (no zero digit)¶
Field
Value
Statement
Excel-style base-26 formatting has no zero digit; a "Z" position rolls over into an additional digit, mirroring spreadsheet column naming (A, B, … Z, AA, AB, …).
Trigger
Any digit in the array equals 0 during ExcelConverter.FormatBaseN.
Enforcement
ExcelConverter.vb — the FormatBaseN override adjusts a zero digit to the base value (26) and decrements/rolls the preceding digit(s) accordingly.
Outcome
Produces correct Excel-style column-letter output instead of a literal "0" digit.
Source
SAIF.Framework.BaseN\ExcelConverter.vb
BR-004: Non-numeric input to the default alpha-to-numeric conversion is treated as zero¶
Field
Value
Statement
Non-numeric input to the default alpha-to-numeric conversion is treated as zero rather than raising an error.*
Trigger
ConverterBase.ConvertAlphaToNumeric receives a non-numeric string and no subclass override applies (used by BinaryConverter and OctalConverter, which do not override alpha/numeric conversion).
Enforcement
ConverterBase.vb — returns 0 silently when IsNumeric(input) is False.
Outcome
Callers receive 0 for invalid input instead of an exception; only BinaryConverter and OctalConverter are affected by this default, non-strict behavior.
HexConverter and ExcelConverter enforce strict bounds checking (BR-001, BR-002), while BinaryConverter and OctalConverter rely on the non-strict default described in BR-004.
No inherited business rules were found; this library has no base classes or services from dependency framework libraries.
Note: Statements marked with * were inferred from code structure, naming conventions, or
contextual evidence where direct confirmation was not available in source artifacts. Statements
marked with ** could not be confirmed; treat as unknown until verified.