DITA

Поделись знанием:
Перейти к: навигация, поиск


Darwin Information Typing Architecture (DITA) — приложение XML, предназначенное для автоматизации сборки документов из разрозненных фрагментов, оформленных согласно соответствующим DTD, и их публикации в различных форматах.

Цитата из статьи «[xmlhack.ru/texts/06/dita/dita.html Введение в архитектуру типизированной информации Darwin]»:

Архитектура типизированной информации Darwin (Darwin Information Typing Architecture, DITA) — это основанная на XML технология, охватывающая весь цикл разработки, выпуска и доставки технической информации. Эта архитектура составлена из набора принципов, описывающих как создание модулей с «типизированной информацией» на уровне отдельных тем, так и использование этой информации, например в онлайн-справке или на веб-портале технической поддержки.

Основными элементами DITA — кирпичиками, из которых строится архитектура разбитой по темам информации, — являются определения типов XML-документа (DTD), а именно, «DTD-тем». Несмотря на это, основополагающим принципом в архитектуре DITA является её расширяемость; DTD-тем, как и любые схемы на их основе, — это лишь конкретные реализации принципов этой архитектуры.





Принципы DITA

Принцип единого источника в DITA

DITA поддерживает принцип единого источника посредством:

  • возможности многократно использовать контент;
  • профилирования и фильтрации контента;
  • публикации во множество форматов из одного источника.

Контент может многократно использоваться на следующих уровнях:

  • Контент внутри топика.
  • Топик в целом.
  • Карта документа.

DITA позволяет профилировать контент с помощью атрибутов. Фильтрация контента осуществляется с помощью фильтров, определяемых в формате *.ditaval.

Контент может быть опубликован во множество форматов, включая XHTML, PDF, ODT, Eclipse Help, HTML Help, JavaHelp, RTF, Docbook, Troff.

Многократное использование контента на уровне топика

Профилирование контента — разметка различных вариаций одного и того же контента и определение в каких случаях должна применяться каждая из вариаций. Например, один и тот же контент может иметь различные вариации для разных клиентов или для разных версий продуктов. Условный контент — различные вариации контента. При публикации остается одна или несколько вариаций, релевантных для данного случая, все остальные вариации отфильтровываются. Условный контент помечается с помощью атрибутов. Атрибуты могут быть определены у любого элемента. Основные атрибуты для профилирования контента:

  • audience;
  • platform;
  • product;
  • xml:lang.

Новые атрибуты могут быть добавлены через механизмы специализации DTD.

Фильтрация условного контента при публикации происходит с помощью фильтров, определяемых в формате *.ditaval. Файлы *.ditaval состоят из:

  • Пар атрибут-значение.
  • Действия (скрыть или показать) для каждой пары атрибут-значение, например:
<?xml version="1.0" encoding="UTF-8"?>
<val>
  <prop att="audience" val="p" action="exclude"/>
  <prop att="audience" val="a" action="include"/>
  <prop att="xml:lang" val="ru-ru" action="include"/>
  <prop att="xml:lang" val="en-us" action="exclude"/>
</val>

При применении фильтра все элементы, в которых задан атрибут audience="p" будут исключены, а элементы, с атрибутом audience="a", будут включены.

Для получения различных результатов, в зависимости от того, какой контент должен быть отфильтрован, может поддерживаться несколько фильтров. Пример использования в dita-разметке:

<?xml version="1.0" encoding="UTF-8"?>
<conbody>
   <p xml:lang="en-us">Some English text</p>
   <p xml:lang="ru-ru">Некоторый русский текст</p>
</conbody>

Многократное использование контента на уровне карты

Топик может быть включен или исключен из определенной карты документа. В каждой карте документа, один и тот же топик может быть помещен на разные уровни иерархии и занимать любое место в последовательности топиков. Если ряд топиков встречаются в одной и той же последовательности и в одной и той же иерархии, они могут быть объединены в мини-карту. Мини-карта может использоваться как единое целое в других картах. В разных картах мини-карта может находиться на разных уровнях иерархии и занимать любое место в последовательности топиков.

