« 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 »
Autor Zpráva
Joker
Profil
Když už se roproudila debata o tom článku, tak můj pohled:

- Je pravda, že XHTML nevynucuje sémantiku a naopak HTML sémantiku neznemožňuje. Doufám, že nevyvolám flamewar, když to přirovnám k bezpečnosti Linuxu. I pro Linux jde napsat virus a škodlivý software. Jenže uživatelé Linuxu jsou typicky pokročilejší a zkušenější a mají systém lépe nastavený. U HTML vs XHTML je to totéž. V obecném povědomí je HTML; když už někdo začne psát v XHTML, obvykle už má nějaké informace a tak píše "čistší" kód a používá CSS.
Navíc, i když si to nevynucuje samotný jazyk, víc se na to (i díky výše uvedenému) dbá prakticky: zatímco v HTML člověk může vidět spoustu příkladů, jak kód napatlat v tabulkách a <font> a <center> atd. při výuce XHTML už se rovnou dbá na sémantiku a použití CSS.
A proto taky podle mě spousta lidí dospěla k názoru, že v XHTML to ani jinak dělat nejde.

- Přesto XHTML možná opravdu podporuje sémantiku víc: pravidla HTML ve mně totiž budí dojem, že hlavní je si ušetřit práci při psaní stránky. Proč psát </p>, to za mě udělá prohlížeč. Na co se psát s <html><head><title>Něco</title></head>, když stačí jen <title>Něco</title> a bude to fungovat taky? ...no a místo <p style="text-align:center"> můžu přeci napsat jenom <center> a bude to fungovat stejně dobře. Místo přemýšlení nad float, margin, clear atd. tam můžu prostě namydlit <tr><td><td>... což bude sice delší, ale nedá to tolik přemýšlení a bude to taky fungovat.
Zatímco v XHTML je hlavní struktura dokumentu. Nesoustředím se na to, jak si ušetřit práci při psaní stránky, ale který prvek kam patří. V tomhle pohledu tedy XHTML sémantiku opravdu podporuje.

- Chamurappi tu často používá argument, že je zásadní chyba (no, minimálně chyba) posílat XHTML dokument s datovým typem text/html. Podle mě to chyba není. Žádnému známému prohlížeči to nedělá problém a všechny prohlížeče někdy od roku 1999 by s tím měly počítat.
Z článku:
Posíláte-li cokoliv s MIME typem „text/html“, oznamujete všem cílovým zařízením, že jde o HTML dokument. Nehledě na <!doctype>. Prohlížeč očekává zdroj dodržující syntaxi HTML, proto na něj pustí HTML parser. Když se z jeho pohledu vůbec nic nemění, tak jakápak vyšší přístupnost?
Sice ne tak jak je to v článku myšleno, ale ona to je vyšší přístupnost! Získali jsme definici XML dokumentu zpracovatelného HTML parserem. Jelikož XML dokument je možné převádět na libovolný jiný XML dokument, získali jsme možnost webovému prohlížeči zpřístupnit libovolný XML dokument. Cenou za to je, že se v HTML musíme vzdát některých možností poskytovaných nám SGML, které se ovšem stejně nikdy nevyužívaly.
Tin
Profil
Reaguji na Tina:
Jsou dvě rozšířené varianty toho jména: jedno s dvěma m, druhé s dvěma p. Zvolil jsem to méně rozšířené, abych se jednodušeji našel.
A já si říkal, jestli tam nejsou ty dvě em... ;-)

Ad Joker
první odstavec -- souhlas
druhý -- </p> nemá na sémantiku vliv
Joker
Profil
ad "chammurapi"/"chamurappi"... ještě jsem viděl variantu s "b", "chammurabi".

Tin
</p> nemá na sémantiku vliv
Ne, to ne, ale ten způsob uvažování, s nadsázkou řečeno "Začíná to vynecháním </p> a končí u <table><tr><td><font><center><b>" :-)
Nevím teda nakolik je to legitimní "obvinění", ale alespoň na mě tahle pravidla v HTML tak působí, jako že jde hlavně o to si ušetřit práci při psaní kódu.
habendorf
Profil
quinux: Anonymní článek, který zesměšňuje konkrétní lidi považuješ za dobrý?

1) není anonymní, je od Chamurappiho
2) nikoho nezesměšňuje
3) já ho třeba považuju za dobrý


Chamurappi: Povedený článek. Pravda, nepřináší žádné zásadní objevy, spíše rekapituluje již stokrát omleté, ale chápu, že se na to dívám očima člověka, který sleduje zdejší diskuzi i webylon. Pro někoho jiného může být článek revoluční.
habendorf
Profil
Joker:

Zatímco v XHTML je hlavní struktura dokumentu.
V HTML také.

Nesoustředím se na to, jak si ušetřit práci při psaní stránky
A to já zas jo.

V tomhle pohledu tedy XHTML sémantiku opravdu podporuje.
XHTML podporuje sémantiku úplně stejně jako HTML. Podporuje ji v tom smyslu, že kodérům nabízí různé tagy pro různé prvky stránek. Jak se toho který kodér zhostí není otázkou nějakého X.
Pajuc
Profil *
quinux
I anonymní článek může být dobrý. Vzpomeň si, kolik lidí se proslavilo právě pod svým pseudonymem. Třeba básník Vašek (aka Bezruč). Mi akorát u Chamurappiho vadí, že má tendenci zjednodušovat skutečnosti (př. "Nebýt IE, byla by zde jiná největší brzda.") tak, aby to bylo "kompatibilní" s jeho názory. V podobě zmiňovaného článku tak skvělou práci IMHO degraduje na průměr, protože když čtenáři musí oddělovat fakta od fikcí, nelze asi článek označit za skvělý.

Druhá věc. Chamurappi se až zas tak neskrývá. Zkus propátrat český internet a zjistíš, že lidí, kteří mají takové rozsáhlé vědomosti, mimořádné argumentační schopnosti a posedlost přesvědčovat ostatní o své pravdě není mnoho. Najdeš tak dva, nebo tři. Pak už stačí udělat rozbor textů (sloh, stavba vět, atd.) a máš Chamurappiho identitu jako na talíři. Je však třeba, aby sis položil otázku, jestli ti na tom opravdu tak moc záleží.

Chamurappi, děkuji za pokus o vyjasnění, ale asi sis špatně přečetl otázku. Ta zněla: „Mohl by mi někdo vysvětlit, co je vlastně tak špatného na myšlence podřídit HTML syntaxi XML?“ a už na ni odpověděl Bubák.
Fingon
Profil
Tvůj příspěvek je absolutně irelevantní.

Logicky: Web má obsahovat informace. Pro podávání informací je určeno XML. XHTML je XML.
Teoreticky: Přísná pravidla ulehčují práci prohlížeči. Díky tomu mohou být prohlížeče efektivnější, platí to především pro prohlížeče mobilních zařízení.
Prakticky: XHTML jako XML není řádně podporováno, takže se degraduje na úroveň HTML.

Perfektní kód? Prasit se dá v HTML i v XHTML.
Kód nikoho nezajímá? Chyba! Dlouho se načítající tabulky zajímají leckoho. A pokud se BUF dostane na z vyhledávače na stránku, které má mít menu řešené pomocí rámů, má smůlu.
Lidé by proto měli psát jednoduché validní stránky, je jedno v čem, ale hlavně informativní, funkční a neotravující výše uvedenými a dalšími prasárnami.


Nechapu proc by jako mel byt muj prispevek irelevantni. To co sem rekl bylo k tematu (viz relevantnost - pokud vis co znamena toto cizi slovo ;-) :-D))
Nerekl si naprosto nic noveho. Jen si potvrdil to co sem rikal uz ja. Tzn.: Jak sem rikal, web. stranky jsou pro norm. lidi a ty nejaky kod nezajima. Tvorba stranek ma jit cestou efektivity, tzn. jak rikas bez ramu a slozitych tabulek, aby se to zobrazilo rychle, respektive vubec zobrazilo. To vse se ale s mou teorii nebije naopak je to porad o tom stejnem. Nejde o xhmtl ci html nejde validitu ci nevaliditu, jde o rychlost zobrazeni stranek, to co nabizeji ci podavaji a jak to nabizeji ci podavaji. Jde o informace a zabavu kterou clovek na netu hleda.
Prave tyto elementarni veci casto unikaji koderum stranek. Nekteri ste tak zaslepeni touhou psat validni kody, ze nepremyslite uz nad tim proc.. :-) A to je podle me chyba.
Railbot
Profil
Nekteri ste tak zaslepeni touhou psat validni kody, ze nepremyslite uz nad tim proc.. :-) A to je podle me chyba.
Touha po zeleném pruhu se slovem valid, který vypadne z validátoru je určitě pro mnoho lidí zážitek blízký orgasmu. Do této skupiny se však neřadí uvědomělí profesionálové (pro které je validní kód dobrá vizitka, ne však nutnost a svatý grál, za kterým by se měli za každou cenu honit) a amatéři, nýbrž jen lamy. Asi tak. Snad jsem nenapsal moc velký blábol :)
Joker
Profil
habendorf
XHTML podporuje sémantiku úplně stejně jako HTML. Podporuje ji v tom smyslu, že kodérům nabízí různé tagy pro různé prvky stránek.
Ale já píšu o něčem trochu jiném. A pro jistotu jsem ještě zdůraznil, že jde o můj osobní pohled.
Jde o to, že u pravidel HTML mě tak nějak napadá myšlenka "Jde o to si ušetřit práci při psaní kódu". Jenže pak tam není vidět ta struktura. Třeba tenhle kód:
<title>ahoj</title><p>Ahoj
je z pohledu HTML naprosto správně, ale nějaká struktura dokumentu z toho kódu teda patrná není. To může člověka, který nemá takové znalosti o zpracování HTML a té teorii (a takových je převážná většina), svádět k dojmu, že nějaká struktura je vedlejší a hlavní je si ušetřit práci, případně napsat krátký kód.


