Цей документ є не офіційним перекладом початкової англійської версії. Зверніть увагу на те, що оригінальна версія документа існує тільки англійською мовою. Цей переклад може містити неточності та помилки. Переклад виконав © Зайцев Дмитро, 2011. за підтримкою сайту latex pillow. Коментарі до перекладу залишайте тут! | | На головну
Будь ласка, зверніться до сторінки виправлень для цього документа, де можуть бути приведені нормативні зміни до поточного документа. Див. також переклади.
Цей документ, також доступний в таких ненормативних форматах як: PostScript версія, PDF версія, ZIP архів, та Gzip TAR архів.
Copyright © 2007-2010 W3C® (MIT, ERCIM, Keio), Всі права захищені. W3C дотримується правил відповідальності, торгівельної марки та використання документів.
Тип документу XHTML Basic включає в себе мінімальний набір модулів, необхідних для типу документа який приймає мову XHTML(Розширювана мова розмітки гіпертексту), окрім того, він включає в себе зображення, форми, прості таблиці та підтримку об'єктів. Він призначений для веб-клієнтів, які не підтримують повний набір можливостей XHTML; наприклад, такі веб-клієнти як мобільні телефони, КПК (PDA), пейджери, та телеприставки. Даний тип документа надає досить широкі можливості для написання документацій.
XHTML Basic розроблений в якості загальної бази, яка може бути розширена при потребі. Мета XHTML Basic полягає в тому, щоб служити спільною мовою, яка підтримує різні види програм користувача.
Дана версія (1.1, Друге видання), замінює собою версію 1.1, як це зазначено в http://www.w3.org/TR/2008/REC-xhtml-basic-20080729. До цієї ревізію, були додані схеми XML та lang
атрибут. У оновлення з версії 1.0 до версії 1.1, були включені в мову декілька нових функцій, щоб краще обслуговувати спільноти малих пристроїв, які є одними з основних споживачів цієї мови:
li
(визначено у [XHTMLMOD])Визначення типу документа реалізується за допомогою XHTML модулів, як це визначено в "Модулярізація XHTML" [XHTMLMOD].
Цей розділ описує статус даного документу на момент його публікації. Інші документи можуть заміняти цей документ. Зі списком поточних публікацій W3C та останньою ревізією цієї технічної доповіді можна ознайомитися в індексі технічних доповідей W3C на http://www.w3.org/TR/.
Цей документ є Рекомендацією W3C та замінює собою версію рекомендації XHTML Basic від 29 липня 2008. Він відображає міжгалузеву угоду про безліч можливостей мови розмітки, які дозволяють авторам створювати більш якісні мережеві документи, що поставляються для широкого спектру пристроїв. Єдиними змінами в цій версії, є додавання реалізації XML Schema в мові розмітки та інтеграції lang
для забезпечення кращої сумісності з програмами, призначеними для користувача, та допоміжними технологіями. Версія, яка показує конкретні зміни від попередньої рекомендації, доступна у формі із зазначеними відмінностями.
Цей документ був підготовлений Робочою Групою W3C XHTML2 у рамках діяльності W3C HTML. Будь ласка, подивіться Будь ласка, подивіться даного документа Робочої Групою.
Будь ласка, надсилайте коментарі з цього документу, за адресою [email protected] (архів). За цією адресою недоречно відправляти електронні листи для обговорення. Листи для публічних обговорень надсилайте за адресою [email protected] (архів).
Цей документ був розглянутий членами W3C, розробниками програмного забезпечення, а також іншими групами W3C й зацікавленими сторонами, та схвалений Директором у якості Рекомендації W3C. Це стабільний документ і може бути використаний в якості довідкового матеріалу або цитат в іншому документі. Роль W3C у розробці Рекомендації, полягає в залученні уваги до специфікації, і сприяти її широкому поширенню. Це підвищує функціональність і сумісність у Веб (Web)
Цей документ був підготовлений групою, що діє в рамках патентної політики W3C від 5 лютого 2004 року. W3C підтримує публічний перелік відкритих патентів зроблений у зв'язку з результатами діяльності групи; ця сторінка також включає в себе інструкції з розкриття патенту. Особи, що володіють актуальною інформацією про патент, що задовольняє основним вимогам, повинні розкрити цю інформацію згідно з пунктом 6 патентної політики W3C.
HTML 4 є потужною мовою для створення веб-документів, але його схема не бере до уваги проблеми, що стосуються невеликих пристроїв, у тому числі витрати на реалізацію (в потужності, пам'яті і т.і.) повного набору функцій. Споживчі пристрої з обмеженими ресурсами в цілому не можуть собі дозволити забезпечувати виконання повного набору функцій HTML 4. Оскільки, для доступу до Всесвітньої мережі потрібно повноцінний комп'ютер, велика кількість людей не може отримати оперативну інформацію та послуги за допомогою своїх споживчих пристроїв.
Оскільки, є багато різних способів як розбити на підмножини HTML, тому існує багато практично ідентичних підмножин визначені організаціями та компаніями. Без загальних базових наборів функцій, складно розробляти програми для широкого кола мережних клієнтів.
Сенс XHTML полягає в наданні такого типу документа XHTML, який може бути загальним для всіх спільнот (наприклад, настільними комп'ютерами, ТВ, та мобільними телефонами), і цього буде більш ніж достатньо, щоб застосовуватися для створення простих документів. Нові типи документів для різних спільнот можуть бути визначені шляхом розширення XHTML Basic, таким чином, що документи на XHTML Basic входили би до числа коректних документів нового типу документа. Таким чином, документ XHTML Basic може бути представлений на максимальну кількість веб-клієнтів.
Визначення типу документа для XHTML Basic здійснюється на основі модулів XHTML визначених у Модулярізації XHTML [XHTMLMOD].
Для отримання інформації про найкраще застосування мобільного контенту, ви можете звернутися до[MOBILEBP].
Інформаційні пристрої орієнтовані для певних цілей. Вони підтримують особливості, необхідні їм для виконання функцій, для яких вони створювалися. Нижче наведені приклади різних інформаційних пристроїв:
Існуючі підмножини та варіанти HTML для цих пристроїв, включають в себе, Компактний HTML [CHTML], Мова розмітки для бездротових пристроїв [WML], та "Інструкції HTML 4.0 для мобільного доступу" [Інструкції]. Спільними рисами цих типів документа є:
Цей набір особливостей HTML був відправною точкою для створення XHTML Basic. Оскільки багато розробників документів знайомі з цими особливостями HTML, вони складають корисну приймаючу мову, яку можна поєднувати з розміткою модулів з інших мов відповідно до методів, зазначеними в "Модулярізації XHTML" [XHTMLMOD]. Так, наприклад, XHTML Basic може бути розширений за допомогою користувацького модуля для підтримки більш широкої семантики розмітки в певних умовах.
Мета XHTML Basic не полягає в тому, щоб обмежити функціональність майбутніх мов. Але оскільки, елементи в HTML 4 (фрейми, розширені таблиці, та інші) були розроблені для такого типу клієнта як персональний комп'ютер, вони виявилися непридатними для багатьох не настільних пристроїв. XHTML Basic буде розширюватися, і використовуватися за основу. Розширення XHTML з загальними і основними наборами функцій, замість практично ідентичних підгруп або занадто великого набору функцій в HTML 4, буде корисним, як для взаємодії в Мережі, так і для забезпечення масштабованості.
У порівнянні з багатою функціональністю HTML 4, XHTML Basic може виглядати як крок назад, але насправді, це два кроки вперед для клієнтів, яким не потрібні всі функції HTML 4 та для розробників документів, які отримують одну підмножину XHTML замість декількох.
Цей розділ пояснює, чому деякі особливості HTML не є частиною XHTML Basic.
Багато простих веб-клієнтів, які можуть відображати тільки шрифт фіксованої ширини. Двонаправлений текст, жирний шрифт та інші елементи текстових розширень також не підтримуються.
При створенні презентацій, рекомендується, щоб використовувалися таблиці стилів, які підходять пристрою.
Прості таблиці XHTML ([XHTMLMOD], розділ 5.6.1) підтримуються, але можуть виникнути труднощі при відображенні таблиць на маленьких пристроях. Рекомендується, щоб розробники контенту слідували Принципам доступності мережевих документів 1.0 при створенні доступних таблиць ([WCAG10], принцип 5). Зауважте, що в Модулі простих таблиць вкладені таблиці неприпустимі.
Фрейми не підтримуються. Фрейми залежать від інтерфейсу екрану і не можуть застосовуватися в деяких невеликих приладах, таких як телефони, пейджери та годинник.
Цей розділ є нормативним.
Відповідним документом XHTML Basic є документ, який вимагає тільки засоби, описані в якості обов'язкових в даній специфікації. Такий документ повинен відповідати всім наступним критеріям:
<html>
.http://www.w3.org/1999/xhtml
.
Відкриваючий тег МОЖЕ також містити декларацію XML Schema, як зразок простору імен та XML Schema, як зразок атрибуту schemaLocation
[XMLSCHEMA]. Такий атрибут буде асоціювати простір імен XHTML http://www.w3.org/1999/xhtml
зі схемою XML при URI
http://www.w3.org/MarkUp/SCHEMA/xhtml-basic11.xsd
.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd">
Документи XHTML Basic 1.1 ПОВИННІ бути позначені відповідно до MIME-типу "application/xhtml+xml", як це визначено в [RFC3236]. За додатковою інформацією щодо використання типів вмісту з XHTML, дивіться інформаційну примітку [XHTMLMIME].
Програми, які призначені для користувача, повинні відповідати розділу "Відповідність програм призначених для користувача" специфікації XHTML 1.0 ([XHTML1], розділ 3.2).
Цей розділ є нормативним.
Тип документу XHTML Basic визначен як набір модулів XHTML. Усі модулі XHTML визначені в специфікації "Модулярізація XHTML" [XHTMLMOD].
XHTML Basic складається з наступних модулів XHTML:
body, head, html, title
abbr, acronym, address, blockquote, br, cite, code, dfn, div, em, h1, h2, h3, h4, h5, h6, kbd, p, pre, q, samp, span, strong, var
a
dl, dt, dd, ol, ul, li
button, fieldset, form, input, label, legend, select, optgroup, option, textarea
caption, table, td, th, tr
img
object, param
b, big, hr, i, small, sub, sup, tt
meta
link
base
script
та noscript
елементиstyle
елементstyle
атрибутtarget
атрибут.
Примітка:
Ця специфікація також додає, що lang
атрибут, приписують до набору атрибуту I18N, як визначено в XHTMLMOD. Атрибут lang
визначається в HTML4. Коли цей атрибут і атрибут xml:lang
визначаються у тому ж самому елементі, атрибут xml:lang
має пріоритет. Коли обидва атрибута lang
і xml:lang
визначаються у тому ж самому елементі, у них ПОВИННО бути те ж саме значення.
(*) = Цей модуль є необхідним модулем Базового мови XHTML.
XHTML Basic також, використовує модуль атрибуту inputmode XHTML, як зазначено в цій специфікації. Цей модуль додає атрибут inputmode
до елементів
input
і textarea
модуля форм XHTML.
Нарешті, XHTML Basic додає атрибут value
до елемента li
модуля списку XHTML.
XML 1.0 DTD доступний у Додатку B. Реалізація XML Schema доступна в Додатку C.
Хоча XHTML може використовуватися, як - проста мова XHTML з текстом, посиланнями, і зображеннями - призначення його простої схеми в тому, щоб використовуватися в якості базової мови. Базова мова може містити суміш словників, зібраних в один тип документа. Природно, що XHTML є базовою мовою, так як це те, до чого звикла більшість Веб-розробників.
При додаванні розмітки з інших мов до XHTML Basic, внаслідок цього тип документа буде розширенням XHTML Basic. Розробники документів можуть розробляти документи для XHTML Basic або скористатися перевагами розширень. Мета XHTML Basic полягає в тому, щоб служити спільною мовою, яка підтримує різні види програм користувача.
Цей розділ є нормативним.
Цей розділ спочатку був компонентом XForms 1.0, і був написаний Мартіном Дерстом.
Модуль атрибуту inputmode визначено, як inputmode
атрибут.
У наступній таблиці наведено додаткові атрибути для елементів, визначених у іншому місці, коли модуль inputmode вибраний.
Елементи | Атрибути | Примітки |
---|---|---|
input& | inputmode (CDATA) | Коли базові форми або модуль форм обрані. |
textarea& | inputmode (CDATA) | Коли базові форми або модуль форм обрані. |
Атрибут inputmode
надає підказку програмі користувача, щоб обрати відповідний режим введення, для введення тексту, який очікується у зв'язаному управлінні формою. Режим вводу може бути конфігурацією клавіатури, редактор засобів вводу (також, називається інтерфейс процесора) або будь-які інші налаштування, пов'язані з вводом на пристроях, що використовуються.
Використовуючи inputmode
, автор може дати підказку програмі, яка спрощує введення форми користувачем. Автори повинні надавати атрибути inputmode
там, де це можливо, переконавшись, що значення які використовуються, охоплюють широкий спектр пристроїв.
inputmode
Значення атрибуту inputmode
є розділений пробілом список лексем. Лексема це послідовність літер алфавіту або абсолютні URI. Пізніше, можуть бути відокремлені лексеми від попередніх, зазначивши, що абсолютні посилання URI містять ':'. Лексеми чутливі до регістру. Всі лексеми, що складаються з літер алфавіту, визначені тільки в цій специфікації, в
5.3 Перелік лексем (або наступника цієї специфікації).
Ця специфікація не визначає URI для використання їх як лексем, але дозволяє іншим визначати такі URI для розширення. Це може стати необхідним для пристроїв з режимами вводу, які не можуть бути покриті лексемами, визначеними тут. URI повинен разіменовуватися до зрозумілому людині опису режиму ввода, пов'язаного з використанням URI в якості послідовності символів. Цей опис має описувати режим вводу, зазначений цією послідовністю символів, і де і як ця послідовність символів змінює інші лексеми, або сама змінюється іншими лексемами.
При вводі в порожній елемент керування форми з атрибутом inputmode
, клієнтська програма має обрати режим вводу, який вказаний у значенні атрибута inputmode
. Клієнтські програми не повинні використовувати атрибут
inputmode
, щоб встановити режим вводу, коли елемент форми управління для вводу з текстом вже існує.
Щоб встановити відповідний режим вводу, коли елемент форми керування для вводу вже містить текст, клієнтські програми повинні спиратися на специфічні для платформи угоди.
Клієнтські програми повинні надавати всі режими вводу, які підтримуються (операційної) системою/пристроєм, якій вони запущені/до якого вони мають доступ, і які встановлені для постійного використання користувачем. Як правило, це тільки невелика частина режимів вводу, які можуть бути описані за визначеними в даній специфікації лексемами.
Зауваження:
Додаткові керівництва для реалізації клієнтської програми, можна знайти в [UAAG 1.0].
Наступний простий алгоритм використовується, щоб визначити, як клієнтські програми порівнюють значення атрибуту inputmode
до режимів вводу, які вони можуть забезпечити. Цей алгоритм не повинен здійснюватися безпосередньо; клієнтські програми повинні чинити так, якщо б вони використовували його. Алгоритм не призначений, щоб привести до "очевидних" або "бажаних" результатам для всіх можливих комбінацій лексем, але, у всіх випадках, призначений для отримання передбачуваної та правильної поведінки для часто зустрічаючихся комбінацій лексем.
По-перше, кожен з доступних режимів вводу представлений одним або кількома списками лексем. Режим введення може відповідати більше ніж одному списку лексем; наприклад, в системі, встановленої для грецького користувача, і "Грецький Верхній регістр" і "Користувацький Верхній регістр" будуть відповідати тому ж режиму введення. Не буде двох однакових списків.
По-друге, атрибут inputmode
відсканований по всій довжині. Для кожного символу t в атрибуті inputmode
, якщо в списках лексем, що залишаються, які мають доступні режими введення існує список лексем, який містить t, тоді всі списки лексем які мають доступні режими вводу та не містять t видаляються. Якщо список лексем, що містить символ
t відсутній, тоді t буде проігноровано.
По-третє, якщо залишилися один або кілька списків лексем, і всі вони відповідають тим же режимам вводу, тоді буде обрано цей режим вводу. Якщо не залишився ні один зі списків (це означає, що його не було при запуску алгоритму), або якщо інші списки відповідають більш ніж одному режиму ввода, тоді жоден режим вводу не буде обраний.
Приклад: Припустимо, що список, списків лексем які мають доступні режими вводу, є: {"Кирилиця Великі літери", "Кирилиця малі літери", "кирилиця", "латина", "користувацькі Великі літери", "користувацькі малі літери"}, тоді такі значення
inputmode
обирають наступні режими: "кирилічний заголовок" обирає "кирилиця", "Кирилиця малі літери" обирає "Кирилиця малі літери", "малі літери Кирилиця" обирає "Кирилиця малі літери", "латинський Великі літери" обирає "латинь", але "Великі літери латинський" робить вибір між "Кирилиця Великі літери" та "Користувацькі Великі літери", якщо вони відповідають тому ж самому режиму ввода, і не обирає жоден режим ввода, якщо "Кирилиця Великі літери" та "Користувальницькі Заголовні літери" не відповідають тому ж самому режиму ввода.
Лексеми, визначені в даній специфікації, поділяються на дві категорії: лексеми сценарію та модифікатори. У атрибутах inputmode
, лексеми сценарію завжди повинні перераховуватися перед модифікаторами.
Лексеми сценарію забезпечують загальне уявлення про набір символів, який охоплений режимом режимом вводу. У більшості випадків, лексеми сценарію відповідають безпосередньо [Unicode Scripts]. Деякі лексеми співпадають з назвами блоку в Java-класі java.lang.Character.UnicodeBlock ([Java Unicode Blocks]) або з назвами блоку Unicode. Проте це ні як не означає те, що режим вводу повинен дозволити ввід всіх символів у скрипті або блоці, і також не означає, що режим вводу обмежується лише символами з конкретного сценарію. Наприклад, "Латинська" клавіатура не охоплює всі символи латиниці, і включає в себе знаки пунктуації, які не віднесені до латині. Імена сценаріїв були взяті з версії 3.2 стандарту Unicode.
Лексема режиму ввода | Коментарі |
---|---|
arabic | Ім'я сценарію Unicode |
armenian | Ім'я сценарію Unicode |
bengali | Ім'я сценарію Unicode |
bopomofo | Ім'я сценарію Unicode |
braille | використовується для введення шаблонів шрифту Брайля (не для вказівки пристрою вводу даних шрифту Брайля) |
buhid | Ім'я сценарію Unicode |
canadianAboriginal | Ім'я сценарію Unicode |
cherokee | Ім'я сценарію Unicode |
cyrillic | Ім'я сценарію Unicode |
deseret | Ім'я сценарію Unicode |
devanagari | Ім'я сценарію Unicode |
ethiopic | Ім'я сценарію Unicode |
georgian | Ім'я сценарію Unicode |
greek | Ім'я сценарію Unicode |
gothic | Ім'я сценарію Unicode |
gujarati | Ім'я сценарію Unicode |
gurmukhi | Ім'я сценарію Unicode |
han | Ім'я сценарію Unicode |
hangul | Ім'я сценарію Unicode |
hanja | Підмножина 'han' використовується у письмовому Корейському |
hanunoo | Ім'я сценарію Unicode |
hebrew | Ім'я сценарію Unicode |
hiragana | Ім'я сценарію Unicode (може включати в себе інші японські сценарії, вироблені шляхом конвертації з хірагани) |
ipa | Міжнародна фонетична транскрипція |
kanji | Підмножина 'han' використовується в письмовій формі японського |
kannada | Ім'я сценарію Unicode |
katakana | Ім'я сценарію Unicode (повної ширини, не напівширина) |
khmer | Ім'я сценарію Unicode |
lao | Ім'я сценарію Unicode |
latin | Ім'я сценарію Unicode |
malayalam | Ім'я сценарію Unicode |
math | математичні символи та пов'язані з ними символи |
mongolian | Ім'я сценарію Unicode |
myanmar | Ім'я сценарію Unicode |
ogham | Ім'я сценарію Unicode |
oldItalic | Ім'я сценарію Unicode |
oriya | Ім'я сценарію Unicode |
runic | Ім'я сценарію Unicode |
simplifiedHanzi | Підмножина 'han' використовується в письмовій формі спрощеного китайського |
sinhala | Ім'я сценарію Unicode |
syriac | Ім'я сценарію Unicode |
tagalog | Ім'я сценарію Unicode |
tagbanwa | Ім'я сценарію Unicode |
tamil | Ім'я сценарію Unicode |
telugu | Ім'я сценарію Unicode |
thaana | Ім'я сценарію Unicode |
thai | Ім'я сценарію Unicode |
tibetan | Ім'я сценарію Unicode |
traditionalHanzi | Підмножина 'han' використовується в письмовій формі традиційного китайського |
user | Особливе значення, що означає 'рідний' ввід користувача (наприклад, для введення її імені або тексту рідною мовою). |
yi | Ім'я сценарію Unicode |
Лексеми модифікатору можуть бути додані до сценаріїв, які вони застосовують, щоб більш близько визначити вид символів, очікуваних в управлінні формою. Традиційні комп'ютерні клавіатури не потребують більшості лексем модифікатору (дійсно, користувачі на таких пристроях були б досить здивовані, якби програмне забезпечення вирішило змінити регістр самостійно; CAPS lock для верхнього регістру може бути винятком). Однак, лексеми модифікатору можуть бути дуже корисними, щоб встановити режими вводу для маленьких пристроїв.
Лексема режима вводу | Коментарі |
---|---|
lowerCase | нижній регістр (для двопалатних сценаріїв) |
upperCase | верхній регістр (для двопалатних сценаріїв) |
titleCase | регістр заголовку (для двопалатних сценаріїв): слова починаються з великих літер |
startUpper | ввід починається із однієї великої літери, а потім продовжується з малими літерами |
digits | цифри певного сценарію (наприклад, inputmode='thai digits') |
symbols | символи, знаки пунктуації (підходить для конкретного сценарію) |
predictOn | Текстовий прогноз ввімкнено (наприклад, для робочого тексту) |
predictOff | Текстовий прогноз вимкнуто (наприклад, для паролів) |
halfWidth | напівширина сумісності форм (наприклад, Katakana; застаріле) |
Клієнтські програми можуть використовувати інформацію доступну в гранях моделі XML Schema, щоб встановити режим вводу. Відзначимо, що гранню моделі є жорстке обмеження на лексичне значення екземпляру вузла даних, і можна задати різні обмеження для різних частин елементу даних. Атрибут inputmode
є м'якою підказкою про види символів, які користувач може, цілком ймовірно, вводити у форму. Атрибут inputmode
надається в доповнення до граней моделі з наступних причин:
Набір допустимих символів, визначених у моделі, може бути настільки широким, що стає не можливо, вивести розумну установку режиму ввода. Однак, часто є свого роду символи, які будуть введені користувачем з високою ймовірністю. У такому випадку, inputmode
дозволяє встановлювати режим вводу для зручності користувача.
У деяких випадках, можна було б отримати вхідний режим налаштування з моделі, тому що безліч символів, дозволених в моделі, тісно узгоджуються з великою кількістю символів, які охоплюються значенням атрибуту
inputmode
. Однак, таке утворення вимагає багато даних і розрахунків в призначеній для користувача програмі.
Малі пристрої можуть залишити перевірки моделей на сервері, але з легкістю зможуть перейти на ті вхідні режими, які вони підтримують. Можливість зробити ввід даних для користувачів простіше, має особливе значення на невеликих пристроях.
Це приклад форми для вводу японської адреси.
Family name: <input name="name" inputmode="kanji" /> (in kana): <input name="namekana" inputmode="katakana" /> Given name: <input name="Given" inputmode="kanji" /> (in kana): <input name="Givenkana" inputmode="katakana" /> Postal code: <input name="zip" inputmode="latin digits" /> Address: <input name="address" inputmode="kanji" /> (in kana): <input name="addresskana" inputmode="katakana" /> Email: <input name="email" inputmode="latin lowerCase" /> Telephone: <input name="tel" inputmode="latin digits" /> Comments: <textarea name="comments" inputmode="user predictOn" /> <input name="doit" type="submit" value="OK" />
Версія 1.0 даної специфікації була підготовлена Робочою Групою W3C HTML. Учасниками, на момент публікації першого видання, були:
Версія 1.1 даної специфікації була підготовлена Робочою Групою W3C XHTML2. Учасниками, на момент публікації, були:
У публікації другого видання брали участь
Дякуємо Гері Едемсу (Gary Adams, Sun Microsystems), Джонні Екселссону (Jonny Axelsson, Metastasis design), Пітеру Чену (Peter Chen, Philips), Дену Конноллі (Dan Connolly, W3C), Джону Коуену (John Cowan, Reuters), Мартіну Дюрсту (Martin J. Dürst, W3C), Джоанні Хжелм (Johan Hjelm, Ericsson), Йену Джейкобсу (Ian Jacobs, W3C), С'юзен Леш (Susan Lesch, W3C), Луї Терану (Louis Theran, Nokia), Куїнтону Зондервану (Quinton Zondervan, Lotus), членам Спеціальної групи W3C з мобільного доступу, Робочій групі W3C з синхронізованого мультимедіа, Робочій групі W3C WAI з протоколів та форматів, а також членам Відкритого Мобільного Альянсу за внесок, рецензування та коментування цього документа.
Цей додаток є нормативним.
Реалізація DTD у XHTML Basic 1.1 міститься в цьому додатку. Є прямі посилання на різні файли, та файли в свою чергу, знаходяться в "Gzip TAR" та "Zip" архівах, які пов'язані з верхньою частиною цього документу. Зверніть увагу, що посилання на файли з позначкою "остання версія", можуть поступово змінюватися протягом довгого часу. Для отримання додаткової інформації, перейдіть на домашню сторінку Робочої Групи W3C XHTML2.
Даний розділ містить визначення формату відкритого каталогу SGML загальнодоступних ідентифікаторів для XHTML Basic.
Ви можете завантажити цю версію даного файлу за адресою http://www.w3.org/TR/2009/REC-xhtml-basic-20101123/xhtml-basic11.cat. Остання версія, доступна за адресою http://www.w3.org/MarkUp/DTD/xhtml-basic11.cat.
-- .......................................................................... -- -- Файл-каталог ............................................................ -- -- Файл даних каталогу XHTML Basic Редагування: $Id: index.html,v 1.2 2010/11/24 21:47:40 bertails Exp $ SMI Для отримання докладної інформації про розробку та використання даних каталогу дивіться "Управління сутностями ", технічну резолюцію 9401 SGML Open. Документ доступний на сайті OASIS за адресою: <http://www.oasis-open.org/html/tr9401.html> -- -- .......................................................................... -- -- Декларація SGML, пов'язана з XML .................................... -- OVERRIDE YES SGMLDECL "xml1.dcl" -- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -- -- Файл модульного драйвера DTD XHTML Basic ..................................... -- PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "xhtml-basic11.dtd" -- Модуль платформи XHTML Basic ............................................. -- PUBLIC "-//W3C//ENTITIES XHTML Basic 1.1 Document Model 1.0//EN" "xhtml-basic11-model-1.mod" -- Модуль Inputmode XHTML ............................................. -- PUBLIC "-//W3C//ELEMENTS XHTML Inputmode 1.0//EN" "xhtml-inputmode-1.mod" -- Кінець даних каталогу ..................................................... -- -- .......................................................................... --
Даний розділ містить драйвер реалізації типу документа XHTML Basic, в якості DTD XML. Він спирається на реалізації модуля XHTML, визначених у [XHTMLMOD].
Ви можете завантажити цю версію даного файлу за адресою http://www.w3.org/TR/2009/REC-xhtml-basic-20101123/xhtml-basic11.dtd. Остання версія, доступна за адресою http://www.w3.org/MarkUp/DTD/xhtml-basic11.dtd.
<!-- XHTML Basic 1.1 DTD ...................................................... --> <!-- file: xhtml-basic11.dtd --> <!-- DTD для XHTML Basic 1.1 Це XHTML Basic, власна підмножина XHTML. Розширювана Мова Розмітки Гіпертексту (XHTML) Copyright 1998-2007 Консорціум Всесвітньої мережі (Массачусетський технологічний інститут, Європейський науково-дослідний консорціум інформатики та математики, університет Keio). Усі права захищені. Справжнім дозволяється використовувати, копіювати, змінювати та розповсюджувати DTD для XHTML Basic і його супровідну документацію в будь-яких цілях і безкоштовно на необмежений строк за умови, що вищезазначене повідомлення про авторські права і даний абзац присутні у всіх копіях. Правовласники не заявляють про придатність цього DTD для будь-яких цілей. Воно надається "як є" без явних або непрямих гарантій. Редактори: Murray M. Altheim <mailto:[email protected]> Peter Stark <mailto:[email protected]> Shane McCarron <mailto:[email protected]> Редакція: $Id: index.html,v 1.2 2010/11/24 21:47:40 bertails Exp $ --> <!-- Це файл драйвера для версії 1.1 DTD для XHTML Basic . Це DTD визначається ідентифікаторами PUBLIC і SYSTEM: PUBLIC: "-//W3C//DTD XHTML Basic 1.1//EN" SYSTEM: "http://www.w3.org/MarkUp/DTD/xhtml-basic11.dtd" --> <!ENTITY % XHTML.version "-//W3C//DTD XHTML Basic 1.1//EN" > <!-- Використовуйте цей URI для ідентифікації простору імен за замовчуванням: "http://www.w3.org/1999/xhtml" Для отримання інформації про використання префіксів простору імен в DTD дивіться Модуль Повні імена. --> <!ENTITY % NS.prefixed "IGNORE" > <!ENTITY % XHTML.prefix "" > <!-- Зарезервовано для використання з простором імен XLink: --> <!ENTITY % XLINK.xmlns "" > <!ENTITY % XLINK.xmlns.attrib "" > <!-- Наприклад, якщо ви використовуєте XHTML Basic 1.1 напряму, застосовуйте загальнодоступний ідентифікатор в декларації DOCTYPE з декларацією простору імен для елемента документу, щоб визначити простір імен за замовчуванням: <?xml version="1.0"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/MarkUp/DTD/xhtml-basic11.dtd" > <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" > ... </html> --> <!-- Зарезервовано для майбутнього використання з профілями документів --> <!ENTITY % XHTML.profile "" > <!-- Особливості двонаправленого тексту Ця сутність для перевірки можливостей застосовується для декларації елементів і атрибутів, які використовуються для підтримки двонаправленого тексту. --> <!ENTITY % XHTML.bidi "IGNORE" > <?doc type="doctype" role="title" { XHTML Basic 1.1 } ?> <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: --> <!ENTITY % xhtml-events.module "INCLUDE" > <!ENTITY % xhtml-bdo.module "%XHTML.bidi;" > <!-- Модуль вбудованого стилю ........................................ --> <!ENTITY % xhtml-inlstyle.module "INCLUDE" > <![%xhtml-inlstyle.module;[ <!ENTITY % xhtml-inlstyle.mod PUBLIC "-//W3C//ELEMENTS XHTML Inline Style 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-inlstyle-1.mod" > %xhtml-inlstyle.mod;]]> <!ENTITY % xhtml-model.mod PUBLIC "-//W3C//ENTITIES XHTML Basic 1.1 Document Model 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-basic11-model-1.mod" > <!-- Додавання Lang атрибута в колекцію I18N --> <!ENTITY % xhtml-datatypes.module "INCLUDE" > <![%xhtml-datatypes.module;[ <!ENTITY % xhtml-datatypes.mod PUBLIC "-//W3C//ENTITIES XHTML Datatypes 1.0//EN" "xhtml-datatypes-1.mod" > %xhtml-datatypes.mod;]]> <!ENTITY % lang.attrib "xml:lang %LanguageCode.datatype; #IMPLIED lang %LanguageCode.datatype; #IMPLIED" > <!ENTITY % xhtml-framework.mod PUBLIC "-//W3C//ENTITIES XHTML Modular Framework 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-framework-1.mod" > %xhtml-framework.mod; <!ENTITY % pre.content "( #PCDATA | %InlStruct.class; %InlPhras.class; %Anchor.class; %Inline.extra; )*" > <!ENTITY % xhtml-text.mod PUBLIC "-//W3C//ELEMENTS XHTML Text 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-text-1.mod" > %xhtml-text.mod; <!ENTITY % xhtml-hypertext.mod PUBLIC "-//W3C//ELEMENTS XHTML Hypertext 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-hypertext-1.mod" > %xhtml-hypertext.mod; <!ENTITY % xhtml-list.mod PUBLIC "-//W3C//ELEMENTS XHTML Lists 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-list-1.mod" > %xhtml-list.mod; <!-- Додамо значення атрибута до елемента li --> <!ATTLIST %li.qname; value %Number.datatype; #IMPLIED > <!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: --> <!-- Модуль сценарію ........................................... --> <!ENTITY % xhtml-script.module "INCLUDE" > <![%xhtml-script.module;[ <!ENTITY % xhtml-script.mod PUBLIC "-//W3C//ELEMENTS XHTML Scripting 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-script-1.mod" > %xhtml-script.mod;]]> <!-- Модуль Таблиць стилів ......................................... --> <!ENTITY % xhtml-style.module "INCLUDE" > <![%xhtml-style.module;[ <!ENTITY % xhtml-style.mod PUBLIC "-//W3C//ELEMENTS XHTML Style Sheets 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-style-1.mod" > %xhtml-style.mod;]]> <!-- Модуль зображень ............................................... --> <!ENTITY % xhtml-image.module "INCLUDE" > <![%xhtml-image.module;[ <!ENTITY % xhtml-image.mod PUBLIC "-//W3C//ELEMENTS XHTML Images 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-image-1.mod" > %xhtml-image.mod;]]> <!-- Модуль таблиць ............................................... --> <!ENTITY % xhtml-table.module "INCLUDE" > <![%xhtml-table.module;[ <!ENTITY % xhtml-table.mod PUBLIC "-//W3C//ELEMENTS XHTML Basic Tables 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-basic-table-1.mod" > %xhtml-table.mod;]]> <!-- Модуль форм ............................................... --> <!ENTITY % xhtml-form.module "INCLUDE" > <![%xhtml-form.module;[ <!ENTITY % xhtml-form.mod PUBLIC "-//W3C//ELEMENTS XHTML Forms 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-form-1.mod" > %xhtml-form.mod;]]> <!-- Модуль презентації ........................................ --> <!ENTITY % xhtml-pres.module "INCLUDE" > <![%xhtml-pres.module;[ <!ENTITY % xhtml-pres.mod PUBLIC "-//W3C//ELEMENTS XHTML Presentation 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-pres-1.mod" > %xhtml-pres.mod;]]> <!-- Модуль елементу link ........................................ --> <!ENTITY % xhtml-link.module "INCLUDE" > <![%xhtml-link.module;[ <!ENTITY % xhtml-link.mod PUBLIC "-//W3C//ELEMENTS XHTML Link Element 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-link-1.mod" > %xhtml-link.mod;]]> <!-- Модуль метаінформації документу ............................ --> <!ENTITY % xhtml-meta.module "INCLUDE" > <![%xhtml-meta.module;[ <!ENTITY % xhtml-meta.mod PUBLIC "-//W3C//ELEMENTS XHTML Metainformation 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-meta-1.mod" > %xhtml-meta.mod;]]> <!-- Модуль елементу base ........................................ --> <!ENTITY % xhtml-base.module "INCLUDE" > <![%xhtml-base.module;[ <!ENTITY % xhtml-base.mod PUBLIC "-//W3C//ELEMENTS XHTML Base Element 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-base-1.mod" > %xhtml-base.mod;]]> <!-- Модуль елементу param ....................................... --> <!ENTITY % xhtml-param.module "INCLUDE" > <![%xhtml-param.module;[ <!ENTITY % xhtml-param.mod PUBLIC "-//W3C//ELEMENTS XHTML Param Element 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-param-1.mod" > %xhtml-param.mod;]]> <!-- Модуль вбудованого об'єкта ..................................... --> <!ENTITY % xhtml-object.module "INCLUDE" > <![%xhtml-object.module;[ <!ENTITY % xhtml-object.mod PUBLIC "-//W3C//ELEMENTS XHTML Embedded Object 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-object-1.mod" > %xhtml-object.mod;]]> <!-- Модуль Атрибуту Inputmode .................................. --> <!ENTITY % xhtml-inputmode.module "INCLUDE" > <![%xhtml-inputmode.module;[ <!ENTITY % xhtml-inputmode.mod PUBLIC "-//W3C//ELEMENTS XHTML Inputmode 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-inputmode-1.mod" > %xhtml-inputmode.mod;]]> <!-- Модуль Атрибуту Target .................................... --> <!ENTITY % xhtml-target.module "INCLUDE" > <![%xhtml-target.module;[ <!ENTITY % xhtml-target.mod PUBLIC "-//W3C//ELEMENTS XHTML Target 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-target-1.mod" > %xhtml-target.mod;]]> <!ENTITY % xhtml-struct.mod PUBLIC "-//W3C//ELEMENTS XHTML Document Structure 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-struct-1.mod" > %xhtml-struct.mod; <!-- кінець DTD для XHTML Basic 1.1 ........................................... -->
Тип документу сімейства XHTML (такий як XHTML Basic) повинен визначити модель документу, яку він використовує. Це робиться за допомогою окремого модуля моделі документа, який обробляється Модульної Структурою XHTML. Модуль моделі документа та драйвера XHTML Basic (див. вище) працюють разом, щоб налаштувати модуль реалізації конкретних вимог типу документа. Модуль моделі документа для XHTML Basic визначено нижче:
Ви можете завантажити цю версію даного файлу за адресою http://www.w3.org/TR/2009/REC-xhtml-basic-20101123/xhtml-basic11-model-1.mod. Остання версія, доступна за адресою http://www.w3.org/MarkUp/DTD/xhtml-basic11-model-1.mod.
<!-- ....................................................................... --> <!-- Модуль моделі документа XHTML Basic 1.1 .................................... --> <!-- file: xhtml-basic11-model-1.mod Це XHTML Basic, власна підмножина XHTML. Copyright 1998-2007 W3C (MIT, ERCIM, Keio), усі права захищені. Редакція: $Id: index.html,v 1.2 2010/11/24 21:47:40 bertails Exp $ SMI Цей модуль DTD визначається ідентифікаторами PUBLIC і SYSTEM: PUBLIC "-//W3C//ENTITIES XHTML Basic 1.1 Document Model 1.0//EN" SYSTEM "http://www.w3.org/MarkUp/DTD/xhtml-basic11-model-1.mod" Редакції: (немає) ....................................................................... --> <!-- Модель документу XHTML Basic Даний модуль описує класифікацію елементів, які складають загальні моделі змісту для елементів XHTML. --> <!-- Додаткові елементи в head .............. --> <!ENTITY % HeadOpts.mix "( %script.qname; | %style.qname; | %meta.qname; | %link.qname; | %object.qname; )*" > <!-- script та noscript використовуються для зберігання скриптів та альтернативного вмісту --> <!ENTITY % Script.class "| %script.qname; | %noscript.qname;" > <!-- Різні елементи ................. --> <!ENTITY % Misc.extra "" > <!-- Ці елементи не є ні блоковими, ні внутрішньостроковимі, і можуть використовуватися, де завгодно в тілі документа. --> <!ENTITY % Misc.class "%Script.class; %Misc.extra;" > <!-- Внутрішньострокові елементи ........................ --> <!ENTITY % InlStruct.class "%br.qname; | %span.qname;" > <!ENTITY % InlPhras.class "| %em.qname; | %strong.qname; | %dfn.qname; | %code.qname; | %samp.qname; | %kbd.qname; | %var.qname; | %cite.qname; | %abbr.qname; | %acronym.qname; | %q.qname;" > <!ENTITY % InlPres.class "| %tt.qname; | %i.qname; | %b.qname; | %big.qname; | %small.qname; | %sub.qname; | %sup.qname;" > <!ENTITY % I18n.class "" > <!ENTITY % Anchor.class "| %a.qname;" > <!ENTITY % InlSpecial.class "| %img.qname; | %object.qname;" > <!ENTITY % InlForm.class "| %input.qname; | %select.qname; | %textarea.qname; | %label.qname; | %button.qname;" > <!ENTITY % Inline.extra "" > <!ENTITY % Inline.class "%InlStruct.class; %InlPhras.class; %InlPres.class; %Anchor.class; %InlSpecial.class; %InlForm.class; %Inline.extra;" > <!ENTITY % InlNoAnchor.class "%InlStruct.class; %InlPhras.class; %InlPres.class; %InlSpecial.class; %InlForm.class; %Inline.extra;" > <!ENTITY % InlNoAnchor.mix "%InlNoAnchor.class; %Misc.class;" > <!ENTITY % Inline.mix "%Inline.class; %Misc.class;" > <!-- Блокові елементи ......................... --> <!ENTITY % Heading.class "%h1.qname; | %h2.qname; | %h3.qname; | %h4.qname; | %h5.qname; | %h6.qname;" > <!ENTITY % List.class "%ul.qname; | %ol.qname; | %dl.qname;" > <!ENTITY % Table.class "| %table.qname;" > <!ENTITY % Form.class "| %form.qname;" > <!ENTITY % Fieldset.class "| %fieldset.qname;" > <!ENTITY % BlkStruct.class "%p.qname; | %div.qname;" > <!ENTITY % BlkPhras.class "| %pre.qname; | %blockquote.qname; | %address.qname;" > <!ENTITY % BlkPres.class "| %hr.qname;" > <!ENTITY % BlkSpecial.class "%Table.class; %Form.class; %Fieldset.class;" > <!ENTITY % Block.extra "" > <!ENTITY % Block.class "%BlkStruct.class; %BlkPhras.class; %BlkPres.class; %BlkSpecial.class; %Block.extra;" > <!ENTITY % Block.mix "%Heading.class; | %List.class; | %Block.class; %Misc.class;" > <!-- Усі елементи вмісту ................... --> <!-- декларує увесь вміст, за винятком таблиць --> <!ENTITY % FlowNoTable.mix "%Heading.class; | %List.class; | %BlkStruct.class; %BlkPhras.class; %Form.class; %Block.extra; | %Inline.class; %Misc.class;" > <!ENTITY % Flow.mix "%Heading.class; | %List.class; | %Block.class; | %Inline.class; %Misc.class;" > <!-- кінець xhtml-basic11-model-1.mod -->
Визначимо, нарешті, новий модуль атрибуту inputmode.
Ви можете завантажити цю версію даного файлу за адресою http://www.w3.org/TR/2009/REC-xhtml-basic-20101123/xhtml-inputmode-1.mod. Остання версія, доступна за адресою http://www.w3.org/MarkUp/DTD/xhtml-inputmode-1.mod.
<!-- ...................................................................... --> <!-- Модуль Inputmode в XHTML .............................................. --> <!-- файл: xhtml-inputmode-1.mod Це XHTML, переформулювання HTML як модульного додатка XML. Copyright 1998-2007 W3C (MIT, ERCIM, Keio), усі права захищені. Редакція: $Id: index.html,v 1.2 2010/11/24 21:47:40 bertails Exp $ Цей модуль DTD визначається ідентифікаторами PUBLIC і SYSTEM: PUBLIC "-//W3C//ELEMENTS XHTML Inputmode 1.0//EN" SYSTEM "http://www.w3.org/MarkUp/DTD/xhtml-inputmode-1.mod" Редакції: (немає) ....................................................................... --> <!-- Inputmode inputmode Цей модуль оголошує атрибут 'inputmode', який використовується для того, щоб запропонувати режим вводу, пов'язаний з елементом textarea або input. --> <!-- виконувати в цьому фреймі --> <!ENTITY % Inputmode.datatype "CDATA" > <!-- додавання атрибуту 'inputmode', до елементу 'input' --> <!ATTLIST %input.qname; inputmode %Inputmode.datatype; #IMPLIED > <!-- додавання атрибуту 'inputmode', до елементу 'textarea' --> <!ATTLIST %textarea.qname; inputmode %Inputmode.datatype; #IMPLIED > <!-- кінець xhtml-inputmode-1.mod -->
Цей додаток є нормативним.
Цей розділ містить драйвер для реалізації такого типу документу XHTML Basic, як XML Schema. Він грунтується на реалізації модуля XHTML визначені в [XHTMLMOD].
<?xml version="1.0" encoding="UTF-8"?> <xs:schema targetNamespace="http://www.w3.org/1999/xhtml" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xh11d="http://www.w3.org/1999/xhtml/datatypes/" xmlns="http://www.w3.org/1999/xhtml" blockDefault="#all"> <xs:annotation> <xs:documentation> Це драйвер XML Schema для XHTML Basic 1.1. Будь ласка, використовуйте цей простір імен для елементів XHTML: "http://www.w3.org/1999/xhtml" $Id: index.html,v 1.2 2010/11/24 21:47:40 bertails Exp $ </xs:documentation> </xs:annotation> <xs:annotation> <xs:documentation> Это XHTML Basic Copyright ©1998-2008 Консорциум Всемирной сети (Массачусетський технологічний інститут, Європейський науково-дослідний консорціум інформатики та математики, університет Keio). Усі права захищені. Справжнім дозволяється використовувати, копіювати, змінювати та розповсюджувати модулі XHTML Schema та їх супровідну xs: документацію в будь-яких цілях і безкоштовно на необмежений строк за умови, що вищезазначене повідомлення про авторські права і даний абзац присутні у всіх копіях. Правовласники не заявляють про придатність цих модулів XHTML Schema для будь-яких цілей. Вони надаються "як є", без явних або непрямих гарантій. </xs:documentation> </xs:annotation> <xs:annotation> <xs:documentation> Це файл драйвера Schema для типу документу XHTML Basic 1.1 Ця схема включає в себе + імпорт зовнішніх схем (xml.xsd) + перевизначають (і включають) модулі схеми для типу документу XHTML Basic 1.1. + Включають Schema для іменованих моделі контенту для типу документа XHTML Basic 1.1 Document Type Тип документу XHTML Basic 1.1 включає наступні Модулі Модулі Ядра XHTML (Необхідні для відповідності сімейства XHTML) + текст + гіпертекст + списки + структура (переглянуто) Інші модулі XHTML + Модуль link + Метаінформація + Внутрішні Події + Сценарії + Таблиця стилів + Модуль style + Модуль target + Модуль inputmode + Модуль base + Модуль image + Модуль object + Презентация + Модуль param + Форми + Прості таблиці </xs:documentation> </xs:annotation> <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"> <xs:annotation> <xs:documentation> Цей імпорт вводить атрибути простору імен XML Атрибути XML використовуються різними модулями </xs:documentation> </xs:annotation> </xs:import> <xs:include schemaLocation="xhtml-basic11-model-1.xsd"> <xs:annotation> <xs:documentation> Модуль моделі документа для типу документу XHTML Basic 1.1 Цей файл схеми визначає всі іменовані моделі, які використовуються Платформою Модулярізації XHTML для типу документа XHTML Basic 1.1 </xs:documentation> </xs:annotation> </xs:include> <xs:include schemaLocation="xhtml-basic11-modules-1.xsd"> <xs:annotation> <xs:documentation> Схема, яка включає модулі (і перевизначення) для типу документа XHTML Basic 1.1. </xs:documentation> </xs:annotation> </xs:include> </xs:schema>
Реалізації сімейства XHTML, використовуючи XML Schema, зобов'язані забезпечувати свій власний модуль схеми, який імпортує задані модулі з Модулярізаціі XHTML.
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns:xh11d="http://www.w3.org/1999/xhtml/datatypes/"> <xs:import namespace="http://www.w3.org/1999/xhtml/datatypes/" schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-datatypes-1.xsd" /> <xs:annotation> <xs:documentation> Ця схема включає в себе усі модулі для типу документа XHTML Basic 1.1. $Id: index.html,v 1.2 2010/11/24 21:47:40 bertails Exp $ </xs:documentation> <xs:documentation source="xhtml-copyright-1.xsd"/> </xs:annotation> <xs:annotation> <xs:documentation> Ця схема включає в себе усі модулі (і перевизначення) для типу документа XHTML Basic 1.1. Тип документа XHTML Basic 1.1 включає в себе наступні Модулі Модулі Ядра XHTML (Необхідні для відповідності сімейства XHTML) + текст + гіпертекст + списки + структура Інші модулі XHTML + Модуль link + Модуль meta + Модуль base + Модуль image + Модуль object + Модуль param + Прості форми + Прості таблиці </xs:documentation> </xs:annotation> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-framework-1.xsd"> <xs:annotation> <xs:documentation> Компонентні Модулі Платформи Schema: + позначення + типи даних + загальні атрибути + символьні об'єкти </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_commonatts"/> </xs:annotation> </xs:include> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-text-1.xsd"> <xs:annotation> <xs:documentation> Текстовий модуль Текстовий модуль включає оголошення для всіх базових текстових елементів контейнера та їх атрибутів. + фразовий блоковий + структурний блоковий + фразовий внутрішньостроковий + структурний внутрішньостроковий Елементи, визначені тут: * address, blockquote, pre, h1, h2, h3, h4, h5, h6 * div, p * abbr, acronym, cite, code, dfn, em, kbd, q, samp, strong, var * br, span </xs:documentation> <xs:documentation source="http://www.w3.org/TR/2001/REC-xhtml-modularization-20010410/abstract_modules.html#s_textmodule"/> </xs:annotation> </xs:include> <xs:redefine schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-hypertext-1.xsd"> <xs:annotation> <xs:documentation> Модуль гіпертексту Елементи, визначені тут: * a </xs:documentation> <xs:documentation source="http://www.w3.org/TR/2001/REC-xhtml-modularization-20010410/abstract_modules.html#s_hypertextmodule"/> </xs:annotation> <xs:attributeGroup name="xhtml.a.attlist"> <xs:attributeGroup ref="xhtml.a.attlist"/> <xs:attributeGroup ref="xhtml.a.events.attlist"> <xs:annotation> <xs:documentation> Перевизначення Події XHTML Модулем атрибута </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.a.target.attlist"> <xs:annotation> <xs:documentation> Модуль Target - Атрибут Додавання </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> </xs:redefine> <xs:redefine schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-list-1.xsd"> <xs:annotation> <xs:documentation> Модуль списків Елементи, визначені тут: * dt, dd, dl, ol, ul, li </xs:documentation> <xs:documentation source="http://www.w3.org/TR/2001/REC-xhtml-modularization-20010410/abstract_modules.html#s_listmodule"/> </xs:annotation> <xs:attributeGroup name="xhtml.li.attlist"> <xs:attributeGroup ref="xhtml.li.attlist"/> <xs:attribute name="value" type="xh11d:Number"/> </xs:attributeGroup> </xs:redefine> <xs:redefine schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-struct-1.xsd"> <xs:annotation> <xs:documentation> Структурний модуль Елементи, визначені тут: * title, head, body, html </xs:documentation> <xs:documentation source="http://www.w3.org/TR/2001/REC-xhtml-modularization-20010410/abstract_modules.html#s_structuremodule"/> </xs:annotation> <xs:attributeGroup name="xhtml.version.attrib"> <xs:annotation> <xs:documentation> Перевизначення розмітки XHTML 1.1 (для значення версії attr) </xs:documentation> </xs:annotation> <xs:attribute name="version" type="xh11d:CDATA" fixed="-//W3C//DTD XHTML Basic 1.1//EN"/> </xs:attributeGroup> <xs:attributeGroup name="xhtml.body.attlist"> <xs:attributeGroup ref="xhtml.body.attlist"> <xs:annotation> <xs:documentation> Оригінальний список атрибутів тіла документа </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.body.events.attlist"> <xs:annotation> <xs:documentation> Перевизначення Подій XHTML Модулем Ознаки </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> </xs:redefine> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-pres-1.xsd"> <xs:annotation> <xs:documentation> Презентаційний модуль Елементи, визначені тут: * hr, b, big, i, small,sub, sup, tt </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_presentationmodule"/> </xs:annotation> </xs:include> <xs:redefine schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-link-1.xsd"> <xs:annotation> <xs:documentation> Модуль посилання Елементи, визначені тут: * link </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_linkmodule"/> </xs:annotation> <xs:attributeGroup name="xhtml.link.attlist"> <xs:annotation> <xs:documentation> Зміни XHTML в списку атрибутів link </xs:documentation> </xs:annotation> <xs:attributeGroup ref="xhtml.link.attlist"> <xs:annotation> <xs:documentation> Оригінальні атрибути посилання (оголошено в Модулі Посилання) </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.link.target.attlist"> <xs:annotation> <xs:documentation> Модуль Target XHTML - атрибут доповнень </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> </xs:redefine> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-meta-1.xsd"> <xs:annotation> <xs:documentation> Модуль Meta Елементи, визначені тут: * meta </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_metamodule"/> </xs:annotation> </xs:include> <xs:redefine schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-base-1.xsd"> <xs:annotation> <xs:documentation> Модуль Base Елементи, визначені тут: * base </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_basemodule"/> </xs:annotation> <xs:attributeGroup name="xhtml.base.attlist"> <xs:annotation> <xs:documentation> Зміни XHTML в списку атрибутів base </xs:documentation> </xs:annotation> <xs:attributeGroup ref="xhtml.base.attlist"> <xs:annotation> <xs:documentation> Оригінальні атрибути Base (оголошено в модулі Base) </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.base.target.attlist"> <xs:annotation> <xs:documentation> Модуль Target XHTML - атрибут доповнень </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> </xs:redefine> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-script-1.xsd"> <xs:annotation> <xs:documentation> Модуль сценаріїв Елементи, визначені тут: * script, noscript </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_scriptmodule"/> </xs:annotation> </xs:include> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-style-1.xsd"> <xs:annotation> <xs:documentation> Модуль Style Елементи, визначені тут: * style </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_stylemodule"/> </xs:annotation> </xs:include> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-inlstyle-1.xsd"> <xs:annotation> <xs:documentation> Модуль атрибута Style Елементи, визначені тут: * style </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_styleattributemodule"/> </xs:annotation> </xs:include> <xs:redefine schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-image-1.xsd"> <xs:annotation> <xs:documentation> Модуль зображення Елементи, визначені тут: * img </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_imagemodule"/> </xs:annotation> <xs:attributeGroup name="xhtml.img.attlist"> <xs:attributeGroup ref="xhtml.img.attlist"> <xs:annotation> <xs:documentation> Оригінальні атрибути зображення (оголошено в Модулі зображення) </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> </xs:redefine> <xs:redefine schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-object-1.xsd"> <xs:annotation> <xs:documentation> Модуль об'єкта Елементи, визначені тут: * object </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_objectmodule"/> </xs:annotation> <xs:attributeGroup name="xhtml.object.attlist"> <xs:attributeGroup ref="xhtml.object.attlist"> <xs:annotation> <xs:documentation> Оригінальний список атрибутів object </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> </xs:redefine> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-param-1.xsd"> <xs:annotation> <xs:documentation> Модуль param Елементи, визначені тут: * param </xs:documentation> </xs:annotation> </xs:include> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-basic-table-1.xsd"> <xs:annotation> <xs:documentation> Модуль простих таблиць Зверніть увагу, що даний модуль не використовується в XHTML Він призначений для використання з XHTML Basic Елементи, визначені тут: * table, caption, tr, th, td </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_simpletablemodule"/> </xs:annotation> </xs:include> <xs:redefine schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-form-1.xsd"> <xs:annotation> <xs:documentation> Модуль форм Елементи, визначені тут: * form, label, input, select, optgroup, option, * textarea, fieldset, legend, button </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_extformsmodule"/> </xs:annotation> <xs:attributeGroup name="xhtml.form.attlist"> <xs:annotation> <xs:documentation> Зміни до списку атрибутів форми XHTML </xs:documentation> </xs:annotation> <xs:attributeGroup ref="xhtml.form.attlist"> <xs:annotation> <xs:documentation> Оригінальні атрибути форми (оголошено в модулі форм) </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.form.events.attlist"> <xs:annotation> <xs:documentation> Модуль Подій XHTML - доповнення атрибуту </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.form.target.attlist"> <xs:annotation> <xs:documentation> Модуль Target XHTML - доповнення атрибуту </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> <xs:attributeGroup name="xhtml.input.attlist"> <xs:annotation> <xs:documentation> Зміни до елементу ввода форми XHTML </xs:documentation> </xs:annotation> <xs:attributeGroup ref="xhtml.input.attlist"> <xs:annotation> <xs:documentation> Оригінальні атрибути input (в модулі форм) </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.input.events.attlist"> <xs:annotation> <xs:documentation> Перегляд по подіям атрибутів модуля </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.input.inputmode.attlist"> <xs:annotation> <xs:documentation> Перегляд по InputMode атрибутів модуля </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> <xs:attributeGroup name="xhtml.label.attlist"> <xs:attributeGroup ref="xhtml.label.attlist"> <xs:annotation> <xs:documentation> Оригінальні атрибути label (в модулі форм) </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.label.events.attlist"> <xs:annotation> <xs:documentation> Перегляд по подіям атрибутів модуля </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> <xs:attributeGroup name="xhtml.select.attlist"> <xs:attributeGroup ref="xhtml.select.attlist"> <xs:annotation> <xs:documentation> Оригінальні атрибути select (в модулі форм) </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.select.events.attlist"> <xs:annotation> <xs:documentation> Перегляд по подіям атрибутів модуля </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> <xs:attributeGroup name="xhtml.textarea.attlist"> <xs:attributeGroup ref="xhtml.textarea.attlist"> <xs:annotation> <xs:documentation> Оригінальні атрибути textarea (в модулі форм) </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.textarea.events.attlist"> <xs:annotation> <xs:documentation> Перегляд по подіям атрибутів модуля </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.input.inputmode.attlist"> <xs:annotation> <xs:documentation> Перегляд по InputMode атрибуту модуля </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> <xs:attributeGroup name="xhtml.button.attlist"> <xs:attributeGroup ref="xhtml.button.attlist"> <xs:annotation> <xs:documentation> Оригінальні атрибути button (в модулі форм) </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.button.events.attlist"> <xs:annotation> <xs:documentation> Перегляд по подіям атрибутів модуля </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> </xs:redefine> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-events-1.xsd"> <xs:annotation> <xs:documentation> Модулі Подій XHTML Атрибути, визначені тут: XHTML Event Types </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_intrinsiceventsmodule"/> </xs:annotation> </xs:include> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-target-1.xsd"> <xs:annotation> <xs:documentation> XHTML Модуль Атрибута Target Атрибути, визначені тут: target </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_targetmodule"/> </xs:annotation> </xs:include> <xs:include schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-inputmode-1.xsd"> <xs:annotation> <xs:documentation> XHTML Inputmode Модуль Атрибути, визначені тут: inputmode </xs:documentation> <xs:documentation source="http://www.w3.org/TR/xhtml-basic#s_inputmode"/> </xs:annotation> </xs:include> </xs:schema>
Тип документа сімейства XHTML (такий як XHTML Basic) повинен визначити модель документа, яку він використовує. Це робиться за допомогою окремого модуля моделі документа, який обробляється модульною інфраструктурою XHTML. Модуль моделі документа та драйвер XHTML Basic (див. вище) працюють разом, щоб налаштувати реалізації модуля до певних необхідних умов типу документа. Модуль моделі документа для XHTML Basic визначається нижче:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns:xh11d="http://www.w3.org/1999/xhtml/datatypes/"> <xs:import namespace="http://www.w3.org/1999/xhtml/datatypes/" schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml-datatypes-1.xsd"/> <xs:annotation> <xs:documentation> Це модуль XML Schema іменованих моделей документа XHTML для XHTML Basic 1.1 $Id: index.html,v 1.2 2010/11/24 21:47:40 bertails Exp $ </xs:documentation> <xs:documentation source="xhtml-copyright-1.xsd"/> </xs:annotation> <xs:annotation> <xs:documentation> Модель документа XHTML Basic 1.1 Цей модуль описує групування елементів / атрибутів, які складають загальні моделі документа для елементів XHTML. XHTML має такі основні моделі документа: xhtml.Inline.mix; елементи на символьному рівні xhtml.Block.mix; подібні блоковим елементів, наприклад, параграфи і списки xhtml.Flow.mix; будь-які блокові або внутрішньострокові елементи xhtml.HeadOpts.mix; елементи Head xhtml.InlinePre.mix; Спеціальний клас для моделі попереднього документу xhtml.InlineNoAnchor.mix; Модель документу для якоря(Anchor) Будь-які групи, оголошені в цьому модулі, можуть використовуватися, для створення моделі документа елементів, але вищезгадане вважається 'глобальною змінною' (оскільки цей термін застосовується і тут). У XHTML є наступні групи атрибутів xhtml.Core.extra.attrib xhtml.I18n.extra.attrib xhtml.Common.extra Вищезазначені Групи атрибуту вважаються Глобальною змінною </xs:documentation> </xs:annotation> <xs:attributeGroup name="xhtml.I18n.extra.attrib"> <xs:annotation> <xs:documentation> Розширений атрибут I18n </xs:documentation> </xs:annotation> <xs:attribute name="lang" type="xh11d:LanguageCode" /> </xs:attributeGroup> <xs:attributeGroup name="xhtml.Common.extra"> <xs:annotation> <xs:documentation> Розширені загальні атрибути </xs:documentation> </xs:annotation> <xs:attributeGroup ref="xhtml.style.attrib"> <xs:annotation> <xs:documentation> атрибут "style" від модуля внутрішньострокового стилю </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup ref="xhtml.Events.attrib"> <xs:annotation> <xs:documentation> Атрибути від модуля подій </xs:documentation> </xs:annotation> </xs:attributeGroup> </xs:attributeGroup> <xs:attributeGroup name="xhtml.Core.extra.attrib"> <xs:annotation> <xs:documentation> Розширені основні атрибути </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup name="xhtml.Global.core.extra.attrib"> <xs:annotation> <xs:documentation> Розширені глобальні основні атрибути </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup name="xhtml.Global.I18n.extra.attrib"> <xs:annotation> <xs:documentation> Розширені глобальні атрибути I18n </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:attributeGroup name="xhtml.Global.Common.extra"> <xs:annotation> <xs:documentation> Розширені глобальні загальні атрибути </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:group name="xhtml.Head.extra"> <xs:sequence/> </xs:group> <xs:group name="xhtml.HeadOpts.mix"> <xs:choice> <xs:element name="script" type="xhtml.script.type"/> <xs:element name="style" type="xhtml.style.type"/> <xs:element name="meta" type="xhtml.meta.type"/> <xs:element name="link" type="xhtml.link.type"/> <xs:element name="object" type="xhtml.object.type"/> <xs:group ref="xhtml.Head.extra"/> </xs:choice> </xs:group> <xs:group name="xhtml.head.content"> <xs:sequence> <xs:group ref="xhtml.HeadOpts.mix" minOccurs="0" maxOccurs="unbounded"/> <xs:choice> <xs:sequence> <xs:element name="title" minOccurs="1" maxOccurs="1" type="xhtml.title.type"/> <xs:group ref="xhtml.HeadOpts.mix" minOccurs="0" maxOccurs="unbounded"/> <xs:sequence minOccurs="0"> <xs:element name="base" type="xhtml.base.type"/> <xs:group ref="xhtml.HeadOpts.mix" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:sequence> <xs:sequence> <xs:element name="base" type="xhtml.base.type" minOccurs="1" maxOccurs="1"/> <xs:group ref="xhtml.HeadOpts.mix" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="title" minOccurs="1" maxOccurs="1" type="xhtml.title.type"/> <xs:group ref="xhtml.HeadOpts.mix" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:choice> </xs:sequence> </xs:group> <!-- script і noscript використовуються для зберігання скриптів та альтернативного вмісту --> <xs:group name="xhtml.Script.class"> <xs:choice> <xs:element name="script" type="xhtml.script.type"/> <xs:element name="noscript" type="xhtml.noscript.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.Misc.extra"> <xs:sequence/> </xs:group> <!-- Ці елементи не є ні блоковими, ні внутрішньостроковимі, та можуть використовуватися, де завгодно в тілі документа. --> <xs:group name="xhtml.Misc.class"> <xs:choice> <xs:group ref="xhtml.Script.class"/> <xs:group ref="xhtml.Misc.extra"/> </xs:choice> </xs:group> <!-- Внутрішньострокові елементи --> <xs:group name="xhtml.InlStruct.class"> <xs:choice> <xs:element name="br" type="xhtml.br.type"/> <xs:element name="span" type="xhtml.span.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.InlPhras.class"> <xs:choice> <xs:element name="em" type="xhtml.em.type"/> <xs:element name="strong" type="xhtml.strong.type"/> <xs:element name="dfn" type="xhtml.dfn.type"/> <xs:element name="code" type="xhtml.code.type"/> <xs:element name="samp" type="xhtml.samp.type"/> <xs:element name="kbd" type="xhtml.kbd.type"/> <xs:element name="var" type="xhtml.var.type"/> <xs:element name="cite" type="xhtml.cite.type"/> <xs:element name="abbr" type="xhtml.abbr.type"/> <xs:element name="acronym" type="xhtml.acronym.type"/> <xs:element name="q" type="xhtml.q.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.InlPres.class"> <xs:choice> <xs:element name="tt" type="xhtml.InlPres.type"/> <xs:element name="i" type="xhtml.InlPres.type"/> <xs:element name="b" type="xhtml.InlPres.type"/> <xs:element name="big" type="xhtml.InlPres.type"/> <xs:element name="small" type="xhtml.InlPres.type"/> <xs:element name="sub" type="xhtml.InlPres.type"/> <xs:element name="sup" type="xhtml.InlPres.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.I18n.class" > <xs:sequence/> </xs:group> <xs:group name="xhtml.Anchor.class"> <xs:sequence> <xs:element name="a" type="xhtml.a.type"/> </xs:sequence> </xs:group> <xs:group name="xhtml.InlSpecial.class"> <xs:choice> <xs:element name="img" type="xhtml.img.type"/> <xs:element name="object" type="xhtml.object.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.InlForm.class"> <xs:choice> <xs:element name="input" type="xhtml.input.type"/> <xs:element name="select" type="xhtml.select.type"/> <xs:element name="textarea" type="xhtml.textarea.type"/> <xs:element name="label" type="xhtml.label.type"/> <xs:element name="button" type="xhtml.button.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.Inline.extra"> <xs:sequence/> </xs:group> <!-- Inline.class включає усі внутрішньострокові елементи, використовується в якості змішаного компонента --> <xs:group name="xhtml.Inline.class"> <xs:choice> <xs:group ref="xhtml.InlStruct.class"/> <xs:group ref="xhtml.InlPhras.class"/> <xs:group ref="xhtml.InlPres.class"/> <xs:group ref="xhtml.Anchor.class"/> <xs:group ref="xhtml.InlSpecial.class"/> <xs:group ref="xhtml.InlForm.class"/> <xs:group ref="xhtml.Inline.extra"/> </xs:choice> </xs:group> <!-- InlinePre.mix Використовується в якості компонента в попередній моделі --> <xs:group name="xhtml.InlinePre.mix"> <xs:choice> <xs:group ref="xhtml.InlStruct.class"/> <xs:group ref="xhtml.InlPhras.class"/> <xs:element name="tt" type="xhtml.InlPres.type"/> <xs:element name="i" type="xhtml.InlPres.type"/> <xs:element name="b" type="xhtml.InlPres.type"/> <xs:group ref="xhtml.Anchor.class"/> <xs:group ref="xhtml.Misc.class"/> <xs:group ref="xhtml.Inline.extra"/> </xs:choice> </xs:group> <!-- InlNoAnchor.class, включає в себе всі без-якірні внутрішньострокові елементи, використовується в якості змішаного компонента --> <xs:group name="xhtml.InlNoAnchor.class"> <xs:choice> <xs:group ref="xhtml.InlStruct.class"/> <xs:group ref="xhtml.InlPhras.class"/> <xs:group ref="xhtml.InlPres.class"/> <xs:group ref="xhtml.InlSpecial.class"/> <xs:group ref="xhtml.InlForm.class"/> <xs:group ref="xhtml.Inline.extra"/> </xs:choice> </xs:group> <!-- InlNoAnchor.mix, включає в себе всі без-якірні внутрішньострокові елементи --> <xs:group name="xhtml.InlNoAnchor.mix"> <xs:choice> <xs:group ref="xhtml.InlNoAnchor.class"/> <xs:group ref="xhtml.Misc.class"/> </xs:choice> </xs:group> <!-- Inline.mix, включає в себе всі без-якірні внутрішньострокові елементи, включаючи Misc.class --> <xs:group name="xhtml.Inline.mix"> <xs:choice> <xs:group ref="xhtml.Inline.class"/> <xs:group ref="xhtml.Misc.class"/> </xs:choice> </xs:group> <!-- У HTML 4 DTD, заголовок і список елементів були включені в блокову групу. Групи Heading.class та List.class тепер повинні бути включені явно при декларуванні елементів, де це необхідно. --> <xs:group name="xhtml.Heading.class"> <xs:choice> <xs:element name="h1" type="xhtml.h1.type"/> <xs:element name="h2" type="xhtml.h2.type"/> <xs:element name="h3" type="xhtml.h3.type"/> <xs:element name="h4" type="xhtml.h4.type"/> <xs:element name="h5" type="xhtml.h5.type"/> <xs:element name="h6" type="xhtml.h6.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.List.class"> <xs:choice> <xs:element name="ul" type="xhtml.ul.type"/> <xs:element name="ol" type="xhtml.ol.type"/> <xs:element name="dl" type="xhtml.dl.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.Table.class"> <xs:choice> <xs:element name="table" type="xhtml.table.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.Form.class"> <xs:choice> <xs:element name="form" type="xhtml.form.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.Fieldset.class"> <xs:choice> <xs:element name="fieldset" type="xhtml.fieldset.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.BlkStruct.class"> <xs:choice> <xs:element name="p" type="xhtml.p.type"/> <xs:element name="div" type="xhtml.div.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.BlkPhras.class"> <xs:choice> <xs:element name="pre" type="xhtml.pre.type"/> <xs:element name="blockquote" type="xhtml.blockquote.type"/> <xs:element name="address" type="xhtml.address.type"/> </xs:choice> </xs:group> <xs:group name="xhtml.BlkPres.class"> <xs:sequence> <xs:element name="hr" type="xhtml.hr.type"/> </xs:sequence> </xs:group> <xs:group name="xhtml.BlkSpecial.class"> <xs:choice> <xs:group ref="xhtml.Table.class"/> <xs:group ref="xhtml.Form.class"/> <xs:group ref="xhtml.Fieldset.class"/> </xs:choice> </xs:group> <xs:group name="xhtml.Block.extra"> <xs:sequence/> </xs:group> <!-- Block.class включає в себе усі блокові елементи, використовується в якості змішаного компонента --> <xs:group name="xhtml.Block.class"> <xs:choice> <xs:group ref="xhtml.BlkStruct.class"/> <xs:group ref="xhtml.BlkPhras.class"/> <xs:group ref="xhtml.BlkPres.class"/> <xs:group ref="xhtml.BlkSpecial.class"/> <xs:group ref="xhtml.Block.extra"/> </xs:choice> </xs:group> <!-- Block.mix включає в себе усі блокові елементи, плюс Misc.class; --> <xs:group name="xhtml.Block.mix"> <xs:choice> <xs:group ref="xhtml.Heading.class"/> <xs:group ref="xhtml.List.class"/> <xs:group ref="xhtml.Block.class"/> <xs:group ref="xhtml.Misc.class"/> </xs:choice> </xs:group> <!-- Увесь вміст елементів Flow.mix включає увесь текстовий зміст, блоковий та внутрішньостроковий Зверніть увагу, що "будь-який " елемент, що входить тут, дозволяє нам додати дані від будь-якого іншого простору імен, при необхідності створення складеного документа. Відзначте, однак, що не можливо додати будь-який головний елемент рівня без подальшої зміни. Щоб додати метадані RDF в заголовок документа, модифікуйте структурний модуль. --> <xs:group name="xhtml.Flow.mix"> <xs:choice> <xs:group ref="xhtml.Heading.class"/> <xs:group ref="xhtml.List.class"/> <xs:group ref="xhtml.Block.class"/> <xs:group ref="xhtml.Inline.class"/> <xs:group ref="xhtml.Misc.class"/> </xs:choice> </xs:group> <xs:group name="xhtml.FlowNoTable.mix"> <xs:choice> <xs:group ref="xhtml.Heading.class"/> <xs:group ref="xhtml.List.class"/> <xs:group ref="xhtml.BlkStruct.class"/> <xs:group ref="xhtml.BlkPhras.class"/> <xs:group ref="xhtml.Form.class"/> <xs:group ref="xhtml.Inline.class"/> <xs:group ref="xhtml.Misc.class"/> </xs:choice> </xs:group> <!-- BlkNoForm.mix включає усі блокові елементи, за винятком тих, які існують в модулі форм, плюс Misc.class --> <xs:group name="xhtml.BlkNoForm.mix"> <xs:choice> <xs:group ref="xhtml.Heading.class"/> <xs:group ref="xhtml.List.class"/> <xs:group ref="xhtml.BlkStruct.class"/> <xs:group ref="xhtml.BlkPhras.class"/> <xs:group ref="xhtml.BlkPres.class"/> <xs:group ref="xhtml.Table.class"/> <xs:group ref="xhtml.Block.extra"/> <xs:group ref="xhtml.Misc.class"/> </xs:choice> </xs:group> <xs:element name="html" type="xhtml.html.type"/> </xs:schema>