I thought I would explain what I ended up doing here in case it's helpful to anyone else.
Step 1: Fit the lme with effects coding
library(MASS)
library(lme4)
library(psycholing)
library(lmerTest)
contrasts(data$Group) = contr.sum(2)
contrasts(data$A) = contr.sum(2)
contrasts(data$B) = contr.sum(3)
lme = lmer(respVar ~ 1 + Group*A*B + (1|Subject) + (1|Item), control=lmerControl(optCtrl=list(maxfun=100000)), data=data)
I performed model selection using sum coding and then tested the overall significance of each coefficient using anova from the lmerTest package:
lmerTest::anova(lme)
This gave me a significant Group x A x B three-way interaction.
Step 2: Switch to dummy coding and fit three models, with each level of B as the intercept.
contrasts(data$Group) = contr.treatment(2)
contrasts(data$A) = contr.treatment(2)
contrasts(data$B) = contr.treatment(3)
# N.b. these are the default contrasts in R. contrasts(data$B)
# B2 B3
# B1 0 0
# B2 1 0
# B3 0 1
lmeB1 = lmer(respVar ~ 1 + Group*A*B + (1|Subject) + (1|Item), control=lmerControl(optCtrl=list(maxfun=100000)), data=data)
b1sum = lmerTest::summary(lmeB1)
relevel(data$B, "B2")
lmeB2 = lmer(respVar ~ 1 + Group*A*B + (1|Subject) + (1|Item), control=lmerControl(optCtrl=list(maxfun=100000)), data=data)
b2sum = lmerTest::summary(lmeB2)
relevel(data$B, "B3")
lmeB3 = lmer(respVar ~ 1 + Group*A*B + (1|Subject) + (1|Item), control=lmerControl(optCtrl=list(maxfun=100000)), data=data)
b3sum = lmerTest::summary(lmeB3)
Step 3: Extract the contrasts of interest and apply a Bonferroni-Holm correction for multiple comparisons.
# Test the contrasts:
# 1) Group1 A1 B1 vs. Group1 A1 B2/B3
# 2) Group1 A1 B1/B2/B3 vs. Group2 A1 B1/B2/B3
# 3) Group1 A1 B1/B2/B3 vs. Group1 A2 B1/B2/B3
pvals = cbind("B1"=p.adjust(b1sum$coefficients[c(12, 11, 8, 3), 5], "holm"),
"B2"=c(9,9,p.adjust(b2sum$coefficients[c(8, 3), 5],"holm")),
"B3"=c(9,9,p.adjust(b3sum$coefficients[c(8, 3), 5],"holm")))
# Numbers correspond to the rows with the coefficients of interest in model$coefficients, column 5 contains the p-values.
# Reference Level=Group1
# B1 B2 B3
# 1a) B2:A1 0.001707473
# 1b) B3:A1 0.027679733
# 2) Group2:A2 0.016903682 0.0328017681 0.9451504
# 3) A2 0.127490731 0.0008424514 0.1002219
Note that I did this in R because I also included a fixed effect for participant gender, which I coded as c(0.5, -0.5) to centre the estimates on the mean of both (effectively "controlling for" gender). This is easier to do in R with the contrasts function: in MATLAB, it seems you have to specify the entire design matrix manually if you want to use something other than effects or dummy coding.
If you don't need custom contrasts, this whole process can be done much more easily in MATLAB by fitting the model with the default (dummy) variable coding:
lme = fitlme(data, 'respVar ~ 1 + Group*A*B + (1|Subject) + (1|Item)', 'FitMethod', 'REML', 'CheckHessian', true);
Then use coefTest to specific contrast matrices for your coefficients. The following gives me an F test for the contrast between my second and third coefficients---B2 and B3 in this case---with a Satterthwaite approximation for degrees of freedom. (See this reference for a discussion of significance testing for LMEs: https://doi.org/10.3758/s13428-016-0809-y)
[pval,F,DF1,DF2]=coefTest(lme, [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 'DFMethod', 'Satterthwaite')
As in all things statistics, what you choose to report and interpret is dependent on what you are trying to do with the statistic in the first place. If your hypotheses are not related to random effects, then you don't have to report on them. If you are specifically interested in how items function, then you'll probably want to look carefully at their random effects and correlations. If you want to describe a person's random effect (ability level, if this is indeed an IRT problem), then you'd likely spend some time talking about the variability in those random effects.
In this case, it seems like you're interested in certain predictors (or at least one predictor, X1). If this is true, then you might only need to describe the model you ran and then talk about the effects of the predictors. You also need to think about what is useful for your reader to understand the model as well. Not many people can look at a mixed model table and intuitively understand what the coefficients all mean. It can be helpful to include plots that show the fixed and random effects together, especially when there are random slopes, so that the standard deviation being reported can be contextualized.
Now, I think it's important to also throw out the caveat that good modeling will require that the researcher look at all of this information. Even if you have no interest in the specific values, looking at all the random effects and their relationships can be useful for thinking about whether or not your model is misspecified, identifying potentially interesting patterns, and generally being able to understand what your model is telling you. Personally, I take a model-based approach where the end goal is to develop a cohesive model that summarizes the data and the data generation process. Others, like you described, just want to know p-values for certain effects. Again, it comes down to what question you're trying to answer and what information is needed to shed light on that question
Best Answer
As said by @amoeba in the comment, the question is not so much a mixed model question, but more a general question on how to parameterize a regression model with interactions. The full quote from our chapter also provides an answer to your second question (i.e., the why):
Orthogonal sum-to-zero contrasts are better because they avoid potentially difficult to interpret lower-order effects. That is, for those contrasts all lower order effects are evaluated at the grand mean. For a quick explanation of dummy vs. effect coding difference, please see: http://www.lrdc.pitt.edu/maplelab/slides/Simple_Main_Effects_Fraundorf.pdf
This means for your case, almost all your interpretations are correct with one exception.
Hence, if zero is somewhat meaningless for your variable (e.g., it is age and you only observe adult participants) your estimate of Condition (which is now a simple effect of condition at X = 0) becomes meaningless as well.
In general, having interactions with continuous covariates is not trivial and there are at least two books and several papers which extensively discuss this issue. A common solution is centering the covariate on the mean. Whether or not this makes sense depends on your covariate. What I sometimes do when having a variable with a restricted range (e.g., it goes from 0 to 100) is to center on the midpoint of the scale (see e.g., here).
More information on centering can be found in the following references. I recommend you read the first one at least:
There is also some mixed-model specific discussion on centering, but to me this appears to be mainly relevant for hierarchical structures (i.e., at least two-levels of nesting), e.g.,
Potentially also relevant: