Модифицированный XML все еще действителен для обработки? - PullRequest
0 голосов
/ 02 декабря 2010

Этот вопрос не о проверке синтаксиса XML, а об обработке.Мой вопрос: могу ли я добавить узлы без разрыва файла?Конечно, если предположить, что тот, кто импортирует файл, подчиняется всем стандартам и правилам.

Маби, это неясно, поэтому позвольте мне привести пример:

У меня есть XML-файл, содержащий данные somd.

требуемый формат:

<item>
<name>somename</name>
<description>somedescription</description>
<contents>
 <somecontent1>bla</somecontent1>
 <somecontent2>bla2</somecontent2>
</contents>
</item>

Теперь я хочу изменить файл следующим образом:

<item>
<name>somename</name>
<description>somedescription</description>
<contents>
 <somecontent1>bla</somecontent1>
 <somecontent2>bla2</somecontent2>
</contents>
<myNewCustomAttribute>
 <someNode>
  <whatever/>
 </someNode>
</myNewCustomAttribute>
</item>

Причина в том, что я конвертирую файлы XML из одного формата в другой, чтобы ониможно импортировать в систему.Я хотел бы создать один дополнительный узел, где я храню исходный XML-файл, поэтому я не теряю исходные данные и могу позже обнаружить ошибки и прочее ...

Так же, как в объектно-ориентированном подтипе (подтип)всегда выполняет требования родительского типа и может использоваться как единое целое).

Это - или есть ли другой - возможный способ расширения файлов XML, чтобы они оставались нетронутыми для их первоначальной цели?Каковы правила для этого?

1 Ответ

2 голосов
/ 02 декабря 2010

Это зависит от приложения, которое обрабатывает файл XML. Если он использует relax ng, DTD, XSD для проверки этого XML, вы должны посмотреть схему, чтобы увидеть, что разрешено, а что нет. Если схемы нет, она полностью зависит от алгоритма обработки. Это нормально, если это удастся.

...