Первое, что нужно знать, это то, что проблема не в вашем программном обеспечении.
Поскольку вы новичок в XML, я собираюсь предположить, что определение сущностей - это не то, с чем вы сталкивались раньше.Символьные объекты - это ярлыки для произвольных фрагментов текста (один или несколько символов).Самое распространенное место, где вы их увидите, - это ситуация, в которой вы находитесь сейчас.В какой-то момент ваш XML был создан кем-то, кто хотел набрать символ «Č» или «č» (это верхний и нижний регистр C с Caron, если ваш шрифт не может его отобразить).
Однаков XML у нас есть только несколько предварительно объявленных объектов (амперсанд, меньше, больше, чем двойная кавычка и апостраф).Любые другие символьные объекты должны быть объявлены.Чтобы правильно проанализировать ваш файл, вам нужно сделать одну из двух вещей - либо заменить символьную сущность чем-то, что не вызывает проблем с анализатором, либо объявить сущность.
Чтобы объявить сущность, вы можете использовать нечто, называемое «внутренним подмножеством» - специализированная форма оператора DTD, которую вы можете увидеть в верхней части вашего XML-файла.Примерно так:
<!DOCTYPE root-element
[ <!ENTITY Ccaron "Č">
<!ENTITY ccaron "č">]
>
Размещение этого оператора в начале XML-файла (измените «корневой элемент» на свой) позволит парсеру разрешить сущность.
В качестве альтернативы просто измените Č
на Č
, и ваша проблема также будет решена.
Обозначение &#
является числовой сущностью, дающей соответствующее значение Юникода для символа («х» означает, что он в шестнадцатеричном виде).
Вы также всегда можете просто ввести символ, но для этого необходимо знать все тонкости вашей клавиатуры и региона.