Command Line Operation#

Running Arelle on the Command Line:#

Method or System


Python source code

python [arguments]

Windows x64 or 32 bit

"c:\Program Files\arelleCmdLine.exe" [arguments]

MacOS App

/Applications/ [arguments]


./arelleCmdLine [arguments]


General Arguments#



-a or --about

Prints build, copyright, and license information then exits

-h or --help

Prints help message and exits


Prints diagnostic information


Prints Arelle’s version number and exits

Input File Arguments#



-f FILE or
--file FILE

The FILE for Arelle to process.
The FILE may be an entry point to be loaded, instance, schema, linkbase, inline XBRL instance, testcase file, or testcase index file.
The FILE may be local or a URL to a web-located file.

--username USERNAME

The USERNAME if needed (with the password flag) for web file retrieval .

--password PASSWORD

The PASSWORD if needed (with username flag) for web file retrieval.

-i FILE or
--import FILE

Imports a v to the DTS, such as additional formula or label linkbases.
FILE may contain multiple files separated by the | character.

-d DTS or
--diff DTS

Compares a second DTS for versioning report generation.
The -f file is the fromDTS and the -d DTS is the toDTS.

-r FILE or
--report FILE

Saves the versioning report (with the diff flag) to the specified FILE.

Validation Arguments#



-v or --validate

Validate the file according to the entry file type.
For an XBRL file, it is validated according to XBRL validation 2.1
Performs calculation linkbase validation if either --calcDecimals or --calcPrecision are specified
Performs SEC EDGAR Filing Manual validations (if --efm selected)
Performs Global Filer Manual disclosure system validation (if --gfm=XXX selected).
If a test suite or testcase, the test case variations are individually so validated.
If formulae are present they will be validated and run unless --formula=none is specified.

--noValidateTestcaseSchema or

Validate testcases against their schemas.


Specify calculations validations:
CALCS can be one of:
none – no calculations validation.
c10 or xbrl21 – Calc 1.0 (XBRL 2.1) calculations.
c10d or xbrl21-dedup – Calc 1.0 (XBRL 2.1) calculations with de-duplication
c11r or round-to-nearest – Calc 1.1 round-to-nearest mode
c11t or truncation - Calc 1.1 truncation mode

--calcDecimals or

DEPRECATED - XBRL v2.1 calculation linkbase validation inferring decimals.

--calcPrecision or

DEPRECATED - pre-2010 XBRL v2.1 calculation linkbase validation inferring precision.

--calcDeduplicate or

DEPRECATED - de-duplication of consistent facts when performing calculation validation, chooses most accurate fact.


Select Edgar Filer Manual (U.S. SEC) disclosure system validation (strict).


Skip walking of calculation tree during EFM validation.

--disclosureSystem=NAME or

Specify a disclosure system, and enable disclosure system-specific validation.
Enter --disclosureSystem=help for list of names or help-verbose for list of names and descriptions.


Select U.K. HMRC disclosure system validation.


Select validation with respect to Unit Type Registry.

--utrUrl=UTRURL or

Used with --utr flag. Override disclosure systems Unit Type Registry.
UTRURL is the location (URL or file path).


Select validation with respect testcase infosets.

Output Arguments#

These arguments can override the system language settings for the output options below.



--labelLang=LABELLANG or

provides an xml:lang language code to override the system language settings for labels output by the following file options, e.g. --labelLang=en-US


Disable reversing string read order for right to left languages, useful for some locale settings

--labelRole=LABELROLE or

overrides the standard XBRL 2.1 label role for the labels output by the following file options.
e.g. --labelRole=

The following file options determine the type of file saved by the extension of the file name, the extension may be any of: .html, .htm, .xhtml, .json or .csv




Write DTS tree into DTSFILE. May be .csv or .html.

--facts=FACTSFILE or

Write fact list into FACTSFILE.


Columns for fact list file.
The FACTLISTCOLS are comma separated and can be any of these: Label, Name, contextRef, unitRef, Dec, Prec, Lang, Value, EntityScheme, EntityIdentifier, Period, or Dimensions.
The default columns list is Label,contextRef,unitRef,Dec,Prec,Lang,Value.

--factTable=FACTTABLEFILE or

