Правильно сформированный документ в XML — это документ, который «соответствует правилам синтаксиса, указанным в спецификации XML 1.0, в том смысле, что он должен удовлетворять как физическим, так и логическим структурам» [1] .
На базовом уровне правильно составленные документы требуют, чтобы:
Чтобы быть правильно сформированным документом, должны быть установлены правила объявления и обработки сущностей. Теги чувствительны к регистру , с атрибутами, разделенными кавычками. Для пустых элементов установлены правила. Перекрывающиеся теги делают документ недействительным. В идеале правильно сформированный документ соответствует целям дизайна XML. Другие ключевые правила синтаксиса, предусмотренные в спецификации, включают:
<
и , &
не появляется, за исключением случаев, когда они выполняют функции разметки.!"#$%&'()*+,/;<=>?@[\]^`{|}~
, ни пробел, и не могут начинаться с -
, .
или цифры.Действительный XML-документ определяется в спецификации XML как правильно сформированный XML-документ, который также соответствует правилам определения типа документа (DTD). Согласно учебнику JavaCommerce.com XML, "Правильно сформированные XML-документы просто размечают страницы с помощью описательных тегов. Вам не нужно описывать или объяснять, что означают эти теги. Другими словами, правильно сформированный XML-документ не нуждается в DTD, но он должен соответствовать правилам синтаксиса XML. Если все теги в документе правильно сформированы и следуют рекомендациям XML, то документ считается правильно сформированным". [2] [3]
XML-процессор, обнаруживший нарушение правил корректности, обязан сообщать о таких ошибках и прекращать нормальную обработку. Эта политика, иногда называемая драконовской , [4] резко контрастирует с поведением программ, обрабатывающих HTML , которые разработаны для получения разумного результата даже при наличии серьезных ошибок разметки [5] в духе закона Постела («Будьте консервативны в том, что вы отправляете; будьте либеральны в том, что вы принимаете»). [6] [4]
Концепция правильно сформированного документа позволяет лучше понять фундаментальную конструкцию XML. Она помогает прояснить XML за пределами его типичного смысла. Например, хотя большинство определений типов документов XML используют левые и правые угловые скобки в качестве разделителей содержимого, строго говоря, это не является необходимостью (хотя разделитель должен быть кратким и лаконичным). Коды левых и правых угловых скобок являются соглашением, хотя и понятным и отличительным, а не абсолютным требованием.
Концепция хорошо сформированного документа также позволяет понять абстрактную природу XML. В действительности, XML не существует. [ необходима цитата ] Скорее, XML — это принцип, представляющий набор поведений и практик. Можно обсуждать типы XML, как выражено в определении типа документа (DTD).
Правильно сформированные документы также фокусируют внимание на вопросе допустимого и правильного XML. Согласно организации W3, допустимые документы — это те, которые соответствуют DTD. Правила допустимости означают, что документ соответствует ограничениям, указанным в DTD. Таким образом, теги или сущности должны соответствовать правилам и отношениям, установленным в DTD. Однако нет контроля над тем, является ли тег или сущность правильным. Таким образом, заголовок первого уровня может быть применен к заголовку второго уровня и быть допустимым, хотя и неверным.
Акцент на правильно сформированных документах появился в издательской отрасли, где использование информации, разделенной левыми и правыми угловыми скобками, стало проблематичным. [ необходима ссылка ] Акцент на правильно сформированном документе позволяет управлять определением, разграничением и вложением контента в программах, которые по сути не являются XML, но обладают характеристиками или потенциалом для правильного форматирования.
Существует несколько инструментов, позволяющих определить, правильно ли сформирован XML-документ.