SAIF.Business.Utilities operations and processes¶
This library exposes utility functions rather than multi-step BOF business operations (no Criteria/lifecycle methods, no transaction boundaries). This page is the operation catalog and cross-operation hub; each operation's detailed step-by-step logic lives in its own page under operations/.
Operation catalog¶
| Operation | Intent | Trigger | Inputs | Outputs | Rules |
|---|---|---|---|---|---|
| Title-case a string | Convert an all-caps or inconsistently cased string into human-readable title case, preserving punctuation/whitespace. | Call to TitleCase.ToTitleCase or the .ToTitleCase() extension. |
A String (possibly null/blank). |
The title-cased String. |
BR-UTIL-001, BR-UTIL-002, BR-UTIL-003, BR-UTIL-004, BR-UTIL-005, BR-UTIL-006, BR-UTIL-007, BR-UTIL-008, BR-UTIL-009 |
| Convert a number to English words | Spell out a Long numeric value as English words (e.g., for amount-in-words rendering). |
Call to mdlTextConversion.NumberToText. |
A Long value. |
The spelled-out String. |
BR-UTIL-010, BR-UTIL-011 |
Process flow diagram¶
The following diagram visualizes the two primary operational flows exposed by this library.
flowchart TD
Start([Caller invokes .ToTitleCase]) --> Guard{Input null/blank?}
Guard -->|Yes| ReturnUnchanged([Return input unchanged])
Guard -->|No| Split[Regex.Split into tokens]
Split --> Classify[Classify + case each token]
Classify --> Reassemble[Reassemble with original delimiters]
Reassemble --> Suffix[Apply possessive 's suffix pass]
Suffix --> ForceCap[Force first character upper case]
ForceCap --> EndTC([Return title-cased string])
StartNT([Caller invokes NumberToText]) --> Bound{n > 999,999,999,999,999?}
Bound -->|Yes| Throw([Throw ApplicationException])
Bound -->|No| Magnitude[Recurse by magnitude:<br>ones/teens, tens, hundreds,<br>thousands, millions, billions, trillions]
Magnitude --> EndNT([Return spelled-out words])
Failure and edge-case behavior¶
TitleCase.ToTitleCase: null, empty, or whitespace-only input is returned unchanged rather than raising an error (BR-UTIL-001).mdlTextConversion.NumberToText: values above 999,999,999,999,999 raiseApplicationExceptionrather than truncating or wrapping (BR-UTIL-010).
Related documentation¶
Sources¶
- SAIF.Business.Utilities\TitleCase.vb
- SAIF.Business.Utilities\mdlTextConversion.vb
- .saifdocgen/state/runs/20260821-113120-claims-bof-web-legal/analysis/TSK007-analysis.md