diff --git a/buildingspy/development/validator.py b/buildingspy/development/validator.py
index 2e9cf30..f34224a 100644
--- a/buildingspy/development/validator.py
+++ b/buildingspy/development/validator.py
@@ -184,14 +184,14 @@ Modelica package. Expected file '%s'."
         return (document, errors)
 
     def _recursive_glob(self, rootdir='.', suffix=''):
-        """ 
+        """
         Return all files with given extension.
-    
+
         :param rootdir: Root directory.
         :param suffix: File extension.
         :return: List of files with given extension.
 
-    
+
          """
 
         return [os.path.join(rootdir, filename) for rootdir, dirnames,
@@ -200,15 +200,15 @@ Modelica package. Expected file '%s'."
                     and ("ConvertBuildings_from" not in filename)) ]
 
     def _check_experiment(self, name, val, value, model_path, mos_file):
-        """ 
+        """
         Check experiment annotation parameters in mo file.
-    
+
         :param name: Parameter name.
         :param val: Value found in mo file.
         :param value: Value found in mos file.
         :param model_path: Path to mo file.
         :param mos_file: Path to mos file.
-    
+
          """
 
         if("*" in str(val)):
@@ -230,14 +230,14 @@ Modelica package. Expected file '%s'."
             raise ValueError(s)
 
     def _missing_parameter(self, name, value, model_path, mos_file):
-        """ 
+        """
         Check missing experiment annotation parameter in mo file.
-    
+
         :param name: Parameter name.
         :param value: Value found in mos file.
         :param model_path: Path to mo file.
         :param mos_file: Path to mos file.
-    
+
          """
 
         s = ("Found mo file={!s} without parameter {!s} defined.\n"
@@ -248,24 +248,24 @@ Modelica package. Expected file '%s'."
         raise ValueError(s)
 
     def _capitalize_first(self, name):
-        """ 
+        """
         Capitalize the first letter of the given word.
         Return a word with first letter capitalized.
-    
+
         :param name: Word to be capitalized.
         :return: Word with first letter capitalized.
-    
+
          """
         lst = [word[0].upper() + word[1:] for word in name.split()]
         return " ".join(lst)
 
     def _missing_experiment_stoptime(self, mos_files):
-        """ 
+        """
         Check missing experiment and StopTime annotation in mo file.
         Return number of mo files with experiment.
-    
+
         :param mos_files: List of mos files.
-    
+
          """
 
         n_mo_files = 0
@@ -300,16 +300,16 @@ Modelica package. Expected file '%s'."
         return n_mo_files
 
     def _separate_mos_files(self, mos_files):
-        """ 
+        """
         Return number of files with tolerance parameter
         and two lists of mos files file, one with the simulateModel
         and the other one with the translateModelFMU command.
-    
+
         :param mos_files: file path.
         :return: Number of files with tolerance parameter,
                 and two lists of mos files file, one with the simulateModel
                 and the other one with the translateModelFMU command.
-    
+
          """
 
         mos_non_fmus = []
@@ -348,27 +348,27 @@ Modelica package. Expected file '%s'."
         return n_tols, mos_non_fmus, mos_fmus
 
     def _check_tolerance(self, content, name, value, mos_file):
-        """ 
+        """
         Check value of tolerance in file.
-    
+
         :param content: file content.
         :param name: variable name.
         :param value: variable value.
         :param mos_file: mos file.
-    
+
          """
 
         if (name + "=" == "tolerance=" and float(value) > 1e-6):
             self._wrong_parameter (mos_file, name, value)
 
     def _wrong_parameter (self, mos_file, name, value):
-        """ 
+        """
         Stop if invalid parameter is found.
-    
+
         :param mos_file: mos file.
         :param name: parameter name.
         :param value: parameter value.
-    
+
          """
 
         if (name + "=" == "tolerance="):
@@ -390,13 +390,13 @@ Modelica package. Expected file '%s'."
                 raise ValueError(s)
 
     def _getValue (self, name, line, fil_nam):
-        """ 
+        """
         Get value of input parameter.
-    
+
         :param name: Parameter name.
         :param line: Line with parameter name.
         :param fil_nam: File with parameter.
-    
+
          """
         # Split the name
         value1 = line.split(name+"=")
@@ -413,27 +413,25 @@ Modelica package. Expected file '%s'."
         return value3[0]
 
     def _wrong_literal (self, mos_file, name):
-        """ 
+        """
         Stop if invalid literal is found.
-    
+
         :param mos_file: mos file.
         :param name: Parameter name.
-    
+
          """
 
         s = ("Found mos file={!s} with invalid expression={!s}.\n"
             + "This is not allowed for cross validation with JModelica.\n").format(mos_file, name+'='+name)
         raise ValueError(s)
 
-    def _validate_model_parameters (self, name, mos_files, root_dir):
-        """ 
-        Validate parameter settings.
-    
+    def _validate_experiment_setup (self, name, mos_files):
+        """
+        Validate experiment setup.
+
         :param name: Parameter name.
         :param mos_files: List of mos files.
-        :param root_dir: Root directory.
-    
-         """
+        """
 
         N_mos_defect = 0
 
@@ -538,12 +536,12 @@ Modelica package. Expected file '%s'."
 
             f.close()
 
-    def validateModelParameters(self, root_dir):
-        """ 
-        Validate parameter of mo and mos files.
-    
+    def validateExperimentSetup(self, root_dir):
+        """
+        Validate the experiment setup in ``.mo`` and ``.mos`` files.
+
         :param root_dir: Root directory.
-    
+
          """
 
         # Make sure that the parameter root_dir points to a Modelica package.
@@ -567,7 +565,7 @@ Modelica package. Expected file '%s'."
 
         # Validate model parameters
         for i in ["stopTime", "tolerance", "startTime"]:
-            self._validate_model_parameters(i, mos_non_fmus, root_dir)
+            self._validate_experiment_setup(i, mos_non_fmus)
 
         if(n_tols != n_mo_files):
             s = ("The number of tolerances in the mos files={!s} does no match " +

change function names that validate experiment setup
The newly introduced functions are called `validateModelParameters` but in fact they validate the experiment setup which are not a Modelica parameter. This branch is to refactor the names.
diff --git a/buildingspy/tests/test_development_Validator.py b/buildingspy/tests/test_development_Validator.py
index b985da6..f5e881a 100644
--- a/buildingspy/tests/test_development_Validator.py
+++ b/buildingspy/tests/test_development_Validator.py
@@ -32,7 +32,7 @@ end {{model_name}}
 
 MOS_TEMPLATE = """simulateModel("MyModelicaLibrary.Examples.{{model_name}}", method="dassl", {{parameter}} resultFile="{{model_name}}");
 createPlot(
-  id=1, 
+  id=1,
   y={"p1", "p2"}
 )
 """
@@ -57,15 +57,15 @@ class Test_development_Validator(unittest.TestCase):
     def run_case(self, val, mod_lib, mo_param, mos_param, err_msg):
         """
         Create and validate mo and mos files
-        
-        
+
+
         :param: val Validator object.
         :param: mod_lib Path to model library.
         :param: mo_param Parameter of mo file.
-        :param: mos_param Parameter of mos file.    
-        :param: mos_param Parameter of mos file.    
-        :param: mos_param Expected error message. 
-        
+        :param: mos_param Parameter of mos file.
+        :param: mos_param Parameter of mos file.
+        :param: mos_param Expected error message.
+
         """
 
         model_name = ''.join(random.choice(string.ascii_uppercase + string.digits)
@@ -90,14 +90,14 @@ class Test_development_Validator(unittest.TestCase):
         mos_fil.close()
 
         with self.assertRaises(ValueError) as context:
-            val.validateModelParameters(mod_lib)
+            val.validateExperimentSetup(mod_lib)
 
         for path in [path_mo, path_mos]:
             if os.path.exists(path):
                 os.remove(path)
         self.assertTrue(err_msg in str(context.exception))
 
-    def test_validateModelParameters(self):
+    def test_validateExperimentSetup(self):
 
         import buildingspy.development.validator as v
         val = v.Validator()
@@ -105,7 +105,7 @@ class Test_development_Validator(unittest.TestCase):
 
         #########################################
         # Checking default library
-        val.validateModelParameters(myMoLib)
+        val.validateExperimentSetup(myMoLib)
 
         #########################################
         # Checking missing experiment

pip install -e .
parse_log_pytest
requirements.txt
pytest pytest-cov
apt-get update apt-get install -y gcc tidy
3.6
requirements/base.txt
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
attrs==22.2.0
-e git+https://github.com/lbl-srg/BuildingsPy.git@ef15ad34246ac1d4cddf7a45feb1bfeac69936bf#egg=buildingspy
certifi==2021.5.30
coverage==6.2
future==1.0.0
gitdb==4.0.9
GitPython==3.1.18
importlib-metadata==4.8.3
iniconfig==1.1.1
Jinja2==3.0.3
MarkupSafe==2.0.1
packaging==21.3
pluggy==1.0.0
py==1.11.0
pyparsing==3.1.4
pytest==7.0.1
pytest-cov==4.0.0
pytidylib==0.3.2
smmap==5.0.0
tomli==1.2.3
typing_extensions==4.1.1
zipp==3.6.0

name: BuildingsPy
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2021.5.30=py36h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.3=he6710b0_2
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - pip=21.2.2=py36h06a4308_0
  - python=3.6.13=h12debd9_1
  - readline=8.2=h5eee18b_0
  - setuptools=58.0.4=py36h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - wheel=0.37.1=pyhd3eb1b0_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - attrs==22.2.0
      - coverage==6.2
      - future==1.0.0
      - gitdb==4.0.9
      - gitpython==3.1.18
      - importlib-metadata==4.8.3
      - iniconfig==1.1.1
      - jinja2==3.0.3
      - markupsafe==2.0.1
      - packaging==21.3
      - pluggy==1.0.0
      - py==1.11.0
      - pyparsing==3.1.4
      - pytest==7.0.1
      - pytest-cov==4.0.0
      - pytidylib==0.3.2
      - smmap==5.0.0
      - tomli==1.2.3
      - typing-extensions==4.1.1
      - zipp==3.6.0
prefix: /opt/conda/envs/BuildingsPy

buildingspy/tests/test_development_Validator.py::Test_development_Validator::test_validateExperimentSetup
buildingspy/tests/test_development_Validator.py::Test_development_Validator::test_validateHTMLInPackage
buildingspy/development/validator.py
buildingspy/development/validator.py