Топик-ориентированный подход

  • Документ представлен как организованная коллекция отдельных контекстно-независимых топиков.
  • Топик описывает один единственный предмет.
  • Каждый топик написан таким образом, который позволяет его использовать во множестве контекстов.
  • В топике может использоваться условный текст.
  • Все топики хранятся в отдельном месте.
  • Для публикации топики собираются вместе в карту документа. Карта определяет порядок и иерархию документа.
  • В зависимости от типа информации, которую описывает топик, топик имеет определенную внутреннюю структуру.

Типизация информации

  • Concept — тип топика для описания общей информации.
  • Task — тип топика для пошагового описания процедур.
  • Reference — тип топика для документирования команд и настроек.

Отделение контента от форматирования

  • Топик содержит только контент.
  • Информация о форматировании элементов топика хранится в отдельных файлах — шаблонах форматирования.
  • Один и тот же контент может быть представлен множеством способов, путём наложения разных шаблонов.
  • Форматирование накладывается на контент во время создания контента, а также во время публикации.

Специализация

Под специализацией DITA понимается механизм адаптации DITA для конкретных нужд. Могут быть созданы:

  • Новые информационные типы.
  • Новые домены.
  • Новые атрибуты.

Напишите отзыв о статье "DITA"

Ссылки

  • [dita.xml.org Online community for the Darwin Information Typing Architecture OASIS Standart]
  • [www.oasis-open.org/news/oasis-news-2007-08-13.php Members Approve DITA 1.1 as OASIS Standard] 13 August 2007
  • [techwriters.ru/forum/forum620/ DITA на сайте для технических писателей TechWriters.ru]

Отрывок, характеризующий DITA

– Как фамилия?
– Граф Ростов.
– А, хорошо. Оставайся при мне ординарцем.
– Ильи Андреича сын? – сказал Долгоруков.
Но Ростов не отвечал ему.
– Так я буду надеяться, ваше сиятельство.
– Я прикажу.
«Завтра, очень может быть, пошлют с каким нибудь приказанием к государю, – подумал он. – Слава Богу».

Крики и огни в неприятельской армии происходили оттого, что в то время, как по войскам читали приказ Наполеона, сам император верхом объезжал свои бивуаки. Солдаты, увидав императора, зажигали пуки соломы и с криками: vive l'empereur! бежали за ним. Приказ Наполеона был следующий:
«Солдаты! Русская армия выходит против вас, чтобы отмстить за австрийскую, ульмскую армию. Это те же баталионы, которые вы разбили при Голлабрунне и которые вы с тех пор преследовали постоянно до этого места. Позиции, которые мы занимаем, – могущественны, и пока они будут итти, чтоб обойти меня справа, они выставят мне фланг! Солдаты! Я сам буду руководить вашими баталионами. Я буду держаться далеко от огня, если вы, с вашей обычной храбростью, внесете в ряды неприятельские беспорядок и смятение; но если победа будет хоть одну минуту сомнительна, вы увидите вашего императора, подвергающегося первым ударам неприятеля, потому что не может быть колебания в победе, особенно в тот день, в который идет речь о чести французской пехоты, которая так необходима для чести своей нации.
Под предлогом увода раненых не расстроивать ряда! Каждый да будет вполне проникнут мыслию, что надо победить этих наемников Англии, воодушевленных такою ненавистью против нашей нации. Эта победа окончит наш поход, и мы можем возвратиться на зимние квартиры, где застанут нас новые французские войска, которые формируются во Франции; и тогда мир, который я заключу, будет достоин моего народа, вас и меня.
Наполеон».


