Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia Tuesday TopDrive KupDnes Navrcholu Bomba NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Vlákno názorů k článku
SQL si razí cestu do HTML5

Daniel Kvasnička ml. aura:64
12. 6. 2007 12:03

Nevalidni XML?

Uz se vazne tesim, az tenhle non-well-formed mor dorazi do ostatnich jazyku. Az se najdou psychopati, co zacnou psat prekladace na syntakticky spatne PHP, Python a tak... a pak budem psat webove aplikace tak, ze si sednem k pocitaci, zavazem si oci satkem, tak 10.000 krat bouchnem do klavesnice, export na FTP a ...voila! Aplikace funguje!

Je mi z toho zle. XML je jazyk se syntaktickymi pravidly jako kazdy jiny. Nechapu, proc ma porad nekdo problem nepsat prekrizene tagy a podobne zvrhlosti (v Notepadu mozna). U HTML, ktere vyplivuji vsechny mozne WYSIWYG editory, je motivace relativne pochopitelna, ale cpat tenhle pekelny trend do XML, to zasluhuje trest.
Tomáš Znamenáček aura:36
12. 6. 2007 14:33

Re: Nevalidni XML?

Taky tomu nerozumím. Autor píše, že people tend to generate content using string concatenation which makes it very hard to guarantee well-formed XML. Což absolutně nechápu, protože generování well-formed XML mi přijde triviální. (Možná tak člověk v zápalu první pětiminutovky zapomene kódovat ostré závorky a ampersand, ale to je vážně jediný problém, který mě napadá.)
Daniel Kvasnička ml. aura:64
12. 6. 2007 15:02

Re: Nevalidni XML?

Ono je hlavne smutne, ze se rozsiruje to "string concatenation". Kazdy mainstreamovy jazyk ma uz dnes nejaky slusny nastroj na praci s DOMem nebo principialne podobnymi reprezentacemi XML. Jenze diky blbostem jako treba innerHTML v JS bohuzel neni vubec problem udelat humus stranku.
Polik
Polik (neregistrovaný)
12. 6. 2007 15:40

Re: Nevalidni XML?

Samozrejme, produktivita prace je mnohem vyssi, kdyz budu muset dvacetkrat zavolat document.createElement, appendChild, insertBefore... nez kdyz to vyresim jednim parent.innerHTML. Ale nepřijde mi že zrovna tím by něco trpělo.
Skládat v třeba PHP stránky přes něco zpracovávající XML, nejsem si jistý, že větší weby, které právě s tím spojováním řetězců mohou mít problém, by nepocítily rozdíl ve výkonu.
Daniel Kvasnička ml. aura:64
12. 6. 2007 23:06

Re: Nevalidni XML?

Na volani tech DOM metod si muzete napsat jednu funkci, a jste na tom stejne jako s innerHTML, jen mate jistotu, ze dokument bude validni a navic pri mnohonasobnem pouziti i mnohem vetsi rychlost nez u innerHTML (ktera musi cely dokument serializovat na text, vlozit fragment a zpatky).

Co se tyka PHP, jsem velkym fanouskem podle me hezkeho a elegantniho XML-based templatovaci enginu PHPTAL, implementace Zope TAL. Z mailinglistu a od autora vim, ze i na vetsich webech je to v pohode.
Daniel Kvasnička ml. aura:64
12. 6. 2007 23:09

Re: Nevalidni XML?

Tedy jednu fci mozna ne, ale zprijemnit se DOM da... lepsi nez pak hledat kde mi innerHTML dela bordel.
Lisper
Lisper (neregistrovaný)
13. 6. 2007 19:03

Re: Nevalidni XML?

Vaše blbost, že nemáte slušnou literálovou syntaxi na stromové struktury s interpolací výrazů. Za to XML nemůže. :-)
Lisper
Lisper (neregistrovaný)
13. 6. 2007 19:08

Re: Nevalidni XML?

