[docs] Re: on olinking

Oleg A. Paraschenko olpa на xmlhack.ru
Пн Ноя 17 13:04:53 MSK 2003


  Привет,

On Mon, 17 Nov 2003 11:27:42 +0300
Vitaly Ostanin <vyt на vzljot.ru> wrote:

> On Mon, 17 Nov 2003 00:00:36 +0300
> "Oleg A. Paraschenko" <olpa на xmlhack.ru> wrote:
> 
> >   Всем привет,
> > 
> >   предлагаю обсудить проблемы, связанные с olink-ссылками.
> 
> Я пока не вижу с ними проблем :)

...


> > 
> >   Нынешняя реализация в alt-docs примерно такая:
> 
> Это устаревшее описание.
>
> http://www.altlinux.ru/pipermail/docs/2003-February/001964.html

  Спасибо. Пропустил.

...
>
> > --
> > 
> > Проблема: "компонентность базы ссылок"
> > 
> >   База ссылок состоит из главного файла и модулей. Каждый
> >   модуль -- это
> > список пар (ID, заголовок), полученный некоего документа.
> > 
> >   Для того, чтобы olink-ссылки работали, в базу ссылок должны
> >   входить все
> > модули, соответствующие документам, на которые ведёт ссылка.
> 
> Нет, так как ссылка должна указывать на объединяющий документ и
> id внутри него. То есть, если документ intro из admin хочет
> сослаться на id="admin.docs", то в качестве модуля должен быть
> указан admin.

  Чего-то я начинаю запутываться. Объясни мне лучше на таком примере:

  Есть документы:

* $DOCS_ROOT/admin.xml
* $DOCS_ROOT/devel/cvs/cvs.xml

  Из "admin.xml" я хочу сослаться на установку cvs, описанную в "cvs.xml"
(id=devel.cvs.install). Известно также, что объединённый "admin.xml" не
содержит ни строчки текста из "cvs.xml".

  Как в таком случае должна выглядеть olink-ссылка?

...

> > 
> >   Предлагаю такой подход к обработке olink-ссылок:
> > 
> > * на этапе тюнинга, для каждой olink-ссылки:
> >     если targetptr указывает на id, существующий в самом
> >     документе,
> >       то olink-ссылка превращается в обычную xref-ссылку
> >   (для реальных книг, думаю, должно быть в 99.9% случаев);
> 
> Зачем?

  Потому что для большинства итоговых документов попадание должно
быть 100%, и тогда пляски с OLINKING=yes, созданием targetsets и
прочим убираются.

> 
> > * базу данных ссылок вести вручную (да, именно вручную, никакой
> >   автоматики). Учитывая, что межбуквенных ссылок должно быть
> >   мало, это не должно быть большой проблемой.
> 
> Это была бы большая проблема.

  На данный момент у нас межкнижных ссылок -- 0 штук. Не думаю, что их
число будет стремительно расти.

> 
> >   Достоинства:
> > 
> > * такая схема работает;
> > * проста в понимании;
> > * тривиальна в реализации.
> > 
> > 
> >   Ваши мнения?
> 
> Честно говоря, я не понял, зачем это нужно.

  Если что-то можно упростить без потери функциональности -- это надо
упростить.

> В текущем варианте
> плохо только то, что использование olink нужно указывать явно -
> это исправляется тривиальным стилем по результатам xinclude.

  тривиальный стиль + тривиальный стиль  + тривиальный стиль + ...

> 
> Чтобы менять семантику olink, нужны веские причины.

  В данном случае семантика уже поменена, ибо сейчас база olink-ссылок
создаётся не из тех документов, в которые ведут ссылки, а из самого
документа, из которого ведут ссылки.

* Это несколько неочевидно, так как собирать надо не так как сейчас.
* Предложенная замена "olink" на "xref" делает явным и понятным, что
  происходит на самом деле.


> 
> <skipped/>
> 
> -- 
> Regards, Vyt
> mailto:  vyt на vzljot.ru
> JID:     vyt на vzljot.ru


-- 
Oleg



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