Každopádně, zopakuju svůj názor, kterým se dá vpodstatě otočit to, co třeba Chamurappi považuje za chybu, totiž odesílání XHTML jako text/html:
Já v tom naopak vidím přednost. Získali jsme způsob, jakým relativně bezpečně zpracovat XML soubor v HTML parseru. Což ovšem něco stálo. Vznikl potenciální konflikt s jednou SGML konstrukcí, která se v HTML ovšem nikdy nerozšířila a prohlížeče jí nepodporují. Podle mě je to přijatelná cena.

Při tomhle pohledu padá i další Chamurappiho argument:
- I kdyby celý web dneska přešel na XML, pořád budou i za deset let existovat prohlížeče, které budou umět jen HTML.
- A komu to vadí? Všechny známé "staré" prohlížeče umí správně zobrazit "kompatibilní XHTML". Jakýkoliv XML dokument je možné převést na kompatibilní XHTML a obráceně. Tedy libovolný XML dokument je možné převést do podoby zpracovatelné jakýmkoliv známým HTML prohlížečem.
AlešD
Profil
Joker:

Nechci se hádat, ale problém XHTML je někde docela jinde:

Před lety téměř každý (i já jako začínající amatér) vkládal do XHTML mnoho nadějí, které byly podporovány i masivní reklamou. A po 7 letech? Pořád ty samé sliby, ale přínos limitně se blížící k nule a navíc vývoj ustrnul v době před 5 lety.

Je hezké, že XHTML se (snad) snadněji parsuje v externích parserech, ale to je tak všechno. Parsery prohlížečů naopak musí řešit pro ně nesmyslné ukončení nepárových tagů.

Pro člověka prohlížejícího si stránky v XHTML žádný rozdíl. Ani se to rychleji nenačítá, ani to není lépe strukturované než HTML, hypotetická zařízení zobrazující jednoznačné XHTML neexistují (ani Chamurappiho inteligetní rychlovarná konvice bublající XHTML kód :-).

Pro člověka tvořícího stránky přínosy také mizivé. Přitom mínusy (větší objem kódu, nutnost psát všelijaké DOCTYPE, XML deklarace a podobné zhůvěřilosti) časem člověka tak otráví, že se na celé XHTML vykašle.

A činnost W3C je také chvílemi k pláči: MENU v HTML zavrhne a XHTML ho cpe zadními vrátky jako NL, dtto target="_blank". I když obecně činnost W3C uznávám a vážím si práce, kterou odvedli, v případě XHTML mi to přijde jako typicky cimrmanovská slepá ulička, kterou bylo třeba poznat, aby se po ní nikdo již nevydal.

Proto to zklamání, proto i odmítání něčeho, co má téměř nulový reálný přínos.

Mně je opravdu docela fuk, jestli budoucnost webu bude v obrozeném XHTML2 nebo HTML5 nebo v úplně něčem jiném, nebo jestli zůstane u HTML, tak jak ho známe, ale stav, kdy nedovařený polotovar (XHTML) je vydáván za manu nebeskou je dlouhodobě neudržitelný.

Takže jediné smysluplné použití XHTML je navýšení ceny webu pro zákazníka, který si podobnou věc vysloveně přeje. Dávám mu přece tu nejmodernější technologii oproti zasmrádlému HTML, že?
quinux
Profil
AlešD
Takže jediné smysluplné použití XHTML je navýšení ceny webu pro zákazníka, který si podobnou věc vysloveně přeje. Dávám mu přece tu nejmodernější technologii oproti zasmrádlému HTML, že?
Teda navyšovat cenu, jen kvůli toho, že zákazník chce XHTML, je doufám vtip.
AlešD
Profil
Je, ale trošku hořký...
Tin
Profil
ad quinux od AlešD
Podle mě to žádný vtip není: xhtml je módní záležitost a za módu se platí.
quinux
Profil
Tin
Podle mě to žádný vtip není: xhtml je módní záležitost a za módu se platí.
Móda nemóda, nepříjde mi normální chtít více peněz za nic.
AlešD
Profil
Nomální to není. A nemorální to je! A už jsem se s tím setkal.
Tin
Profil
Morální to není, ale proč ne? Máme tržní hospodářství, vše je otázkou nabídky a poptávky. Najde-li se někdo ochotný připlatit, proč mu nevyhovět?
Joker
Profil
AlešD
Parsery prohlížečů naopak musí řešit pro ně nesmyslné ukončení nepárových tagů.
Ovšem žádný s tím nemá problém.

