к библиотеке   к оглавлению   Банки данных Интернет   визуальные среды - 4GL   технологии программирования

Язык XML

Протокол Atom

  1. Что такое Atom?
  2. Примеры каналов
  3. Структура и элементы Atom 1.0
    1. Элемент <feed>
    2. Элемент <entry>
  4. Дополнительные возможности Atom
  5. Перспективы развития Atom
Логотип Atom
Логотип Atom
(но пользователи больше привыкли к логотипу RSS)

Что такое Atom?

Название Atom применяется к двум связанным веб-стандартам: Atom Syndication Format и Atom Publishing Protocol.

  1. Atom Syndication Format — это основанный на XML язык, используемый для описания каналов новостей;
  2. Atom Publishing Protocol (AtomPub, APP) — это простой, основанный на HTTP протокол создания и обновления веб-ресурсов.

Формат Atom был разработан как альтернатива RSS, с целью устранения его недостатков и добавления отсутствующих в этом формате возможностей. За короткое время Atom получил статус стандарта W3C и IETF (Internet Engineering Task Force), спецификация Atom 1.0, «The Atom Syndication Format», была опубликована в RFC 4287 в декабре 2005 г, а «The Atom Publishing Protocol» — в RFC 5023 в октябре 2007 г.

Примеры каналов

Листинг 1. Краткий фид Atom с одним элементом

<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title>Example Feed</title>
	<link href="http://example.org/"/>
	<updated>2003-12-13T18:30:02Z</updated>
	<author>
		<name>John Doe</name>
	</author>
	<id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</id>
	<entry>
		<title>Atom-Powered Robots Run Amok</title>
		<link href="http://example.org/2003/12/13/atom03"/>
		<id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a</id>
		<updated>2003-12-13T18:30:02Z</updated>
		<summary>Some text</summary>
	</entry>
</feed>

Листинг 2. Расширенный фид Atom с одним элементом

<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="text">dive into mark</title>
	<subtitle type="html">
		A &lt;em&gt;lot&lt;/em&gt; of 
		effort went into making this effortless
	</subtitle>

	<updated>2005-07-31T12:29:29Z</updated>
	<id>tag:example.org,2003:3</id>
	<link rel="alternate" type="text/html" hreflang="en" href="http://example.org/"/>
	<link rel="self" type="application/atom+xml" href="http://example.org/feed.atom"/>
	<rights>Copyright (c) 2003, Mark Pilgrim</rights>
	<generator uri="http://www.example.com/" version="1.0">
		Example Toolkit
	</generator>
	<entry>
		<title>Atom draft-07 snapshot</title>
		<link rel="alternate" type="text/html" href="http://example.org/2005/04/02/atom"/>
		<link rel="enclosure" type="audio/mpeg" length="1337" 
			href="http://example.org/audio/ph34r_my_podcast.mp3"/>
		<id>tag:example.org,2003:3.2397</id>
		<updated>2005-07-31T12:29:29Z</updated>
		<published>2003-12-13T08:29:29-04:00</published>
		<author>
			<name>Mark Pilgrim</name>
			<uri>http://example.org/</uri>
			<email>f8dy@example.com</email>
		</author>
		<contributor>
			<name>Sam Ruby</name>
		</contributor>
		<contributor>
			<name>Joe Gregorio</name>
		</contributor>
		<content type="xhtml" xml:lang="en" xml:base="http://diveintomark.org/">
			<div xmlns="http://www.w3.org/1999/xhtml">
			<p><i>[Update: The Atom draft is finished.]</i></p>
			</div>
		</content>
	</entry>
</feed>

Как видно из примеров в листингах 1 и 2, формат Atom можно использовать как для описания простых новостных лент, так и для каналов со сложной структурой. При этом стандарт разработан так, чтобы его можно было представить как в человеко-, так и в машинно-читаемом виде.

Структура и элементы формата Atom

Корневым элементом в документе Atom является <feed>. Он содержит метаданные о канале (адрес, название, авторство и т.д.) и любое количество элементов <entry>, в которых и помещены новости. Элементы канала бывают следующих типов: обязательные, рекомендуемые и необязательные. При этом они могут иметь обязательные или опциональные атрибуты и вложенные элементы.

Элемент <feed>

Обязательные элементы

<id> — Идентификатор фида, постоянный URI.

