Нажмите "Enter", чтобы перейти к содержанию

Xml что за формат: Страница не найдена | REG.RU

Что такое XML — Журнал «Код» программирование без снобизма

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

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

Что такое XML

XML — это сокращение от eXtensible Markup Language, а переводится это как «Расширяемый язык разметки». Смысл XML в том, чтобы выстроить внутри документа логическую структуру — чтобы было видно, что к чему относится и как всё связано между собой, в каком формате представлены данные.

С помощью XML можно:

  • записать оргструктуру компании или любую другую иерархию — «этот подчиняется тому»;
  • разметить текст по смыслу — «тут важное, там второстепенное, вот это поясняет вон то»;
  • хранить типовые данные — например, имена артистов, названия их альбомов и треки; или настройку какой-нибудь программы, или скрипты;
  • разметить веб-страницу по смыслу и отдать эту разметку алгоритму, который сам нарисует дизайн;
  • разметить текст для дальнейшего машинного обучения;
  • хранить результаты работы программ, которые работают с текстом — например, ничто не мешает текстовым редакторам хранить документы со всем оформлением в формате XML.

И многое другое, где нужен порядок, структура и работа с текстовыми данными. 

Сила XML

Сила XML в том, что данные здесь представляются как обычный текст, размеченный тегами (как в HTML). Например, чтобы записать оргструктуру компании в XML, не нужно рисовать схему в графическом редакторе, достаточно правильно разметить текст с именами и должностями. Файлики получаются маленькими, из легко обрабатывать. 

И ещё сила XML в том, что эти данные может прочитать и обработать компьютер. Например, если мы передаём ему оргструктуру компании, компьютер поймёт её: кто кому подчиняется, что куда входит и т. д. Для сравнения: если скормить компьютеру схему, нарисованную в графическом редакторе, он её не поймёт. 

Если XML хорошо составлен, его также может понять человек.

Как устроен XML

Внешне XML очень похож на HTML — в нём тоже всё пишется в угловых скобках, есть закрывающие теги и параметры: аналоги классов и стилей. Но, в отличие от HTML, здесь нет обязательных тегов или вообще каких-то обязательных элементов. Объясним, как это работает, на примере.

Допустим, у нас есть такой текст, из которого нужно сделать XML-документ:

«По состоянию на 21 октября 2021 журнал Код работает и в редакции есть главред Максим Ильяхов и автор Михаил Полянин»

Первое, что нам нужно сделать — написать в документе, что перед нами именно XML:

<!--?xml version="1.0"?-->

Этот параметр говорит, что ниже будет XML-разметка. Иначе программа-обработчик не будет знать, что с ним делать — рисовать как HTML или выводить как просто текст?

Внутри XML-документа всегда есть корневой элемент — внутри него лежит всё остальное. Так как в XML мы придумываем названия для разметки сами, то пусть этот элемент будет называться

actual (это название может быть любым): 

<?xml version="1.0"?>
<actual>
	<!-- содержимое корневого элемента -->
</actual>

👉 Комментарии в XML такие же, как в HTML.

Теперь разбираем содержимое. Первое, что мы видим в документе, — это дата, поэтому можем сделать отдельный раздел со статусом издания. В него будет входить значение Active (издание работает) и два параметра — дата последней проверки и статус этой проверки. Сам элемент мы назовём status:

<?xml version="1.0"?>
<actual>
	<!-- содержимое корневого элемента -->
	<status lastUpd = "21.10.2021" checked = "true">
		Active
	</status>
</actual>

Это очень похоже на стили и классы в HTML, но работает иначе: мы просто указываем параметры и их значения, а не подключаем какие-то внешние данные или правила.

Также вы могли заметить, что мы пишем дату в нестандартном формате (с точки зрения компьютера). Так можно: если мы потом будем писать обработчик этого XML, мы сможем научить его читать именно этот формат даты. 

Это история о том, что XML — это просто полочки, на которые мы раскладываем данные. Какие там данные — ему не важно. 

Добавим ниже сведения про название журнала:

<?xml version="1.0"?>
<actual>
	<!-- содержимое корневого элемента -->
	<status lastUpd = "21. 10.2021" checked = "true">
		Active
	</status>
	<media type = "online">
		Журнал «Код»
	</media>
</actual>

Новый элемент мы назвали media — так человеку будет проще прочитать и понять, что внутри, а компьютеру всё равно.

Последнее — добавим информацию о составе редакции. Обратите внимание, что появилась вложенная структура: внутри элемента person есть три дочерних элемента: name, lastname и role. Это значит, что они относятся к родительскому элементу, а не живут сами по себе:

<?xml version="1.0"?>
<actual>
	<!-- содержимое корневого элемента -->
	<status lastUpd = "21.10.2021" checked = "true">
		Active
	</status>
	<media type = "online">
		Журнал «Код»
	</media>
	<!-- редакция -->
	<person>
		<name>
			Максим
		</name>
		<lastname>
			Ильяхов
		</lastname>
		<role>
			главред
		</role>
	</person>
	<person>
		<name>
			Михаил	
		</name>
		<lastname>
			Полянин
		</lastname>
		<role>
			редактор
		</role>
	</person>
</actual>

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

Главное — не запутаться в элементах и чётко понимать, что от чего зависит и куда вкладывается.

Где нужен XML

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

Ещё XML применяют в API, когда идёт ответ от сервера в виде XML-файлов. 

Что дальше

В другой статье придумаем свой XML-формат и научим сервер с ним работать. 

Текст:

Михаил Полянин

Редактор:

Максим Ильяхов

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Кирилл Климентьев

Соцсети:

Олег Вешкурцев

Формат файла XML

Что такое XML-файл?

XML означает расширяемый язык разметки, который похож на HTML, но отличается использованием тегов для определения объектов. Вся идея создания формата файла XML заключалась в том, чтобы хранить и передавать данные, не завися от программных или аппаратных инструментов. Его популярность связана с тем, что он читается как человеком, так и машиной. Это позволяет создавать общие протоколы данных в виде объектов, которые будут храниться и совместно использоваться по сети, такой как World Wide Web (WWW). «X» в XML означает расширяемость, что означает, что язык может быть расширен до любого количества символов в соответствии с требованиями пользователя. Именно для этих функций его используют многие стандартные форматы файлов, такие как Microsoft Open XML, LibreOffice OpenDocument, XHTML и [SVG](/ru/page-description-language /svg/).

XML-формат файла

Формат XML-файла основан на объектной модели документа XML (DOM), которая представляет собой API-интерфейс программирования для документов HTML и XML. XML DOM определяет стандартный метод доступа и управления элементами XML-документа. Он создает представление XML-документа в виде древовидной структуры, которое можно использовать для доступа ко всем элементам через дерево DOM. Существующие элементы можно изменять/удалять, а также создавать новые элементы в XML-дереве. Каждый элемент XML-документа называется узлом. XML DOM показан на следующем рисунке.

Универсальный подход XML

Мощь XML делает его универсальным языком для передачи данных по сети, упрощая передачу данных и изменение платформы. Это также обеспечивает возможность обмена данными между несовместимыми системами за счет хранения данных в текстовом формате. HTML предназначен для представления данных через Интернет, а XML — для обмена данными. Пары тегов разметки, используемые внутри XML, определяют ключевые элементы структуры, которые будут использоваться приложениями для чтения.

XML-пример

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

<CATALOG>
  <CD>
    <TITLE>Empire Burlesque</TITLE>
    <ARTIST>Bob Dylan</ARTIST>
    <COUNTRY>USA</COUNTRY>
    <COMPANY>Columbia</COMPANY>
    <PRICE>10.90</PRICE>
    <YEAR>1985</YEAR>
  </CD>
  <CD>
    <TITLE>Hide your heart</TITLE>
    <ARTIST>Bonnie Tyler</ARTIST>
    <COUNTRY>UK</COUNTRY>
    <COMPANY>CBS Records</COMPANY>
    <PRICE>9.90</PRICE>
    <YEAR>1988</YEAR>
  </CD>
  <CD>
    <TITLE>Greatest Hits</TITLE>
    <ARTIST>Dolly Parton</ARTIST>
    <COUNTRY>USA</COUNTRY>
    <COMPANY>RCA</COMPANY>
    <PRICE>9.90</PRICE>
    <YEAR>1982</YEAR>
  </CD>
  <CD>
    <TITLE>Still got the blues</TITLE>
    <ARTIST>Gary Moore</ARTIST>
    <COUNTRY>UK</COUNTRY>
    <COMPANY>Virgin records</COMPANY>
    <PRICE>10.
20</PRICE> <YEAR>1990</YEAR> </CD> <CD> <TITLE>Eros</TITLE> <ARTIST>Eros Ramazzotti</ARTIST> <COUNTRY>EU</COUNTRY> <COMPANY>BMG</COMPANY> <PRICE>9.90</PRICE> <YEAR>1997</YEAR> </CD> <CD> </CATALOG>

использованная литература

  • XML — Википедия

Введение в MeSH в формате XML

1. Общие сведения

Национальная медицинская библиотека приняла расширяемый язык разметки (XML) в качестве стандартного формата для своих файлов данных. Словарный файл MeSH (Medical Subject Headings) доступен в формате XML, аналогичном формату и DTD, разработанным для MEDLINE. (См. Данные MEDLINE®/PubMed®.) Этот формат будет представлять особый интерес для тех, кто ранее получал данные MeSH в формате NLM ELHILL, и представляет интерес для разработчиков PubMed и UMLS®. Пользователи ASCII MeSH и новые пользователи данных MeSH могут также рассмотреть возможность использования словарных данных в формате XML.

Некоторые данные являются новыми в XML MeSH, особенно те элементы*, которые относятся к концепциям. Хотя это увеличивает количество элементов, элемент понятия обеспечивает мощный способ представления синонимии терминов, а также другой информации, такой как отношения между понятиями. Также следует отметить уменьшение количества элементов в предыдущих форматах. Например, прежние элементы MH, NM, SY, BX, SH и QX — это разные типы терминов, и поэтому все они представлены терминами и строковыми элементами в XML MeSH. Доступен список элементов данных XML. Также доступна таблица преобразования, в которой перечислены элементы ASCII MeSH и ELHILL MeSH с соответствующими элементами в XML MeSH.

* Обратите внимание, что в этом документе элемент часто упоминается как общий термин для содержимого поля базы данных. В XML «элемент» — это технический термин, обозначающий первичные компоненты, обозначенные начальным и конечным тегами. См. следующий пронумерованный элемент ниже.

2.

Элементы с тегами: «удобочитаемый и достаточно понятный».

Вместо коротких мнемоник, таких как «DA» и «EV», XML MeSH использует начальный и конечный теги XML, например, и . Эти маркеры данных однозначно указывают начало и конец каждого элемента данных вместо того, чтобы полагаться на невидимые символы конца строки. Это позволяет переносу данных на следующую строку внутри элемента, что облегчает человеку (по сравнению с компьютером) чтение XML-документа. Возможность переноса данных также позволяет сделать теги более описательными, поскольку больше нет необходимости минимизировать длину тегов. Это способствует достижению цели официальной спецификации XML: «XML-документы должны быть удобочитаемыми и достаточно ясными». 1 Одна из издержек этого преимущества заключается в том, что файлы данных стали намного больше, чем в прошлом, но, как также говорится в спецификации XML, «Краткость в XML-разметке имеет минимальное значение». 2

3.