Pro člověka prohlížejícího si stránky v XHTML žádný rozdíl.
Což je skvělé… zpětná kompatibilita s existujícími prohlížeči.

hypotetická zařízení zobrazující jednoznačné XHTML neexistují
IE6, IE7, Firefox, Opera… všechny obsahují XML parser.

Pro člověka tvořícího stránky přínosy také mizivé.
No to záleží. Mít dokument zpracovatelný HTML i XML parserem se může hodit. Bych řekl, že kdyby XHTML nevzniklo, dřív nebo později by stejně přišla nějaká technologie spojující HTML a XML.

Přitom mínusy (větší objem kódu, nutnost psát všelijaké DOCTYPE, XML deklarace a podobné zhůvěřilosti) časem člověka tak otráví, že se na celé XHTML vykašle.
DOCTYPE patří i k HTML dokumentu a i kdyby ne, třeba na posledním projektíku jsem zatím napsal nějakých 139kB kódu (HTML + CSS + JS + PHP), z toho XHTML DOCTYPE je z toho 93 bajtů. Dobře, ještě bych mohl ušetřit 13 bajtů vynecháním <html> a </html>, dalších 13 bajtů vynecháním <head> a </head>… prostě "zásadní úspora", kvůli tomu se na to fakt vykašlu.
Nehledě na to, že stránka se obvykle začíná psát z nějaké šablony.

Proto to zklamání, proto i odmítání něčeho, co má téměř nulový reálný přínos.
Spíš bych řekl, a v tom má Chamurappi pravdu, že se spousta lidí snaží hledat přínosy XHTML ve věcech, kde zrovna nic podstatného nepřináší.
Proč prostě neřekneme: Vzhledem k velkému rozšíření technologií XML a HTML je dobré mít možnost vyrobit dokument, který bude současně XML i HTML. Bude ho možné zpracovat XML parserem a současně bude možné ho zobrazit v existujících HTML prohlížečích. No a to je XHTML.


Tin
Podle mě to žádný vtip není: xhtml je módní záležitost a za módu se platí.
No, to záleží. Jako třeba ten týpek, co si u něj firma zaplatila vytvoření webu a tak jim udělal web. Na web dal robots.txt, kde bylo noindex, nofollow. O pár týdnů firma zjistila, že není ve vyhledávačích, týpek nabídl SEO optimalizaci… firma zaplatila, týpek smazal robots.txt a sláva, firma byla ve vyhledávačích.
Takže dělat se to dá dělat různě.
Otázka je, nakolik tohle poškozuje i toho samotného kodéra- asi jako kdyby hospoda měla v ceníku "Pivo: 15Kč. Pivo v extra čisté sklenici: 20Kč"
Prostě když si někdo nechává připlatit za něco, co by mělo být úplně normální, nebudí to podle mě zrovna seriozní dojem.
Tin
Profil
Prostě když si někdo nechává připlatit za něco, co by mělo být úplně normální, nebudí to podle mě zrovna seriozní dojem.
Samozřejmě se mu na to nesmí přijít... ;-)

Proč prostě neřekneme: Vzhledem k velkému rozšíření technologií XML a HTML je dobré mít možnost vyrobit dokument, který bude současně XML i HTML. Bude ho možné zpracovat XML parserem a současně bude možné ho zobrazit v existujících HTML prohlížečích. No a to je XHTML.
To zní docela přesvědčivě. Jediná IMHO poznámka: Velké rozšíření XML? Nebýt xhtml, nevím, že existuje.
quinux
Profil
Tin
Jediná IMHO poznámka: Velké rozšíření XML? Nebýt xhtml, nevím, že existuje.
Neříkej, že neznáš RSS, RDF, ATOM, XSLT atp.. ;o)
Joker
Profil
Jediná IMHO poznámka: Velké rozšíření XML? Nebýt xhtml, nevím, že existuje.
Njn, a já se s ním zas potkávám pořád.
habendorf
Profil
Jediná IMHO poznámka: Velké rozšíření XML? Nebýt xhtml, nevím, že existuje.

To jsi opravdu trochu přestřelil.
llook
Profil
Joker
pravidla HTML ve mně totiž budí dojem, že hlavní je si ušetřit práci při psaní stránky

HTML bylo zcela zjevně navrhované tak, aby co nejvíc šetřilo práci.

Nejčastěji užívané značky a parametry mají názvy optimalizované na rychlost psaní (a, href, b, p, br, hr), zatímco méně časté jsou pojmenované tak, aby se zase snáz pamatovaly (title, menu, frameset, accesskey).

