buenas,
en realidad no necesariamente tienen que ser elementos de bloque, incluso pueden haber elementos lineales que no se admiten dentro de otro lineal. por ejemplo, un elemento A no puede ir dentro de un A. tendrias que analizar el DTD del tipo documento que intentas validar y determinar cual es el elemento que no puede ir dentro de cual. en tu caso, busca cual es el elemento padre de A y determina cuales son los posibles elementos permitidos.