mdlModelRefList_getCount gives unexpected results

I am working with Microstation SS3 and using this code:

fObjP = mdlDgnFileObj_getMasterFile();   
refListP = mdlDgnFileObj_getModelRefList(fObjP);
modelCnt = mdlModelRefList_getCount(refListP);

The results of this always return either 1 or 2. Some files that have 4 models (as shown in the Models dialog in Microstation) only return 2. Some files that have only 1 model return 2. Most files return 1 and correctly match what the Models dialog shows. But I am getting a mismatch for around 10% of my sample files.

Is the mismatch a sign of file corruption? Or is there something I am not understanding about how this function works?