Ово је српски превод документа под насловом: 'XHTML 1.0: The Extensible HyperText Markup Language (Second Edition)'. Оригинални и нормативни текст документа налази се на адреси http://www.w3.org/TR/xhtml1/. Све напомене у тексту односе се на оригинални документ, не на овај превод. Сва права задржава W3C.
Превод на српски: Лука Станисављевић, контакт: luka [на] cincplug [тачка] com. Словне и језичке грешке и недоследности у преводу су могуће.
ћирилица - latinica
Молимо погледајте ерату везану за овај документ, она можда укључује и исправке нормативног типа. Погледајте и преводе.
Овај документ је расположив и у следећим не-нормативним форматима: Вишеделна XHTML датотека, PostScript верзија , PDF верзија, ZIP архива и Gzip'd TAR архива.
Copyright ©2002 W3C® (MIT, INRIA, Keio). Сва права су задржана. Примењују се правила W3C о одговорности, робним знаковима, употреби докумената и софтверским дозволама.
Ова спецификација дефинише друго издање XHTML 1.0, реформулације HTML 4 као XML 1.0 апликације, и три ДТД који одговарају онима дефинисаним у HTML 4. Семантика елемената и њихових атрибута дефинисани су у W3C препоруци за HTML 4. Ова семантика чини темељ будуће растегљивости XHTML-а. Компатибилност са постојећим HTML корисничким агентима је могућа ако се прати неколико мањих смерница.
Овај део описује статус овог документа и време његовог објављивања. Други документи могу да дођу на његово место. Најновији статус овог низа докумената одржава се на W3C.
Овај документ је друго издање спецификације XHTML 1.0 које укључује и промене у ерати од 1. августа 2002. Разлике између ове верзије и претходне Препоруке илустроване су у верзији са означеним разликама.
Ово друго издање није нова верзија XHTML 1.0 (прво издање је из 26. јануара 2000.). Измене у овом документу одражавају исправке примењене као плод коментара од стране заједнице и као резултат текућег рада Радне групе за HTML. Нема суштинских измена у овом документу - само су обједињене различите ерате.
Листа познатих грешака у овој спецификацији расположива је на http://www.w3.org/2002/08/REC-xhtml1-20020801-errata.
Молимо пријавите грешке у овом документу на www-html-editor@w3.org (архива), односно на адресу: luka [на] cincplug [тачка] com (ако уочите грешку у овом српском преводу). Јавна расправа о HTML питањима одвија се на мејлинг листи www-html@w3.org (архива).
Овај документ је произведен као део W3C HTML делатности. Циљеви Радне групе за HTML (само за чланове) објашњени су у Статуту Радне групе за HTML.
У време објављивања, радна група верује да није било патената релевантних за ову спецификацију. Тренутна листа патената релевантних за ову спецификацију може се наћи на страни за патенте Радне групе.
Листа тренутних препорука W3C и осталих техничких докумената може се наћи на http://www.w3.org/TR.
lang
и xml:lang
атрибутиОво поглавље је информативно.
XHTML је породица садашњих и будућих типова и модула докумената који репродукују, разврставају и проширују HTML 4 [HTML4]. XHTML породица типова докумената се заснива на XML-у, и у крајњој линији су и замишљени да раде у споју са корисничким агентима који се заснивају на XML-у. О детаљима везаним за ову породицу и њен развој расправља се подробније на [XHTMLMOD].
XHTML 1.0 (ова спецификација) је први тип документа у XHTML породици. То је реформулација три HTML 4 типа документа у виду апликација XML 1.0 [XML]. Намера је да се користи као језик за садржај који задовољава стандарде XML, а уз придржавање неколико једноставних смерница које следе, ради и на корисничким агентима који задовољавају HTML 4. Они који пребаце садржај у XHTML 1.0 схватиће следеће предности:
XHTML породица је следећи корак у развоју Интернета. Преласком на XHTML данас, они који раде на садржају могу да уђу у свет XML-а са свим његовим садашњим предностима, а да и даље остану уверени да ће њихов садржај остати компатибилан уназад и унапред.
HTML 4 [HTML4] је SGML (Стандардни уопштени знаковни језик) апликација која задовољава Међународни стандард ISO 8879, и широко је прихваћен као стандардни језик за објављивање на Светској мрежи.
SGML је језик који описује знаковне језике, посебно оне који се користе у електронској размени докумената, управљању документима и њиховом објављивању. HTML је пример језика дефинисаног у SGML-у.
SGML је ту од средине 80-их година прошлог века и остао је прилично постојан. Та постојаност проистиче добрим делом из чињенице да је овај језик богат својствима и флексибилан. Та флексибилност, наравно, има своју цену, а та цена је у нивоу сложености који је спречио његово прихватање у мноштву окружења, укључујући Светску Мрежу.
Како је првобитно замишљен, HTML је требало да буде језик за размену научних и других техничких докумената, подесан да га користе они који нису стручњаци за израду докумената. HTML се опходио према проблему сложености SGML-а одређујући мали низ структурних и семантичких етикета погодних да се створе релативно једноставни документи. Поред поједностављивања структуре докумената, HTML је додао подршку за хипертекст. Мултимедијалне могућности су додате касније.
За заиста кратко време, HTML је постао широко популаран и брзо је прерастао своју првобитну намену. Од зачетка HTML-а, брзо су уведени нови елементи за употребу унутар HTML-а (као стандард) и за прилагођавање HTML-а вертикалним, високо специјализованим тржиштима. Ово преобиље нових елемената довело је до проблема са могућношћу докумената да раде једни с другима на различитим платформама.
XML™ је скраћеница за Отворени знаковни језик [XML].
XML је замишљен као начин да се поново достигне моћ и флексибилност SGML-а а да се избегне његова сложеност. Премда је он ограничена форма SGML-а, XML и даље задржава највећи део моћи и богатства SGML-а и све његове уобичајено коришћене могућности.
Задржавајући та корисна својства, XML уклања многа сложенија својства SGML-а која чине стварање и развој погодног софтвера како тешким тако и скупим.
Предности преласка на XHTML 1.0 су описане раније. Уопштено, неке од предности преласка на XHTML јесу:
Ово поглавље је нормативно.
Следећи изрази користе се у овој спецификацији. Ови изрази проширују дефиниције из [RFC2119], засноване на сличним дефиницијама у ISO/IEC 9945-1:1990 [POSIX.1]:
Ово поглавље је нормативно.
Ова верзија XHTML-а даје дефиницију Строго задовољавајућих XHTML 1.0 докумената, који су ограничени на атрибуте и елементе из именског простора XML и XHTML 1.0. Види Поглавље 3.1.2 ради информације о употреби XHTML-а са другим именским просторима, на пример како укључити мета-податке изражене у RDF формату у XHTML документе.
Строго прихватљиви XHTML документ је XML документ који изискује једино својства описана као обавезна у овој спецификацији. Такав документ мора да поштује сва следећа мерила:
Мора да поштује ограничења изражена у једној од ДТД које се могу наћи међу ДТД и у Додатку B.
Коренски елемент документа мора бити html
.
Коренски елемент документа мора да садржи xmlns
декларацију за именски простор XHTML [XMLNS]. Именски простор за XHTML је дефинисан као: http://www.w3.org/1999/xhtml
. Пример коренског елемента могао би да изгледа овако:
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sr" lang="sr">
Мора да постоји DOCTYPE декларација (декларација типа документа) у документу пре коренског елемента. Јавни идентификатор укључен у DOCTYPE декларацију мора да указује на једну од три ДТД које се могу наћи у ДТД уз употребу одговарајућег Формалног Јавног Идентификатора. Системски идентификатор може се променити да одрази локалне системске конвенције.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
Подниз ДТД не сме се користити да би се превазишли параметарски ентитети у ДТД.
XML декларација није обавезна у свим XML документима; наравно, ауторима XHTML докумената се срдачно препоручује да користе XML декларације у свим својим документима. Таква декларација је обавезна кад је кодирање карактера у документу другачије од стандардног UTF-8 или UTF-16 и када кодирање није одређено протоколом вишег нивоа. Овде је пример XHTML документа. У овом примеру, XML декларација је укључена.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sr" lang="sr"> <head> <title>Виртуелна библиотека</title> </head> <body> <p>Пресељена на <a href="http://example.org/">example.org</a>.</p> </body> </html>
Именски простор XHTML може се користити са осталим именским просторима XML namespaces as per [XMLNS], премда такви документи нису Строго задовољавајући XHTML 1.0 документи по горњој дефиницији. W3C ради на томе да допре до начина да се одреди прихватљивост докумената који укључују више именских простора. На пример, види [XHTML+MathML].
Следећи пример показује начин на који XHTML 1.0 може да се користи у споју са Препоруком за MathML:
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sr" lang="sr"> <head> <title>Пример из рачуна</title> </head> <body> <p>Следе MathML знаци:</p> <math xmlns="http://www.w3.org/1998/Math/MathML"> <apply> <log/> <logbase> <cn> 3 </cn> </logbase> <ci> x </ci> </apply> </math> </body> </html>
Следећи пример показује начин на који XHTML 1.0 знаци могу да се укључе у други именски простор XML-а:
<?xml version="1.0" encoding="UTF-8"?> <!-- у почетку, стандардни именски простор је "books" --> <book xmlns='urn:loc.gov:books' xmlns:isbn='urn:ISBN:0-395-36341-6' xml:lang="sr" lang="sr"> <title>Јефтиније за туце</title> <isbn:number>1568491379</isbn:number> <notes> <!-- чини HTML стандардним именским простором за хипертекстуални коментар --> <p xmlns='http://www.w3.org/1999/xhtml'> Ово се може наћи и <a href="http://www.w3.org/">на мрежи</a>. </p> </notes> </book>
Прихватљиви кориснички агент мора да поштује сва следећа мерила:
ID
(нпр. id
атрибут већине XHTML елемената) као фрагментске идентификаторе.Проредом се рукује према следећим правилима. Следећи знакови су дефинисани као [XML] знакови за проред:
XML процесор нормализује различите знаке за крај реда између различитих система у јединствени знак за НОВИ РЕД, који се предаје апликацији..
Кориснички агент мора да користи дефиницију из CSS-а за обраду знакова за проред [CSS2]. Имајте на уму да препорука о CSS2 не обрађује експлицитно тему руковања проредом у нелатиничним знаковним низовима. Ово ће се обрадити у будућој верзији CSS, а тада ће се овај указ освежити.
Имајте на уму да би, ради стварања Канонског XHTML документа, горе наведена правила морала да се поштују и да и правила у [XMLC14N] морају да се примене у документу.
Ово поглавље је информативно.
Због чињенице да је XHTML једна XML апликација, неке навике које су биле савршено легалне у HTML 4 [HTML4], који се заснивао на SGML-у, сада морају да се мењају.
Ваљана обликованост је нови концепт уведен од стране [XML]-а. У суштини, то значи да сви елементи морају или да имају затварајуће етикете или да буду написани у посебном облику (као што је доле описано), и да сви елементи морају да се уклопе како треба.
Премда је преклапање илегално и у SGML-у, постојећи браузери га махом допуштају.
ПРАВИЛНО: уклопљени елементи.
<p>ово је курзивом написано <em>поглавље</em>.</p>
НЕПРАВИЛНО: преклопљени елементи
<p>ово је курзивом написано <em>поглавље.</p></em>
XHTML документи морају да користе мала слова за сва имена HTML елемената и атрибута. Ова разлика је неопходна јер је XML прави разлику између великих и малих слова, нпр. <li> и <LI> су различите етикете.
У HTML 4 који се заснивао на SGML-у, код неких елемената било је дозвољено да се прескочи завршна етикета; елементи који би следили имплицирали би њихово затварање. XML не дозвољава да се завршне етикете прескоче. Сви елементи сем оних који су у ДТД декларисани као EMPTY
, морају да имају завршну етикету. Елементи који су у ДТД декларисани као EMPTY
могу да имају завршну етикету или могу да користе скраћеницу за празне елементе (види Празне елементе).
ПРАВИЛНО: завршени елементи
<p>ово је поглавље.</p><p>ово је друго поглавље.</p>
НЕПРАВИЛНО: незавршени елементи
<p>ово је поглавље.<p>ово је друго поглавље.
Све вредности атрибута морају бити под наводницима, чак и оне које су нумеричке.
ПРАВИЛНО: вредности атрибута под наводницима
<td rowspan="3">
НЕПРАВИЛНО: вредности атрибута нису под наводницима
<td rowspan=3>
XML не подржава минимизацију атрибута. Парови вредности атрибута морају се написати потпуно. Имена атрибута као што су compact
и checked
не могу да се појављују у елементима без одређене вредности.
ПРАВИЛНО: атрибути нису минимизовани
<dl compact="compact">
НЕПРАВИЛНО: атрибути су минимизовани
<dl compact>
Празни елементи морају или да имају завршну етикету или или почетна етикета мора да се заврши са />
. На пример, <br/>
или <hr></hr>
. Види Смернице за компатибилност са HTML-ом ради информације о начинима да се обезбеди да ово буде компатибилно са старијим HTML 4 корисничким агентима.
ПРАВИЛНО: завршени празни елементи
<br/><hr/>
НЕПРАВИЛНО: незавршени празни елементи
<br><hr>
Кад кориснички агенти обрађују атрибуте, они то чине у складу са Поглављем 3.3.3 у [XML]:
У XHTML-у, script и style елементи су декларисани да имају #PCDATA
садржај. Као резултат, <
и &
ће бити третирани као почетак ознаке, а ентитети као што су <
и &
ће бити препознати као укази на ентитете од стране XML процесора за <
и &
, зависно од случаја. Убацивање садржаја script или style елемената у део означен као CDATA
, избегавамо ширење ових ентитета.
<script type="text/javascript"> <![CDATA[ ... садржај скрипте који није избегнут ... ]]> </script>
CDATA
делове распознаје XML процесор и појављују се као спојеви у Document Object Model, види Поглавље 1.3 Препоруке DOM ниво 1 [DOM].
Друго решење је да се користе спољни script и style документи.
SGML даје оном ко пише ДТД могућност да искључи неке елементе као садржај елемента. Такве забране (зване "искључења") нису могуће у XML-у.
На пример, Строга ДТД у HTML 4 забрањује уклапање 'a
' елемента унутар другог 'a
' елемента до ма какве даље дубине. Немогуће је срочити такве забране у XML-у. Без обзира што такве забране не могу да се дефинишу у ДТД, неке елементе не би требало уклапати. Листа таквих елемената и елемената који не треба да се уклапају унутар њих налази се у нормативним Забранама елемената .
HTML 4 је дефинисао name
атрибут за елементе a
, applet
, form
, frame
, iframe
, img
и map
. HTML 4 је такође увео id
атрибут. Оба ова атрибута замишљена су да се користе као фрагментски идентификатори.
У XML-у, фрагментски идентификатори су типа ID
, у може да постоји само један атрибут типа ID
по елементу. Зато, у XHTML 1.0, id
атрибут се дефинише као атрибут типа ID
. Да би се обезбедило да XHTML 1.0 документи буду ваљано устројени XML документи, XHTML 1.0 документи МОРАЈУ да користе id
атрибут кад дефинишу фрагментске идентификаторе у горе набројаним елементима. Види Смернице за компатибилност са HTML-ом ради информације како обезбедити да ово буде компатибилно уназад кад се XHTML документи сервирају као тип text/html
.
Имајте на уму да се, у XHTML 1.0, name
атрибут ових елемената формално гледа као застарео, и да ће бити уклоњен из наредне верзије XHTML-а.
И HTML 4 и XHTML имају неке атрибуте са пре-дефинисаним и ограниченим низовима вредности (нпр. type
атрибут елемента input
). У SGML-у и XML-у, они се зову набројани атрибути. Под HTML 4, тумачење ових вредности није водило рачуна о великим и малим словима, па је вредност TEXT
била истоветна вредности text
. Под XML-ом, тумачење ових вредности води рачуна о великим и малим словима, и у XHTML 1 су све ове вредности дефинисане малим словима.
И SGML и XML дозвољавају указе на знакове употребом хексадецималних вредности. У SGML -у, за ове указе могло се користити било &#Xnn; било &#xnn;. У XML документима, морате користити верзију писану малим словима (нпр. &#xnn;)
Ово поглавље је нормативно.
Премда нема обавезе да XHTML 1.0 документи буду компатибилни са постојећим корисничким агентима, у пракси је то лако постићи. Смернице за стварање компатибилних докумената могу се наћи у Додатку C.
XHTML документи који следе смернице постављене у Додатку C, "Смернице за компатибилност са HTML-ом", могу се насловити као Тип везе са Интернетом "text/html" [RFC2854], пошто су компатибилни са већином HTML браузера. Ти документи и било који други документи који задовољавају ову спецификацију, могу да се наслове и као Тип везе са Интернетом "application/xhtml+xml", као што је дефинисано у [RFC3236]. За даљу информацију о коришћењу Типова везе у XHTML-у, види информативну белешку [XHTMLMIME].
Овај додатак је нормативан.
Ове ДТД и низови ентитета обликују нормативни део ове спецификације. Целокупни низ ДТД датотека заједно са XML декларацијом и Отвореним Каталогом SGML ујључен је у zip датотеку и у gzip'd tar датотеку за ову спецификацију. Корисници који траже локалне копије ДТД с којима би радили требало би да их сниме с мреже и да користе те архиве радије него да користе одређене ДТД на које је доле указано.
Ове ДТД су приближне онима у HTML 4. W3C препоручује да користите ауторитативне верзије ових DTDs на њиховим СИСТЕМСКИМ идентификаторима кад проверавате садржај. Ако вам треба да користите ове ДТД локално, треба да снимите с мреже једну од архива ове верзије. Ради потпуности, нормативне верзије ДТД укључене су овде:
Датотека DTD/xhtml1-strict.dtd је нормативни део ове спецификације. Садржај ове датотеке са коментарима расположив је у овом одвојеном поглављу ради потпуности.
Датотека DTD/xhtml1-transitional.dtd је нормативни део ове спецификације. Садржај ове датотеке са коментарима расположив је у овом одвојеном поглављу ради потпуности.
Датотека DTD/xhtml1-frameset.dtd је нормативни део ове спецификације. Садржај ове датотеке са коментарима расположив је у овом одвојеном поглављу ради потпуности.
XHTML низови ентитета су исти као и за HTML 4, али су преиначени да би били валидне XML 1.0 декларације ентитета. Имајте на уму да је ентитет за знак Евро валуте (€
или €
или €
) дефинисан као део посебних знакова.
Датотека DTD/xhtml-lat1.ent је нормативни део ове спецификације. Садржај ове датотеке са коментарима расположив је у овом одвојеном поглављу ради потпуности.
Датотека DTD/xhtml-special.ent је нормативни део ове спецификације. Садржај ове датотеке са коментарима расположив је у овом одвојеном поглављу ради потпуности.
Датотека DTD/xhtml-symbol.ent је нормативни део ове спецификације. Садржај ове датотеке са коментарима расположив је у овом одвојеном поглављу ради потпуности.
Овај додатак је нормативан.
За следеће елементе важе забране везане за елементе које смеју да садрже (види SGML искључења). Оваква забрана важи за све дубине уклапања, тј. садржи све даље елементе.
a
a
елементе.pre
img
, object
, big
, small
, sub
или sup
елементе.button
input
, select
, textarea
, label
, button
, form
, fieldset
, iframe
или isindex
елементе.label
label
елементе.form
form
елементе.Овај додатак је информативан.
Ово поглавље сабира дизајнерске смернице за ауторе који желе да се њихови XHTML документи приказују правилно помоћу HTML корисничких агената. Имајте на уму да ова спецификација не одређује како кориснички агенти који одговарају HTML-у треба да обрађују HTML документе. Нити одређује значење Типа везе с Интернетом text/html
. За ове дефиниције, види [HTML4] и [RFC2854] зависно од случаја.
Водите рачуна да се инструкције за обраду приказују на неким корисничким агентима. Такође, неки кориснички агенти тумаче XML декларацију као да значи да је документ непознатог типа XML уместо да је HTML, и да зато можда неће приказати документ како се очекује. Ради компатибилности са овим типовима старијих браузера, можда би сте хтели да избегнете коришћење инструкција за обраду и XML декларације. Запамтите, наравно, да кад XML декларација није укључена у документ, тај документ може да користи само стандардно кодирање знакова: UTF-8 или UTF-16.
Укључите проред пре завршног /
и >
у празним елементима, нпр. <br />
, <hr />
и <img src="karen.jpg" alt="Karen" />
. Такође, користите минимизовану синтаксу за етикете код празних елемената, нпр. <br />
, пошто алтернативна синтакса <br></br>
, која је дозвољена у XML-у, даје непредвиђене резултате код многих постојећих корисничких агената.
Када је елемент празан, а модел његовог садржаја није EMPTY
(на пример празан наслов или поглавље) не користите минимизовани облик (нпр. користите <p> </p>
а не <p />
).
Користите спољне дефиниције стила ако ваше дефиниције стила користе <
или &
или ]]>
или --
. Користите спољне скрипте ако ваше скрипте користе <
или &
или ]]>
или --
. Имајте на уму да XML читачима дозвољено да тихо уклоне садржај коментара. Зато, навика из прошлости да се скрипте и дефиниције стила "крију" унутар "коментара" да би се документи учинили компатибилним уназад вероватно неће радити како се очекује у корисничким агентима на бази XML-а.
Избегавајте нове редове или више пута поновљене знакове за проред унутар вредности атрибута. Кориснички агенти их различито тумаче.
Не укључујте више од једног isindex
елемента у head
део документа. isindex
елемент је застарео, и заменио га је елемент input
.
lang
и xml:lang
атрибутиКористите и lang
и xml:lang
атрибуте кад одређујете језик елемента. Вредност xml:lang
атрибута има предност.
У XML-у, URI-укази [RFC2396] који се завршавају фрагментским идентификаторима облика "#foo"
не указују на елементе са атрибутом name="foo"
; они пре указују на елементе са атрибутом дефинисаним да припада типу ID
, нпр., id
атрибут у HTML 4. Многи постојећи HTML клијенти не подржавају употребу атррибута типа ID
на овај начин, тако да за оба атрибута могу да се ставе истоветне вредности, да би се обезбедила максимална компатибилност унапред и уназад, (нпр., <a id="foo" name="foo">...</a>
).
Даље, пошто је низ легалних вредности за атрибуте типа ID
много мањи него код ових типа CDATA
, тип name
атрибута је промењен у NMTOKEN
. Овај атрибут је ограничен тиме што може имати једино исте вредности као и тип ID
, или као продукт Name
у XML 1.0 Поглавље 2.3, продукт 5. Нажалост, ово ограничење се не може изразити у XHTML 1.0 ДТД-има. Због ове измене, мора се водити рачуна кад се конвертују постојећи HTML документи. Вредности ових атрибута морају бити јединствене унутар документа, валидне, и сви укази на ове фрагментске идентификаторе (како унутрашњи тако и спољни) морају се обновити ако се вредности промене при конверзији.
Имајте на уму да је збирка легалних вредности у XML 1.0 Поглавље 2.3, продукт 5 много већа него што је дозвољено да се користи у ID
и NAME
типовима дефинисаним у HTML 4. Кад се дефинишу фрагментски идентификатори тако да буду компатибилни уназад, требало би да се користе само низови који се подударају с моделом [A-Za-z][A-Za-z0-9:_.-]*
. Види Поглавље 6.2 у [HTML4] за више информација.
Најзад, имајте на уму да се у XHTML 1.0 name
атрибут сматра застарелим у елементима a
, applet
, form
, frame
, iframe
, img
и map
, и да ће бити уклоњен из XHTML-а у верзијама које следе.
Кроз историју, кодирање знакова у HTML документу је одређивао или мрежни сервер кроз charset параметар у HTTP Content-Type заглављу, или документ сам кроз meta
елемент. У XML документу, кодирање знакова је одређено у XML декларацији (нпр., <?xml version="1.0" encoding="EUC-JP"?>
). Како би се преносиво приказали документи са одређеним кодирањем знакова, најбољи приступ је да се обезбеди да мрежни сервер да исправна заглавља. Ако ово није могуће, документ који жели да експлицитно установи своје кодирање знакова мора да укључи и XML декларацију на декларацији кодирања и meta
http-equiv изјаву (нпр., <meta http-equiv="Content-type" content="text/html; charset=EUC-JP" />
). Код корисничких агената у складу са XHTML-ом, вредност декларације кодирања у XML декларацији има предност.
Имајте на уму: ако документ мора да има декларацију о кодирању у meta http-equiv изјави, тај документ може увек да се тумачи од стране HTTP сервера и/или корисничких агената као да припада типу везе са интернетом која се дефинише у тој изјави. Ако документ треба да се сервира кроз више типова везе, мора се користити HTTP сервер за одређивање кодирања у документу.
Неки HTML кориснички агенти нису способни да тумаче Булове атрибуте (атрибуте са две могуће вредности - позитивном и негативном, прим.прев.) кад се ови појављују у свом пуном (неминимизованом) облику, какав захтева XML 1.0. Имајте на уму да се овај проблем не односи на корисничке агенте у складу са HTML 4. Следећи атрибути су у питању: compact
, nowrap
, ismap
, declare
, noshade
, checked
, disabled
, readonly
, multiple
, selected
, noresize
, defer
.
Препорука за Објектни модел документа, ниво 1 [DOM] дефинише интерфејсе за Објектни модел документа у XML и HTML 4. Објектни модел документа код HTML 4 одређује да се имена HTML елемената и атрибута враћају великим словима. Објектни модел документа код XML одређује да се имена елемената и атрибута враћају онаквим словима каквим су одређена. У XHTML 1.0, елементи и атрибути су спецификовани малим словима. Ова видна разлика може се решити на два начина:
text/html
преко DOM могу да користе HTML DOM, и могу да се ослоне на имена елемената и атрибута која се са ових интерфејса враћају великим словима.text/xml
, application/xml
и application/xhtml+xml
могу да користе и XML DOM. елементи и атрибути ће се вратити малим словима. Такође, неки XHTML елементи могу и не морају да се појаве у стаблу објекта јер су опциони у моделу садржаја (нпр. tbody
елемент унутар table
). Ово се дешава јер је у HTML 4 неким елементима било дозвољено да буду минимизовани тако да им се и почетне и завршне етикете изоставе (својство SGML-а). То није могуће у XML-у. Да не би изискивао да аутори докумената уносе додатне елементе, XHTML је ове елементе учинио опционим. Кориснички агенти треба да се овоме прилагоде. За више информација о овој теми, види [DOM2]И у SGML-у и у XML-у, знак за амперсанд ("&") изјављује почетак указа на ентитет (нпр. ® за регистровани робни знак "®"). Нажалост, многи HTML кориснички агенти су прећутно игнорисали неправилну употребу знака за амперсанд у HTML документима - третирајући амперсанде, који не изгледају као укази на ентитет, као буквалне амперсанде. Кориснички агенти на бази XML-а неће толерисати ову неправилну употребу, и ниједан документ који неправилно користи амперсанд неће бити "валидан", а самим тим неће одговарати ни овој спецификацији. Како би обезбедили да документи буду компатибилни и са старим HTML корисничким агентима и са корисничким агентима на бази XML-а, амперсанди који се користе у документу а треба их третирати дословно као знакове морају се изразити кроз указ на ентитет (нпр. "&
"). На пример, кад href
атрибут елемента a
указује на CGI скрипту која узима параметре, мора се изразити као http://my.site.dom/cgi-bin/myscript.pl?class=guest&name=user
а не као http://my.site.dom/cgi-bin/myscript.pl?class=guest&name=user
.
Препорука за Cascading Style Sheets (Низове стилских таблица), ниво 2 [CSS2] дефинише својства стила која се примењују у ишчитавању HTML или XML докумената. Разлике у ишчитавању ће произвести различите визуелне и аудитивне резултате, зависно од селектора који се користе. Следећи савети ће смањити овај ефекат за документе који се сервирају без модификације за оба типа везе:
У HTML 4 и XHTML-у, елемент style
може се користити да дефинише интерна правила за стил у документу. У XML-у, за одређивање правила стила користи се XML декларација за стилску таблицу . Како би били компатибилни са овом конвенцијом, style
елементи треба да имају своје фрагментске идентификаторе одређене id
атрибутом, а XML декларација за стилску таблицу треба да указује на овај фрагмент. На пример:
<?xml-stylesheet href="http://www.w3.org/StyleSheets/TR/W3C-REC.css" type="text/css"?> <?xml-stylesheet href="#internalStyle" type="text/css"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sr" lang="sr"> <head> <title>Интерни пример стилске таблице</title> <style type="text/css" id="internalStyle"> code { color: green; font-family: monospace; font-weight: bold; } </style> </head> <body> <p> Ово је текст који користи нашу <code>интерну стилску таблицу</code>. </p> </body> </html>
Неки знакови који су легални у HTML документима нису легални у XML документу. На пример, у HTML-у, знак "Formfeed" (U+000C) се третира као проред, а у XHTML-у, због XML дефиниције знакова, он је илегалан.
Именовани указ на знак '
(апостроф, U+0027) је уведен у XML 1.0 али се не појављује у HTML. Аутори би зато требало да користе '
уместо '
да би радио како се очекује у HTML 4 корисничким агентима.
Овај додатак је информативан.
Ова спецификација је написана уз учешће чланова W3C HTML Радне групе.
При објављивању другог издања, чланови су били:
При објављивању првог издања, чланови су били:
Овај додатак је информативан.