Вопрос-ответ

Error: The processing instruction target matching "[xX][mM][lL]" is not allowed

Ошибка: недопустимо соответствие целевой инструкции обработки "[xX] [mM] [lL]"

Эта ошибка,


Недопустимо соответствие целевой инструкции обработки "[xX] [mM] [lL]"


возникает всякий раз, когда я запускаю страницу XSLT, которая начинается следующим образом:

<?xml version="1.0" encoding="windows-1256"?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:include href="../header.xsl"/>
<xsl:template match="/">
<xsl:call-template name="pstyle"/>
<xsl:call-template name="Validation"/>
<xsl:variable name="strLang">
<xsl:value-of select="//lang"/>
</xsl:variable>
<!-- ////////////// Page Title ///////////// -->
<title>
<xsl:value-of select="//ListStudentFinishedExam.Title"/>
</title>

Примечание: Я удалил все начальные пробелы перед первой строкой, но ошибка все еще возникает!

Переведено автоматически
Ответ 1

Инструменты на основе Xerces выдадут следующую ошибку

The processing instruction target matching "[xX][mM][lL]" is not allowed.

когда XML-объявление встречается где угодно, кроме как в верхней части XML-файла.

Это допустимое диагностическое сообщение; другие анализаторы XML должны выдавать аналогичное сообщение об ошибке в этой ситуации.

Чтобы устранить проблему, проверьте следующие возможности:


  1. Перед видимое<?xml ?> содержимое.


    Решение: удалите пустое пространство или любое другое видимое содержимое перед объявлением XML.


  2. Некоторое невидимое содержимое существует до <?xml ?> объявления. Чаще всего это метка порядка байтов (BOM).


    Решение: удалите спецификацию, используя методы, подобные тем, которые предложены на странице W3C спецификации в HTML.


  3. В содержимом XML существует случайное <?xml ?> объявление. Это может произойти, когда XML-файлы объединяются программно или с помощью "вырезать и вставить". В XML-файле может быть только одно <?xml ?> объявление, и оно может быть только вверху.


    Решение: выполняйте поиск <?xml без учета регистра и удалите из файла все, кроме верхнего XML-объявления.


Ответ 2

Отладьте ваш XML-файл. Либо в нем есть пробел, либо добавлены дополнительные или меньшее количество тегов.

Для лучшего понимания создайте проект через командную строку. Windows: gradlew build

В моем случае, AndroidManifest.xml имеет пустое место в самой первой строке

<Empty Row> // This Creates the issue 
<?xml version="1.0" encoding="utf-8"?>
Ответ 3

В теге XML было автоматически сгенерировано сообщение об авторских правах и пустая строка перед <resources> тегом, как только я удалил его, моя сборка прошла успешно.

введите описание изображения здесь

Ответ 4

просто удалите эту строку: <?xml version="1.0" encoding="utf-8"?> потому что такого рода ошибки возникают только из-за этой строки, или вы также можете проверить формат вашей строки в соответствии с упомянутой строкой в этом ответе.

2023-11-29 13:24 java xml