Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
sõnum |
|
Timukas0
HV kasutaja
liitunud: 20.03.2007
|
01.11.2009 15:15:24
Andke nõu: XMLi hierarhia |
|
|
Mõtlesin XML-põhise kalender-märkmik rakenduse teha. Pole varem XMLi kasutanud, äkki keegi soovitab, kuidas XMLi fail välja peaks nägema.
Korraga kuvatakse eelmise kuu viimased päevad, käesoleva kuu kõik päevad ja järgmise kuu esimesed päevad. Seega oleks vaja kõigepealt leida, kas selles vahemikus on mõni kalendrikirje. Kui on, siis vastav päev oleks hüperlink ja sellele peale vajutades kuvaks kõik sündmused antud päeval. Mõistlik oleks XML failis sissekanded kategooriatesse paigutada, et neile kiiresti ligi pääseks, aga ei tea, kuidas tavaks on.
Mulle tundus hea idee:
<aasta2009>
<kuu0>
<paev1>
<sissekanne1 />
<sissekanne2 />
</paev1>
<paev10>
<sissekanne3 />
</paev10>
</kuu0>
<kuu5>
<paev15>
<sissekanne4 />
</paev15>
</kuu5>
</aasta2009> |
Samas guugeldades sellist varianti silma ei hakanud, äkki on tal mingid vead, mida alguses tähele ei pane. Andke nõu
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
|
Absona
Lõuapoolik
liitunud: 17.09.2008
|
01.11.2009 15:58:28
|
|
|
Mina lahendaks asja niimoodi:
<Kalender>
<Aasta="2009">
<Kuu="Jaanuar">
<Kuupäev="02">
<Sissekanne="1"></Sissekanne>
<Sissekanne="2"></Sissekanne>
</Kuupäev>
<Kuupäev="03">
<Sissekanne="1"></Sissekanne>
<Sissekanne="2"></Sissekanne>
<Sissekanne="3"></Sissekanne>
</Kuupäev>
<Kuupäev="23">
<Sissekanne="1"></Sissekanne>
<Sissekanne="2"></Sissekanne>
</Kuupäev>
</Kuu>
<Kuu="Detsember">
<Kuupäev="24">
<Sissekanne="1"></Sissekanne>
</Kuupäev>
<Kuupäev="26">
<Sissekanne="1"></Sissekanne>
<Sissekanne="2"></Sissekanne>
<Sissekanne="3"></Sissekanne>
</Kuupäev>
<Kuupäev="31">
<Sissekanne="1"></Sissekanne>
<Sissekanne="2"></Sissekanne>
</Kuupäev>
</Kuu>
</Aasta>
<Aasta="2010">
<Kuu="Märts">
<Kuupäev="17">
<Sissekanne="1"></Sissekanne>
<Sissekanne="2"></Sissekanne>
</Kuupäev>
<Kuupäev="20">
<Sissekanne="1"></Sissekanne>
</Kuupäev>
<Kuupäev="29">
<Sissekanne="1"></Sissekanne>
<Sissekanne="2"></Sissekanne>
</Kuupäev>
</Kuu>
<Kuu="Juuni">
<Kuupäev="24">
<Sissekanne="1"></Sissekanne>
</Kuupäev>
<Kuupäev="26">
<Sissekanne="1"></Sissekanne>
<Sissekanne="2"></Sissekanne>
<Sissekanne="3"></Sissekanne>
</Kuupäev>
<Kuupäev="31">
<Sissekanne="1"></Sissekanne>
<Sissekanne="2"></Sissekanne>
</Kuupäev>
</Kuu>
</Aasta>
</Kalender>
|
Kui andmed on õigesti XML salvestatud, siis ülejäänud (kuvamine) on kõik puhas koodi töö.
_________________ Veebilehed, veebiprogrammeerimine, veebilahendused
Erinevad rakendused ja skriptid. |
|
Kommentaarid: 11 loe/lisa |
Kasutajad arvavad: |
|
:: |
2 :: |
0 :: |
8 |
|
tagasi üles |
|
|
andre85
HV vaatleja
liitunud: 10.09.2006
|
01.11.2009 16:40:02
Re: Andke nõu: XMLi hierarhia |
|
|
Timukas0 kirjutas: |
Mõtlesin XML-põhise kalender-märkmik rakenduse teha. Pole varem XMLi kasutanud, äkki keegi soovitab, kuidas XMLi fail välja peaks nägema.
Korraga kuvatakse eelmise kuu viimased päevad, käesoleva kuu kõik päevad ja järgmise kuu esimesed päevad. Seega oleks vaja kõigepealt leida, kas selles vahemikus on mõni kalendrikirje. Kui on, siis vastav päev oleks hüperlink ja sellele peale vajutades kuvaks kõik sündmused antud päeval. Mõistlik oleks XML failis sissekanded kategooriatesse paigutada, et neile kiiresti ligi pääseks, aga ei tea, kuidas tavaks on.
Mulle tundus hea idee:
...
Samas guugeldades sellist varianti silma ei hakanud, äkki on tal mingid vead, mida alguses tähele ei pane. Andke nõu |
Õige on nii
<aasta aasta="2009">
<kuu kuu="1">
<paev paev="1">
<sissekanne kandenr="1" />
<sissekanne kandenr="2" />
</paev>
<paev paev="10">
<sissekanne kandenr="3" />
</paev>
</kuu>
<kuu kuu="5">
<paev paev="15">
<sissekanne kandenr="4" />
<sissekanne kandenr="5" />
</paev>
</kuu>
</aasta>
|
_________________ andres |
|
Kommentaarid: 8 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
|
Timukas0
HV kasutaja
liitunud: 20.03.2007
|
01.11.2009 17:01:59
|
|
|
andre85 lahendus läheb käiku.
Kas täpitähtede kasutamine tag-i nimes mingeid probleeme tekitab (päev vs paev). Pusin Sidebar Gadgeti kallal, seega erineva brauseri probleeme ei tohiks tekkida.
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
|
kullar
HV kasutaja
liitunud: 26.11.2006
|
|
Kommentaarid: 26 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
24 |
|
tagasi üles |
|
|
troglodyte
Kreisi kasutaja
liitunud: 09.08.2002
|
01.11.2009 20:14:53
|
|
|
Lisaks mainiksin, et Absona näites ei olnud tegu XML-ga.
_________________ ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn |
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
33 |
|
tagasi üles |
|
|
Timukas0
HV kasutaja
liitunud: 20.03.2007
|
01.11.2009 21:24:20
|
|
|
Ok, tänud :)
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
|
kapa24
HV vaatleja
liitunud: 23.01.2003
|
03.11.2009 12:09:53
|
|
|
troglodyte kirjutas: |
Lisaks mainiksin, et Absona näites ei olnud tegu XML-ga. |
Millega siis? Räägid ehk lähemalt?
|
|
tagasi üles |
|
|
mikk36
HV Guru
liitunud: 21.02.2004
|
03.11.2009 12:20:12
|
|
|
Line File name: Nonexistent
2 Column: 10
Error: Element type "Aasta" must be followed by attribute specifications: ">" or "/>".
Error Position:
<Aasta="2009">
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
|
troglodyte
Kreisi kasutaja
liitunud: 09.08.2002
|
03.11.2009 12:23:03
|
|
|
kapa24 kirjutas: |
troglodyte kirjutas: |
Lisaks mainiksin, et Absona näites ei olnud tegu XML-ga. |
Millega siis? Räägid ehk lähemalt? |
Ma ei tea mis formaadiga tegu, sarnaneb pealtnäha XML-ga aga ta ei ole seda. Ükski korralik XML parser seda sööma ei hakka.
Näiteks: <Sissekanne="1"></Sissekanne> ei ole XML konstruktsioon.
_________________ ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn |
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
33 |
|
tagasi üles |
|
|
Absona
Lõuapoolik
liitunud: 17.09.2008
|
|
Kommentaarid: 11 loe/lisa |
Kasutajad arvavad: |
|
:: |
2 :: |
0 :: |
8 |
|
tagasi üles |
|
|
Fukiku
Kreisi kasutaja
liitunud: 06.11.2003
|
03.11.2009 23:49:56
|
|
|
Absona kirjutas: |
No kuulge, see oli lihtsalt abstraktne näide toodud (ei viitsinud hakata topelt ja pikalt üle kirjutama. Näiteks <year aasta="jaanuar">, jne). |
Mingit täielikku standardile mittevastavat kelbast (ja täielik jura see XMLi seisukohalt ju hetkel oli) pole mõtet ka näiteks tuua minu arvates. Abiks oleks muidugi ka ehk olnud märge, et see ei ole korrektne XML - tuuni endale sobivaks, aga ka see oleks suhteliselt nõrk lahendus olnud. Inimesed ei ole selgeltnägijad, et nad sinu laiskuse taga suurt valgustatust näevad.
_________________ Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist. |
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
|
nene
Kreisi kasutaja
liitunud: 20.03.2004
|
04.11.2009 01:53:43
Re: Andke nõu: XMLi hierarhia |
|
|
Timukas0 kirjutas: |
Mõistlik oleks XML failis sissekanded kategooriatesse paigutada, et neile kiiresti ligi pääseks |
XML-i kiiruse suhtes optimeerimine on tavaliselt viga. XML peaks võimalikult hästi esitama andmete struktuuri, mitte kajastama seda loogikat kuidas sa neid andmeid esitada kavatsed. Üldiselt, mida lihtsam on faili struktuur seda parem, sest seda lihtsam saab olla su programm, mis seda struktuuri manipuleerima peab. Näiteks:
<?xml version="1.0"?>
<notes>
<entry date="2009-01-02">Sissekanne Foo</entry>
<entry date="2009-01-05">Sissekanne Bar</entry>
<entry date="2009-02-28">Sissekanne Baz</entry>
<entry date="2009-10-03">Sissekanne Haz</entry>
</notes> |
Rääkides veel kiirusest, siis XML loetakse tavaliselt lihtsalt tervenisti mällu ja siis manipuleeritakse seal. Kui sinu kalender-märkmikul on tarvis aga hakkama saada kümnete tuhandete sissekannetega, siis tasuks tõsistelt kaaluda alternatiive XML-le: lihtsad struktureeritud tekstifailid, andmebaas, jne. Aga neid alternatiive tuleks kaaluda ka vastupidisel juhul.
XML pole mingi imerohi. Kui sul pole konkreetset nägemust sellest, millist võitu XML-i kasutamine sulle annab, siis on parem seda mitte kasutada.
_________________ Mõistus otsas? Pane pinusse... |
|
Kommentaarid: 24 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
23 |
|
tagasi üles |
|
|
Ho Ho
HV Guru
liitunud: 16.02.2002
|
04.11.2009 14:04:35
|
|
|
Aga kuidas oleks, kui näeksid progemisega veidi rohkem vaeva ja kasutaksid üliviletsa XML andmebaasi asemel mõnd korralikku päris baasi, a'la sqlite? Tehniliselt peaks see teostatav olema ning sellega muutuks üsna kindlalt kogu funktsionaalsus kõvasti efektiivsemaks. XML'ist mingi konkreetse jupi otsing on vaevarikas tegevus, lisaks veel nene mainitud probleemid mäluga.
_________________ Teach a man to reason and he'll think for a lifetime
Common sense - so rare that it's a damn superpower
Vaadates paljude inimeste sõnavõtte siin ja mujal jääb üle ainult klassikuid tsiteerida - "I weep for humanity" |
|
Kommentaarid: 106 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
86 |
|
tagasi üles |
|
|
Timukas0
HV kasutaja
liitunud: 20.03.2007
|
04.11.2009 17:27:19
|
|
|
Jätan eelpool öeldu meelde, aga kasutan siiski andre85 lahendus. Hetkel pole mõtet asja keerulisemaks ajada (asi personaalseks kasutuseks ja sissekandeid ei ole palju).
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
|
|