Понятия, синонимы и структура дескриптора

3.1 Понятия находят синонимы.

Некоторые элементы данных являются новыми в XML MeSH, независимо от новой структуры, в основном те элементы, которые относятся к понятиям. Концептуально-ориентированная природа MeSH описана в другом месте. 3 Понятие – это общее значение, разделяемое синонимичными терминами. MeSH и другие словари уже давно неявно используют понятия. Благодаря новой системе обслуживания MeSH, представленной в версии 2000 MeSH, концепция теперь может быть представлена ​​просто и точно с помощью уникального идентификатора концепции (). Синонимичные термины — это те термины, которые используют один и тот же .

3.2 Дескрипторы как класс понятий

Дескриптор часто шире одного понятия и поэтому может состоять из класса понятий. Понятия, в свою очередь, соответствуют классу терминов, которые являются синонимами друг друга. Таким образом, MeSH имеет трехуровневую структуру:

 Дескриптор
        Концепция
            Термин 

Формат XML с его иерархической структурой подэлементов подходит для представления этих уровней. См. пример ниже.

3.3 Пользовательские интерфейсы являются постоянными именами для понятий и других объектов

Мы обычно ссылаемся на каждый из этих объектов с помощью специального термина, который называет объект, например, «Сердце», но, поскольку это имя может быть изменено, неизменное числовое значение код (UI) присваивается каждому дескриптору, концепту и большинству терминов.* Мы пользуемся преимуществом этого постоянства, используя UI для ссылки на объект в другой записи. Например, ссылка «См. связанные» в записи указывает пользователю рассмотреть другую запись дескриптора. Поскольку пользовательский интерфейс является постоянным именем дескриптора в элементе SeeRelated, пользовательский интерфейс включен, но также включено имя дескриптора.

* Переставленные термины (термины, автоматически сгенерированные из введенных вручную терминов) находятся на том же уровне, что и термины, созданные вручную, но существенно отличаются тем, что связанный элемент не идентифицирует термин, а скорее ссылается на термин, из которого переставлены термины. Сгенерирован термин.

3.4 Элементы данных прикрепляются к соответствующему объекту

Структура дескриптор/понятие/термин также позволяет прикреплять различные элементы данных в MeSH к соответствующему объекту. Например, примечание по содержанию относится к концепции, а не к дескриптору — дескриптор может иметь несколько разных концепций и, следовательно, несколько разных примечаний по содержанию. Точно так же тезаурусы давно различают «более широкие термины» и «более узкие» термины, но ясно, что это отношения между понятиями и только производные между терминами соответствующих понятий. Унифицированная медицинская языковая система (UMLS) Metathesaurus® имеет аналогичную структуру, и это оказало значительное влияние на разработку XML MeSH.

4. Пример

Одним из наиболее заметных различий между предыдущими структурами данных MeSH и XML MeSH является несколько уровней элементов XML. (Структуру подэлементов с отступом в любых файлах XML можно просмотреть с помощью браузера XML, такого как Internet Explorer 5. x.) Эта иерархическая структура присуща XML, но подходит для концептуально-ориентированной структуры в MeSH и заменяет структура подэлементов. Рассмотрим, например, этот фрагмент записи дескриптора XML:

 
   D000005
   Живот
   <Аннотация> область и органы брюшной полости...
   
   <КонцептСписок>
      
          M0000005
          Живот
           Та часть тела, которая лежит
          между грудной клеткой и тазом.
          <список терминов>
             
                T000012
                Живот
                <Дата создания>
                   <Год>1999
                   <Месяц>01
                   <День>01
                
             
             
                 
T000012
Живот

Соответствующие данные в формате ELHILL:

 УИ - D000005
МЗ — брюшная полость
AN - область и органы брюшной полости . ..
BX - Брюшная полость:0:00000000:0000000:@@@@@@
МС – Та часть тела, которая находится между грудной клеткой и тазом.
 

