[docs] Re: well-formness (was: crossreading)

Vitaly Ostanin vyt на vzljot.ru
Пн Ноя 18 11:30:36 MSK 2002


On Mon, 18 Nov 2002 11:07:09 +0300
"Anton V. Boyarshinov" <boyarsh на ru.echo.fr> wrote:

> On Mon, 18 Nov 2002 10:58:04 +0300
> Vitaly Ostanin <vyt на vzljot.ru> wrote:
> > > 
> > > > > Поправить commitinfo на предмет проверки документа на
> > > > > well-formess. Помещение в cvs не well-formed xml файлов
> > > > > явно препятствует рабте других людей и может быть
> > > > > пресечено техническими средствами.
> > > > 
> > > > Поправить каким именно образом? 
> > > 
> > > В cvsroot/CVSROOT/ лежит файл commitinfo, в котором можно
> > > прописывать проверки для помещаемых файлов. Если проверка
> > > не проходит -- файл не коммитится. Для проверки xml файлов
> > > можно запустить xmllint --noout --xinclude.
> > 
> > Что именно проверяет такой запуск?
> 
> См. следующий (поскипанный) абзац ;)

Я его поскипал, потому что он не вызывает возражений :)

> --------------
>  В XML есть такое понятие: well-formed документ. Это значит,
>  что
> все тэги в нем закрыты, сответстуют друг другу и вообще он
> синтаксически корректный документ XML (безотносительно к DTD).
> --------------
> 
> То есть то, что это вообще XML документ и при его обработке не
> буедт фатальных ошибок.

Насколько я знаю, xmllint не проверяет просто на well-formed.
В 'xmllint --noout --xinclude' не хватает, как минимум,
'--loaddtd' для разрешения сущностей, объявленных в DTD. Для
использования &BASEID; в атрибутах нужно ещё указывать '--noent',
но это всё уже проверка валидности.

В общем, не знаю, как xmllint проверить просто well-formed.

> > Кстати, для коммитов я бы предпочёл проверку соответствия не
> > только XML (который поправить не так сложно), но и DTD (что
> > править запарно).
> 
> У меня на этот счёт другое мнение. ПРоверки при commit не
> должны быть слишком строгими. Release early, так сказать.

В этом случае одно (случайное) нарушение структуры документа
приведёт к большим временным затратам человека, который будет
следующим работать с документом.

Я вообще думаю, что не стоит возлагать на cvs проверки XML при
коммите, пока не отработано хранение информации о документах в
document-status.xml. Например, надо как-то говорить проверкам в
cvs, что нужно проверять не psi/psi.xml (которого нет), а
psi/psi-src.xml

<skipped/>

-- 
Regards, Vyt
mailto:  vyt на vzljot.ru
JID:     vyt на vzljot.ru
----------- следущая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: отсутствует
Url     : /pipermail/docs/attachments/20021118/31dfd427/attachment.bin


Подробная информация о списке рассылки docs