Простір імен у XML 1.0 (третє видання)
Цей документ документ є не офіційним перекладом початкової англійської версії
Namespaces in XML 1.0 (Third Edition)
. Зверніть увагу на те, що оригінальна версія документа існує
тільки
англійською мовою. Даний переклад може містити неточності та помилки.
Зайцев Дмитро
, 2011. За підтримкою сайту
brickhouse grille
. Коментарі до перекладу залишайте
тут
| |
На головну
Простір імен у XML 1.0 (третє видання)
Рекомендація W3C від 8 грудня 2009 року
Поточна версія:
Остання версія:
Попередні версії:
Редактори:
Тім Брей (Tim Bray), Textuality

Дейв Холландер (Dave Hollander), Contivo, Inc.

Ендрю Лейман (Andrew Layman), Microsoft

Річард Тобін (Richard Tobin), University of Edinburgh and Markup Technology Ltd

Генрі С. Томпсон (Henry S. Thompson), University of Edinburgh and W3C

- Третє видання
Будь ласка, зверніться до сторінки
виправлень
для цього документа, який може включати до себе нормативні зміни.
Див. також
переклади
Цей документ, також доступний в таких ненормативних форматах як:
XML
та
HTML із зазначеними відмінностями від другого
видання
W3C
MIT
ERCIM
Keio
), Всі права захищені. W3C дотримується правил
відповідальності
торгівельної марки
та
використання документів
Анотація
Простори імен XML забезпечують просту методику для отримання імен
елементів і атрибутів, які використовуються у документах Розширюваної Мови Розмітки, асоціюючи їх з просторами імен, які визначені URI посиланнями.
Статус цього Документу
Цей розділ описує статус даного документу на момент його публікації. Інші документи можуть заміняти цей документ. Зі списком поточних публікацій W3C та останньою ревізією цієї технічної доповіді можна ознайомитися в
індексі технічних доповідей W3C
на http://www.w3.org/TR/.
Цей документ є продуктом
Рабочою Групою XML Core
як частина
W3C XML Activity
Англійська версія цієї специфікації являє собою єдину нормативну версію.
Тим не менш, переклади даного документу див.
Відомі реалізації описані в
доповіді про реалізації Простору імен 1.1
(усі відомі реалізації Простору імен 1.1 також підтримують Простори імен 1.0)
Також доступні набори тестів на сторінці
XML Test Suite
Це третє видання включає у себе усі відомі виправлення станом на дату публікації. Воно заміняє попереднє
видання від 16 серпня 2006 року
Це видання було широко розглянено. Лише незначні редакційні зміни було зроблено
після 6 серпня 2009 року Запропонованої Редакційної Рекомендації.
Будь ласка, повідомте про помилки в даному документі до
xml-names-editor@w3.org
доступні публічні
архіви
Ознайомитись зі списком виправлень для цього документу можна за адресою
Цей документ було розглянуто членами W3C, розробниками програмного забезпечення, а також іншими групами W3C та зацікавленими сторонами, та схвалений Директором у якості Рекомендації W3C. Це стабільний документ і може бути використаний у якості довідкового матеріалу або цитат в іншому документі. Роль W3C у розробці Рекомендації, полягає в залученні уваги до специфікації та сприяти її широкому поширенню. Це підвищує функціональність та сумісність у Веб(Web).
W3C підтримує
публічний список відкритих патентів
зроблений у зв'язку з результатами діяльності групи; ця сторінка також включає в себе інструкції з розкриття патенту.
Особи, що володіють актуальною інформацією про патент, який задовольняє
основним
вимогам
повинні розкрити цю інформацію згідно до
пункту 6, патентної політики W3C
Зміст
Мотивація та Резюме
1.1
Примітка про Позначення та Використання
Простори імен XML
2.1
Основні поняття
2.2
Використання URI, в якості назви простору імен
2.3
Порівняння характеристик URI
Декларування Просторів імен
Повні імена
Використання повних імен
Застосування просторів імен для елементів та атрибутів
6.1
Область дії Просторів імен
6.2
Простори імен за замовчуванням
6.3
Унікальність атрибутів
Відповідність документів
Відповідність процесорів
Додатки
Нормативні Посилання
Інші Посилання
(Ненормативні)
Внутрішня структура простору імен XML
(Ненормативне)
Зміни в порівнянні з версією 1.0
(Ненормативне)
Подяки
(Ненормативне)
Особливості, які більше не використовуються
(Ненормативне)
1 Мотивація та Резюме
Ми припускаємо, що застосування розширюваної мови розмітки (XML), де один документ XML може містити елементи й атрибути (так званий "словник розмітки"), які визначені і використовуються декількома програмними модулями. Причина виникнення для цього є модульність: якщо такий словник розмітки існує, який в свою чергу добре розуміє і для якого є корисне програмне забезпечення, в такому разі, цю розмітку краще використовувати повторно, ніж її винаходити для нової обробки.
Такі документи, які містять декілька словників розмітки, створюють проблеми розпізнавання і колізії. Програмні модулі повинні бути в змозі розпізнавати елементи та атрибути, які призначені для обробки, навіть в умовах "колізій", що виникають при використанні того ж
імені
або атрибуту розміткою, яка призначена для іншого програмного пакета.
Ці міркування накладають вимоги, щоб конструкції документа мали імена побудовані таким чином, щоб уникнути зіткнень між іменами з різних словників розмітки. У даній специфікації описується механізм
простору імен XML
, який вирішує це завдання шляхом призначення
розширених імен
до елементів та атрибутів.
1.1 Примітка про Позначення та Використання
У тих місцях, де зустрічаються
ВИДІЛЕНІ
, ключові слова
ПОВИНЕН
НЕ ПОВИНЕН
НЕОБХІДНО
СЛІД
НЕ СЛІД
МОЖЕ
у цьому документі повинні тлумачитися, як описано в
[Ключові слова]
Зверніть увагу, що багато нетермінальних конструкцій в даній специфікації визначаються не тут, а в специфікації XML
[XML]
Коли нетермінальні конструкції, визначені тут, мають такі ж імена, як нетермінали визначені в специфікації XML, тоді сценарії, використані тут, у всіх випадках будуть підмножиною рядків, які відповідають сценарію там.
У сценаріях цього документа абревіатура
NSC
означає "Обмеження простору імен" ("Namespace Constraint"), є
одним з правил, якому
ПОВИННІ
слідувати документи відповідні до цієї специфікації.
2 Простори імен XML
2.1 Основні поняття
Визначення
Простір імен XML
ідентифікується посиланням
URI
[RFC3986]
імена елементів та атрибутів можуть бути розміщені у просторі імен XML за допомогою механізмів, описаних в цій специфікації.]
Визначення
Розширене ім'я
це пара, яка складається з
назви простору імен
та
локального ім'я

