Обработка недопустимых символов в файлах XML
Файлы XML являются простыми текстовыми файлами. Файлы XML, в которых присутствуют нехарактерные для XML символы, рассматриваются как недопустимые, и их импорт, как правило, невозможен.
Если в процессе импорта XML-файла PolyAnalyst обнаруживает недопустимые символы, то вместо того, чтобы полностью прервать операцию, система автоматически заменяет их на символ пробела.
Примерами недопустимых символов могут выступать некоторые двоичные символы (также известные как управляющие символы) в старых текстовых файлах, либо в поврежденных файлах, либо в некорректно переданных (по FTP или электронной почте) или загруженных (из Интернета или из сетевой папки) файлах, либо в файлах, которые были переданы из разных операционных систем (например, прямой и обратный порядок байтов). Более подробное описание и характеристика подобных символов представлена в специализированных источниках.
Импортированные в PolyAnalyst XML-данные не являются точной копией исходных данных. Процесс преобразования данных сопровождается преднамеренным удалением некоторой информации. Если подобное поведение является нежелательным, используйте другой способ хранения данных. XML плохо подходит для передачи двоичных данных. Фактически, если сравнивать с ODBC или собственным двоичным форматом, это один из худших способов передачи подобных данных.
Заключение проблемных значений в разделы CDATA
Если вы самостоятельно создали XML-файл с использованием стороннего программного продукта, проверьте возможность добавления тегов CDATA для значений данных. Использование CDATA (англ. "символьные данные") позволяет лучше разграничивать символы, которые являются частью разметки, и символы, которые относятся к значениям данных в файле XML. Использование CDATA помогает парсерам XML (включая те, что используются в PolyAnalyst) избежать ошибочного распознавания значений данных как элементов разметки, а также способствует правильной интерпретации определенных символов в значениях XML-данных.
С технической точки зрения, каждое значение данных в XML-файле следует заключать в CDATA. Однако на практике это происходит редко, и многие программные продукты отказываются от этой формальности в целях сокращения размера XML-файла. В некоторых случаях включение режима CDATA может быть вовсе не предусмотрено. Как следствие, подобное несоответствие может привести к неожиданному поведению при импорте XML-файлов в другие системы, в том числе в PolyAnalyst. Если и после использования CDATA вы продолжаете испытывать проблемы с импортом, рекомендуется рассмотреть другие способы импорта данных.