Одна из проблем, возникающих при записи файла журнала в формате XML, заключается в том, что вы не можете просто добавлять строки в конец файла, потому что последняя строка должна иметь закрывающий корневой элемент (чтобы XML был действительным)
Хорошим решением было бы объединить два XML-файла, используя XML-включаемую вещь:
Заголовочный файл:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log [
<!ENTITY loglines SYSTEM "loglines.xml">
]>
<log>
&loglines;
</log>
Файл строк (в данном примере с именем loglines.xml):
<logline date="2007-07-01 13:56:04.313" text="start process" />
<logline date="2007-07-01 13:56:25.837" text="do something" />
<logline date="2007-07-01 13:56:25.853" text="the end" />
Затем вы можете добавлять новые строки в «файл строк», но (большинство) анализаторы XML смогут открывать файл заголовка и правильно читать строки.
Филип отмечает, что: Этот XML не будет правильно обрабатываться каждым анализатором XML на планете. Но все парсеры, которые я использовал, делают это правильно.