Hi there,
this is my first post in the forum, I hope I do it correctly...

I want to test for measurement invariance in Stata and want to start by testing configural invariance, i.e. all parameters estimated freely in both groups.
I have a fairly complex model with 10 latent constructs and 41 indicators... And quite unequal groups with N = 180 in group a (employees of small and medium sized firms) and N = 1879 in group b (employees of large firms).

According to Little, Slegers, Card, 2006 (http://www.agencylab.ku.edu/~agencyl...d,%202006).pdf), there are two (actually 3) options to identify the model:
- Method 1: Reference-Group Method: Set latent means to 0 and latent variances to 1 in first group, estimate freely in second group
- Method 2: Marker-Variable Method: For each construct, set one indicator loading to 1 and its intercept with latent construct to 0 in both groups

However, both methods seem to not really work with my data. For ease of presentation, I will not post the code for the full 10 latent construct model, but only for 2 latent constructs:

Method 1: sem (Latent1 -> L1_1, ) (Latent1 -> L1_2, ) (Latent1 -> L1_3, ) (Latent2 -> L2_1, ) (Latent2 -> L2_2, ) (Latent2 -> L2_3, ), covstruct(_lexogenous, diagonal) group(orgsize) ginvariant(none) vce(oim) difficult latent(Latent1 Latent2) variance(2: Latent1@1) variance(2: Latent2@1) mean(2: Latent1@0) mean(2: Latent2@0) cov( Latent1*Latent2) nocapslatent

However, applying this command, Stata fixes not only the latent means and latent variances in the second group, but additionally fixes latent means (not variances) in the first group. Plus: It additionally constrains the factor loadings L1_1 on Latent 1 and L2_1 on Latent 2 to be 1. How can I ask Stata to only constrain means and variances in one group but not constrain anything else? Otherwise, if I just constrain means and variances, could it be that the model becomes underidentified when comparing groups?

Method 2: sem (Latent1 -> L1_1, ) (Latent1 -> L1_2, ) (Latent1 -> L1_3, ) (Latent1 -> L1_1@1) (L1_1 <- Latent1 _cons@0, ) (Latent2 -> L2_1, ) (Latent2 -> L2_2, ) (Latent2 -> L2_3, ) (Latent2 -> L2_1@1) (L2_1 <- Latent2 _cons@0, ), covstruct(_lexogenous, diagonal) group(orgsize) mean(Latent1) mean(Latent2) ginvariant(none) vce(oim) difficult latent(Latent1 Latent2) cov( Latent1*Latent2) nocapslatent

In this case, the model does not converge to a solution. It only converges when I also set the error variances to be 0 for one indicator of each construct, as suggested by this article: https://www.stata.com/meeting/new-or...a13-ender.pdf:

Method 2: sem (Latent1 -> L1_1, ) (Latent1 -> L1_2, ) (Latent1 -> L1_3, ) (Latent1 -> L1_1@1) (L1_1 <- Latent1 _cons@0, ) (Latent2 -> L2_1, ) (Latent2 -> L2_2, ) (Latent2 -> L2_3, ) (Latent2 -> L2_1@1) (L2_1 <- Latent2 _cons@0, ), covstruct(_lexogenous, diagonal) group(orgsize) mean(Latent1) mean(Latent2) ginvariant(none) vce(oim) difficult latent(Latent1 Latent2) variance(e.L1_1@0) variance(e.L2_1@0) cov( Latent1*Latent2) nocapslatent

However, doing this can not be found elsewhere in the literature and it also results in bad model fit.

So my questions would be:
a) For method 1, how can I only constrain what I want to constrain without stata making additional constraints?
b) For method 2, why does the model not converge to a solution? Am I doing anything wrong?
c) Is there any other option than the two mentioned to test for configural invariance in stata?

Your help is highly appreciated! Thanks a lot in advance!!!

Kind regards
Franziska

P.S.: Please let me know if you need any additional information