Jo, ještě to taky může být vaše neschopnost používat http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-357.pdf nebo neschopnost Microsoftu http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-357.pdf nnaimplementovat (jak víme, s tím všechno stojí a padá). Ale jinak jsou veškeré překážky jen čistě ve vaší hlavě.
Honza
Honza (neregistrovaný)
13. 6. 2007 14:34

Re: Nevalidni XML?

Blázne... Co třeba, pokud chceš ajaxem zobrazit náhled komentáře napsaného v Texy? (podívej se na http://texyla.jaknato.com/) To uděláš jak? Občas se přece jen to innerHTML hodí ;-)
Daniel Kvasnička ml. aura:64
13. 6. 2007 14:50

Re: Nevalidni XML?

Staci u AJAXu misto responseText pouzit responseXML, obsah odpovedi importovat pres document.importNode a appendChildem ho flaknout kam patri. Vyhoda? Validita a setreni pameti prohlizece, jelikoz se nemusi cely dokument serializovat na retezec a zpatky.
Honza
Honza (neregistrovaný)
19. 6. 2007 10:12

Re: Nevalidni XML?

a innerText nahradím <xmp>blabla</xmp> nebo čím jinak?
Daniel Kvasnička ml. aura:64
19. 6. 2007 11:11

Re: Nevalidni XML?

Ja se snazim vyhybat pouzivani proprietarnich fci, abych v tom nemel bordel... to radsi pouziju createTextNode nez abych pouzival innerText, ktery v Mozille nejede.

Doporucuju podivat se na Taconite (taconite.sf.net). Ciste AJAX knihovna, zadny moloch, zadne drag&dropy (nic proti nim, ale kdyz je zrovna clovek nepotrebuje...) a jeji princip fungovani se mi moc libi.
Martin Hassman aura:86
19. 6. 2007 11:23

Re: Nevalidni XML?

HTML5 standardizuje innerHTML, pokud vim, tak o innerText se neuvazuje.
Michal Kubeček
Michal Kubeček (neregistrovaný)
12. 6. 2007 15:00

Re: Nevalidni XML?

Inu, Héraklés dnešní doby by Augiášův chlév nečistil, ale přesvědčil by krále, že takhle je to vlastně pro všechny lepší a že se mají ostatní přizpůsobit jemu…
Timy
Timy (neregistrovaný)
12. 6. 2007 17:21

Re: Nevalidni XML?

Proč hned překřížené tagy? Mně se nápad, že by XML parsery byly trochu shovívavější, líbí. Některé už stejně jsou, tak co. Vezměte si třeba takovou obyčejnou RSS čtečku, používá jí kde kdo. Jak moc vás bude štvát, když vám čtečka nevyhodí chybu na nedefinovanou entitu, ale místo toho vás upozorní na nově napsaný článek? Bude vám jako uživateli vadit, když čtečka přehlédne, že máte v XML kódu element s neznámým jmenných prostorem a zobrazí vám upozornění na nový článek na Lupě?

Pokud to nepůjde do extrémů (jakože to IMHO nepůjde), tak ten nápad vítám.
pepa
pepa (neregistrovaný)
12. 6. 2007 17:39

Re: Nevalidni XML?

pokud nebude v xml žádná tolerance, tak autorum nezbyde nic jiného, než chyby opravovat, právě proto, že každá čtečka zobrazí chybu a autorovi nezbyde nic jiného než to opravit a na 99.9% to opraví. Naopak, když budou čtečky vůči chybám tolerantní, tak budou autoři rss generovat data s chybama a nakonec bude každá čtečka zobrazovat něco jiného, podle míry, jak se s chybou vypořádá. A máme tu bordel jako v html.
Timy
Timy (neregistrovaný)
12. 6. 2007 18:09

Re: Nevalidni XML?

Jenže ona každá čtečka tu chybu nezobrazí...

Navíc v příkladech co jsem dal nebude každá čtečka zobrazovat něco jiného - buď nezobrazí nic (případně chybu v parsování XML) --> to mi jako uživateli bude fakt hafo vyhohovat anebo přejde jeden ampersand a zobrazí mi hlášku o novém článku, jiná možnost není. Co je uživatelsky příjemnější? Kdybyste měl dvě téměř stejné čtečky, které by se lišily právě jen v parsování XML - jedna by byla přísná, druhá by drobné prohřešky odpouštěla - kterou byste si vybral?
J
J (neregistrovaný)
12. 6. 2007 20:05

Re: Nevalidni XML?

"jiná možnost není"

lol, jasne, nejsou zadne jine moznosti a proto jeste dnes zobrazuje web kazdy prohlizec jinak a to i v pripade, ze je napsan korektne. Jakmile se na nem vyskytne chyba, tak ze s kazdou dalsi pocet ruznych variant zobrazeni nasobi.

Proc bych mel v C psat stredniky, vzdyt kazdej blbec prece vi, de je konec prikazu, proc bych mel psat uzaviraci zavorky, vzdyt je zrejme, kde vyraz konci a ze sem tam zapomenu zavorku ve vyrazu ? Vzdyt prece ten prekladac ma vedet kde sem ji chtel udelat.

Naprosto zcestny pristup, aplikace ma mit samozrejme osetrene vstupy a pocitat s chybama, ale nema chyby zpracovavat, ma donutit uzivatele, aby je opravil.
Martin Hassman aura:86
12. 6. 2007 20:11

Re: Nevalidni XML?

Jen bych upozornil, ze jeden z velkych prinosu HTML5 je prave reseni otazky tag soup. Neco jsem o tom psal na
http://html456.blogspot.com/2007/05/dan-connolly-html-as-she-are-spoke.html
http://html456.blogspot.com/2007/05/faq-legitimizuje-html5-tag-soup.html

(ted nemluvim o XML5, ale opravdu jen o HTML5)
Timy
Timy (neregistrovaný)
12. 6. 2007 23:36

Re: Nevalidni XML?

Asi jste se spletl v tématu, bavíme se o XML, konkrétně RSS, nikoli o HTML.
pepa
pepa (neregistrovaný)
12. 6. 2007 20:18

Re: Nevalidni XML?

Možná, že by zobrazení chyb (nebo aspoň velké červené info přes půl obrazovky nad tím samoopraveným) místo snahy něco za autora dovymýšlet mělo ozdravný efekt. Určitě by to štvalo samotného autora, kdyby se na to díval tím netolerantním programem, nebo by mu tuhle informaci zprostředkovali nespokojení uživatelé. A třeba by s tím pak něco udělal a chyby odstranil. Ideální stav.
Timy
Timy (neregistrovaný)
12. 6. 2007 23:44

Re: Nevalidni XML?

Jaké dovymýšlení zase? Vidím nedefinovanou entitu, hmm, tak ji prostě zobrazím jak je &nedefinovaEntita;. Hotovo. Tečka. Žádné domýšlení. Hele, elementy z nedefinovaného jmenného prostoru, hmm, kašlu na ně, neznám je. Kde se tam něco domýšlí nebo hádá nebo spekuluje nebo věští z koule? Nechápu, proč si každý hned představí, že když dokument nemusí být nutně well-formed, že budou povoleny takové prasárny jako je křížení elementů... Každopádně stáčíte diskusi jinam a neodpovídáte mi na otázky, takže je zopakuji znova:
1. Bude vám jako uživateli vadit, když čtečka přehlédne, že máte v XML kódu element s neznámým jmenných prostorem a zobrazí vám upozornění na nový článek na Lupě?
2. Kdybyste měl dvě téměř stejné čtečky, které by se lišily právě jen v parsování XML - jedna by byla přísná, druhá by drobné prohřešky odpouštěla - kterou byste si vybral?
Michal Kubeček
Michal Kubeček (neregistrovaný)
13. 6. 2007 0:02

Re: Nevalidni XML?

1. Ano 2. Tu první.

Timy
Timy (neregistrovaný)
13. 6. 2007 12:40

Re: Nevalidni XML?

Mohu znát důvody, které vás vedou k tomu, že chcete od RSS čtečky namísto článků zobrazovat chybová hlášení?
pepa
pepa (neregistrovaný)
13. 6. 2007 13:08

Re: Nevalidni XML?

Když bude čtečka hlásit chyby (a nic nebrání, že kromě chyby zobrazí i nějaká data), tak to autory donutí ty chyby odstranit. A když se něco při generování rss podělá úplně a data budou místo rss obsahovat chybové hlášení serveru, tak budu raději vědět, že je problém a ne že mi čtečka dokáže vyparsovat 0 nových článků a já se pak divím, že se za týden žádný nový článek neobjevil.
PaJaSoft
PaJaSoft (neregistrovaný)
13. 6. 2007 14:10

Re: Nevalidni XML?

Pokud se i presto uzivatel dostane na "dalsi krok", nikdo to opravovat nebude... uvidite.
dgx aura:94
dgx
16. 6. 2007 1:09

Re: Nevalidni XML?Re: Nevalidni XML?

Chachá :-) Trvat na svém i za cenu udělání ze sebe blbce :-)
pepa
pepa (neregistrovaný)
13. 6. 2007 5:07