Připadá mi, že u posledních počinů W3C se na tohle už nějak nepamatuje. Značku, která se na stránce objeví zpravidla jednou nebo dvakrát - menu - pojmenují nl a velmi často užívané tučné zvýraznění - b - pojmenují strong...

Co je tak špatného na snaze ušetřit si práci?

-------
To s tím /robots.txt myslím nemá daleko k úmyslnému uvedení v omyl za účelem zisku (jinými slovy podvod) a mám ten dojem, že jde o "urban legend".

Ale validní HTML je přinejmenším stejně tak "čistá sklenice", jako validní XHTML, ne? Asi jako kdyby hospoda měla v ceníku: Pivo do čisté sklenice s logem Y: 15 Kč, pivo do čisté sklenice s logem X: 20 Kč.
Joker
Profil
Co je tak špatného na snaze ušetřit si práci?
Záleží za jakou cenu, ale já právě psal, že se (mně osobně) zdá, že HTML preferuje to "šetření práce" za cenu méně přehledné struktury dokumentu (respektive méně zjevné). Zatímco XHTML preferuje jasné definování struktury dokumentu za cenu "ukecanějšího" kódu.
Z tohohle pohledu pak XHTML opravdu (o něco) víc podporuje sémantiku, protože člověk jasně vidí strukturu dokumentu.
Například já když začínal s HTML, bral jsem třeba v kódu "něco<p>něco jiného<p>ještě něco jiného" to <p> jako jakýsi "oddělovač odstavců", ne že by tam existoval nějaký odstavcový prvek a uvnitř něj text "něco jiného". To se pak může projevit tak, že člověk napíše něco<p><div style="...">něco jiného</div><p>... - "udělám odstavec", pak potřebuju blok formátovaného textu, další odstavec...


Ale validní HTML je přinejmenším stejně tak "čistá sklenice", jako validní XHTML, ne?
To ano, já psal "eXtra čistá" ;-) a nemusí to znamenat, že za těch 15 bude špinavá, ale tady je právě názorně vidět, že to přesně k té domněnce vede.
Tedy, pokud vím, že "čistý" XHTML kód je zhruba stejně obtížné napsat jako "čistý" HTML kód a najednou po mně někdo chce za čistý XHTML kód nějakou přirážku, vyvolává to podezření, že to HTML bude nějaké zprasené. Anebo že se mě dotyčný snaží obrat a potom bych si na něj dal pozor (mám věřit, že se mě nesnaží obrat i jinde?)
Chamurappi
Profil
Všem, kdo článek pochválili, děkuji za podporu.


Reaguji na quinuxe:
To může být i tím, že všechno co se o tobě ví je tvá přezdívka.
Spíš to je tím, že jsem je naštval. Chvíli potrvá, než vychladnou.

Přímo k obsahu článku se vyjádřil skoro jen JersyWoo. Z jeho útoku jsem se dlouho vzpamatovával.


Reaguji na starší příspěvek Jokera:
HTML není dovoleno zasílat s tímhle MIME typem
Které W3C doporučení to zakazuje?

K testu konzistence:
[1] a) se neřídí žádným doporučením
[2] a) se neřídí žádným doporučením
[3] a) se řídí doporučením XHTML
[4] c) se neřídí žádným doporučením
[5] a) se řídí doporučením HTML
[6] b) se neřídí žádným doporučením a je konzistentní s odpovědí na bod [2]

V poslední odpovědi se neshoduješ s prohlížeči, podle nich je správně a), v tom se řídí HTML doporučením.

Říkals, že máš rád programy, které dělají to, co chceš. To, co chceš, se většinou neřídí žádnou specifikací.
Říkals, že nemáš rád, když se řekne pravidlo následované seznamem výjimek. Zjevně ale sám žádáš výjimky.

Osobně bych volil to "prakticky".
Pokud by prohlížeč zvolil to „teoreticky“, byl by dle tebe vadný?
Neodpověděls mi na tu hypotetickou otázku: Kdybych opravil HTML parser Exploreru tak, aby znal SHORTTAG, čím bys hájil ty vadné HTML dokumenty psané XML syntaxí?


Reaguji na Jokera:
zatímco v HTML člověk může vidět spoustu příkladů, jak kód napatlat v tabulkách a <font> a <center> atd. při výuce XHTML už se rovnou dbá na sémantiku a použití CSS
Za to může především doba vzniku těch příkladů. Nové ukázkové kódy se vždy snaží dodržovat aktuální (nebo budoucí) módu. V době, kdy se pseudo-XHTML začalo prosazovat, frčel Transitional DTD a nikdo nezpochybňoval rovnost s HTML. Až později přišlo Strict-zatmění.
Mimochodem, na HTML existuje jedna skvělá učebnice, která k používání prezentačních elementů nijak nenabádá.

