XML

Статус
Закрыто для дальнейших ответов.

fedun

Участник
Топикстартер
Сообщения
237
Реакции
0
Друзья, скажите, пожалуйста, кто-нибудь реально пользовался возможностями InD по поддержке XML?

Все руководства я внимательно прочитал. Там рассказано, в принципе, о том как сопоставить теги XML атрибутам объектов InD и экспортнуть всё это туда-сюда.

Вот и вопрос: что с этим хозяйством делать?

Смотрите.
У нас есть некая система, написанная на 1С. В ней хранятся все возможные «переменные» любого нашего заказа.
Мы хотим на автомате генерировать комерческие предложения с подставленными в них участками текста и цифр.
Допустим, мы можем выдавать XML из 1С (куда выдавать и кому выдавать — отдельный вопрос).
Что дальше мне с ним (этим XML) делать? Моя задача — получить, в конечном счете, .pdf и/или .doc, который продавец может отправлять клиенту.

Заостряю внимание, что вся эта история с 1С — лишь пример задачи. Интересует вообще практика (!) применения XML в InD.
 

Steve

Участник
Сообщения
227
Реакции
0
Ответ: XML

на адобовском форуме также отправляют читать "хелпы", вот что обычно предлагает почитать Olav Kvern:Automated publishing with XML and scripting

Простой вариант. Сделали шаблон для однотипных бланков: создали различные стили (paragraphs, characters, objects), создали tags, применили tags к объектам, параграфам, чарам и замапили стили. Экспорт в xml, посмотрели что внутрях, затем подставили туда свои поля и обратно import xml.

Более сложные вопросы смотрим на адобовском форуме: поиск + xml

Еще варианты, использовать tagged-text+скрипты.

Хмм.. вроде, в 1С есть генераторы отчетов? может сначала посмотреть возможности одной программы, чем пытаться сразу из 2-х строить систему по выдаче отчетов? :)
 

fedun

Участник
Топикстартер
Сообщения
237
Реакции
0
Ответ: XML

За ссылку спасибо. Почитаю.

Интересна, конечно, реальная практика — получилось/не получилось.

Я хочу реализовать механизм, когда сотрудникам компании не придётся выбирать при необходимости визуальной комуникации с клиентом: изучать им правила вёрстки или посылать плохой документ.

Особенности 1С, как и любой другой АИС (автоматизированная информационая система), не должны приниматься во внимание. Что касается 1С, она вообще использует для любого вывода визуальной информации Windows GDI, поэтому говорить о каком-либо контроле над оформлением не приходится.

Задача может быть сформулирована принципиально: мы можем на практике реализовать принцип отделения содержания от его отображения?

Любая корпоративная АИС идеальна для хранения структуированной информации. Но заставлять её отвечать за внешний вид не правильно — ведь для этого и существуют специализированные программы типа InD. Зато эта АИС (чаще всего) может выдать нечто в формате XML.

Кроме того, информация из АИС идёт в разные места: документы, сайт и т.п. В каждом из них есть свои правила и механизмы визуализации.

Поэтому вопрос стоит по-прежнему. Может ли InD, используя свои способности по XML, служить инструментом, формирующим документы в соответствии с фирменным стилем, содержание которых проистекает из чужеродных по отношению к InD источников?
 

Steve

Участник
Сообщения
227
Реакции
0
Ответ: XML

документы, которые надо генерировать, будут построены на одном шаблоне(ах) или все документы разные по структуре?

XML - язык разметки, но не визуализации. Поэтому надо создавать template или просто документ, куда будут импортироваться данные из xml.

Еще вариант - использовать формат inx (XML), но это ооочень сложно и я еще не видел таких готовых решений. Вот это сразу будет система визуализация+данные, а на выходе готовый документ.
 

fedun

Участник
Топикстартер
Сообщения
237
Реакции
0
Ответ: XML

Steve, большое спасибо за ответ!

Я, конечно, говорю о типовых шаблонах.

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

По теории — XML применять сам бог велел. Кроме того, у нас есть еще довольно обширный набор обновляемой информации, которую нужно на сайте дублировать (не говоря уже о том, что пока нам все документы нужно кроме прочего и в формате .doc иметь возможность посылать).

.inx — понятно, что не для этого случая. Он в таком виде ничем не лучше Open XML (MSOffoce 2007) или Open Document (OpenOffice.org) или даже xhtml. Програмно генерировать документы — не та задача.