Визначення
Для імені
в просторі імен визначеному за допомогою
URI
ім'ям простору імен
буде
. Для імені
яка не перебуває у просторі імен,
ім'я простору імен
буде не мати значення.

Визначення
У кожному з випадків
локальним ім'ям
буде
Саме це поєднання з універсально керованого простору імен URI з локальними іменами лексики, є ефективним у запобіганні конфліктів імен.
Посилання URI можуть містити символи не допустимі в іменах, і дуже часто занадто довгі,
тому розширені імена не використовуються безпосередньо для назви елементів та атрибутів в документах XML.
Замість цього використовуються
повні імена
Визначення
Повне ім'я
це ім'я суб'єкта для інтерпретації у просторі імен.
У документах, що відповідають цій специфікації, імена елементів та атрибутів відображаються як повні імена.
Синтаксично, вони або
префіксні імена
або
безпрефіксні імена
Синтаксис оголошення, який заснований на атрибутах, забезпечує зв'язок між префіксами та іменами простору імен, а також зв'язок із простором імен за замовчуванням, що застосовується до безпрефіксних імен елементів;
ці оголошення знаходяться в області видимості елементами, на яких вони з'являються, так що різні прив'язки можуть застосовуватися в різних частинах документа.
Процесори, які відповідають поточній специфікації
ПОВИННІ
визнати і діяти на підставі цих оголошень і префіксів.
2.2 Використання URI, в якості назви простору імен
Порожній рядок не може бути використаний у якості назви простору імен, хоча це й законне посилання URI.
Використання відносних посилань URI,
включаючи посилання того ж документа, в оголошеннях просторів імен, є застарілим.
Примітка:
Це несхвалення відносних посилань URI було прийнято на Пленарному голосуванні W3C XML
[несхвалення відносних посилань URI]
. У ньому також заявлено, що
"наступні характеристики, такі як DOM, XPath, та інші будуть визначати без розшифрування до них".
2.3 Порівняння посилань URI
Посилання URI, які ідентифікують простори імен, порівнюються, при визначенні ім'я на належність до даного простору імен, і чи відносяться два імені до одного простору імен.
Визначення
Два посилання URI розглядаються як рядки, і вважаються
ідентичними
тільки в тому випадку, якщо ці рядки ідентичні,
тобто, вони мають однакову послідовність символів.
Порівняння відбувається з урахуванням регістру символів, та без виконаного або виконаного %-маскування.
Наслідком цього є те, що посилання URI , які не є ідентичними в цьому сенсі, можуть бути віднесені до одного і того ж ресурсу.
Приклади включають в себе посилання URI, які відрізняються тільки регістром, %-маскуванням або коли посилання існують в зовнішніх об'єктах та які мають різні базові URI (але майте на увазі, що відносні URI є застарілими, як імена простору імен).
У оголошенні простору імен, посилання URI є
нормалізованим значенням
атрибуту,
тому заміна символу XML та посилань на об'єкти були вже виконані, перед всіма порівняннями.
Приклади:
Посилання URI,
які наведені нижче, усі різні для ідентифікації просторів імен,
оскільки вони відрізняються регістром:
Наступні посилання URI, також усі відрізняються для ідентифікації просторів імен:
Через ризик плутанини між URI, які можуть бути еквівалентними після разіменування, використання
%-екранованих символів у іменах простору імен, настійливо не рекомендується.
3 Оголошення Просторів імен
Визначення
: Простір імен
(або точніше, обов'язковий простір імен)
оголошується
за допомогою сімейства зарезервованих атрибутів.

Таке ім'я атрибуту повинно бути або
xmlns
або
починатись з
xmlns:
Ці атрибути, як будь-які інші атрибути XML, можуть бути представлені безпосередньо або
за замовчуванням
Імена атрибутів для оголошення простору імен
[1]
NSAttName
::=
PrefixedAttName
DefaultAttName
[2]
PrefixedAttName
::=
'xmlns:'
NCName
[NSC: Зарезервовані префікси та імена простору імен]
[3]
DefaultAttName
::=
'xmlns'
[4]
NCName
::=
Name
- (
Char
* ':'
Char
*)
/* XML
Ім'я
, за вирахуванням ":" */
Нормалізоване значення
атрибуту
ПОВИННО
бути
або посиланням URI —
ім'я простору імен
яке визначає простір імен — або пустим рядком.
Для того щоб ім'я простору імен, слугувало за прямим своїм призначенням, йому
СЛІД
мати характеристики унікальності та постійності.
Це не основна мета, яка буде безпосередньо використовуватися для пошуку схеми (якщо, така схема існує).
Uniform Resource Names
[RFC2141]
це приклад синтаксису, який було розроблено для розуміння вказаних цілей.
Однак, слід зазначити що, щоб досягти аналогічних цілей, можна керувати таким самим чином звичайними URL.
Визначення
: Якщо ім'я атрибуту відповідає
PrefixedAttName
тоді
NCName
дає
префікс простору імен
який використовується для зв'язування імен елементів та атрибутів, з вказаним в значенні атрибуту
ім'ям простору імен
в межах елементу, де це оголошення було подано.
Визначення
: Якщо ім'я атрибуту відповідає
DefaultAttName
тоді
ім'я простору імен
у значенні атрибуту
в області бачення елементу, де це оголошення було подано, стає
простором імен за замовчуванням
.]
Простори імен за замовчуванням та перевизначення оголошень обговорюються у
6 Застосування простору імен до елементів та атрибутів
Приклад оголошення простору імен, який пов'язує
edi
(префікс простору імен) із ім'ям простору імен



Обмеження для простору імен: Захищені префікси і назви просторів імен
Префікс
xml
за визначенням, пов'язаний з ім'ям простору імен
. Він
МОЖЕ
але не обов'язково, бути оголошений та
НЕ ПОВИНЕН
бути пов'язаним із
будь-яким іншим ім'ям простору імен. Інші префікси
НЕ ПОВИННІ
бути пов'язаними з цим ім'ям простору імен, та він
НЕ ПОВИНЕН
бути оголошеним, як простір імен за замовченням.
Префікс
xmlns
використовується тільки для оголошення зв'язку з простором імен, та за визначенням, пов'язаний з ім'ям простору імен
. Він
НЕ ПОВИНЕН
бути оголошеним.
Інші префікси
НЕ ПОВИННІ
бути пов'язаними з цим ім'ям простору імен, та він
НЕ ПОВИНЕН
бути оголошеним, як простір імен за замовченням.

Імена елементів
НЕ ПОВИННІ
мати префікс
xmlns
Усі інші префікси, що починаються з послідовності трьох літер x, m, l, в будь-яких комбінаціях регістру, зарезервовано.
Це означає, що:
користувачам
НЕ СЛІД
використовувати їх, за винятком, випадків визначених у подальших специфікаціях
процесори
НЕ ПОВИННІ
розглядати їх як фатальні помилки.
Хоча самі вони не зарезервовані, недоцільно використовувати імена префіксів,
LocalPart яких починається з літер x, m, l, у будь-яких комбінаціях регістру, оскільки ці імена будуть зарезервовані, якщо використовувати їх без префікса.
4 Повні імена
У документах XML,
які відповідають даній специфікації, деякі імена
(конструкції, які відповідають нетермінальному
Name
ПОВИННІ
бути
передані як
повні імена
визначаються наступним чином:
Повне ім'я
[7]
QName
::=
PrefixedName
UnprefixedName
[8]
PrefixedName
::=
Prefix
':'
LocalPart
[9]
UnprefixedName
::=
LocalPart
[10]
Prefix
::=
NCName
[11]
LocalPart
::=
NCName
The
Prefix
визначає з частини повного ім'я
префікс простору імен
, і
ПОВИНЕН
бути пов'язаний з посиланням URI простору імен
зазначеної в
оголошенні простору імен
Визначення
LocalPart
визначає
локальну частину
повного ім'я.]
Відзначте, що префікс використовується
тільки
в якості заповнювача для імені простору імен.
Програмам
СЛІД
використовувати ім'я простору імен, а не префікс, при побудові імен,
область дії яких виходить за межі первісного документа.
5 Використання повних імен
У документах XML, які відповідають даній специфікації,
імена
елементів вказані як
повні імена
, а саме:
Імена елементів
[12]
STag
::=
'<'
QName
Attribute
)*
? '>'
[NSC: Декларований Префікс]
[13]
ETag
::=
'QName
? '>'
[NSC: Декларований Префікс]
[14]
EmptyElemTag
::=
'<'
QName
Attribute
)*
? '/>'
[NSC: Декларований Префікс]
Приклад використання повного ім'я, що виступає в якості імені елементу:

32.18
Атрибути або
оголошують простір імен
або їх імена зазначені, як
повні імена
Атрибут
[15]
Attribute
::=
NSAttName
Eq
AttValue
QName
Eq
AttValue
[NSC: Декларований Префікс]
[NSC: No Prefix Undeclaring]
[NSC: Унікальні Атрибути]
Приклад використання повного ім'я, в якості імені атрибута:


Baby food

Обмеження простору імен: Декларований Префікс
Префікс простору імен, за винятком якщо він
xml
або
xmlns
ПОВИНЕН
бути оголошеним у
оголошенні простору імен
атрибута, у будь-якому початковому тегу елемента, де використовується префікс або в тому елементі, який є його предком (тобто, елемент у
вмісті
якого, діє префіксна розмітка).
Обмеження простору імен: No Prefix Undeclaring
оголошенні простору імен
для
префіксу
(тобто,
де
NSAttName
PrefixedAttName
),
значення атрибуту
НЕ ПОВИННО
бути порожнім.
Це обмеження може призвести до операційних труднощів, у разі, де атрибут оголошення простору імен забезпечено, не безпосередньо у
об'єкті документу
XML, а за допомогою атрибуту за замовчуванням, який було оголошено у зовнішньому об'єкті. Такі оголошення не можуть бути зчитаними програмним забезпеченням, яке ґрунтується на неперевіряючому процесорі XML.
Багато програм XML, імовірно, в тому числі чутливих до простору імен, не в стані вимагати перевіряючих процесорів.
Якщо вимагається коректна робота з такими програмами
оголошення простору імен
ПОВИННО
бути забезпечене безпосередньо, або через атрибути за замовчуванням, які оголошені у
внутрішній підмножині DTD
Назви елементів та
назви
атрибутів також наведені в якості повних імен, коли вони оголошуються у
DTD
Повні Імена у Оголошеннях
[16]
doctypedecl
::=
'QName
ExternalID
)?
? ('['
markupdecl
PEReference
)*
']'
?)? '>'
[17]
elementdecl
::=
'QName
contentspec
? '>'
[18]
cp
::=
QName
choice
seq
('?' | '*' | '+')?
[19]
Mixed
::=
'('
'#PCDATA'
'|'
QName
)*
')*'
| '('
? '#PCDATA'
? ')'
[20]
AttlistDecl
::=
'QName
AttDef
? '>'
[21]
AttDef
::=
QName
NSAttName
AttType
DefaultDecl
Зверніть увагу, що перевірка, яку засновано на DTD, не є простором імен у наступному сенсі:
DTD обмежує елементи та атрибути, які можуть з'явитися у документі в якості своїх імен, що не інтерпретуються,
а не за парами (назва простору імен, локальне ім'я).
Щоб перевірити документ, який використовує простори імен у відношенні до DTD,
необхідно, щоб префікси, використані в DTD, були такі ж, як і в документі.
Однак, DTD може опосередковано обмежувати простори імен, що використовуються у діючому документі, шляхом надання
#FIXED
значень для атрибутів, які оголошують простори імен.
6 Застосування просторів імен для елементів та атрибутів
6.1 Область дії Просторів імен
Область дії оголошення простору імен при оголошенні префіксу полягає від початку відкриваючого тегу, в якому вона
з'являється, до кінця відповідного закриваючого тегу, за винятком області дій
будь-яких внутрішніх оголошень з такою ж частиною NSAttName.
У випадку порожнього тегу, областю є сам тег.
Таке оголошення простору імен поширюється до усіх імен елементів та атрибутів
у його області дії, коли їх префікси відповідають тому, який визначено у оголошенні.
Розширене ім'я
яке відповідає префіксному елементу або імені атрибуту має посилання
URI,
у якому
префікс
відповідає його
назві простору імен
локальна частина
- його
локальному імені

Frobnostication
Moved to
here.


Декілька префіксів простору імен можуть бути оголошені, як атрибути одного елемента, наприклад:


xmlns:isbn='urn:ISBN:0-395-36341-6'>
Cheaper by the Dozen
1568491379

6.2 Простір імен за замовчуванням
Область дії оголошення
простору імен за замовчуванням
поширюється від початку відкриваючого тегу, у якому він з'являється, і до кінця відповідного закриваючого тегу,
за винятком області дій будь-яких внутрішніх оголошень простору імен за замовченням.
У випадку порожнього тегу, областю є сам тег.
Оголошення простору імен поширюється до усіх безпрефіксних імен елементів у його області дії.
Оголошення просторів імен за замовчуванням не відносяться безпосередньо до імен атрибутів;
інтерпретація безпрефіксних атрибутів визначається елементом, в якому вони виникають.
Якщо в області дії існує оголошення простору імен за замовчуванням,
розширене ім'я
відповідного безпрефіксного імені елемента, має посилання
URI
простору імен за замовчуванням
що відповідає
назві простору імен
Якщо в області дії немає жодного оголошення простору імен за замовчуванням, значення для назви простору імен буде відсутнє.
Значення для назви простору імен безпрефіксного імені атрибута, завжди буде відсутнє.
У всіх випадках
локальне ім'я
, це є
локальна частина
(яка, звичайно ж, така сама як і безпрефіксне ім'я).



Frobnostication

Moved to
here.





xmlns:isbn='urn:ISBN:0-395-36341-6'>
Cheaper by the Dozen
1568491379

Розширений приклад, який показує область дій простору імен:


xmlns:isbn='urn:ISBN:0-395-36341-6'>
Cheaper by the Dozen
1568491379



This is a funny book!




Значення атрибуту у оголошенні простору імен за замовчуванням
МОЖЕ
бути порожнім.
Це буде мати такий самий ефект, як би в межах дії цього оголошення, простору імен за замовчуванням, взагалі не було оголошено.











NameOriginDescription
HuntsmanBath, UK
BitterFuggles
Wonderful hop, light alcohol, good summer beer
Fragile; excessive variance pub to pub



6.3 Унікальність атрибутів
Обмеження простору імен: Унікальні Атрибути
У документах XML відповідно до цієї специфікації, жоден тег не може містити два атрибути які:
мають ідентичні імена, або
мають повні імена з однаковою
локальною частиною
та із
префіксами
які пов'язані з
ідентичними
назвами просторів імен
Це обмеження еквівалентно до необхідності, що жоден елемент не може мати два атрибути з однаковим
розширеним ім'ям
Наприклад, кожен з
bad
тегів порожнього елемента, є невірним:

xmlns:n2="http://www.w3.org" >



Однак, кожен з наступних тегів вірний, тому що простір імен за замовчуванням, не поширюється на імена атрибутів:

xmlns="http://www.w3.org" >



7 Відповідність документів
Ця специфікація відноситься до документів XML 1.0. Щоб відповідати даній специфікації, документ
ПОВИНЕН
бути правильно сформований у відповідності до специфікації
XML 1.0
[XML]
У документах XML, які відповідають цій специфікації, імена елементів та атрибутів
ПОВИННІ
відповідати конструкції для
QName
та
ПОВИННІ
задовольняти "Обмеженням простору імен". Щоб відповідати конструкції
XML для
Name
усі інші лексеми у документі
які
НЕОБХІДНІ
для забезпечення коректності XML 1.0,
ПОВИННІ
відповідати конструкції цієї специфікації для
NCName
Визначення
Документ стає
коректно-сформованим, по відношенню до простору імен
якщо він відповідає даній специфікації.
З цього випливає, що в коректно-сформованому, по відношенню до простору імен, документі:
Усі імена елементів та атрибутів містять у собі одну двокрапку, або не містять її взагалі;
Імена сутностей, інструкції з обробки цілей або імена позначень, не містять жодної двокрапки.
Окрім того, коректно-сформований документ, по відношенню до простору імен, також може бути дійсним.
Визначення
коректно-сформований документ, по відношенню до простору імен, буде
валідним
якщо він валідний у відповідності до специфікації XML 1.0, та усі лексеми,
окрім імен елементів та атрибутів які
НЕОБХІДНІ
для забезпечення коректності XML 1.0, відповідають конструкції цієї специфікації для
NCName
, щоб відповідати конструкції XML для
Name
З цього випливає, що у дійсному документі, по відношенню до простору імен:
Жоден з атрибутів із оголошеним типом
ID
IDREF(S)
ENTITY(IES)
, або
NOTATION
не містить двокрапок.
8 Відповідність процесорів
Для того, щоб відповідати цій специфікації, процесор
ПОВИНЕН
повідомляти про порушення у коректно-сформованому просторі імен, за винятком, коли
немає
НЕОБХІДНОСТІ
перевіряти,
чи є назви просторів імен - посиланнями URI
[RFC3986]
Визначення
Процесор перевірки коректності XML, який відповідає до цієї специфікації, є
перевіркою коректності простору імен
, якщо він, окрім того, сповіщає про порушення коректності простору імен.
Нормативні Посилання
Ключові слова
RFC 2119: Ключові слова для використання в документах RFC, які зазначають рівні вимог
С. Бреднер (S. Bradner), вид.
IETF (Internet Engineering Task Force),
березень 1997.
Доступно за адресою:
RFC2141
RFC 2141: URN Syntax
Р. Мотс (R. Moats), вид.
IETF (Internet Engineering Task Force),
травень 1997.
Доступно за адресою:
RFC3986
RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
Т. Бернерс-Лі (T. Berners-Lee), Р. Філдинг (R. Fielding), та Л. Месінтер (L. Masinter), ред.
IETF (Internet Engineering Task Force),
Січень 2005.
Доступно за адресою:
RFC3629
RFC 3629: UTF-8, перетворення формату ISO 10646
Ф. Йоргі (F. Yergeau), вид.
IETF (Internet Engineering Task Force),
листопад 2003.
Доступно за адресою: http://www.rfc-editor.org/rfc/rfc3629.txt
XML
Розширювана Мова Розмітки
(XML) 1.0
, Тім Брей (Tim Bray), Джин Паолі (Jean
Paoli), М. Сперберг-МакКуін (C. M. Sperberg-McQueen), Єва Мейлер (Eve Maler), та Ф. Йоргі (F. Yergeau) ред.
W3C (World Wide Web Consortium).
Доступно за адресою:
B Інші посилання (Ненормативне)
Виправлення 1.0
Простір імен у XML. Виправлення
W3C (World Wide Web Consortium).
Доступно за адресою:
Виправлення 1.0 (друга редакція)
Простір імен у XML
(Друге Видання). Виправлення
W3C (World Wide Web Consortium).
Доступно за адресою:
Несхвалення відносних посилань URI
Результати пленарного голосування W3C XML про відносні посилання URI у оголошенні простору імен 3-17 липня 2000
Дейв Холландер (Dave Hollander) та
М. Сперберг-МакКуін (C. M. Sperberg-McQueen),
6 вересня 2000 року.
Доступно за адресою:
C Внутрішня структура просторів імен XML (Ненормативне)
Цей додаток було видалено.
D Зміни, починаючи з версії 1.0 (Ненормативне)
Ця версія включає в себе виправлення станом на 20 липня 2009 року
[Виправлення 1.0]
[Виправлення 1.0 (друга редакція)]
Є кілька змін редакційного характеру, включаючи декілька змін та доповнень до термінології призначеної для отримання більшої узгодженості.
Було видалено ненормативний додаток "Внутрішня структура просторів імен у XML".
BNF (Backus–Naur Form) була скоригована для з'єднання належним чином з усіма виданнями XML 1.0, в тому числі п'ятого видання.
E Подяки (Ненормативне)
Ця робота відображає внесок від дуже великої кількості людей, особливо хочеться відзначити учасників
World Wide Web Consortium XML Working Group та Special Interest Group,
й учасників з W3C Metadata Activity. Особливо цінним є внесок Чарльза Френкстона з Microsoft.
F Конструкції, які більше не використовуються (Ненормативне)
Наступні дві конструкції є модифікованими версіями тих, які були представлені в перших двох виданнях цієї специфікації. Вони більше не використовуються, а зберігаються тут, щоб задовольнити перехресні посилання на недатовані версії даної специфікації.
Оскільки конструкція XML 1.0
Letter
, яка спочатку використовувалася у визначенні
NCNameStartChar
, більше не є коректною основою для визначення імен починаючи з п'ятого видання XML 1.0, тому конструкцію
NCNameStartChar
було змінено, щоб надати правильні результати для будь-якого видання XML, визначаючи
NCNameStartChar
з точки зору
NCName
[5]
NCNameChar
::=
NameChar
- ':'
/*
NameChar
XML, за виключенням ":" */
[6]
NCNameStartChar
::=
NCName
- (
Char
Char
Char
* )
/* Перший символ
NCName
*/
Примітка:
Конструкція
NC-NCNameStartChar
використовує у своїх інтересах той факт, що
односимвольний NCName є обов'язково NCNameStartChar, та працює шляхом вирахування з набору NCNames
набір усіх рядків, які складаються з двох або більше символів, залишаючи лише
NCNames, довжина якого складає один символ.