no a místo <p style="text-align:center"> můžu přeci napsat jenom <center> a bude to fungovat stejně dobře
Místo <p> ano, ale místo <div>u nemusí. Element <center> centruje všechno, kdežto text-align: center od vydání CSS 2 nesmí centrovat blokové elementy — Mozilla a Opera to respektují.

Žádnému známému prohlížeči to nedělá problém a všechny prohlížeče někdy od roku 1999 by s tím měly počítat.
V prosinci roku 1999 vyšlo HTML 4.01, které NET zápis zřetelně dovoluje.

Začíná to vynecháním </p> a končí u <table><tr><td><font><center><b>
Nesmysl. Já nepoužívám <table><tr><td><font><center><b> ze stejného důvodu, z jakého vynechávám </p>: je to jednodušší. Nesémantické elementy a atributy většinou zbytečně komplikují práci. Proč si každý XHTML-advokát myslí, že jsou prezentační prvky jazyka něčím lákavé? Děláte zakázané ovoce z něčeho, co není k žrádlu.


Reaguji na Pajuce:
Tvá metoda cukru a biče, kdy mě jednak za něco rezervovaně chválíš a jednak mi něco vytýkáš, mě mate. Cením si odezvy, ale když v ní nevidím žádný vzorec, netuším, jaké mám vyvodit důsledky.

Mi akorát u Chamurappiho vadí, že má tendenci zjednodušovat skutečnosti (př. "Nebýt Exploreru, byla by zde jiná největší brzda.") tak, aby to bylo "kompatibilní" s jeho názory.
Přesně tato „zjednodušená skutečnost“ zjevně platí, protože Explorer XHTML podporuje a největší brzda jsou vyhledávače. Mám-li být konkrétní: Googlebot.


Reaguji opět na Jokera:
Libovolný XML dokument je možné převést do podoby zpracovatelné jakýmkoliv známým HTML prohlížečem.
Nejspolehlivěji pomocí <xsl:output method="html"/>, hovoříme-li o XSLT. Ostatní známé metody strojového generování nezaručují kompatibilní výsledek.

Vzhledem k velkému rozšíření technologií XML a HTML je dobré mít možnost vyrobit dokument, který bude současně XML i HTML
Zvláštní manévr. Nejsi první, koho napadlo radovat se z pseudo-XHTML. Dostáváš se tím na druhou stranu barikády. Vlastně obou barikád. Upřednostňuješ „text/html“ a nedodržování pravidel. Vítej v klubu.

Některé argumenty týkající se XHTML pak ovšem ztrácí svůj základ:
1) Povinnost ukončovacích značek (zajišťujících tu tvoji přehlednost a zjevnost) v pseudo-XHTML chybí, vynucuje si je pouze speciální kontrolní nástroj. I pro normální HTML lze vytvořit speciální kontrolní nástroj, který bude vyžadovat nepovinné značky.
2) Jasná a průzračná pravidla XML zde pořád mají zákeřné výjimky: nadpis nikdy nejde narvat do <p>.
3) Syntaxe je stále silně vázaná na sémantiku elementů: vždy se píše <br />, <img />, <div></div>, <script>/*<![CDATA[ ]]>*/</script>. Samopopisnost XML struktury nemá uplatnění.
4) Sbohem, jmenné prostory!
5) Perspektiva: ona „nevyhnutelná“ budoucnost přeci nepočítá s typem „text/html“, ne?
6) Nejsou tu drastické tresty za fatální chyby XML => je výrazně menší motivace k opravám.
7) Některé fatální chyby XML jsou z pohledu HTML stoprocentně čisté => je i menší šance jejich odhalení v prohlížečích.

Poslední bod jsem nedávno pocítil v praxi. Potřeboval jsem extrahovat data z cizích XHTML dokumentů. Sáhl jsem tedy po hotovém XML procesoru. Většinou mu vstup chutnal, v několika případech však data pohřbil. Autor zpracovávaných dokumentů se smířil s tím, že je HTML prohlížeče zobrazí. Neproháněl je všechny validátorem, přestože na nich měl tu veledůležitou ikonku „Valid!“.

No a to je XHTML
Ne, to je jen XML syntaxe v HTML :-)
Pojem „kompatibilní XHTML“ je matoucí. Udržuje mýty, což se mi nelíbí.
Joker
Profil
Chamurappi
Které W3C doporučení to zakazuje?
Třeba samotná definice HTML dokumentu: "A message entity with a content type of `text/html' represents an HTML document,..." Já myslel, že hlavní argument proti "kompatibilnímu XHTML" je právě to, že se "nabourává" do téhle definice (ve smyslu, že 'text/html' už nemusí znamenat jen HTML dokument, ale taky kompatibilní XHTML).