Хочется как раз отделить представление от содержания и разделять контент среди различных средств визуализации.
 

fedun

Участник
Топикстартер
Сообщения
237
Реакции
0
Ответ: XML

Steve сказал(а):
на адобовском форуме также отправляют читать "хелпы", вот что обычно предлагает почитать Olav Kvern:Automated publishing with XML and scripting
Я просмотрел сегодня раздел по приведённой ссылке. Вспомнил, что многократно уже изучал его ранее. Его название — "Automated publishing with XML and scripting" — уже не первый раз сбивает меня с толку.

Реально, там из практически полезных есть те же самые два материала из документации: "InDesign CS3 User Guide XML chapter" (он же есть и на русском) и "Adobe InDesign CS3 and XML: A Technical Reference" (его ещё иногда называют XML-скриптинг).

Так вот именно эти два документа я как-раз и изучил внимательно ранее. А интересуюсь я вовсе не тем, как, в принципе, работать с XML, а получилось ли у кого-нибудь из участников форума реально построить "аutomated publishing with XML". Кто-нибудь смог через XML реализовать что-то автоматическое и работоспособное в рамках подразделения и/или компании?
 

Steve

Участник
Сообщения
227
Реакции
0
Ответ: XML

Но всё равно потребуются скрипты/доп. программы. Например, в определенную папку скидывается xml (имя файла может содержать спец. теги, чтобы знать какой шаблон надо открывать или доп. txt-файл с "настройками"). Отдельная програ/скрипт проверяет эту папку (in) на наличие новых xml-файлов. Как только появляется файл, скрипт открывает в ИД определенный шаблон, имтортирует xml, делает экспорт в pdf, закрывает док (?с сохранением) и переносит xml в папку out.
Чуток позже попробую сделать такую штуку, пока для себя, т.к. надо будет похожую систему строить, но еще не решил как лучше делать.


Еще вариант (без xml) юзать plug-in'ы c bi-directional connection, для связи c базой. DataForm и от emsoftware, смотрим на адобовском сайте.

Может кто еще что-то подскажет.
 

fedun

Участник
Топикстартер
Сообщения
237
Реакции
0
Ответ: XML

Steve сказал(а):
Еще вариант (без xml) юзать plug-in'ы c bi-directional connection, для связи c базой. DataForm и от emsoftware, смотрим на адобовском сайте.
Понял. Прикольно. Посмотрю.

Собственно у нас .DOC'и и сейчас худо-бедно генерируются и безо всякого XML — из 1С вызывается ActiveDocument/MS (Word'овская заготовочка), а там уже Visual Basic'овскими командами производится поиск и замена соответствующим образом помеченных кусков текста и таблиц. И никакой XML вроде как и не нужен.

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

Что касается скриптов/доп. программ и т.п.: я сегодня (впервые) увидел на adobe.com такую штуку как InDesign Server. Я не смотрел, что это такое, но, судя по названию, возможно, оно и позволит не писать специально таких "daemon'ов" папок.

Steve сказал(а):
Чуток позже попробую сделать такую штуку, пока для себя, т.к. надо будет похожую систему строить, но еще не решил как лучше делать.
Если говорить о связке БАЗА[SQL?]->XML->InD->pdf, она (эта связка) вообще не является очевидной в части звена ->InD->. По теории, pdf можно из XML генерировать XSL-FO преобразованиями с помощью неких загадочных FOP-преобразователей, которые, правда, не очень-то хорошо получается протестировать "за бесплатно".

Другое дело, InD, за спиной которого вся мощь Adobe, заявляет об "автоматизации публикаций". InD, вроде, может много, и поэтому не хочется изучать всякие XSL-FO преобразования и конкретные инструменты и вкушать после этого все проблемы многочисленных подстроек и отладок в новых программах. Что именно работает / не работает в InD мы прекрасно знаем, а в этих утилитах?..
 

fedun

Участник
Топикстартер
Сообщения
237
Реакции
0
Ответ: XML

Слухайте, что, правда, никто XML реально с InD не использует?!

И всё, что Олег Бутрин писал про "Use XML" на toolbox'е так и не востребовалось никем?

Да уж! Жаль. Идея-то единственно верная по сути.
 

black.cat

Участник
Сообщения
63
Реакции
0
Ответ: XML