Re: Nevalidni XML?

2. Je nutné dělat prohřešky? Pokud není, mělo být cílem zamezení prohřešků, ne se jim za každou cenu přizpůsobit.
Když budete psát nějakou další aplikaci na zpracování dat a prohřešky se nebudou tolerovat, tak pojedete podle norem. Když se tolerovat budou, tak budete zjišťovat co jak která populární čtečka dovoluje zbastlit a butete se tomu muset přizpůsobit. A nejde jen o nové elementy a entity, ale o totální bastlení, kdy se kříží, neukončuje, elementy nejsou tam kde mají být.. co když se jedná o nějaké další data pro speciální aplikaci a uživatel podle normy očekává, že nebudou zobrazena a teď bude chytrá čtečka, která bude zobrazovat všechno co najde za všech okolností.
Timy
Timy (neregistrovaný)
13. 6. 2007 12:36

Re: Nevalidni XML?

S vámi je těžká diskuse, pořád do toho motáte křížení elementů a podobné prasárny. Ale já jsem už asi dvakrát psal, že tohle by samozřejmě být povolené nemělo a myslím, že ani nebude.
Když se tolerovat budou, tak budete zjišťovat co jak která populární čtečka dovoluje zbastlit a butete se tomu muset přizpůsobit.
Ale houby s mákem, nic nebudu zjišťovat. Napíšu to dle specifikace a hotovo. Ale pokud by se mi tam zatrousila chyba, že by se třeba v jednom blbém případě nepřevedl ampersand na entitu, mohl bych si být jistý, že to čtečka stejně zobrazí. Jestli si chci kontrolovat správnou sestavenost a validitu svého RSS kanálu, můžu si to kontrolovat (nějak automaticky) sám, nepotřebuju, aby mi to kontroloval každý uživatel. Ještě k prvnímu odstavci - nic není dokonalé, špatně sestavených RSS už jsem pár viděl.
pepa
pepa (neregistrovaný)
13. 6. 2007 13:16

Re: Nevalidni XML?

Nebavim se o tom, že vy generujete rss podle specifikace, ale že se budete snažit číst vlastní aplikací rss někoho jiného, které podle specifikace není, protože to ostatní prohlížečky samoopraví a vy pak nebudete aplikaci dělat podle specifikace, ale podle chování jiných čteček.
Yaroukh
Yaroukh (neregistrovaný)
18. 12. 2007 22:47

Re: Nevalidni XML?

Chci věřit, že jste nikdy nenadával na MSIE za to, že nedodržuje standardy.
Haha.
J
J (neregistrovaný)
13. 6. 2007 11:05

Re: Nevalidni XML?

Jestli jste to jeste nestihl pochopit, tak korektni XML tu neni kvuli lidem, ale kvuli dalsim sluzbam, ktere lide chteji pouzivat, jako treba hledani.

Docela by me zajimalo, co vam rekne financak, kdyz nevyplnite nejakou tu kolonku na danovem priznani. Vyhodi vas s tim, presto ze si to muzou z ostatnich kolonek spocitat. A to je naprosto korektni pristup.
Zasílat nově přidané příspěvky e-mailem