нь XSLT і мови форматування XSL-FO.
XSLT - мова перетворення XML в інші типи документів або в інші XML-документи. Він є найбільш важливою частиною стандарту XSL. XSLT можна застосовувати для перетворення XML документів у формат, знайомий браузерам [2].
У процесі XSLT-перетворень в якості вступних даних використовується дерево документа, в результаті обробки якого формується дерево результатів. У цьому випадку документи являють собою дерева, побудовані на основі вузлів. Для визначення оброблюваного вузла (вузлів) XSLT пропонує різні способи, щоб забезпечити установку відповідності з вузлами або їх вибору.
XSL-FO - мова форматування, що описує зовнішній вигляд сторінок. Він надає більш досконалу візуальну модель сторінки, ніж HTML і CSS. На відміну від зв'язки останніх, XSL-FO підтримує такі типи форматування, як напрям листи з права на ліво і знизу вгору, виноски, замітки на полях документа, перехресні посилання на номери сторінок та інші. На відміну від каскадних таблиць стилів CSS, які переважно призначені для веб-сторінок, XSL-FO призначений для більш широкого кола завдань. Можна, наприклад, написати таблицю стилів XSL, яка за допомогою форматуючих об'єктів згенерує верстку цілої книги. Інша таблиця стилів може згенерувати з того ж документа веб-сайт [4].
Подібно іншим XML-додаткам, форматує XSL-об'єкти мають власний простір імен lt; # justify gt; 2.4 Текстові процесори
Для перетворення xml-документа, що містить дані специфікації, використовуються текстові процесори: XMLConverter, MSXSL і Apache FOP. Перший, з яких, перетворює xml-документ в проміжний xml-документ. Він додає відступи у вигляді порожніх рядків в специфікацію, а також дописує їх в кінець останньої сторінки. Другий процесор використовується для застосування XSLT-інструкцій, описаних у xsl-файлі, до xml-файлу. У результаті чого виходить fo-файл. Він містить дані xml-документа і форматує об'єкти xsl-шаблону. Для перетворення fo-файлу в pdf-документ, використовується Apache FOP.
У рамках поточної глави дана постановка задачі. Продемонстровано схема механізму перетворення xml-вистави груповий специфікації в pdf-документ. Дано загальні поняття про об'єкти, що беруть участь у перетворенні.
3 РЕАЛІЗАЦІЯ ПРЕДСТАВЛЕННЯ СПЕЦИФІКАЦІЇ У XML-ФОРМАТІ ТА ЇЇ ПЕРЕТВОРЕННЯ В PDF-ФОРМАТ
. 1 Розробка структури xml-файла
Інформаційна структура файлу формату XML являє собою дерево. У ролі елементів дерева (предків, нащадків і листя) виступають теги і їхні атрибути. Теги використовуються для розмітки документа на фрагменти, що містять дані різного виду. Атрибути застосовуються для позначення даних різного роду. Атрибути так само називають об'єктами. Вони складаються з імені та поля, що містить дані. Знаючи назву тега, позицію у файлі і ім'я атрибута, можна отримати доступ до цих даних. Дані мають строковий тип, але можуть інтерпретуватися програмами як числа.
Файли описуваного формату є текстовими, відповідно їх вміст - це текст. Мова, застосовуваний для розмітки вмісту цих файлів - це мова гіпертекстової розмітки XML. Програми, що працюють з файлами даного типу, можна віднести до класу текстових процесорів. Вони інтерпретують байти даних xml-файла як символи. Виходячи з цього, розробниками стандартів XML була введена вимога, вказувати кодування файлу за коштами одного з атрибутів тега xml, що відноситься до інструкцій і позначуваного наступним чином: lt;? Xml version= 1.0 encoding= UTF - 8 ? gt ;. У наведеному прикладі це атрибут encoding, що має значення поля UTF - 8 (однобайтном Unicode). Об'єкт version вказує версію використовуваного мови розмітки XML. [1]
Інформаційна структура, розроблювального файлу, що містить дані специфікації, представлена ??на малюнку 3.1. Як видно з малюнка, дані, що входять в специфікацію, поділяються на дані, що входять в штамп, дані, пов'язані розділу, і дані, що входять в рядок. Штамп є у одному примірнику. Всі дані, що відносяться до нього, є завжди. Найменування розділу відсутнім не може, тому що в противному випадку втрачається сенс у самому розділі. Рядок складається з наступних даних: формат, зона, позиція, позначення, найменування, кількість на виконання і примітка. Кількостей на виконання декілька. Залежно від специфікації їх може бути: 10, 30, 39. Рахунок починається з 0. Наприклад, якщо кількостей 10, N буде дорівнює 9.
Малюнок 3.1
Розділів, як і рядків, може бути багато. Їх число визначається даними, сформованими в PartList, а також вимогами відповідного ГОСТу.
Для представлення описаної структури даних в XML форматі скористаємося тегами і їх атрибутами. Для позначення кореневого елемента спе...