Может идея и верная но почемуто XML особо неюзаю (и не я один). Хотя использую для сквозной нумерации в изданиях скрипт Бутрина xmlTextChanger.JSX за что ему огромное спасибо. Но разобравшись как он (скрипт) работает понял что проще в своих задачах использовать tagged text и label для авто построения всяких сожержаний, тв=программ, объхевлений и прочего...
Имхо объектная модель XML сильно запутана.
 

Steve

Участник
Сообщения
227
Реакции
0
Ответ: XML

fedun сказал(а):
Слухайте, что, правда, никто XML реально с InD не использует?!
Формально tagged text=XML, такой же язык разметки.
Если будет использоваться ИД для импорта текста, то tagged лучше чем xml.
на продтп были темы про xml:
xml1
xml2

думаю, что верстка с использованием xml редкое явление :) чтобы получить xml, надо делать выгрузку с подстановкой данных. Такие выгрузки обычно делают из БД. Кто использует БД для верстки? Издательства для верстки справочников, каталогов и т.д. Для этих задач есть другие проф. решения. Получается, что использование связки XML+ID остается для любителей поиздеваться над своим мозгом ;)
Но вообще, ИД+XML можно использовать для определенных задач.

Кстати, есть еще DataMerge.
 

ragman

12 лет на форуме
Сообщения
669
Реакции
0
Ответ: XML

Я когда-то использовал. Верстал развлекательный журнал с ТВ программой. На страницах с программой была заверстана "всякая всячина": дни рождения знаменитостей, знаменательные даты, анекдоты и др. Оформление этого было постоянным, поэтому и использовал XML. Но потом журнар благополучно умер, а больше нигде не пригодилось. R.I.P.
 

NNN5

Модератор
15 лет на форуме
Сообщения
1 256
Реакции
1 012
Ответ: XML

Я использую. Правда, немножко не в полном объеме.

Из базы мне программист выгружает весь текст, размеченный так:
1) Все рисунки - как XML-тэги
2) Все остальное оформление (стили абзацные и символьные) - условные (принятые между нами) значки.

Я делаю импорт. Все рисунки (рекламные модули) вставляются в текст в нужном месте.

Потом делаю серию замен GREP (естественно, записанных заранее).

Готово.
Далее располагаю крупные рекламные модули (шириной более 1 колонки) как надо.
Вот и вся любовь.

Почему не оформляю стили как XML-тэги?
Ответ: на таком объеме информации (книга ок. 800 страниц, 4 колонки, основной текст 6 пт) тэги реально не работают. Скажем так: такое количество тэгов, картируемых к стилям, подвешивает InDesign. Проверено.

Зато поиск/замена работает просто идеально. Сотни тысяч замен делаются легко и быстро. Причем можно открыть сразу много документов и менять во всех открытых документах. Работает очень устойчиво. Можно отменять действия, и программа это легко выдерживает.

Результат: эта книга делается практически за 1 день.
 

Julinka

Участник
Сообщения
8
Реакции
0
Ответ: XML

Я использовала XML для верстки каталога - на каждой странице описание одной гостиницы в стандартном виде с 3 фото. Потом написали для этого отдельную программу и ответственные за разные страны сами теперь для своих гостиниц автоматически создают странички - если что-то не стандартное встречается, тогда руками поправляю.

На семинаре Адобы XML показывали в действии для подготовки direct mail - в шаблон вставлялась информация из базы данных - каждое письмо содержало кроме адреса и имени клиента еще и другие персональные данные - например ифо о последнем путешествии...
 

fedun

Участник
Топикстартер
Сообщения
237
Реакции
0
Ответ: XML

Julinka сказал(а):
На семинаре Адобы XML показывали в действии для подготовки direct mail - в шаблон вставлялась информация из базы данных - каждое письмо содержало кроме адреса и имени клиента еще и другие персональные данные - например ифо о последнем путешествии...
А это что за семинары такие? На сайте у них вроде не видно такой информации...
 

fedun

Участник
Топикстартер
Сообщения
237
Реакции
0
Ответ: XML