Write fact table into FACTTABLEFILE


Columns for fact list file

--factTable=FACTTABLEFILE or

Write fact table into FILE FACTTABLEFILE


Columns for fact table file

--concepts=CONCEPTSFILE or

Write concepts into CONCEPTSFILE

--pre=PREFILE or

Write presentation linkbase into PREFILE

--table=TABLEFILE or

Write table linkbase into TABLEFILE

--cal=CALFILE or

Write calculation linkbase into CALFILE

--dim=DIMFILE or

Write dimensions (of definitions) into DIMFILE


Write anchoring relationships (of definition) linkbase into ANCHFILE
The wider-narrower hierarchy is shown in a tree view.
For each anchored concept, if there are multiple parent (wider) concepts, the others are shown in a second column, “wider”.
To additionally show name, documentation, and references on this view, specify one or all of --relationshipCols “Name,Documentation,References”

--formulae=FORMULAEFILE or

Write formulae linkbase into FORMULAEFILE

--viewArcrole=ARCROLE or

Store relationships for the ARCROLE in the file specified by --viewFile argument.


Specifies the file to store the --viewArcrole relationships.


Store defined role types in specified FILE


Store defined arcrole types in specified FILE


Write a test report of validation (of test cases) in specified FILE


Used with --testReport argument. Specifies columns for test report.
REPORTCOLS are comma separated and can be any of these: Index, Testcase, ID, Name, Reference, ReadMeFirst, Status, Expected, Actual“.


Write a test report of RSS feed processing in specified FILE


Used with --rssReport argument. Specifies columns for RSS processing.
RSSCOLS are comma separated and can be any of these: Company Name, Accession Number, Form, Filing Date, CIK, Status, Period, Yr End, Results”.

Logging Arguments#




Write log messages into FILE, otherwise they go to standard output. If FILE ends in .xml it is xml-formatted, otherwise it is text.
XML log files contain significant additional details not provided in the text files.
Default files named logToPrint, logToStdOut.xml and logToStdError provide output on standard output and standard error streams.


Specify the Python logger FORMAT for the text description of messages, if absent the default is [%(messageCode)s] %(message)s - %(file)s.


Minimum LEVEL for messages capture, otherwise the message is ignored.
Current order of levels are: debug, info, info-semantic, warning, warning-semantic, warning, assertion-satisfied, inconsistency, error-semantic, assertion-not-satisfied, and error.