В 5 часов утра еще было совсем темно. Войска центра, резервов и правый фланг Багратиона стояли еще неподвижно; но на левом фланге колонны пехоты, кавалерии и артиллерии, долженствовавшие первые спуститься с высот, для того чтобы атаковать французский правый фланг и отбросить его, по диспозиции, в Богемские горы, уже зашевелились и начали подниматься с своих ночлегов. Дым от костров, в которые бросали всё лишнее, ел глаза. Было холодно и темно. Офицеры торопливо пили чай и завтракали, солдаты пережевывали сухари, отбивали ногами дробь, согреваясь, и стекались против огней, бросая в дрова остатки балаганов, стулья, столы, колеса, кадушки, всё лишнее, что нельзя было увезти с собою. Австрийские колонновожатые сновали между русскими войсками и служили предвестниками выступления. Как только показывался австрийский офицер около стоянки полкового командира, полк начинал шевелиться: солдаты сбегались от костров, прятали в голенища трубочки, мешочки в повозки, разбирали ружья и строились. Офицеры застегивались, надевали шпаги и ранцы и, покрикивая, обходили ряды; обозные и денщики запрягали, укладывали и увязывали повозки. Адъютанты, батальонные и полковые командиры садились верхами, крестились, отдавали последние приказания, наставления и поручения остающимся обозным, и звучал однообразный топот тысячей ног. Колонны двигались, не зная куда и не видя от окружавших людей, от дыма и от усиливающегося тумана ни той местности, из которой они выходили, ни той, в которую они вступали.
Солдат в движении так же окружен, ограничен и влеком своим полком, как моряк кораблем, на котором он находится. Как бы далеко он ни прошел, в какие бы странные, неведомые и опасные широты ни вступил он, вокруг него – как для моряка всегда и везде те же палубы, мачты, канаты своего корабля – всегда и везде те же товарищи, те же ряды, тот же фельдфебель Иван Митрич, та же ротная собака Жучка, то же начальство. Солдат редко желает знать те широты, в которых находится весь корабль его; но в день сражения, Бог знает как и откуда, в нравственном мире войска слышится одна для всех строгая нота, которая звучит приближением чего то решительного и торжественного и вызывает их на несвойственное им любопытство. Солдаты в дни сражений возбужденно стараются выйти из интересов своего полка, прислушиваются, приглядываются и жадно расспрашивают о том, что делается вокруг них.
Туман стал так силен, что, несмотря на то, что рассветало, не видно было в десяти шагах перед собою. Кусты казались громадными деревьями, ровные места – обрывами и скатами. Везде, со всех сторон, можно было столкнуться с невидимым в десяти шагах неприятелем. Но долго шли колонны всё в том же тумане, спускаясь и поднимаясь на горы, минуя сады и ограды, по новой, непонятной местности, нигде не сталкиваясь с неприятелем. Напротив того, то впереди, то сзади, со всех сторон, солдаты узнавали, что идут по тому же направлению наши русские колонны. Каждому солдату приятно становилось на душе оттого, что он знал, что туда же, куда он идет, то есть неизвестно куда, идет еще много, много наших.
– Ишь ты, и курские прошли, – говорили в рядах.
– Страсть, братец ты мой, что войски нашей собралось! Вечор посмотрел, как огни разложили, конца краю не видать. Москва, – одно слово!
Хотя никто из колонных начальников не подъезжал к рядам и не говорил с солдатами (колонные начальники, как мы видели на военном совете, были не в духе и недовольны предпринимаемым делом и потому только исполняли приказания и не заботились о том, чтобы повеселить солдат), несмотря на то, солдаты шли весело, как и всегда, идя в дело, в особенности в наступательное. Но, пройдя около часу всё в густом тумане, большая часть войска должна была остановиться, и по рядам пронеслось неприятное сознание совершающегося беспорядка и бестолковщины. Каким образом передается это сознание, – весьма трудно определить; но несомненно то, что оно передается необыкновенно верно и быстро разливается, незаметно и неудержимо, как вода по лощине. Ежели бы русское войско было одно, без союзников, то, может быть, еще прошло бы много времени, пока это сознание беспорядка сделалось бы общею уверенностью; но теперь, с особенным удовольствием и естественностью относя причину беспорядков к бестолковым немцам, все убедились в том, что происходит вредная путаница, которую наделали колбасники.