The User Infos are designed using customized version of the libconfig library (link!). It is specialized for BDM so as to recognize basic mathematical objects, such as vectors and matrices, see ... for details.
(Technically it can be made compatible with matlab structures!)
For example a simple experiment can be configures in a following way:
ndat = 100; //number of data points prior = {type="enorm"; mu = [1, 2, 3]; R = [1, 0, 0, 0, 1, 0, 0, 0, 1]; };
A structure with field type="identifier"
is special. Such a structure will be parsed by an appropriate class bdm::UIbuilder which will construct the desired object, in this instance of an object of the class bdm::enorm. For a detailed example how this mechanism works in practice see Running experiment estimator
with ARX data fields.