K testu konzistence:
Proto jsem taky dal odpověď "teoreticky" - přesně podle specifikace a "prakticky" - podle skutečné implementace té specifikace. To "teoreticky" je, co bych po přečtení specifikací od ideálního prohlížeče očekával, to "prakticky" je, jak bych ten prohlížeč já dělal :-) No a jaký je v tom rozdíl: pokud vím, že v praxi úplně všichni používají možnost A, přestože úplně přesně neodpovídá specifikaci, implementoval bych možnost A.

Pokud by prohlížeč zvolil to „teoreticky“, byl by dle tebe vadný?
Byl by nekompatibilní se všemi existujícími prohlížeči. Ale "vadný" by nebyl, podle XHTML specifikace by se žádný z těch zápisů neměl vůbec v dokumentu objevit, tak je na prohlížeči, jak takovou situaci vyřeší. Mohl by se striktně držet HTML specifikace anebo to dělat jako všichni ostatní.

Proč si každý XHTML-advokát myslí, že jsou prezentační prvky jazyka něčím lákavé?
No protože třeba <center> je přece jednodušší a kratší, než <div style="text-align: center">. A TR-TD je jednodušší, než se naučit dělat plovoucí prvky.

Kdybych opravil HTML parser Exploreru tak, aby znal SHORTTAG, čím bys hájil ty vadné HTML dokumenty psané XML syntaxí?
Kdyby to v Exploreru bylo, asi by XHTML vypadalo jinak. Kdyby se to tam zavedlo teď, dá se hájit velmi jednoduše: XHTML specifikací.

Nejspolehlivěji pomocí <xsl:output method="html"/>, hovoříme-li o XSLT.
Problém je, že tohle je "jednosměrka". Navíc není jen XSLT, třeba v PHP spíš než XSLT využiju normální XML parser.

Vlastně obou barikád. Upřednostňuješ „text/html“ a nedodržování pravidel.
Ad nedodržování pravidel: Byla vůbec někdy nějaká specifikace implementovaná doslova tak jak byla napsaná? I zákony se předělávají a upravují (a to dokonce i v zemích, kde jsou zákonodárci schopní hned napoprvé přijmout zákon, který není úplný zmetek). Proto nevidím až tak fatální problém, že nějaká část specifikace se prostě v praxi neuchytila a tak se v další specifikaci využila jinak.
Ad "Upřednostňuješ „text/html“", pro HTML parser určitě.

Některé argumenty týkající se XHTML pak ovšem ztrácí svůj základ
Většinou neztrácejí. Pořád je to přeci XML kód.

2) Jasná a průzračná pravidla XML zde pořád mají zákeřné výjimky: nadpis nikdy nejde narvat do <p>.
Jen v HTML parseru. A ono spoléhat na to, že konstrukce, kterou žádná specifikace nedovoluje, bude někde fungovat, je "poněkud ošidné".

4) Sbohem, jmenné prostory!
Pokud se nepletu, tak v XHTML stejně nejsou povolené (resp. celý dokument musí být v jediném jmenném prostoru, a to XHTML)

Perspektiva: ona „nevyhnutelná“ budoucnost přeci nepočítá s typem „text/html“, ne?
Ale to mi přece nevadí. Typ text/html slouží ke kompatibilitě s HTML parserem, stačí mi přece změnit typ na XML a pojede mi to stejně dobře v XML parseru.

Většinou mu vstup chutnal, v několika případech však data pohřbil.
Tak ale to je chyba toho, že to autor blbě napsal a ne samotného XHTML. Taky můžu napsat "něco jako HTML" tak, že to žádný prohlížeč správně nezobrazí. A kdyby ten kód bylo HTML, tak to ten parser nepřečte vůbec.
Mastodont
Profil
stačí mi přece změnit typ na XML a pojede mi to stejně dobře v XML parseru

Ano, pojede. Ale proč to tedy psát jako XHTML?? Proč to nenechat v čistém XML a transformovat podle potřeby? A když pro browser, tak proč ne přímo do HTML?
Chamurappi
Profil
Reaguji na Jokera:
Třeba samotná definice HTML dokumentu: "A message entity with a content type of `text/html' represents an HTML document,..."
Já se ptal, které W3C doporučení zakazuje posílat HTML s XML MIME typem. Říkals, že při používání HTML/XHTML nejsi současně povinen dodržovat XHTML/HTML.

Proto jsem taky dal odpověď "teoreticky" - přesně podle specifikace a "prakticky" - podle skutečné implementace té specifikace.
Já se ptal, jak by to mělo podle tebe správně fungovat. Existující implementace neuvažuj.

Ale "vadný" by nebyl, podle XHTML specifikace by se žádný z těch zápisů neměl vůbec v dokumentu objevit
... až na [1] a [3].

No protože třeba <center> je přece jednodušší a kratší, než <div style="text-align: center">
Ale nefunguje stejně.
Nevybrals dobrý příklad, já <center> považuji za skoro stejně čisté řešení jako <div style="text-align: center">. Oba dva říkají o svém obsahu totéž. Kde máš jakou sémantiku?

