SONDefinitionFormatter

This class produces a dump of the InputFileParameters in the Standard Object Notation (SON) format for use by the Hierarchical Input Validation Engine (HIVE) in the NEAMS Workbench. It takes its input from JsonSyntaxTree.

This formatter is used for the --definition command line option, described here. It is also available for the application developer, either directly or using an AdvancedOutput.

Example output

We reproduce here the output of the InputParameters SON dump for the ParsedFunction. We can see that each parameter is listed with additional meta data for how it may be set in the input file.


  'ADParsedFunction_type'{
    InputTmpl=MooseBlock
    InputName="ADParsedFunction"
    InputType=type_sub
    InputDefault="insert_name_here"
    Description="Function created by parsing a string"
    MinOccurs=0
    MaxOccurs=NoLimit
    decl{
      MinOccurs=0
      MaxOccurs=1
      ValType=String
    }
    'active'{
      InputTmpl=MooseParam
      InputType=key_array
      InputName="active"
      Description="If specified only the blocks named will be visited and made active"
      MinOccurs=0
      MaxOccurs=1
      'value'{
        MinOccurs=0
        MaxOccurs=NoLimit
        ValType=String
        InputDefault="__all__"
      }
    } % end parameter active
    'control_tags'{
      InputTmpl=MooseParam
      InputType=key_array
      InputName="control_tags"
      Description="Adds user-defined labels for accessing object parameters via control logic."
      MinOccurs=0
      MaxOccurs=1
      'value'{
        MinOccurs=0
        MaxOccurs=NoLimit
        ValType=String
      }
    } % end parameter control_tags
    'enable'{
      InputTmpl=MooseParam
      InputType=key_value
      InputName="enable"
      Description="Set the enabled status of the MooseObject."
      MinOccurs=0
      MaxOccurs=1
      'value'{
        MinOccurs=1
        MaxOccurs=1
        ValType=String
        ValEnums=[ true false 1 0 on off ]
        InputDefault="1"
      }
    } % end parameter enable
    'execute_on'{
      InputTmpl=MooseParam
      InputType=key_array
      InputName="execute_on"
      Description="The list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, FINAL, CUSTOM, ALWAYS."
      MinOccurs=0
      MaxOccurs=1
      'value'{
        MinOccurs=0
        MaxOccurs=NoLimit
        ValType=String
        ValEnums=[ "NONE" "INITIAL" "LINEAR" "NONLINEAR" "TIMESTEP_END" "TIMESTEP_BEGIN" "FINAL" "CUSTOM" "ALWAYS" ]
        InputDefault="LINEAR"
      }
    } % end parameter execute_on
    'inactive'{
      InputTmpl=MooseParam
      InputType=key_array
      InputName="inactive"
      Description="If specified blocks matching these identifiers will be skipped."
      MinOccurs=0
      MaxOccurs=1
      'value'{
        MinOccurs=0
        MaxOccurs=NoLimit
        ValType=String
      }
    } % end parameter inactive
    'isObjectAction'{
      InputTmpl=MooseParam
      InputType=key_value
      InputName="isObjectAction"
      Description="Indicates that this is a MooseObjectAction."
      MinOccurs=0
      MaxOccurs=1
      'value'{
        MinOccurs=1
        MaxOccurs=1
        ValType=String
        ValEnums=[ true false 1 0 on off ]
        InputDefault="1"
      }
    } % end parameter isObjectAction
    'type'{
      InputTmpl=MooseParam
      InputType=key_value
      InputName="type"
      MinOccurs=0
      MaxOccurs=1
      'value'{
        MinOccurs=1
        MaxOccurs=1
        ValType=String
        InputDefault="ADParsedFunction"
      }
    } % end parameter type
    'vals'{
      InputTmpl=MooseParam
      InputType=key_array
      InputName="vals"
      Description="Constant numeric values, postprocessor names, or function names for vars."
      MinOccurs=0
      MaxOccurs=1
      'value'{
        MinOccurs=0
        MaxOccurs=NoLimit
        ValType=String
      }
    } % end parameter vals
    ChildAtLeastOne=[ "../../GlobalParams/value/value" "value" ]
    'value'{
      InputTmpl=MooseParam
      InputType=key_array
      InputName="value"
      Description="The user defined function."
      MinOccurs=0
      MaxOccurs=1
      'value'{
        MinOccurs=0
        MaxOccurs=NoLimit
        ValType=String
      }
    } % end parameter value
    'vars'{
      InputTmpl=MooseParam
      InputType=key_array
      InputName="vars"
      Description="Variables (excluding t,x,y,z) that are bound to the values provided by the corresponding items in the vals vector."
      MinOccurs=0
      MaxOccurs=1
      'value'{
        MinOccurs=0
        MaxOccurs=NoLimit
        ValType=String
      }
    } % end parameter vars
  } % end block ADParsedFunction_type