Пример XML иллюстрирует следующие функции.

4.1 Структура дескриптора

Порядок убывания объектов дескриптора/понятия/термина соответствует структуре дескриптора.

4.1.1 Элемент

В дополнение к элементу имеется также элемент . Почему оба? Почему бы не сделать сам термин содержимым элемента Term, например,

Heart

Одной из причин является техническая причина XML. Элемент имеет подэлементы, и практика включения как содержимого элемента, так и подэлементов считается «смешанным содержимым» и обычно считается «плохой практикой проектирования» 4 в XML. Другая причина, специфичная для MeSH, заключается в том, что элемент полезен в определении часто используемого элемента . Использование в определении не является строго обязательным — можно было бы использовать #PCDATA, но с использованием того же подэлемента для , что и для нескольких других элементов (, , , ,) указывает, что оба элемента имеют одинаковое содержимое, что на самом деле так и есть.

Обратите внимание, что элементы и не совсем совпадают с элементами с аналогичными именами в метатезаурусе UMLS. В XML MeSH существует один элемент для каждой строки термина в базе данных, в то время как в метатезаурусе UMLS может быть несколько строк, соответствующих данному термину. Таким образом, элемент XML MeSH больше похож на строковый элемент UMLS. Нет элемента XML MeSH, который напрямую соответствует элементу данных UMLS Term. Элемент MeSH похож на строку UMLS, но обратите внимание, что элемент, используемый в XML MeSH, используется по причинам, специфичным для XML, как отмечалось выше, а не потому, что это более узкий тип объекта, чем элемент .

4.1.2 Наследование

Как правило, в структуре дескриптора MeSH каждый дочерний элемент наследует свойства своего родительского и более высоких объектов. Это правило хорошо представлено иерархией элементов XML, но в спецификации XML нет ничего, что требовало бы наследования. (На языке информатики иерархия — это «ориентированный граф», который с таким же успехом может представлять блок-схему или диаграмму лабиринта.)

4.2 Элементы данных

Элементы данных прикреплены к соответствующему объекту Например, элемент является свойством Descriptor, поэтому он является подэлементом элемента . Scope Note относится к концепции и поэтому является подэлементом

4.3 Повторяющиеся элементы, представленные элементами списка

Подэлементы создаются не только структурой дескриптора MeSH, но также и использование элементов «Список», например, . Это практика NLM для обработки повторяющихся элементов данных. Хотя вводятся дополнительные уровни, преимущество заключается в том, что каждый элемент на данном уровне уникален, что упрощает навигацию по иерархии как для компьютерных синтаксических анализаторов, так и для читателей-людей. Например, при обработке подэлементов Descriptor вы можете быть уверены, что у вас есть все подчиненные элементы Concept, как только вы найдете тег .

4.4 Атрибуты XML

Существуют свойства, которые не являются элементами XML, но появляются внутри элемента, например, Term … PrintFlagYN=»Y». Это «атрибуты» XML, которые применяются к элементу, с которым они появляются. Вместо этого это могли быть элементы, но одно из преимуществ атрибутов в этих случаях заключается в том, что мы можем указать все возможные значения. Это предоставляет пользователю дополнительную информацию, поэтому было принято представление атрибутов XML, в котором можно разумно указать все возможные значения.

4.5 Ссылка на другие записи

Как и в прошлом, некоторые элементы данных MeSH ссылаются на другие записи, например, «См. связанные» и «Заголовок, сопоставленный с». Поскольку UI (уникальный идентификатор) — это имя записи, которое никогда не меняется, эти ссылки используют UI. Кроме того, поскольку привычное имя записи является текущим предпочтительным термином для предпочтительного понятия в записи, это имя также включено. Например, в дескрипторе «Аномалии, вызванные лекарствами» есть ссылка «См. Связанные» на «Тератогены». В XML это представлено следующим образом.

 <см. связанный дескриптор>
   <дескрипторреферредто>
       D013723
       <Имядескриптора>
          Тератогены
       
   

 

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

 
    <дескрипторреферредто>
       D000117
       <Имядескриптора>
          Ацетилглюкозамин
       
    
    <КвалификаторReferredTo>
       <КвалификаторUI>*Q000031
       <имя_классификатора>
          аналоги & производные
       
   

 

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

В спецификации XML тип атрибута IDREF (вместе с идентификатором типа) обеспечивает аналогичную функцию ссылки на другой уникальный идентификатор в другом месте базы данных. 5 XML MeSH не использует этот механизм главным образом для предоставления данных, аналогичных предыдущим форматам.

5. Унификация элементов разных типов записей

Хотя XML MeSH включает больше элементов данных, чем предыдущие форматы, структура XML MeSH фактически исключает некоторые элементы или объединяет их в общие элементы. Например, MH, NM, SY, BX, SH и QX — это разные типы терминов, поэтому все они представлены элементами и в XML MeSH.

6. Специальные символы

6.1 Символы XML

Некоторые данные MeSH содержат амперсанд (‘&’) и угловые скобки (‘>’ и ‘<' ), которые являются данными в MeSH, но которые процессоры XML обрабатывают как специальные символы, а не данные. Поэтому эти символы представлены объектами символов XML:

имя символ код
амперсанд и &ампер;
Уголковый кронштейн левый < <
Угловой кронштейн > >

6.2 Символы, отличные от ASCII

Данные в файлах XML MeSH кодируются в наборе символов Unicode, в частности UTF-8. Однако большая часть данных представлена ​​в 7-битном формате ASCII, подмножестве UTF-8. Относительно небольшое количество терминов и аннотаций содержат один или несколько диакритических знаков, таких как острый e (é). Они закодированы в формате UTF-8 и будут правильно отображаться приложениями UTF-8. В противном случае они могут отображаться по-разному на разных дисплеях. Коды диакритических знаков в данных NLM можно найти в таблице MEDLINE Character Database.

Примечания

1 Пункт 1.1.6 в версии 1.0 XML. Видеть. DuCharme B. XML: аннотированная спецификация . Нью-Джерси: Прентис-Холл, 1999, с. 52. Спецификация также находится по адресу: http://www.w3.org/TR/REC-xml. Проверено 5 октября 2004 г.

2 Пункт 1.1.10. Там же.

3 Для дальнейшего обсуждения MeSH как концептуально-ориентированного см. Johnston WD et al., «Refining a Thesaurus: Term-Centric No More». Постерная презентация на: AMIA 1998-й ежегодный симпозиум; 10 ноября 1998 г .; Орландо Флорида.

4 Дик К. XML: Руководство менеджера . (Рединг, Массачусетс: Аддисон-Уэсли, 1999) с. 29.

5 См. пункт 3.3.1 (Типы атрибутов) в спецификации XML в примечании 1.

65. Unravel the OpenOffice File Format

OpenOffice предоставляет набор приложений чей собственный формат файла состоит из набора файлов XML, сжатых в ZIP-архив. Этот хак исследует основы OpenOffice. формат файла .

ОпенОфис (http://www.openoffice.org) является набор бесплатных мультиплатформенных приложений с открытым исходным кодом для рабочий стол, спонсируемый Sun Microsystems (http://wwws.sun.com/software/star/openoffice/). Пакет включает в себя текстовый редактор, электронные таблицы, чертежи и приложения для презентаций, каждое из которых использует файл на основе XML формат. В Таблице 4-2 перечислены пакеты OpenOffice. приложений и их файловых расширений.

Каждый файл сохраняется как набор XML-документов и хранится в ZIP-архиве. (Вы также можете сохранять документы в других форматах, таких как текст, форматированный Текстовый формат или HTML. Вы также можете экспортировать документ в формате PDF.) спецификация формата файла OpenOffice XML поддерживается техническим комитетом OASIS (http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office).

Таблица 4-2. Приложения OpenOffice и расширения файлов

Приложение OpenOffice

Расширение файла

Приложение для работы с электронными таблицами Calc

 *.sxc 

Шаблоны расчета

 *. stc 

Графическое приложение для рисования

 *.sxd 

Шаблоны для рисования

 *.стандартный 

Приложение для презентаций Impress

 *.sxi 

Шаблоны Impress

 *.сти 

Математическое приложение

 *.sxm 

Основные файлы

 *. sxg 

Приложение для текстового редактора Writer

 *.СВВ 

Шаблоны записи

 *.stw 

В подкаталоге OpenOffice файловый архив книги представляет собой небольшой файл, пенопласт.sxw , фрагмент взят из взлома FOAF [Совет № 64] . Это показано в Приложение OpenOffice Writer на рис. 4-5. Вы можете использовать любой ZIP-инструмент для проверки или извлеките XML-файлы из этого ZIP-файла. я буду использовать unzip Инструмент командной строки, поставляемый с Unix дистрибутивы, такие как Cygwin (http://www.cygwin.com).

Рис. 4-5. foaf.sxw в приложении OpenOffice Writer

Находясь в подкаталоге OpenOffice , введите этот команда в командной строке:

 unzip -l foaf. sxw 

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

 Архив: foaf.sxw
  Длина Дата Время Имя
 -------- ---- ---- ----
       30 04-04-04 04:51 мимитип
     4178 04-04-04 04:51 содержание.xml
     8062 04-04-04 04:51 стили.xml
     1174 04-04-04 04:51 мета.xml
     9180 04-04-04 04:51 настройки.xml
      752 04-04-04 04:51 META-INF/manifest.xml
 -------- -------
    23376 6 файлов 

Распакуйте эти файлы в OpenOffice подкаталог с:

 unzip foaf.sxw 

Вы увидите это:

 Архив: foaf.sxw
 извлечение: mimetype
  раздувание: content.xml
  надувание: styles.xml
 извлечение: мета.xml
  раздувание: settings.xml
  inflating: META-INF/manifest.xml 

Вкратце, вот что содержит каждый из этих файлов:

мимтип

Содержит тип носителя файла; например., приложение/vnd.sun.xml.writer .

содержание.xml

Содержит текстовое содержимое файла.

мета.xml

Содержит любую метаинформацию для документа. Вы можете редактировать мета информацию, связанную с этим документом, выбрав Файл → Свойства.

настройки.xml

Содержит информацию о настройках документа.

стили.xml

Сохраняет стили, примененные к документу. Вы можете применять стили к документ, выбрав Формат → Стилист (или нажав Ф11).

META-INF/manifest.xml

Содержит список файлов XML и других файлов, составляющих файл по умолчанию. Представление документа в OpenOffice.

Подсказка

Когда вы делаете Файл → Сохранить как, вы можете нажать Флажок «Сохранить с паролем». Если вы делаете это, все файлы XML, кроме meta.xml сохраняются в виде зашифрованных файлов.

Для иллюстрации рассмотрим один из файлов хранятся в архиве сохраненных файлов OpenOffice. В примере 4.12 показана XML-разметка, внутри содержание.xml . Этот документ имеет хороший отступ, потому что в меню Инструменты → диалоговое окно «Параметры загрузки/сохранения» в разделе «Общие настройки», Я снял флажок Оптимизация размера для формата XML (без красивой печати) флажок. Это проверено по умолчанию, что означает, что обычно файлы XML сохраняются без отступ.

Пример 4-12. content.xml из foaf.sxw

   <офис:документ-контент
 xmlns:office="http://openoffice.org/2000/офис"
 xmlns:style="http://openoffice.org/2000/стиль"
 xmlns:текст="http://openoffice.org/2000/текст"
 xmlns: таблица = "http://openoffice. org/2000/таблица"
 xmlns:draw="http://openoffice.org/2000/рисование"
 xmlns:fo="http://www.w3.org/1999/XSL/Формат"
 xmlns:xlink="http://www.w3.org/1999/xlink"
 xmlns:number="http://openoffice.org/2000/datastyle"
 xmlns:svg="http://www.w3.org/2000/svg"
 xmlns:chart="http://openoffice.org/2000/chart"
 xmlns:dr3d="http://openoffice.org/2000/dr3d"
 xmlns:math="http://www.w3.org/1998/Math/MathML"
 xmlns:form="http://openoffice.org/2000/form"
 xmlns:script="http://openoffice.org/2000/script"
 офис: класс = "текст" офис: версия = "1.0"> <офис:скрипт/> <офис:шрифт-деклс><офис:автоматические стили><офис:тело><текст:последовательность-деклс>Идентифицируйте себя с помощью FOAF,Приложение RDFFOAF обеспечивает основу для создания и публикации личной информации.в машиночитаемом виде. Изучая FOAF,вы также также познакомьтесь с RDF на практике.Друг друга или проект FOAF (http://www.foaf-project.org/) — инициатива сообщества по определению RDF. словарь для выражения метаданных о людях и их интересах,отношения и деятельность. Основанная Дэном Брикли и Либби Миллер,FOAF проект представляет собой открытую инициативу сообщества,которая направлена ​​на более широкое Цель семантической паутины — создать машинно обрабатываемую паутину данных. Достижение этого цель быстро требует сетевого эффекта,который быстро даст массу данных. Сетевые эффекты означают людей. Кажется довольно надежной ставкой на то,что любой ранний семантический Успех веб-технологий будет зависеть от приложений,ориентированных на людей. Действительно,пожалуй,все интересное,что мы хотели бы описать на Семантическая паутина была создана людьми или включает людей в той или иной форме. И ФОАФ все о людях.FOAF облегчает создание семантического веб-эквивалента архетипическая личная домашняя страница:Меня зовут Ли,это моя фотография,Меня интересует XML,и вот несколько ссылок на моих друзей.И так же,как HTML-версия,документы FOAF могут быть связаны друг с другом для формирования веб-сайта. данных с четко определенной семантикой.Является приложением W3C Resource Description Framework или RDF. (http://www.w3.org/RDF/) означает,что FOAF может претендовать на обычные преимущества легко собирается и агрегируется. И,как и все словари RDF,его можно легко комбинируется с другими словарями,что позволяет охватить очень богатый набор метаданных. Этот лайфхак знакомит с основными терминами словаря FOAF,иллюстрируя их рядом примеров. Взлом завершается кратким обзор наиболее интересных приложений FOAF и рассмотрение некоторых других вариантов использования для данных. Графика FOAF показана на рисунке A-1.Рисунок A-1:​​FOAFlets jpg" xlink:type="simple"xlink:show="embed" xlink:actuate="onLoad"/>

Документы XML в OpenOffice используют DTD [Совет № 68] которые идут с установленным пакет,хотя схемы XML Schema и RELAX NG будут доступны в будущие версии. Например,в Windows эти файлы устанавливаются по умолчанию в С:\Программа Files\OpenOffice.org1.1.1\share\dtd\officedocument\1_0 . В этом документе используется office.dtd (строка 3). (Эти DTD отсутствуют в файловом архиве книги.) В строке 4 элемент office:document-content является элемент документа с пространством имен http://openoffice.org/2000/office . Многие другие пространства имен объявляются вместе с некоторыми знакомыми,такими как для SVG [Совет № 9] и XSL-FO [Хак № 48] .

Различные объявления шрифтов хранятся в style:font-decl элементов в строках с 21 по 37.

Ваш комментарий будет первым

    Добавить комментарий

    Ваш адрес email не будет опубликован.Обязательные поля помечены *