Regular expression filter for logLevel. (E.g., to not match \*-semantic levels, --logLevelFilter=(?!^.*-semantic$)(.+).


Collect profile statistics, such as timing of validation activities and formulae.

Validation and Formula Options#




Specifies parameters for formula and validation (name=value[,name=value]).


Used with --parameters argument. Specify parameters separator string (if other than comma, may be a multi-character separator).


Specify formula action, If this option is not specified, -v or --validate will validate and run formulas if present:
validate - validate only, without running
run - validate and run
none - prevent formula validation or running when also specifying -v or --validate.


Enable ParamExprResult formula tracing.


Enable ParamInputValue formula tracing.


Enable CallExprSource formula tracing.


Enable CallExprCode formula tracing.


Enable CallExprEval formula tracing.


Enable CallExprResult formula tracing.


Enable VarSetExprEval formula tracing.


Enable VarSetExprResult formula tracing.


Show times of variable set evaluation


Enable AsserResultCounts formula tracing.


Enable FormulaRules formula tracing.


Enable VarsOrder formula tracing.


Enable VarExpressionSource formula tracing.


Enable VarExpressionCode formula tracing.


Enable VarExpressionEvaluation formula tracing.


Enable VarExpressionResult formula tracing.


Enable VarFiltersResult formula tracing.


Show winnowing process of successive application of formulas, helpful in debugging to find out which filter affects the facts that pass a filtering step


Show result of filters.

Configuration options#

It is possible to specify options to be defaults for the web server, such as disclosureSystem and validations, but not including file names.




Language for user interface (override system settings, such as program messages).
Does not save setting. Does not affect labels language of above reports (see --labelLang)


Modify and re-save proxy settings configuration. Enter system to use system proxy setting, none to use no proxy, a specific proxy in the format http://[user[:password]@]host[:port]
(e.g.,,,, or show to show current (saved)setting.


Specify internet connectivity: online or offline.


Specify internet connection timeout in seconds (0 means unlimited).


Specify frequency of rechecking web file’s time stamps to cached file copy and determine if newer file to be reloaded: weekly (default), daily or never.


Skip https SSL certificate checking.


Log an info message for downloads to the web cache.


Specify non-standard location for configuration and cache files (overrides environment parameter XDG_CONFIG_HOME, if also provided).

--plugin or --plugins

Specify plugins to load (no longer saved or shared with GUI)
Module urls are | separated.
Standard plugin modules do not need “.py” specified.
Relative URLs are relative to installation plug-in directory.
Packaged plug-in urls are their directory’s url.

--packages=FILE or

Load XBRL taxonomy packages. Option can be repeated to specify multiple packages. Specifying a directory will attempt to load all .zip files in the directory.
Command line taxonomy package configuration is not persisted or shared with the GUI.
URLs must be full absolute paths. Multiple packages may also be specified as |-separated list.


Abort process on major error, such as when load is unable to find an entry or discovered file.


Start web server on host:port[:server] for REST and web access.
(e.g., --webserver locahost:8080, or specify nondefault a server name, such as cherrypy, --webserver locahost:8080:cherrypy.)

Standard Plugins and Options#

Many of the plug-ins add command line (in addition to GUI menu) options.
For additional detail see the plug-in documentation. A summary of standard plugin options is provided here.


Specify an inline XBRL document set by JSON parameter: --file ‘[{“ixDocumentSet”:[{“file”:file1},{“file”:file2}…]}]’


Provides a file name into which to save an XBRL instance document derived from a loaded manifest (Japan FSA) of a document set of inline documents, or loaded single inline document.
(Currently supports one target instance document only.)


Load from Excel file

No command line options, but the -f and --file options can specify an Excel document which represents a DTS.


Profiles command line operation


Specifies file into which to save a Python profiler report of the timings of Arelle Python methods and routines for the operations performed by the other command line functions.
Useful to determine if a long running function is spending excessive time in a function that needs implementation attention.


Produces a Taxonomy Package.


Specifies a file into which to save a Taxonomy Package representing the loaded DTS.


EBA Table Sets.


Specifies an index file (usually index.html) to represent an html page that holds a table of contents to the EBA tables generated for all loaded EBA Table Linkbase tables in the DTS.


Saves an Excel workbook


Saves an Excel workbook representing the DTS (which can be subsequently loaded by plugin.


Saves a SKOS (OMG standard OWL file).


Saves a SKOS (OMG standard OWL file) representing a semantic view of a DTS based on presentation linkbase entries (for US-GAAP, IFRS, and EDInet style taxonomies).


Saves XBRL data to a database.


Store into XBRL DB. Provides connection string: host,[port], user, password, database, [timeout], technology.

technology can be:
postgres - XBRL-US Postgres SQL
mssqlSemantic - Semantic MSSQL SQL
mysqlSemantic - Semantic MySQL SQL
orclSemantic - Semantic Oracle SQL
pgSemantic - Semantic Postgres SQL
rexster - Rexter (Titan Cassandra)
rdfDB - RDF (Turtle, NanoSparqlServer)
json - JSON (JSON, MongoDB)

For rdfDB if hostname is rdfTurtleFile or rdfXmlFile, then database specifies a local file system pathname to store a file.
For json, if hostname is jsonFile then database specifies a local file system path name to store into a file.

Example storing into postgres database using XBRL-US schema:

arelleCmdLine -f c:\temp\test.rss -v --disclosureSystem efm-pragmatic-all-years --store-to-XBRL-DB ",8084,pgUserId,pgPassword,test_db,90,postgres"

Example storing into local MSSQL database using SQLEXPRESS instance:

arelleCmdLine -f c:\temp\test.rss -v --disclosureSystem efm-pragmatic-all-years --store-to-XBRL-DB "localhost\SQLEXPRESS,,sqlLogin,sqlPassword,,90,mssqlSemantic"

Disclosure System Selections#

Run with --disclosureSystem=help to list the disclosure systems that are available for the currently loaded plugins.