PLEXIL Checker¶
22 April 2015
The Plexil Checker is a simple static analyzer for Core PLEXIL plans. The Plexil Checker is most useful for checking Core PLEXIL XML files which have not been generated by the Plexil compiler.
Introduction¶
The Plexil Checker checks for the following issues within a Core PLEXIL plan:
Global declaration overloading
Missing global declaration
Improper usage of command and library nodes
Naming conflicts between nodes
Type checking for lookups
Variable initializer type consistency
Assignment type consistency
Global Declarations specify interfaces for commands, library nodes, and state variables (accessible via lookups). The goal is to have all calls to these elements within a PLEXIL plan conform to these given definitions.
The Plexil Checker validates the plan against the Core PLEXIL schema prior to its analysis.
The Plexil Checker must be used on Core PLEXIL XML files (.plx
)
only, and not other forms of PLEXIL such as Extended Plexil (.epx
files), Standard Plexil (.ple
files) or Plexilisp
(.pli
files).
Note
The Plexil compiler also does all the checks listed above, except for the following:
Global declaration overloading
Missing global declaration
Running the Checker¶
Run the checker as follows:
checkPlexil [-d] input_file.plx
The optional -d
option will print debugging information. Otherwise,
if the program finds any issues with the global declarations or their
uses, a list of error messages will be displayed on screen.
The checker can also be run automatically when executing Plexil through
any of the scripts plexilexec,
plexiltest, or plexilsim, by
including the -check
command line option.