Большое спасибо за ответы!
Julinka сказал(а):
Я использовала XML для верстки каталога - на каждой странице описание одной гостиницы в стандартном виде с 3 фото. Потом написали для этого отдельную программу и ответственные за разные страны сами теперь для своих гостиниц автоматически создают странички - если что-то не стандартное встречается, тогда руками поправляю.
Интересно. Спасибо. А почему решили отдельную программу писать? В чём автоматизации InD не хватило? И еще. В каком формате это всё, в конце концов, выдаётся, как эти странички используются?

Мне здесь показалось не очень понятным как может что-то выдавать программа, что можно потом ручками поправлять.

NNN5 сказал(а):
Из базы мне программист выгружает весь текст, размеченный так:
1) Все рисунки - как XML-тэги
2) Все остальное оформление (стили абзацные и символьные) - условные (принятые между нами) значки.
<...>
Почему не оформляю стили как XML-тэги?
<...> Скажем так: такое количество тэгов, картируемых к стилям, подвешивает InDesign. Проверено.
<...>
Результат: эта книга делается практически за 1 день.
А если бы объем меньший был, тогда бы тегами всё размечали?
_________________________

И еще общий вопрос. Насколько эта автоматизация требовательна к компетенциям в области владения InD?

Моя цель — попытаться сделать что-то автоматическое для непрофессионалов в вёрстке.
 

lunatik

Забанен
Сообщения
3 494
Реакции
336
Ответ: XML

NNN5 сказал(а):
Ну пример хотя бы небольшой как заверстаны через XML картинки и модули. Ну и стили конечно интересно глянуть. А то когда .inx начинаешь ковырять голова опухает.
Тогда и вопросы возникнут.
 

fedun

Участник
Топикстартер
Сообщения
237
Реакции
0
Ответ: XML

Steve сказал(а):
думаю, что верстка с использованием xml редкое явление :) чтобы получить xml, надо делать выгрузку с подстановкой данных. Такие выгрузки обычно делают из БД. Кто использует БД для верстки? Издательства для верстки справочников, каталогов и т.д. Для этих задач есть другие проф. решения. Получается, что использование связки XML+ID остается для любителей поиздеваться над своим мозгом ;)
Но вообще, ИД+XML можно использовать для определенных задач.
Мы как раз и используем БД. Кроме того, NNN5 и Julinka подтвердили существование в природе подобного механизма.

А про какие "другие проф. решения" Вы, steve, говорите? Я имею в виду, что мне не только печатный документ нужно генерировать, мне, в конце концов, нужно и html на сайте размещать, да ещё и .doc делать (некоторые клиенты не способны .pdf воспринимать).


->ragman:
Я из Вашего сообщения не совсем уловил, Вы это сами использовали, или это был 'solution' в рабочей группе?
 

ragman

12 лет на форуме
Сообщения
669
Реакции
0
Ответ: XML

fedun сказал(а):
Я из Вашего сообщения не совсем уловил, Вы это сами использовали, или это был 'solution' в рабочей группе?
Сам. Потому как я и был "рабочей группой" - штат такой. '8)'
 

skosyrev

Участник
Сообщения
4
Реакции
0
Ответ: XML

Извините за то, что вновь поднимаю тему.

Есть прайс-лист, сверстанный в InDesign CS2 в виде таблицы. Наполнение сложное (т.е. использование полной автоматизации не реально).
Что хотелось бы сделать:
быстро (читай автоматически) обновлять отдельные фрагменты документа, такие как ссылки на др. позиции, цены, список комплектующих и т.п. Напомню, что текст находится таблице.
Как я себе это представляю:
часть текста прайс-листа связать с неким внешним источником (я полагаю, что это должен быть XML-файл), в котором хранятся необходимые данные. Обновляться должны только внедренные фрагменты.
В чем проблема:
Без функционального примера не могу реализовать задуманное.
Вопросы:
1) Реально ли встроить в текст таблицы данные из XML-файла (XML-файл отличается от стандартной структуры ИД "<Story><Table...>")?
2) Возможно ли использование данных одного тега неоднократно (например для ссылок)?
3) Возможно ли в ячейку таблицы внедрять списки?
Если у кого есть рабочие (работающие) примеры, пожалуйста, поделитесь (skosyrev@bk.ru). Не обязательно точно по задаче, рад любым примерам использования XML.

Спасибо!

P.S. Просьба не ссылаться на хелп и документации адобы, примеров и литературы я просмотрел много, в том числе и на этом форуме, к сожалению этого оказалось недостаточно.
 
Статус
Закрыто для дальнейших ответов.