A TR-TD je jednodušší, než se naučit dělat plovoucí prvky.
O učení se nebyla řeč, bavíme se o šetření práce. Naučit se, kde lze vynechat </p>, je také těžší, než naučit se psát ho všude.

Kdyby se to tam [do Exploreru] zavedlo teď, dá se hájit velmi jednoduše: XHTML specifikací.
Opravdu? Můžu tedy teď vynadat Exploreru, Mozille a Opeře za to, že v „text/html“ nechápou <div/>? Můžu jim vynadat, že nekončí s fatální chybou, pokud neuvedu lomítko v <img/>?

Navíc není jen XSLT, třeba v PHP spíš než XSLT využiju normální XML parser.
K převodu „do podoby zpracovatelné jakýmkoliv známým HTML prohlížečem“? Parser jen data načítá, ne?

Proto nevidím až tak fatální problém, že nějaká část specifikace se prostě v praxi neuchytila a tak se v další specifikaci využila jinak.
24. prosince 1999: „HTML je pořád SGML aplikace umožňující NET-zápis.“
26. ledna 2000: „Použijeme NET-zápis k něčemu úplně jinému, neujal se.“
Považuješ těch 33 dní za dostatečně dlouhou dobu?

A ono spoléhat na to, že konstrukce, kterou žádná specifikace nedovoluje, bude někde fungovat, je "poněkud ošidné".
Pár stránek zpátky jsi s pomocí sestry nadával, že v „text/html“ nejdou vytvořit tyhle nedovolené konstrukce, kdežto v XHTML to jde. Chtěls, aby fungovaly i nesmysly. Proto ti teď říkám: v pseudo-XHTML fungovat nikdy nebudou.

Pokud se nepletu, tak v XHTML stejně nejsou [jmenné prostory] povolené
XHTML Modularizace s nimi počítá.

Tak ale to je chyba toho, že to autor blbě napsal a ne samotného XHTML.
Ano, autor udělal chybu. Jenže já ji musím obcházet. Drakonismus v tomto případě nemotivuje autora k opravení chyby, protože při „text/html“ se nezabíjí. Když mi 99 % dokumentů projde a kvůli 1 % stejně musím použít HTML parser, tak se můžu na celé XML vybodnout a nasát HTML parserem všechno.
Joker
Profil
Říkals, že při používání HTML/XHTML nejsi současně povinen dodržovat XHTML/HTML.
Jenže tohle říká HTML specifikace, HTML 4.01 v sekci 4.3: Entita zprávy s datovým typem text/html reprezentuje HTML dokument. Jelikož jiný typ uvedený není, předpokládal bych, že HTML dokument může být reprezentován jen typem text/html.

Já se ptal, jak by to mělo podle tebe správně fungovat. Existující implementace neuvažuj.
Kdyby neexistovaly žádné jiné prohlížeče, tak podle těch odpovědí "teoreticky". Ale podle mě je legitimní a nakonec i nutné vzít při "jak by to mělo správně fungovat" do úvahy i jak to dělají existující prohlížeče. Viz třeba někdy před třemi lety, kdy argument proti alternativním prohlížečům byl, že v nich nefungují některé stránky. Sice byly "špatně napsané" a třeba detekovaly přímo IE, ale to většinu lidí až tak nezajímalo.

až na [1] a [3]
Ani <iframe/> a <br/> by se nemělo používat v XHTML dokumentu posílaném s typem text/html.

Nevybrals dobrý příklad
No to je takhle bez dalšího kódu možná pravda, ale tak třeba <ul><li><b>něco</b></li> je taky jednodušší, než <ul><li style="font-weight:bold">něco</li>

Parser jen data načítá, ne?
No ale jednak v HTML si moc nepočte a jednak když si v PHP pomocí set_element_handler() a set_character_data_handler() přiřadím vhodné funkce, můžu při tom načítání dělat vpodstatě cokoliv.

Považuješ těch 33 dní za dostatečně dlouhou dobu?
Předchozí verze HTML snad ten zápis dovolovaly taky, ne?

Proto ti teď říkám: v pseudo-XHTML fungovat nikdy nebudou.
No jasně. Já bych radši, aby to fungovalo "podle XML", protože to je podle mě přehlednější. Ale zároveň vím, že při text/html to prostě fungovat nebude.

Mastodont
Proč to nenechat v čistém XML a transformovat podle potřeby?
A proč nemít XHTML bez nutnosti ho nějak transformovat?
Mastodont
Profil
Joker

Když nepotřebuji transformovat, ale jen zobrazit, tak stačí validní HTML, ne?
AlešD
Profil
Joker:<ul><li><b>něco</b></li>, co se ti na tom nelíbí?
« 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 »

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: