Книга: Искусство программирования для Unix

Пример 5.5. XML-формат

Пример 5.5. XML-формат

<?xml version="1.0"?>
<kprintfilter name="imagetops">
 <filtercommand data="imagetops %filterargs %filterinput %filteroutput" />
 <filterargs>
  <filterarg name="center" description="Image centering"
   format="-nocenter" type="bool" default="true">
   <value name="true" description="Yes" />
   <value name="false" description="No" />
  </filterarg>
  <filterarg name="turn"
   description="Image rotation" format="-%value" type="list" default="auto">
   <value name="auto" description="Automatic" />
   <value name="noturn" description="None" />
   <value name="turn" description="90 deg" />
  </filterarg>
  <filterarg name="scale"
   description="Image scale" format="-scale %value" type="float"
   min="0.0" max="1.0" default="1.000" />
  <filterarg name="dpi"
   description="Image resolution" format="-dpi %value"
   type="int" min="72" max="1200" default="300" />
 </filterargs>
 <filterinput>
  <filterarg name="file" format="%in" />
  <filterarg name="pipe" format="" />
 </filterinput>
 <filteroutput>
  <filterarg name="file" format="> %out" />
  <filterarg name="file" format="" />
 </filteroutput>
</kprintfilter>

Своеобразным мостом между этими мирами является формат PYX — строчно-ориентированное преобразование XML, которое можно обработать с помощью традиционных строчных текстовых средств Unix, а затем без потерь перевести обратно в XML. Web-поиск по ключевому слову "Pyxie" позволит найти ссылки на соответствующие ресурсы. Инструментальный набор xmltk движется в противоположном направлении, предоставляя потоковые средства, аналогичные grep(1) и sort(1), для фильтрации XML-документов. Поиск по слову "xmltk" в Web поможет найти данный инструментарий.

XML может упрощать или, напротив, усложнять конструкцию. Он окружен активной рекламой, однако не стоит становиться жертвой моды, безоговорочно принимая или отвергая данный формат. Выбирать следует осторожно, руководствуясь принципом KISS.

Оглавление книги

Оглавление статьи/книги

Генерация: 0.964. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз