XHTML 1.0 Extensible HyperText Markup Language (Második Kiadás)
A HTML 4 megújítása XML 1.0 alapokon
W3C ajánlás 2000. január 26., javítva 2002. augusztus 1-én
- Eredeti angol verzió:
-
XHTML™ 1.0 The Extensible HyperText Markup Language (Second Edition)
http://www.w3.org/TR/2002/REC-xhtml1-20020801 - Fordítás:
- http://vicziani.github.com/~vicziani/xhtml-1.0.htm
- Fordította:
- Viczián István <viczian.istvan a gmail-en>
- Fordítás státusza:
- Fordítás dátuma: 2001. január 22.
Utolsó módosítás dátuma: 2010. szeptember 19.
Ez a fordítás a W3C tudta és engedélye nélkül, saját szorgalomból készült. A lefordított dokumentum fordításból eredő hibákat tartalmazhat. A magyar fordítás nem is követi az eredeti angol nyelvű dokumentumon végrehajtott jövőbeli változtatásokat. Ezért a fordítás nem tekinthető normatív W3C dokumentumnak. A dokumentum normatív, mindenkori legújabb, hivatalos, angol nyelvű változatát lásd a W3C megfelelő weblapján: http://www.w3.org/TR/xhtml1 - Megjegyzések a fordításhoz:
-
1.) A fordítással kapcsolatos olvasói észrevételeket a fordító e-mail címére kérjük.
2.) A fordító a saját megjegyzéseit feltűnően elkülöníti a dokumentum szövegében.
3.) A dokumentumból kifelé mutató összes link angol nyelvű dokumentumra mutat, hiszen ezek fordítása még nem készült el.
XHTML 1.0 Extensible HyperText Markup Language (Második Kiadás)
A HTML 4 megújulása XML 1.0 alapokon
W3C ajánlás 2000. január 26., javítva 2002. augusztus 1-én
- Ez a verzió (angol - a ford.):
- http://www.w3.org/TR/2002/REC-xhtml1-20020801
- Legfrissebb verzió (angol):
- http://www.w3.org/TR/xhtml1
- Előző verzió (angol - a ford.):
- http://www.w3.org/TR/2000/REC-xhtml1-20000126
- A legfrissebb verzió, a legfrissebb és az előző verzió különbségeinek kiemelésével:
- http://www.w3.org/TR/2002/REC-xhtml1-20020801/xhtml1-diff.html
- Szerzők:
- Lásd köszönetnyilvánítások .
A dokumentumhoz hibajegyzék is kapcsolódik, mely tartalmazhat néhány normatív javítást. A dokumentumról tovább fordítások is rendelkezésre állnak.
Ez a dokumentum elérhető különböző nem normatív formátumokban is: több állományból álló XHTML, PostScript formátum, PDF, ZIP tömörített állomány és GZip-pel tömörített TAR állomány.
Copyright ©2002 W3C® (MIT, INRIA, Keio), Minden jog fenntartva. Alkalmazandók a W3C felelősségi, , dokumentumhasználati és szoftverlicensz előírásai.
Absztrakt
Ez a specifikáció definiálja az XHTML 1.0 Második Kiadását, mely a HTML 4 XML 1.0 alkalmazásként történő megújítása, valamint három DTD-t, melyek megfelelnek a HTML 4-ben meghatározottnak. Az elemek tartalmi jelentése, illetve attribútumai a HTML 4 W3C ajánlásában kerültek meghatározásra. Ezek a tartalmi jelentések biztosítják az XHTML jövőbeni fejleszthetőségének alapját. A kompatibilitás a már létező HTML felhasználói alkalmazásokkal néhány irányelv betartásával lehetséges.
A dokumentum státusza
Ez a rész leírja a dokumentum státuszát a megjelenésének időpontjában. Más dokumentumok hatálytalaníthatják ezt a dokumentumot. Eme dokumentumsorozat legutolsó státuszát a W3C tartja karban.
Ez a dokumentum az XHMTL 1.0 második kiadása, mely megában foglalja a hibajegyzék javításait 2002 augusztus 1-éig. A különbségek a jelenlegi és az előző verzió között kiemeltek egy külön verzióban.
A második kiadás az XHTML 1.0 ajánlásnak (mely először 2000 január 26-án jelent meg). A módosítások a közösség által küldött megjegyzések, és a HTML Working Group további munkájának folyománya. Ebben a dokumentumban nincsenek lényegi változások - csupán a hibajegyzékben említett hibák lettek javítva.
Az ebben a specifikációban ismert hibák listája elérhető a http://www.w3.org/2002/08/REC-xhtml1-20020801-errata címen.
Az ebben a verzióban talált hibákat a www-html-editor@w3.org (archívum) címen lehet bejelenteni. A HTML lehetőségeinek megvitatása a www-html@w3.org (archívum) levelezési listán történik. (A fordítással kapcsolatos hibákat a fordító e-mail címére lehet küldeni - a ford.)
Ez a dokumentum a W3C HTML Activity tevékenység keretein belül készült. A HTML Working Group csoport (csak tagoknak) céljai a HTML Working Group charter iratban vannak lefektetve.
A megjelenés időpontjában a munkacsoport hisz abban, hogy egy felfedett szabadalmi igény sem létezik a specifikációval kapcsolatban. A jelenlegi felfedett szabadalmi igények listája a Working Group ezzel foglalkozó oldalán található.
A jelenlegi W3C ajánlások és egyéb technikai dokumentációk a http://www.w3.org/TR címen találhatóak.
Rövid tartalomjegyzék
Teljes tartalomjegyzék
- 1. Mi az az XHTML?
- 2. Definíciók
- 3. Az XHTML 1.0 normatív definíciója
- 4. Különbségek az
XHTML 1.0 és a HTML 4 között
- 4.1. A dokumentumnak jól formázottnak kell lennie
- 4.2. Az elemeknek, illetve a tulajdonságoknak kisbetűvel kell szerepelniük
- 4.3. A nem üres elemeknél a záró tag-ek kötelezőek
- 4.4. A tulajdonságoknak mindig idézőjelek között kell szerepelniük
- 4.5. Tulajdonságok minimalizációja
- 4.6. Üres elemek
- 4.7. Whitespace karakterek kezelése a tulajdonságok értékeinél
- 4.8. Szkriptek és stíluselemek
- 4.9. SGML kivételek
- 4.10. Elemek 'id' illetve 'name' tulajdonságokkal
- 4.11. Tulajdonságok előredefiniált értékkészlettel
- 4.12. Elemhivatkozások, mint hexadecimális értékek
- 5. Kompatibilitási kérdések
- A. DTD-k
- A.1. Dokumentum Típus Definíciók
- A.1.1. XHTML-1.0-Strict
- A.1.2. XHTML-1.0-Transitional
- A.1.3. XHTML-1.0-Frameset
- A.2. Egyedhalmazok
- A.2.1. Latin-1 karakterek
- A.2.2. Speciális karakterek
- A.2.3. Szimbólumok
- A.1. Dokumentum Típus Definíciók
- B. Elemek tilalma
- C. HTML
kompatibilitási irányelvek
- C.1. Feldolgozói utasítások
- C.2. Üres elemek
- C.3. Elem minimalizáció és üres elem tartalom
- C.4. Beágyazott stíluslapok és szkriptek
- C.5. Sortörés a tulajdonságértékeken belül
- C.6. Isindex
- C.7. A lang és a xml:lang tulajdonságok
- C.8. Töredékazonosítók
- C.9. Karakterkódolás
- C.10. Logikai tulajdonságok
- C.11. Dokumentum Objektum Modell és az XHTML
- C.12. &-jel használata tulajdonság értékekben
- C.13. Kaszkádolt Stíluslapok (CSS) és az XHTML
- C.14. Hivatkozás a stílus elemekre, amennyiben XML-en belül jelennek meg
- C.15. White space karakterek használatának különbsége HTML és XML dokumentumban
- C.16. Az &pos; Nevesített Karakter Hivatkozás
- D. Köszönetnyilvánítások
- E. Hivatkozások
1. Mi az az XHTML?
XHMTL a jelenlegi és jövőbeli dokumentumtípusok és modulok egy családja, mely átveszi, a HTML 4-et [HTML], illetve annak egy részét, valamint kiterjeszti azt. XHTML családba tartozó dokumentumtípusok XML alapúak, és arra lettek tervezve, hogy együttműködjenek az XML-alapú felhasználói alkalmazásokkal. A dokumentumcsalád részletei, illetve a fejlődés iránya nagyobb részletességgel a [XHTMLMOD] dokumentumban vannak leírva.
XHTML 1.0 (ez a specifikáció) az első dokumentumtípus az XHTML dokumentumcsaládban. Ez a három HTML 4 dokumentumtípus megreformálása, mint XML 1.0 alkalmazások [XML]. Ez egy olyan nyelvnek lett tervezve, mellyel leírható tartalom mind XML formátumú, illetve néhány irányelv betartásával együttműködjön a HTML 4-et használó felhasználói alkalmazásokkal. A fejlesztők, akik áttérnek az XHTML 1.0-ra, a következő előnyöket fogják élvezni:
- XHTML dokumentumok XML alapúak. Ezért könnyebben megnézhetőek, szerkeszthetőek, és érvényesíthetőek szabványos XML eszközökkel.
- XHTML dokumentumok ugyanolyan jól (, ha nem jobban) együttműködnek korábbi, HTML-4-et támogató felhasználói alkalmazásokkal, vala,omt az új, XHTML 1.0-t támogató felhasználói alkalmazásokkal.
- XHTML dokumentumokban használhatóak olyan alkalmazások (pl. szkriptek, appletek), melyek valamelyik HTML Document Object Model-re, vagy XML Document Object Model-re támaszkodnak [DOM].
- Ahogy az XHTML család fejlődik a XHTML 1.0 dokumentumok jobban együtt fognak működni XHTML környezeteken belül, illetve azok között.
Az XHTML család a következő lépés az Internet fejlődésében. Az XHTML-re való áttéréssel a tartalomszolgáltatók beléphetnek az XML világába annak minden velejáró előnyével együtt, miközben mégis kompatibilisek maradnak mind vissza-, mind előrefelé.
1.1 Mi is az a HTML 4?
HTML4 [HTML] egy SGML (Standard Generalized Markup Language) alkalmazás, mely alkalmazkodik az International Standard ISO 8879 szabványhoz, és széles körben elterjedt, mint a World Wide Web szabványos publikáló nyelve.
SGML egy nyelv a leíró nyelvek leírására, mely különösen használatos az elektronikus dokumentumok cseréjében, dokumentumkezelésben és dokumentum publikálásban. HTML egy példa az SGML-ben definiált nyelvekre.
Az SGML körülbelül az 1980-as évek közepén keletkezett, és még mindig elég stabilan tartja pozícióját. Eme stabilitás abból a tényből következik, hogy ez a nyelv egyszerre funkciógazdag és flexibilis. Habár ez a flexibilitás magas árral jár, mégpedig a bonyolultság szintjével, mely meggátolja az adoptálását különféle környezetekbe, beleértve a World Wide Web-et is.
A HTML, ahogy azt kezdetben elképzelték, egy nyelv lett volna a tudományos és technikai dokumentumok cseréjáre, mely megfelelő lett volna dokumentumok leírásában nem járatos specialistáknak. A HTML csökkentette az SGML bonyolultságát azzal, hogy egy kisebb halmazát specifikálta a struktúrális és szemantikai tag-eknek, mellyel relatív egyszerű dokumentumokat lehet készíteni. Túl azon, hogy egyszerűsítette a dokumentum struktúráját, a HTML-be bekerült a hypertext támogatás. A multimédia képességeket később kapta meg.
Rendkívül rövid idő alatt a HTML széles körben elterjedt, és gyorsan kinőtte a kezdeti célokat. A HTML elkészítése után nagy sebességgel nőtt a HTML-ben, mint szabványban használható elemek száma, hogy alkalmazkodni tudjon a vertikális, magasan specializált piachoz. Az új elemek e bősége kompatibilitási problémákhoz vezetett különböző platformokon.
1.2 Mi az az XML?
XML™ az Extensible Markup Language rövidítése, mozaikszó [XML].
Az XML-t úgy lett kitalálva, hogy megtartja az SGML erejét és flexibilitását viszont elhagyja annak bonyolultságát. Habár az XML korlátozott formája az SGML-nek, mégis megőrizte az SGML erejének és gazdagságának nagy részét, és még mindig tartalmazza az SGML gyakran használt tulajdonságait.
Miközben megőrizte az előnyös tulajdonságait, az XML eltávolított sok komplex tulajdonságot, mely az SGML-t alkalmazó szoftverek írását és tervezését bonyolulttá és költségessé tette.
1.3 Miért van szükség az XHTML-re?
Az XHTML 1.0-ra való áttérés előnyei a fentiekben kerültek kifejtésre. Az XHTML néhány általános előnye azonban álljon itt:
- A dokumentum fejlesztők és a felhasználói alkalmazások tervezői folyamatosan új utakat fedeznek fel, hogyan valósítsák meg az ötleteiket az új leírás által. Az XML-ben relatív egyszerű új elemeket vagy tulajdonságokat bevezetni. Az XHTML család úgy lett tervezve, hogy ezeket a kiegészítéseket az XHTML modulokkal illetve XHTML-alapú modulok fejlesztésére való technikákkal valósítsa meg (az XHTML Modularization specifikációban leírt módon). Ezek a modulok engedélyezni fogják a létező és új lehetőségek halmazát, a tartalom fejlesztésekor, illetve az új felhasználói alkalmazások írásakor.
- Az Internet eléréséhez folyamatosan alternatív módszerek kerülnek bevezetésre. A XHTML család az általános felhasználói alkalmazásokkal való együttműködés észben tartásával lett megtervezve. Az új felhasználói alkalmazások és dokumentum megjelenítési mechanizmusok által a szerverek, proxik, és felhasználói alkalmazások képesek lesznek a legjobb hatékonyságú tartalom transzformációra. Végül lehetséges lesz XHTML alapú tartalmak kifejlesztése, mely használható bármely XHTML-alapú felhasználói alkalmazással.
2. Definíciók
Ez a fejezet normatív.
2.1 Terminológia
A következő kifejezések lesznek használva ebben a specifikációban. Ezek a kifejezések kiegészítik az [RFC2119]-beli definíciókat bizonyos értelemben az ISO/IEC 994501:1990 [POSIX. 1] definícióira támaszkodva:
- Lehet (may)
- Az implementációk vonatkozásában a "lehet" szó úgy értelmezhető, hogy ez egy opcionális jellemző, melyet nem követel meg a specifikáció, de létezhet. A Dokumentum Megfelelések vonatkozásában a "lehet" szó azt jelenti, hogy az opcionális jellemzőt nem muszáj használni. Az "opcionális" kifejezés azonos a "lehet" kifejezés használatával.
- Kell (must)
- Ebben a specifikációban a "kell" szót úgy kell értelmezni, mint egy kötelező igény az implementációban, vagy a Szigorúan Megfelelő XHTML Dokumentumokban, környezettől függően. A "kell (shall)" definíciója megegyezik a "kell (must)" definíciójával.
- Opcionális (optional)
- Lásd "Lehet (may)".
- Fenntartott (reserved)
- Az érték vagy a viselkedés nem specifikált, de nem megengedett sem a Megfelelő Dokumentumokban, sem nem támogatott a Megfelelő Felhasználói Alkalmazásokban.
- Kell (shall)
- Lásd "Kell (must).
- Kellene (should)
- Az implementációk vonatkozásában a "kellene" szó értelmezése implementációs ajánlás, de nem kötelező. A dokumentumok vonatkozásában a "kellene" szó úgy értelmezhető, hogy ajánlott programozói szokás a dokumentumoknál, és ajánlott a Szigorúan Megfelelő XHTML Dokumentumoknál.
- Támogatott (supported)
- Bizonyos lehetőség ebben a specifikációban opcionális. Ha egy lehetőség támogatott, úgy viselkedik, mintha ebben a specifikációban lenne specifikálva.
- Specifikálatlan (unspecified)
- Ha egy érték vagy a viselkedés specifikálatlan, a specifikáció nem definiál hordozhatósági követelményeket a könnyedség kedvéért az implementáció számára, még olyan dokumentummal szemben sem, mely használja ezt a könnyítést. Egy dokumentum, mely inkább megkövetel bizonyos viselkedéseket bizonyos esetekben, minthogy eltűrjön bármiféle viselkedést mikor használja ezt a könnyítést, nem Szigorúan Megfelelő XHTML Dokumentum.
2.2 Általános kifejezések
- Tulajdonság (attribute)
- A tulajdonság a DTD-ben definiált elem egy paramétere. Egy tulajdonság típusa, lehetséges értékei, beleértve a lehetséges alapértelmezett értéket is, a DTD-ben vannak definiálva.
- DTD
- Egy DTD, vagy Dokumentum Típus Definíció (Document Type Definition), az XML-t leíró deklarációk egy gyűjteménye, definiálja a megengedett struktúrát, elemeket és tulajdonságokat, melyek a DTD-t betartó dokumentumokban elérhetőek.
- Dokumentum (document)
- Egy dokumentum az adatok egy folyama, mely kombinálva van egyéb adatfolyamokkal, melyre hivatkozik, és úgy épül fel, hogy olyan információt tartalmazó elemeket tartalmaz, melyek a hozzá tartozó DTD definíciója szerint szerveződnek. Lásd a Dokumentum Megfeleléseket több információért.
- Elem (element)
- Az elem a dokumentum struktúrális egysége, mely a DTD-ben van deklarálva. Az elem tartalmi modellje a DTD-ben van definiálva, és járulékos szemantika definiálható az elem szöveges leírásában.
- Lehetőségek (facilities)
- A lehetőségek tartalmazzák az elemeket, tulajdonságokat, és az ezekkel kapcsolatos szemantikát.
- Implementáció (implementation)
- Lásd Felhasználói alkalmazás.
- Szintaktikai elemzés (parsing)
- Szintaktikai elemzés az a tevékenység, aminek végrehajtása által a dokumentum meg lesz vizsgálva, és a dokumentum által tartalmazott információ azon elemek környezetén lesz átszűrve, melyekkel az információ struktúrálva van.
- Ábrázolás (rendering)
- Az ábrázolás az a tevékenység, melynek végeredményeképp a dokumentum által hordozott információ megjelenik. A megjelenítés a környezetnek (pl. hangban, vizuálisan, nyomtatva) megfelelő formátumban történik meg.
- Felhasználói alkalmazás (user agent)
- A felhasználói alkalmazás egy rendszer, mely feldolgozza az XHTML dokumentumot ezen specifikáció szerint. Több információért lásd a Felhasználói Alkalmazás Megfelelések fejezetet.
- Érvényesítés (validation)
- Az érvényesítés az az eljárás, melynek során a dokumentum összevetésre kerül a hozzá kapcsolt DTD-vel, biztosítva, hogy az elemeket és a tulajdonságokat tartalmazó struktúra konzisztens a DTD-ben definiáltakkal.
- Jól formázott (well-formed)
- Egy dokumentum jól formázott, ha struktúrája megfelel az XML 1.0 ajánlás [XML] 2.1. fejezetében definiált szabályoknak.
3. XHTML 1.0 normatív definíciója
Ez a fejezet normatív.
3.1 Dokumentum megfelelések
Az XHTML e verziója tartalmazza a Szigorúan Megfelelő XHTML 1.0 dokumentumok definícióját, melyaz XML és XHTML 1.0 névterek elemeire és tulajdonságaira vannak korlátozva. Lásd a 3.1.2 fejezetet további információkhoz, hogy hogy használható az XHTML más névterekkel, például az RDF-ben meghatározott metaadatkat hogyan lehet beilleszteni XHTML dokumentumokba.
3.1.1 Szigorúan Megfelelő Dokumentumok
Egy Szigorúan Megfelelő XHTML Dokumentum egy olyan XML dokumentum, mely csak azokat a lehetőségeket követeli meg, melyek kötelezőnek vannak leírva ebben a specifikációban. Egy ilyen dokumentumnak a következő kritériumoknak kell megfelelnie:
- Meg kell felelnie a háromból az egyik DTD-ben szereplő megszorításoknak, mely a DTD-k fejezetben vannak leírva, valamint a B függelékben leírtaknak.
- A
html
legyen a dokumentum gyökéreleme. - A dokumentum gyökérelemének tartelmezni kell egy
xmlns
deklarációt az XHTML [XMLNAMES] névtér meghatározására. Az XHTML névterének definíciója a következő:http://www.w3.org/1999/xhtml
. Egy példa gyökérelem így nézhet ki:<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> - A gyökérelemet megelőzően egy DOCTYPE
definíciónak kell szerepelnie. A DOCTYPE
deklarációban szereplő nyilvános
azonosítónak hivatkoznia kell a három DTD egyikére,
melyek az DTD-k fejezetben
találhatóak, használva a saját Formális
Nyilvános Azonosítóját. A
rendszerazonosító megváltoztatható, hogy a
lokális rendszer konvenciókat tükrözze.
<!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">
- A DTD részhalmaz nem használható egyetlen DTD-ben szereplő paraméter egyed felülírására sem.
Az XML deklaráció nem szükséges minden XML dokumentumban, habár minden XHTML dokumentum szerző számára annak használata. A deklaráció szükséges, ha a dokumentum kódolása nem az alapértelmezett UTF-8 vagy UTF-16, és magasabb szintű protokollban nem lett az definiálva. Álljon itt egy példa XHTML dokumentum. Ebben a példában szerepel az XML deklaráció.
<?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="en" lang="en"> <head> <title>Virtual Library</title> </head> <body> <p>Moved to <a href="http://example.org/">example.org</a>.</p> </body> </html>
3.1.2 XHTML használata egyéb névterekkel
Az XHTML névtér együtt használható más XML névterekkel az [XMLNS] szerint, habár ezek a dokumentumok nem lesznek fentebb definiált Szigorúan Megfelelő XHTML 1.0 Dokumentumok. A W3C a munkája során különböző módokat céloz meg olyan dokumentumok megfelelőségének, melyekben több névtér található.
A következő példa egy módot mutat arra, hogy lehet jelenleg az XHTML 1.0-t párosítani a MathML ajánlással:
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>A Math Example</title> </head> <body> <p>The following is MathML markup:</p> <math xmlns="http://www.w3.org/1998/Math/MathML"> <apply> <log/> <logbase> <cn> 3 </cn> </logbase> <ci> x </ci> </apply> </math> </body> </html>
A következő példa megmutatja, hogyan lehet az XHTML 1.0 jelölést használni egy másik XML névtérben:
<?xml version="1.0" encoding="UTF-8"?> <!-- initially, the default namespace is "books" --> <book xmlns='urn:loc.gov:books' xmlns:isbn='urn:ISBN:0-395-36341-6' xml:lang="en" lang="en"> <title>Cheaper by the Dozen</title> <isbn:number>1568491379</isbn:number> <notes> <!-- make HTML the default namespace for a hypertext commentary --> <p xmlns='http://www.w3.org/1999/xhtml'> This is also available <a href="http://www.w3.org/">online</a>. </p> </notes> </book>
3.2 Felhaszálói alkalmazás megfelelések
A megfelelő felhasználói alkalmazásoknak a következő kritériumoknak kell eleget tenniük:
- Azért, hogy az XML 1.0 ajánlásnak [XML] megfeleljenek, a felhasználói alkalmazásoknak szintaktikailag elemezniük és kiértékelniük kell az XHTML dokumentumot, hogy helyesen-formázottak-e. Ha a felhasználói alkalmazás érvényesítő felhasználói alkalmazás kíván lenni, akkor érvényesítenie kell a dokumentumokat az általuk hivatkozott DTD-k szerint, összhangban az [XML]-lel.
- Ha a felhasználói alkalmazás támogatni kívánja azokat a lehetőségeket, melyek ebben a specifikációban vannak definiálva, vagy eme specifikáció megköveteli ezeket a normatív referenciák által, úgy kell azokat megvalósítani, hogy konzisztensek maradjanak a lehetőségek definíciójával.
- Ha egy felhasználói alkalmazás egy XHTML dokumentumot
hagyományos XML-ként dolgoz fel, akkor csak az
ID
típusú tulajdonságokat (azaz azid
tulajdonság a legtöbb XHTML elemben) kell töredék azonosítónak felismernie. - Ha egy felhasználói alkalmazás egy olyan elembe ütközik, melyet nem ismer fel, fel kell dolgoznia annak tartalmát.
- Ha egy felhasználói alkalmazás egy olyan tulajdonságba ütközik, melyet nem ismer fel, el kell utasítania a tulajdonság teljes specifikációját (azaz a tulajdonságot és annak értékét is).
- Ha egy felhasználói alkalmazás egy olyan tulajdonság értékbe ütközik, melyet nem ismer fel, az alapértelmezett tulajdonság értéket kell használnia.
- Ha egy olyan egyedhivatkozással találkozik (olyannal, mely nem ebben vagy az XML ajánlásban szerepel), melyre a felhasználói alkalmazás nem talált deklarációt (ami úgy történhet meg, hogy a deklaráció külső részhalmazban van, melyet a felhasználói alkalmazás még nem olvasott be), az egyedhivatkozást karakterenként kell feldolgozni ('&' jellel kezdődően, és pontosvesszővel zárva), mely jelöli az egyedhivatkozást.
- A feldolgozás közben, ha a felhasználói alkalmazás olyan karakterekkel, vagy karakter egyedhivatkozásokkal találkozik, melyek felismerhetőek, de nem ábrázolhatóak, oly módon kell a dokumentumban megjeleníteni, mely ugyanazt a jelentést hordozza, vagy oly módon, hogy nyilvánvaló legyen a felhasználó számára, hogy az normál megjelenítés nem elvégezhető.
A white space karakterekre a következő szabályok alkalmazandóak. Az [XML] a következő karaktereket definiálja white space karaktereknek:
- Szóköz ( )
- Tabulátor (	)
- Kocsivissza (
)
- Soremelés (
)
Az XML feldolgozó különböző rendszerek sorvége karaktereit normalizálják egyetlen soremelés karakterré, és továbbítják az alkalmazásnak.
A felhasználói alkalmazásnak a CSS szabványban [CSS] definiált white space karakter feldolgozást kell követnie. Megjegyzendő, hogy a CSS2 ajánlás egyértelműen nem definiálja a white space karakterek kezelését nem Latin karakterkészletekben. Ez a CSS következő verziójában lesz definiálva, melynek megjelenésekor ez a hivatkozás frissítésre kerül.
4. Különbségek az XHTML 1.0 és a HTML 4 között
Ez a fejezet tájékoztató jellegű.
Mivel az XHTML tulajdonképpen egy XML alkalmazás, néhány dolgot, mely az SGML-alapú HTML 4-ben [HTML] legális, meg kellett változtatni.
4.1. A dokumentumnak jól formázottnak kell lennie
A jól formázottság egy új fogalom az [XML]-ben. Ez tulajdonképpen azt jelenti, hogy minden elemnek kell lennie záró tag-jének, vagy speciális formában kell leírni (lásd lejjebb), és az összes elemnek egymásba ágyazva kell szerepelnie.
Habár az átlapolás határozottan tiltott az SGML-ben, széles körben támogatott a létező böngészőkben.
HELYES: egymásba ágyazott elemek.
<p>ez egy kihangsúlyozott <em>szövegrészlet</em></p>
HELYTELEN: átlapolt elemek
<p>ez egy kihangsúlyozott <em>szövegrészlet</p></em>
4.2. Az elemeknek, illetve a tulajdonságoknak kisbetűvel kell szerepelniük
Az XHTML dokumentumokban a HTML elemeknek és tulajdonságoknak kisbetűvel kell szerepelniük. Ez a különbség azért szükséges, mivel az XML megkülönbözteti a kis- és nagybetűket, pl. az <li> és az <LI> két különböző tag.
4.3. A nem üres elemeknél a záró tag-ek kötelezőek
Az SGML alapú HTML 4-ben bizonyos elemek olyanok voltak, hogy
nyugodtan nélkülözhették a záró tag-eket,
mivel magukba foglalták azt. Ez a mulasztás nem megengedett az
XML alapú XHTML-ben. Minden elemnek, kivéve azokat, melyek a
DTD-kben EMPTY
-nek lettek definiálva, kötelező
zárótag-jének lennie. A DTD-ben EMPTY
-nek deklarált elemnek lehet bezáró párja, vagy használható az üres elem rövidítés (lásd Üres elemek fejezet).
HELYES: lezárt elemek
HELYTELEN: nem lezárt elemek
<p>ez egy bekezdés<p>ez egy másik bekezdés
4.4. A tulajdonságoknak mindig idézőjelek között kell szerepelniük
Minden tulajdonságnak idézőjel között kell szerepelnie, még a numerikus tulajdonságnak is.
HELYES: idézőjelek között
<table rows="3">
HELYTELEN: idézőjelek elhagyásával
<table rows=3>
4.5. Tulajdonságok minimalizációja
XML nem támogatja a tulajdonságok
minimalizációját. A tulajdonságnak, és a
hozzá tartozó értéknek párban kell
szerepelnie. A tulajdonság nevét, mint a compact
,
vagy checked
, nem szabad szerepeltetni anélkül, hogy
az értékét kiírnánk.
HELYES: minimalizálatlan tulajdonságok
<dl compact="compact">
HELYTELEN: minimalizált tulajdonságok
<dl compact>
4.6. Üres elemek
Az üres elemnek is muszáj zárótag-jének
lennie, vagy a nyitótag-nek kell />
karakterekkel
végződnie. Pl. a <br/>
, vagy
<hr></hr>
. Lásd a HTML kompatibilitási
útmutatót a HTML 4 felhasználói alkalmazásokkal való kompatibilitási információkért.
HELYES: lezárt üres tag-ek
<br/><hr/>
HELYTELEN: nem lezárt üres tag-ek
<br><hr>
4.7. White space karakterek kezelése a tulajdonságok értékeinél
Ha a felhasználói alkalmazások a tulajdonságokat dolgozzák fel, meg kell felelniük az [XML] 3.3.3 fejezetének:
- Kezdő, illetve bezáró white space karakterek levágása.
- White space karakterek egy vagy több karakterből álló sorozatát (a sortöréseket is beleértve) egy szóközi sóköz karakterré konvertálása.
4.8. Szkriptek és stíluselemek
Az XHTML-ben a szkript és stíluselemek úgy vannak
definiálva, hogy tartalmazzák a #PCDATA
tartalmat.
Ennek eredményeképpen a <
és a
&
karakterek a jelölés kezdeteként lesznek
értelmezve, és az egyedeket, mint az <
és az &
, egyedhivatkozásnak ismeri fel az XML
feldolgozó a <
-ra és az &
-ra
külön-külön. A szkript vagy stípuselem tartalma CDATA
-val jelölve megakadályozza ezen egyedek kifejtését.
<script type="text/javascript"> <![CDATA[ ... unescaped script content ... ]]> </script>
4.9. SGML kivételek
SGML a DTD írójának megengedi, hogy kizárjon megadott elemeket egy elemen belül. Hasonló tiltások (nevezzük kivételeknek) nem megengedettek az XML-ben.
Például a HTML 4-ben a DTD szigorúan tiltja, hogy az
'a
' elem tartalmazzon egy másik 'a
' elemet
bármilyen mélységben. Az XML-ben nincs hasonló
kivételekre lehetőség. Még akkor is, ha ezek a
kivételek nincsenek definiálva a DTD-ben, bizonyos elemeket
mégsem lehet egymásba ágyazni. Ezen elemek, illetve azon
elemek listája, melyeket nem ajánlott egymásba
ágyazni, megtalálható az Elemek tilalmánál.
4.10. Elemek 'id' illetve 'name' tulajdonságokkal
A HTML 4 a következő elemeket definiálja, melyek
rendelkezhetnek a name
tulajdonsággal: a
,
applet
, form
, frame
,
iframe
, img
és map
. A HTML 4
bevezette az id
tulajdonságot is. Mindkettő
tulajdonság töredék azonosítónak lett tervezve.
XML-ben a töredék azonosítók ID
típusúak, és csak egy ID
típusú
tulajdonság lehet elemenként. Ezért az XHTML 1.0-ban az
id
tulajdonság ID
típusúnak van
deklarálva. Azért, hogy az XHTML 1.0 dokumentumok
jól-formázott XML dokumentumok legyenek, az XHTML 1.0
dokumentumoknak az id
tulajdonságot kell
használniuk a fentebb említett elemeknél. Lásd az HTML
kompatibilitási útmutatót további információkért, hogy hogyan lehet biztosítani a visszafele kompatibilitást, ha az XHTML text/html
médiatípusként szolgáltatott.
Megjegyzendő,
hogy az XHTML 1.0-ban a name
tulajdonság ezeknél az
elemeknél lejárt, és el lesz távolítva az XHTML további verzióiban.
4.11. Tulajdonságok előre definiált értékkészlettel
Mind a HTML 4, mind az XHTML rendelkezik előre definiált, vagy korlátozott értékkészlettel rendelkező tulajdonságokkal (pl. az input
elem type
tulajdonsága). SGML-ben és XML-ben ezeket felsorolt tulajdonságnak nevezik. A HTML 4-ben ezek értelmezése kis- és nagybetű érzéketlen, azaz a TEXT
érték megegyezik a text
értékkel. Az XML-ben ezen értékek értelmezése kis- és nagybetű érzékeny, és az XHTML 1-ben az összes ilyen érték kisbetűvel deklarált.
4.12. Elemhivatkozások, mint hexadecimális értékek
Mind az SGML, mind az XML megengedi a karakterekre való hivatkozást hexadecimális értékekkel. SGML-ben ezek a hivatkozások használhatóak &#Xnn; vagy &#xnn; formátumban. Az XML dokumentumokban a kisbetűs formát kell használni (azaz &#xnn;).
5. Kompatibilitási kérdések
Ez a fejezet normatív.
Habár nem szükséges, hogy az XHTML 1.0 dokumentumok kompatibilisek legyenek a létező felhasználói alkalmazásokkal, a gyakorlatban könnyű ennek megvalósítása. Egy útmutató található a C függelékben a kompatibilis dokumentumok készítéséhez.
5.1 Internet Média Típus
Azokat a dokumentumokat, melyek követik a C függelékben közölt "HTML kompatibilitási irányelvek" című útmutatót, a "text/html" Internet Média Típussal kell címkézni, így kompatibilisek maradnak a legtöbb HTML böngészővel. Azok a dokumentumot, valamint az összes, ezen specifikációnak megfelelő dokumentumot az [RFC3236] szabványban definiált "application/xhtml+xml" Internet Média Típussal is el lehet látni. További információért az XHTML használatáról a média típusokkal kapcsolatban lásd a [XHTMLMIME] tájékoztató jellegű megjegyzést.
A. DTD-k
Ez a függelék normatív.
Ezek a DTD-k és egyedhalmazok adják a specifikáció normatív részét. A DTD fájlok teljes halmaza az XML deklarációval és az SGML Open Catalog-gal megtalálható az ehhez a specifikációhoz csatolt zip, vagy gzip-elt tar állományban. Azon felhasználók, akik ezen DTD-k lokális másolatait igénylik, le kell tölteniük és használniuk ezeket a csomagolt állományokat, ahelyett, hogy közvetlenül a lentebb hivatkozott állományokat használnák.
A.1 Dokumentum Típus Definíciók
Ezek a DTD-k hasonlítanak a HTML 4 DTD-khez. A W3C javasolja ezen DTD-k hiteles verzióinak használatát az érvényesítés során, azok SYSTEM azonosítóivel definiálva. Amennyiben lokálisan van rájuk szükség, ezen verziójuk letölthetőek tömörített formában. A teljesség kedvéért álljanak itt a DTD-k normatív verziói:
A.1.1. XHTML-1.0-Strict
A DTD/xhtml1-strict.dtd állomány a specifikáció normatív része. A teljesség kedvéért az állomány megjegyzésekkel ellátva külön fejezetben található.
A.1.2. XHTML-1.0-Transitional
A DTD/xhtml1-transitional.dtd állomány a specifikáció normatív része. A teljesség kedvéért az állomány megjegyzésekkel ellátva külön fejezetben található.
A.1.3. XHTML-1.0-Frameset
A DTD/xhtml1-frameset.dtd állomány a specifikáció normatív része. A teljesség kedvéért az állomány megjegyzésekkel ellátva külön fejezetben található.
A.2. Egyedhalmazok
Az XHTML egyedhalmazai megegyeznek a HTML 4-gyel, de módosítva
lettek, hogy érvényes XML 1.0 egyeddeklarációk
legyenek. Megjegyezendő, hogy az Euro pénznem jeléhez
tartozó egyed (€
vagy €
vagy €
) a speciális karakterek
között van definiálva.
A.2.1. Latin-1 karakterek
A DTD/xhtml-lat1.ent állomány a specifikáció normatív része. A teljesség kedvéért az állomány megjegyzésekkel ellátva külön fejezetben található.
A.2.2. Speciális karakterek
A DTD/xhtml-special.ent állomány a specifikáció normatív része. A teljesség kedvéért az állomány megjegyzésekkel ellátva külön fejezetben található.
A.2.3. Szimbólumok
A DTD/xhtml-symbol.ent állomány a specifikáció normatív része. A teljesség kedvéért az állomány megjegyzésekkel ellátva külön fejezetben található.
B. Elemek tilalma
Ez a függelék normatív.
A következő elemekhez tiltások tartoznak, hogy milyen elemeket nem tartalmazhatnak (lásd SGML kivételek). Ezek a tiltások a beágyazások teljes mélységére vonatkoznak, azaz vonatkoznak az összes leszármazott utódra.
a
- nem tartalmazhat másik
a
elemet. pre
- nem tartalmazhat
img
,object
,big
,small
,sub
vagysup
elemet. button
- nem tartalmazhat
input
,select
,textarea
,label
,button
,form
,fieldset
,iframe
vagyisindex
elemet. label
- nem tartalmazhat másik
label
elemet. form
- nem tartalmazhat másik
form
elemet.
C. HTML kompatibilitási irányelvek
Ez a függelék iránymutató jellegű.
Ez a függelék összegzi a tervezési
útmutatókat azon szerzők számára, akik
azt akarják, hogy XHTML dokumentumaikat a létező
felhasználói alkalmazások is meg tudják
jeleníteni. Megjegyzendő, hogy ez az ajánlás nem definiálja, hogy a HTML felhasználói alkalmazásoknak hogy kell feldolgozniuk a HTML dokumentumokat. Ugyanúgy nem definiálja a text/html
Internet Média Típus jelentését. Ezek definíciójáért lásd a [HTML4] és a [RFC2854] hivatkozásokat.
C.1. Feldolgozói utasítások és az XML deklaráció
Tudatában kell lenni annak, hogy a feldolgozói utasításokat néhány felhasználói alkalmazás megjeleníti. Más felhasználói alkalmazások az XML deklarációt úgy értelmezik, hogy a dokumentum egy HTML, hanem egy fel nem ismert XML dokumentum, és ezért nem úgy jelenítik meg, ahogy kéne. Ezen régi böngészőkkel való kompatibilitás miatt lehet a feldolgozói utasítások és az XML deklarációk elhagyása mellett dönteni. Azonban ha az XML deklaráció nem szerepel a dokumentumban, akkor az csak az alapértelmezett UTF-8 vagy UTF-16 karakter enkódolást használható.
C.2.Üres elemek
Szóközt ajánlott használni az üres elem záró
/
és >
jelei előtt, pl.
<br />
, <hr />
és
<img src="karen.jpg" alt="Karen" />
. A
minimalizált tag használata ajánlott, ugyanis pl. a
<br />
alternatív alakja a
<br></br>
megengedett az XML-ben, viszont számos létező felhasználói alkalmazás bizonytalan eredményt adhat.
C.3. Elem minimalizáció és üres elem tartalom
Adott elem üres előfordulása, melynek tartalmi modellje
nem EMPTY
(pl. üres cím vagy bekezdés). Ebben
az esetben nem ajánlott alkalmazni a rövidített formát (pl.
<p> </p>
alkalmazandó a
<p />
helyett).
C.4. Beágyazott stíluslapok és szkriptek
Külső stíluslapot ajánlott alkalmazni, ha a stíluslap
tartalmazza a következő jeleket: <
vagy &
vagy ]]>
vagy --
. Külső szkriptet ajánlott alkalmazni, ha a szkript
tartalmazza a következő jeleket: <
vagy &
vagy ]]>
vagy --
.
Megjegyezendő, hogy az XML feldolgozóknak megengedett, hogy a
megjegyzések tartalmát eltávolítsák.
Ezért az elterjedt módszer a stíluslapok és
szkriptek "elrejtése" a "megjegyzésekbe", így téve a
dokumentumokat visszafele kompatibilissá. Bár ez nem úgy
működik az XML-alapú felhasználói alkalmazásokban, ahogyan
az elvárható.
C.5. Sortörés a tulajdonságértékeken belül
Tartózkodjunk a sortörésektől és a redundáns szóközöktől a tulajdonságértékeken belül, ugyanis a felhasználói alkalmazások nem következetesen kezelik ezeket.
C.6. Isindex
Nem tartalmazhat a dokumentum fejrésze (head
) több
isindex
elemet. Az isindex
elem elévült az input
elem miatt.
C.7. A lang
és a xml:lang
tulajdonságok
Használjuk mind a lang
, mind a xml:lang
tulajdonságokat az elem nyelvének
meghatározásához. A xml:lang
tulajdonság erősebb.
C.8. Töredékazonosítók
XML-ben, azok az URI referenciák [RFC2396], melyek "#foo"
formájú töredékazonosítókkal
végződnek, nem a name="foo"
tulajdonságú elemre hivatkoznak, hanem arra az elemre, melynek
tulajdonsága ID
típusú, pl. az
id
tulajdonság a HTML 4-ben. Sok létező HTML
kliens nem támogatja az ID
típusú
tulajdonságok használatát ilyen módon, így az
azonosító értékeket mindkét
tulajdonságnak eredményül kell adni biztosítva a
maximális kompatibilitást mind előre, mind hátra
(pl. <a id="foo" name="foo">...</a>
).
Továbbá az ID
típusú
tulajdonságok számára az érvényes
értékek halmaza sokkal kisebb, mint a CDATA
típusúak számára érvényes értékek halmaza, a name
tulajdonság
NMTOKEN
-re változott. E tulajdonsággal kapcsolatos megszorítás, hogy csak az ID
típusúakkal vagy az XML 1.0 2.3 fejezetében az 5. képzésben a Name
képzéssel azonos
értékeket vehessen fel. Sajnos ez a
megszorítást nem lehet kifejezni az XHTML 1.0 DTD-iben. E
változás miatt vigyázni kell a létező HTML-ek
konvertálásánál. Ezen tulajdonságok
értékeinek egyedieknek kell lenniük a dokumentumon
belül, érvényesnek, és az összes
hivatkozást erre a töredék azonosítóra (mind
belső, mind külső) frissíteni kell, ha az
értéke változott a konvertálás
során.
Megjegyzendő, hogy az XML 1.0 2.3 fejezetében az 5. képzésben szereplő lehetséges értékek halmaza sokkal nagyobb, mint a HTML ID
és NAME
típusainál megadottak. Töredékazonosítók definiálásánál a visszafele kompatibilitás érdekében csak a [A-Za-z][A-Za-z0-9:_.-]*
mintának megfelelő szövegek alkalmazhatóak. Lásd a [HTML4] 6.2 fejezetét.
Végezetül megjegyezendő, hogy az XHTML 1.0-ben elévült
az a
, applet
, form
,
frame
, iframe
, img
és
map
elemek name
tulajdonsága,
és a következő verziókból eltávolításra kerül.
C.9. Karakterkódolás
Történelmi okokból a HTML dokumentum karakterkódolását megadhatja a web szerver a HTTP Content-Type fejlécben, vagy megadható magában a dokumentumban a meta
elemben. Egy XML dokumentumban a karakterkódolás az XML deklarációban van megadva (pl. <?xml version="1.0" encoding="EUC-JP"?>
). A hordozhatóságot szem előtt tartva a legjobb megközelítés, ha a web szerver a megfelelő fejléct biztosítja. Amennyiben ez nem lehetséges, és a dokumentum maga szeretné definiálni a kódolását, mind a karakterkódolást megadó deklaráció, mind a meta
elem http-equiv tulajdonsága beállítandó (pl. <meta http-equiv="Content-type" content="text/html; charset=EUC-JP" />
). Az XHTML szabványnak megfelelő felhasználói alkalmazásokban az XML deklarációban megadott kódolás élvez elsőbbséget.
Megjegyzendő, hogy amennyiben a dokumentum karakterkódolása a meta elem http-equiv tulajdonságában szerepel, a HTTP szerverek és/vagy felhasználói alkalmazások mindig az ugyanitt definiált internet média típust használhatják. Ha a dokumentumot több média típusként is ki kell szolgálni, a HTTP szervernek kell a dokumentum kódolását beállítani.
C.10. Logikai tulajdonságok
Néhány HTML felhasználói alkalmazás
képtelen értelmezni a logikai tulajdonságokat, ha azok
teljes (nem minimalizált) formájukban vannak jelen, ahogy azt az
XML 1.0 megköveteli. Megjegyezzük, hogy ez a probléma nem
érinti a HTML 4 kompatibilis felhasználói
alkalmazásokat. A következő tulajdonságok tartoznak
ide: compact
, nowrap
, ismap
,
declare
, noshade
, checked
,
disabled
, readonly
, multiple
,
selected
, noresize
, defer
.
C.11. Dokumentum Objektum Modell és az XHTML
A Dokumentum Objektum Modell level 1 ajánlás [DOM] definiálja a dokumentum objektum modell interfészeket az XML és a HTML 4 számára. A HTML 4 dokumentum objektum modell specifikálja, hogy a HTML elemeket és tulajdonságneveket nagybetűsen kell visszaadni. Az XML dokumentum objektum modell specifikálja, hogy az elemeket és tulajdonságneveket olyan formátumban kell visszaadni, ahogyan specifikálva lettek. XHTML 1.0-ban az elemek és tulajdonságnevek kisbetűvel lettek specifikálva. Ez a nyilvánvaló különbség kétféleképpen kezelhető:
- Azon alkalmazások, melyek az XHTML-t úgy érik el, mint
text/html
Internet média típust alkalmazhatják a HTML DOM-ot DOM-ként, és biztosan nagybetűs formában adják vissza az elemeket és tulajdonságneveket az interfészen keresztül. - Azon alkalmazások, melyek az XHTML-t úgy érik el, mint
text/xml
vagyapplication/xml
Internet média típust, alkalmazhatják az XML DOM-ot. Az elemeket és tulajdonságneveket kisbetűs formában adják vissza. Tehát néhány XHTML elem megjelenhet vagy eltűnhet az objektumfából, mivel opcionálisak a tartalmi modellben (pl. atbody
elem atable
elemen belül). Ez bekövetkezhet, ugyanis a HTML 4-ben néhány elemre engedélyezett, hogy minimalizálva legyenek mind a nyitó, mind a záró tagjeik elhagyásával (ez egy SGML lehetőség). Ez nem lehetséges az XML-ben. Ahelyett, hogy a dokumentum szerzője extra elemeket illesszen be, az XHTML ezeket az elemeket opcionálissá tette. A felhasználói alkalmazásokat erre kell felkészíteni. Ezzel a témával kapcsolatos bővebb információkat lásd a [DOM2] hivatkozásban.
C.12. &-jel használata tulajdonság értékekben
SGML-ben és XML-ben a & karakter az egyedhivatkozás kezdetét jelöli (pl. ® a registered trademark szimbólum ®). Sajnos több HTML felhasználói alkalmazás csendben figyelmen kívül veszi a & karakter hibás használatát - a & karaktert, amennyiben nem valós egyedhivatkozás, úgy kezelik, mint egy & literált. Az XML-alapú felhasználói alkalmazások nem engedik meg ezt a hibás használatot, hanem az ilyen dokumentumot érvénytelennek tekintik, mely nem felel meg ennek a specifikációnak. A dokumentum régi HTML és az XML-alapú felhasználói alkalmazásokkal való kompatibilitásának biztosításához a & karakter literált magát is egyedhivathozásként kell megadni (azaz &). Például, ha egy a
elem
href
tulajdonsága hivatkozik egy CGI szkriptre, amelyik tartalmaz paramétereket, akkor a következőképpen kell
kifejteni:
http://my.site.dom/cgi-bin/myscript.pl?class=guest&name=user
a http://my.site.dom/cgi-bin/myscript.pl?class=guest&name=user
helyett.
C.13 Kaszkádolt Stíluslapok (CSS) és az XHTML
A Kaszkádolt Stíluslapok level 2 ajánlása [CSS2] stílusjellemzőket definiál, melyeket alkalmazni kell a HTML vagy XML dokumentum elemző fájára. Az elemzésbeli különbségek különböző vizuális vagy megjelenési hatásokat válthatnak ki, a kiválasztott selectortól függően. A következő tanácsok csökkenteni fogják ezeket a hatásokat azon dokumentumoknál, melyeket módosítás nélkül mindkét médiatípusként kiszolgálnak:
- XHTML számára készített CSS stíluslapoknak kisbetűs elemeket és tulajdonságneveket kell alkalmazniuk.
- Táblázatokban a tbody elemet a HTML felhasználói alkalmazás figyelembe veszi, míg az XML felhasználói alkalmazás nem. Ezért mindig explicit meg kell adni a tbody elemet, ha ez hivatkozik egy CSS selectorra.
- Az XHTML névtéren belül a felhasználói alkalmazásoktól elvárható, hogy az id tulajdonságot ID típusú tulajdonságnak ismerjék fel. Ezért a stíluslapoknak képeseknek kell lenniük használni a rövidített "#" szelektort, még akkor is, ha a felhasználói alkalmazás nem olvassa a DTD-t.
- Az XHTML névtéren belül a felhasználói alkalmazásoktól elvárható, hogy felismerjék a class tulajdonságot. Ezért a stíluslapoknak képeseknek kell lenniük használni a rövidített "." szelektor szintaxist.
- CSS definiál különböző megfelelőségi szabályokat a HTML és XML dokumentumok számára; de vigyázni kell, hogy a HTML szabályok alkalmazása az XHTML dokumentumokra a HTML-hez vezet és az XML szabályok alkalmazása az XHTML dokumentumokra a XML-hez.
C.14. Hivatkozás a stílus elemekre, amennyiben XML-en belül jelennek meg
HTML 4-ben és XHTML-ben a style
elem használható stílus megadásra a dokumentumon belül. XML-ben, egy XML stíluslap deklaráció használható stílus megadására. Ezzel a szabállyal való kompatibilitás miatt a style
elemnek rendelkeznie kell egy töredék azonosítóval a id
tulajdonságban, és az XML stíluslap deklarációnak erre kell hivatkoznia. Pl.:
<?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="en" lang="en"> <head> <title>An internal stylesheet example</title> <style type="text/css" id="internalStyle"> code { color: green; font-family: monospace; font-weight: bold; } </style> </head> <body> <p> This is text that uses our <code>internal stylesheet</code>. </p> </body> </html>
C.15. White space karakterek használatának különbsége HTML és XML dokumentumban
Néhány karakter, mely megengedett HTML dokumentumokban, nem megengedett XML dokumentumokban. Pl. HTML-ben a formfeed karakter (U+000C) white space karakterként kezelt, míg XHTML-ben, az XML karakter definíciói miatt, szabálytalan.
C.16. Az &pos; Nevesített Karakter Hivatkozás
A &pos; Nevesített Karakter Hivatkozás (aposztróf, U+0027) az XML 1.0-ban került bevezetésre, de nem létezik a HTML-ben. Emiatt a szerzőknek javasolt a '
használata a '
helyett a HTML 4 felhasználói alkalmazásokkal való kompatibilitás miatt.
D Köszönetnyilvánítások
Ez a függelék tájékoztató jellegű.
Ez a specifikáció a W3C HTML Working Group tagjainak részvételével íródott.
A második kiadás megjelenésekor tagjai voltak:
- Steven Pemberton, CWI/W3C (HTML Working Group Chair)
Daniel Austin, Grainger
Jonny Axelsson, Opera Software
Tantek Çelik, Microsoft
Doug Dominiak, Openwave Systems
Herman Elenbaas, Philips Electronics
Beth Epperson, Netscape/AOL
Masayasu Ishikawa, W3C (HTML Activity Lead)
Shin'ichi Matsui, Panasonic
Shane McCarron, Applied Testing and Technology
Ann Navarro, WebGeek, Inc.
Subramanian Peruvemba, Oracle
Rob Relyea, Microsoft
Sebastian Schnitzenbaumer, SAP
Peter Stark, Sony Ericsson
Az első kiadás megjelenéskor tagjai voltak:
- Steven Pemberton, CWI (HTML Working Group Chair)
Murray Altheim, Sun Microsystems
Daniel Austin, AskJeeves (CNET: The Computer Network through July 1999)
Frank Boumphrey, HTML Writers Guild
John Burger, Mitre
Andrew W. Donoho, IBM
Sam Dooley, IBM
Klaus Hofrichter, GMD
Philipp Hoschka, W3C
Masayasu Ishikawa, W3C
Warner ten Kate, Philips Electronics
Peter King, Phone.com
Paula Klante, JetForm
Shin'ichi Matsui, Panasonic (W3C visiting engineer through September 1999)
Shane McCarron, Applied Testing and Technology (The Open Group through August 1999)
Ann Navarro, HTML Writers Guild
Zach Nies, Quark
Dave Raggett, W3C/HP (W3C lead for HTML)
Patrick Schmitz, Microsoft
Sebastian Schnitzenbaumer, Stack Overflow
Peter Stark, Phone.com
Chris Wilson, Microsoft
Ted Wugofski, Gateway 2000
Dan Zigmond, WebTV Networks
E. Hivatkozások
Ez a függelék tájékoztató jellegű.
- [CSS2]
- "Cascading Style Sheets, level 2 (CSS2) Specification", B. Bos, H. W. Lie, C. Lilley, I. Jacobs, 12 May 1998.
Legfrissebb verzió elérhető: http://www.w3.org/TR/REC-CSS2 - [DOM]
- "Document Object Model (DOM) Level 1 Specification", Lauren Wood et al., 1 October
1998.
Legfrissebb verzió elérhető: http://www.w3.org/TR/REC-DOM-Level-1 - [DOM2]
- "Document Object Model (DOM) Level 2 Core Specification", A. Le Hors, et
al., 13 November 2000.
Legfrissebb verzió elérhető: http://www.w3.org/TR/DOM-Level-2-Core - [HTML]
- "HTML 4.01 Specification", D. Raggett, A. Le Hors, I. Jacobs, 24 December 1999.
Legfrissebb verzió elérhető: http://www.w3.org/TR/html401 - [POSIX.1]
- "ISO/IEC 9945-1:1990 Information Technology - Portable Operating System Interface (POSIX) - Part 1: System Application Program Interface (API) [C Language]", Institute of Electrical and Electronics Engineers, Inc, 1990.
- [RFC2045]
- "Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies", N. Freed and N. Borenstein, November 1996. Note that this RFC obsoletes RFC1521, RFC1522, and RFC1590.
- [RFC2046]
- "RFC2046: Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types", N. Freed and N. Borenstein, November 1996.
Elérhető a http://www.ietf.org/rfc/rfc2046.txt címen. Megjegyzendő hogy ez az RFC elavulttá teszi a RFC1521, RFC1522, és RFC1590 szabványokat. - [RFC2119]
- "RFC2119: Key words for use in RFCs to Indicate Requirement Levels", S. Bradner, March 1997.
Elérhető: http://www.ietf.org/rfc/rfc2119.txt - [RFC2376]
- "RFC2376: XML Media Types", E. Whitehead, M. Murata, July 1998.
Ez a dokumentum elavult a [RFC3023] szabvány miatt.
Elérhető: http://www.ietf.org/rfc/rfc2376.txt - [RFC2396]
- "RFC2396: Uniform Resource Identifiers (URI): Generic Syntax", T. Berners-Lee, R. Fielding, L. Masinter, August 1998.
This document updates RFC1738 and RFC1808.
Elérhető: http://www.ietf.org/rfc/rfc2396.txt - [RFC2854]
- "RFC2854: The text/html Media Type", D. Conolly, L. Masinter, June 2000.
Elérhető: http://www.ietf.org/rfc/rfc2854.txt - [RFC3023]
- "RFC3023: XML Media Types", M. Murata, S. St.Laurent, D. Kohn, January 2001.
Ez a dokumentum elavulttá teszi a [RFC2376] szabványt.
Elérhető: http://www.ietf.org/rfc/rfc3023.txt - [RFC3066]
- "Tags for the Identification of Languages", H. Alvestrand, January 2001.
Elérhető: http://www.ietf.org/rfc/rfc3066.txt - [RFC3236]
- "The 'application/xhtml+xml' Media Type", M. Baker, P. Stark, January 2002.
Elérhető: http://www.ietf.org/rfc/rfc3236.txt - [XHTML+MathML]
- "XHTML plus Math 1.1 DTD", "A.2 MathML as a DTD Module", Mathematical Markup Language (MathML) Version 2.0. Elérhető: http://www.w3.org/TR/MathML2/dtd/xhtml-math11-f.dtd
- [XHTMLMIME]
- "XHTML Media Types", Masayasu Ishikawa, 1 August 2002.
Legfrissebb verzió elérhető: http://www.w3.org/TR/xhtml-media-types - [XHTMLMOD]
- "Modularization of XHTML", M. Altheim et al., 10 April 2001.
Legfrissebb verzió elérhető: http://www.w3.org/TR/xhtml-modularization - [XML]
- "Extensible Markup Language (XML) 1.0 Specification (Second Edition)", T. Bray, J. Paoli, C. M. Sperberg-McQueen, E. Maler, 6 October
2000.
Legfrissebb verzió elérhető: http://www.w3.org/TR/REC-xml - [XMLNS]
- "Namespaces in XML", T. Bray, D. Hollander, A. Layman, 14 January 1999.
Az XML névterek használatával minősíthetőek az XML dokumentumban használt nevek, URI-val azonosított névterek hozzárendelésével.
Legfrissebb verzió elérhető: http://www.w3.org/TR/REC-xml-names - [XMLC14N]
- "Canonical XML Version 1.0", J. Boyer, 15 March 2001.
Ez a dokumentum leír egy metódust egy XML dokumentum egy fizikai ábrázolására, a kanonikus formát.
Legfrissebb verzió elérhető: http://www.w3.org/TR/xml-c14n