<title> — Название канала. Не может быть пустым.

<updated> — Дата последнего обновления в формате RFC 3339.

<updated>2003-12-13T18:30:02Z</updated>

Рекомендуемые элементы

Нижеперечисленные элементы не являются обязательными, но их использование желательно для обеспечения большей информативности.

<author> — Имя автора. Множественное авторство может быть указано в элементах entry

<author>
  <name>John Doe</name>
  <email>JohnDoe@example.com</email>
  <uri>http://example.com/~johndoe</uri>
</author>

<link> — Адрес связанного сайта. Тип связи определяется в атрибуте rel.

<link rel="self" href="/feed" />

Необязательные элементы

<category> — Задает категории, к которым относится канал. Элемент feed может включать несколько элементов category.

<category term="networking"/>

<generator> — Название программы, с помощью которой собран канал. Может использоваться, например, для отладки. Атрибуты uri и version необязательные.

<generator uri="/myblog.php" version="1.0">
  Example Toolkit
</generator>

<icon> — Маленькое изображение, пиктограмма канала.

<icon>/icon.jpg</icon>

<logo> — Большое изображение, логотип канала.

<logo>/logo.jpg</logo>

<rights> — Информация об авторском и смежных правах.

<rights> © 2005 John Doe </rights>

<subtitle> — Человеко-читаемое описание или подзаголовок канала.

<subtitle>all your examples are belong to us</subtitle>

Элемент <entry>

Примером элемента <entry> является отдельный пост в блоге или комментарий в форуме.

Обязательные элементы

<id> — Уникальный и постоянный идентификатор сообщения. Два сообщения могут иметь одинаковый идентификатор, если они представляют одну и ту же новость, но в разное время.

<id>http://example.com/blog/1234</id>

<title> — Заголовок сообщения. Не может быть пустым.

<title>Atom-Powered Robots Run Amok</title>

<updated> — Дата последней модификации сообщения.

<updated>2003-12-13T18:30:02-05:00</updated>

Рекоменуемые элементы

<author> — Имя автора (авторов) сообщения.

<author>
  <name>John Doe</name>
</author>

<content> — Текст сообщения или ссылка на полный текст.

<content>complete story here</content>

<link> — Страница, связанная с текстом сообщения.

<link rel="alternate" href="/blog/1234"/>

Необязательные элементы

<category> — Одна или несколько категорий, к которым относится сообщение.

<category term="technology"/>

<contributor> — Имя соавтора новости. Может быть несколько элементов contributor

<contributor>
  <name>Jane Doe</name>
</contributor>

<published> — Дата и время создания или первой публикации сообщения.

<published>2003-12-13T09:17:51-08:00</published>

<source> — Источник сообщения. Если entry копируется из одного канала в другой, то все дочерние элементы entry копируются также.

<source>
  <id>http://example.org/</id>
  <title>Fourty-Two</title>
  <updated>2003-12-13T18:30:02Z</updated>
  <rights>© 2005 Example, Inc.</rights>
</source>

Подробное описание всех перечисленных элементов канала приведено в спецификации Atom.

Дополнительные возможности Atom

Модель содержания

Atom представляет возможность собирать и представлять информацию в различных форматах, таких как обычный текст, HTML, XHTML, XML, двоичные данные в формате Base64 и ссылки на внешнее содержание в документов (например, .pdf), видеофайлов, аудиопотоков и еще ряда других.

Представление даты и времени

Для представления даты и времени Atom использует международный стандарт, описанный в RFC 3339 (из состава стандартов ISO 8601).

Интернационализация

Atom имеет возможность объединить в одном канале информацию на различных языках. Это обеспечивается стандартным атрибутом xml:lang и позволяет делать человеко-читаемыми различные части фида.

Модульность

Спецификация Atom изначально разрабатывалась как открытая и модульная. Это позволяет расширять формат путем подключения внешних модулей, с одной стороны, а с другой — экспортировать возможности Atom во внешние приложения и другие форматы. К примеру, модули RSS 1.0 или RSS 2.0 можно использовать в канале Atom.

Публикация информации

Atom Publishing Protocol (AtomPub) — протокол прикладного уровня для публикации и редактирования веб-ресурсов. Он базируется на представлении данных в формате Atom, в качестве транспорта использует протокол HTTP. AtomPub может использоваться в rich-клиентах (например, в системах управления контентом) или самостоятельных приложениях для управления информацией на веб-сайтах.

Перспективы развития

Дальнейшее развитие стандарта Atom разработчики видят во внесении большей ясности в описание и создании модулей расширения.

к библиотеке   к оглавлению   Банки данных Интернет   визуальные среды - 4GL   технологии программирования

Знаете ли Вы, что такое мысленный эксперимент, gedanken experiment?
Это несуществующая практика, потусторонний опыт, воображение того, чего нет на самом деле. Мысленные эксперименты подобны снам наяву. Они рождают чудовищ. В отличие от физического эксперимента, который является опытной проверкой гипотез, "мысленный эксперимент" фокуснически подменяет экспериментальную проверку желаемыми, не проверенными на практике выводами, манипулируя логикообразными построениями, реально нарушающими саму логику путем использования недоказанных посылок в качестве доказанных, то есть путем подмены. Таким образом, основной задачей заявителей "мысленных экспериментов" является обман слушателя или читателя путем замены настоящего физического эксперимента его "куклой" - фиктивными рассуждениями под честное слово без самой физической проверки.
Заполнение физики воображаемыми, "мысленными экспериментами" привело к возникновению абсурдной сюрреалистической, спутанно-запутанной картины мира. Настоящий исследователь должен отличать такие "фантики" от настоящих ценностей.

Релятивисты и позитивисты утверждают, что "мысленный эксперимент" весьма полезный интрумент для проверки теорий (также возникающих в нашем уме) на непротиворечивость. В этом они обманывают людей, так как любая проверка может осуществляться только независимым от объекта проверки источником. Сам заявитель гипотезы не может быть проверкой своего же заявления, так как причина самого этого заявления есть отсутствие видимых для заявителя противоречий в заявлении.

Это мы видим на примере СТО и ОТО, превратившихся в своеобразный вид религии, управляющей наукой и общественным мнением. Никакое количество фактов, противоречащих им, не может преодолеть формулу Эйнштейна: "Если факт не соответствует теории - измените факт" (В другом варианте " - Факт не соответствует теории? - Тем хуже для факта").

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

Эксперимент на то и эксперимент, что он есть не изощрение мысли, а проверка мысли. Непротиворечивая внутри себя мысль не может сама себя проверить. Это доказано Куртом Гёделем.

Понятие "мысленный эксперимент" придумано специально спекулянтами - релятивистами для шулерской подмены реальной проверки мысли на практике (эксперимента) своим "честным словом". Подробнее читайте в FAQ по эфирной физике.

НОВОСТИ ФОРУМА

Форум Рыцари теории эфира


Рыцари теории эфира
 10.11.2021 - 12:37: ПЕРСОНАЛИИ - Personalias -> WHO IS WHO - КТО ЕСТЬ КТО - Карим_Хайдаров.
10.11.2021 - 12:36: СОВЕСТЬ - Conscience -> РАСЧЕЛОВЕЧИВАНИЕ ЧЕЛОВЕКА. КОМУ ЭТО НАДО? - Карим_Хайдаров.
10.11.2021 - 12:36: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от д.м.н. Александра Алексеевича Редько - Карим_Хайдаров.
10.11.2021 - 12:35: ЭКОЛОГИЯ - Ecology -> Биологическая безопасность населения - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> Проблема государственного терроризма - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> ПРАВОСУДИЯ.НЕТ - Карим_Хайдаров.
10.11.2021 - 12:34: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вадима Глогера, США - Карим_Хайдаров.
10.11.2021 - 09:18: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> Волновая генетика Петра Гаряева, 5G-контроль и управление - Карим_Хайдаров.
10.11.2021 - 09:18: ЭКОЛОГИЯ - Ecology -> ЭКОЛОГИЯ ДЛЯ ВСЕХ - Карим_Хайдаров.
10.11.2021 - 09:16: ЭКОЛОГИЯ - Ecology -> ПРОБЛЕМЫ МЕДИЦИНЫ - Карим_Хайдаров.
10.11.2021 - 09:15: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Екатерины Коваленко - Карим_Хайдаров.
10.11.2021 - 09:13: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вильгельма Варкентина - Карим_Хайдаров.
Bourabai Research - Технологии XXI века Bourabai Research Institution