Вот тэг, который у вас есть в вашем вопросе:
test="education_level='Bachelor's Degree/Undergraduate Degree'"
Я первым скажу, что ничего не знаю о файлах xslt.Таблицы стилей XML?Я не уверен.Независимо от цели, любой синтаксический анализатор будет иметь ту же проблему в том, что вы вложили пару имя / значение в качестве значения пары имя / значение и это вызывает у вас проблемы.Внутренняя одинарная кавычка (в бакалавриате) не анализируется как буквальная кавычка в строке, она анализируется как конец значения, т. Е. Синтаксический анализатор анализирует вещи как test
, являющееся первым именем, и его значениеэто пара имя / значение education_level='Bachelor'
, за которой следуют некоторые вещи, с которыми она не знает, что делать: s Degree/Undergraduate Degree '
.
В большинстве языков вы должны избегать внутренних кавычек, чтобы они выглядели каксимволы в строке, а не синтаксические символы, представляющие конец строки.Попробуйте это для первого тега:
<xsl:when test="education_level='Bachelor\'s Degree/Undergraduate Degree'">
\
является escape-символом в большинстве языков и должен быть также для xslt.