private LevelTuple buildTuple(int i, ListLevel listLevel) {
        boolean isLegal = false;
        int start = 1;
        int restart = -1;
        String lvlText = "%" + i + ".";
        String numFmt = "decimal";

        start = listLevel.getStartAt();
        restart = listLevel.getRestart();
        isLegal = listLevel.isLegalNumbering();
        numFmt = convertToNewNumFormat(listLevel.getNumberFormat());
        lvlText = convertToNewNumberText(listLevel.getNumberText(),
                listLevel.getLevelNumberingPlaceholderOffsets());
        return new LevelTuple(start, restart, lvlText, numFmt, isLegal);
    }
Get the formatted number for a given paragraph
<p/>
<p><em>Note:</em> This only works correctly if called subsequently for <em>all</em>
paragraphs in a valid selection (main document, text field, ...) which are part of a list
.</p>

@param paragraph list paragraph to process
@return String which represents the numbering of this list paragraph; never {@code null},
can be empty string, though,
if something goes wrong in getList()
@throws IllegalArgumentException If the given paragraph is {@code null} or is not part of
a list
tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-microsoft-module/src/main/java/org/apache/tika/parser/microsoft/ListManager.java