Skip to main content

Perform a set of checks on an RFC input file to check for errors.

Project description

Perform Validation checks on Internet-Drafts

There are a number of tasks that need to be performed when an Internet-Draft is begin process to create an RFC. This tool performs a subset of those actions. The actions performed are:

  • Validate the file is well formed XML and that it conforms to the XML2RFC Version 3 schema as defined in RFC 7991.

  • Verify that embedded XML stanzas are well formed.

  • Verify that embedded ABNF is complete and well formed.

  • Identify misspelled words.

  • Detect duplicate words.

The tool can be used either in an interactive mode or in batch mode.


rfclint accepts a single XML document as input and optionally outputs a modified version of the document.

Basic Usage: rfclint [options] SOURCE

General Options

General options for the program






purge the cache and exit



don’t use the network to resolve references



don’t check against the RNG schema



don’t print anything



save configuration back to config file



print extra information



display the version number and exit



don’t resolve xi:include elements



don’t check xml examples for well-formness



do checking for bcp14 keywords



skip check svg for limited vocabulary



specify the primary cache directory to write to



specify the configuration file to use



specify an output filename

-r RNG


specify an alternate RNG file



extract all source code for the given type

Spelling Options

The following options affect how the spell checking is performed.






don’t perform duplicate detection



don’t perform spell checking on the source



don’t provide suggestions for misspelled words



skip code elements when checking



skip artwork elements check checking



don’t do window based



specify the color to use for word highlighting



specify an additional dictionary to use



specify the personal dictionary to use



program to use for spell checking



how many words to display as part of the context

It is assumed that the spell checking program is aspell and that aspell is on the path. For Windows systems, it additionally look in “C:\Program Files (x86)\Aspell\bin” for the program. If a different program is given, then it should be either an absolute path or on the path so that it can be located.

When a misspelled word is located, a certain amount of context will be provided along with the file and line number of the word. The spell-window parameter controls how many words are displayed with up to that number of words being displayed before and after the misspelled word. The context window is also restricted to the current paragraph. The color option allows for the misspelled word to be highlighted, but it requires VT100 terminal emulation and thus may not always work well on Windows systems. The color defaults to ‘bright’ on non-Windows systems and ‘none’ on Windows systems. If the value of spell-window is 0, then no context will be displayed.

ABNF Checking Options






don’t perform abnf checking on the source



ABNF file to include when checking



specify program to use for ABNF checking

Configuration File

rfclint keeps configuration information in a configuration file. By default the file is stored at

  • On Windows: c:\Users\USER\AppData\Local\rfclint\IETF\rfclint.cfg

  • Otherwise: /home/USER/.local/share/rfclint/rfclint.cfg

The format of the configuration file is the standard INI file format.

Spell Configuration

  • program - name of the spelling program to use - defaults to aspell

  • window - number of words to display on each side of a misspelled word

  • color - color to use to highlight the misspelled word

  • suggest - Should suggested values be displayed? value is 0 or 1

  • dictionaries - a comma separated list of dictionaries to include

ABNF Configuration

  • program - name of the ABNF program to use - defaults to bap provided w/ rfclint (bap is only installed for systems identified as nt, darwin or linux*)

  • addRules - name of file to be processed along with rules in the source

Windows and Curses

The version of python that ships on windows does not include a copy of the curses module as part of it. If interactive spell checking or duplicate detection is desired on a windows system then a curses module will need to be installed independent of this package. One place to locate a curses Python extension an be found at If no curses library is detected, rfclint will automatically turn on the –no-curses option.


rfclint depends on the following packages:


Version 0.6.1 (Fri 24 Jan)

  • If suggestion if UTF8, then force format template to be UTF8 for Python 2.0

Version 0.5.19 (Thur 29 Aug)

  • Modify BCP14 if needed

  • Add <xref> marker when spell checking

  • Change the source tree pointer

Version 0.5.17 (Fri 16 Aug)

  • Update documentation to match recent work

  • Add Copyright messages to source files

  • Remove space padding in display of spelling and dups.

  • Keep the case of the first word to display for dup detection

  • Add first level support for BCP 14 checking - Only reports does not fix

  • Add more programming checks for style

  • Remove Python 3.4 from supported list

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rfclint-0.6.1.tar.gz (32.7 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page