Немного про XML

На собеседованиях при упоминании XML любят задавать вопрос, чем well-formed XML отличается от valid.

Резюмируя правильный ответ:

  1. well-formed XML — тот, который пропускается парсером
  2. компютри втора употребаvalid XML — тот, который пропускается парсером И валидатором

Например, у вас есть XML-документ, в котором не закрыт главный тэг:

<products>
  <a_product />
  <a_product />

Парсер его не пропустит; соответственно, такой XML – не well-formed. Ещё пример: если у вас не закрыт тэг HEAD в хтмл-документе — это тоже не well-formed, просто броузер слишком лоялен к пользователю, и скорее всего покажет документ как ни в чем не бывало.

Не валидный XML — это который не соответствует DTD. DTD — это такой свод правил для данного XML, гласящий, какой тэг где должен быть. Например, DTD для HTML гласит, что тэг DIV должен быть внутри тэга BODY и может встречаться многократно, TITLE — в HEAD и всего один раз, а SCRIPT – и там, и там сколько угодно раз.

4 Responses to “Немного про XML”

  1. Вадим Says:

    Не валидный XML — это который не соответствует DTD

    или XML Scheme 🙂

  2. Илья Says:

    Думаю многие будут не согласны

  3. himichka Says:

    что-то Вы нечасто обновляетесь, по какой причине?

  4. sulipn Says:

    Не пойму, почему SCRIPT может встречаться много раз?

Leave a Reply

You must be logged in to post a comment.