Portál AbcLinuxu, 25. dubna 2024 01:16


Dotaz: XML: tagy nebo atributy?

18.1.2012 15:30 xml
XML: tagy nebo atributy?
Přečteno: 259×
Odpovědět | Admin
Je lepsi pouzivat v XML tagy, nebo atributy?

Kdyz mam napr. nastaveni samby:
[global]
   hosts allow = 192.168. localhost  
   workgroup = LAN
[homes]
   comment = Domovske adresare
   browseable = yes
   writable = yes
   create mask = 0700
   valid users = %S
   hide dot files = yes
a udelam z neho XML. Ktery zpusob je lepsi?
<?xml version="1.0"?>
<samba>
	<global>
		<host_allow>
			<host>192.168.</host>
			<host>localhost</host>
		</host_allow>
		<workgroup>LAN</workgroup>
	</global>
	<homes>
		<comment>Domovske adresare</comment>
		<browseable>yes</browseable>
		<writable>yes</writable>
		<create_mask>0700</create_mask>
		<valid_users>%S</valid_users>
		<hide_dot_files>no</hide_dot_files>
	</homes>

</samba>
<?xml version="1.0"?>
<samba>
	<global>
		<host_allow>
			<host value="192.168. " />
			<host value="localhost" />
		</host_allow>
		<workgroup value="LAN" />
	</global>
	<homes>
		<comment value="Domovske adresare" />
		<browseable value="yes" />
		<writable value="yes" />
		<create_mask value="0700" />
		<valid_users value="%S" />
		<hide_dot_files value="no" />
	</homes>
</samba>
<?xml version="1.0"?>
<samba>
	<global workgroup="LAN" host_allow="192.168. localhost">
	<homes comment="Domovske adresare" browseable="yes" writable="yes" create_mask="0700" valid_users="%S" hide_dot_files="no" />
</samba>
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

18.1.2012 15:57 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
Rozbalit Rozbalit vše Re: XML: tagy nebo atributy?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nejjednodušší pravidlo, které znám je, že tagy (resp. text mezi nimi) jsou pro informace zobrazitelné uživateli a atributy jsou jakési "meta-informace". Například zápis dvou vteřin bych proto udělal takhle:
<vysledek jednotka="s">2</vysledek>
U uvedeného příkladu bych proto asi volil mutaci tohohle typu:
<homes writable="yes" browseable="yes">
   <comment>Domovske adresare</comment>
...
I am always ready to learn although I do not always like to be taught. (W. Churchill)
18.1.2012 18:24 xml
Rozbalit Rozbalit vše Re: XML: tagy nebo atributy?
A jak to s rychlosti zpracovani? Nekde jsem cetl, ze atributy jsou pomalejsi. A treba u te sekce "homes" by byly same atributy.
18.1.2012 20:49 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
Rozbalit Rozbalit vše Re: XML: tagy nebo atributy?
A jak to s rychlosti zpracovani? Nekde jsem cetl, ze atributy jsou pomalejsi.
A kde? Tohle se určitě nedá říct obecně, protože to záleží na parseru a jak data načítá/zpracovává.

Podle ukázky bych řekl, že data nebudou příliš veliká (řádově KB) a nemá moc smysl rychlost zpracování řešit. To má cenu řešit až když budou velikosti zpracovávaných souborů v řádech desítek MB (jednotky jsem odhadoval, nemám k dispozici žádná měření).
I am always ready to learn although I do not always like to be taught. (W. Churchill)
18.1.2012 21:32 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: XML: tagy nebo atributy?
Odpovědět | | Sbalit | Link | Blokovat | Admin
To je otázka z rodiny "která distribuce je nejlepší", "je lepší C nebo C++" apod.

Uvědomte si, že každý atribut můžete mít u tagu jenom jednou a nezáleží u nich na pořadí. Zároveň atribut představuje atomickou hodnotu, tag můžete v budoucnosti rozšířit a pomocí vnořených elementů v něm informace dál strukturovat. Hlavní informace by měl nést tag, atribut je pak spíš doplňková informace. Z uvedených příkladů bych volil ten první.
18.1.2012 21:56 l4m4
Rozbalit Rozbalit vše Re: XML: tagy nebo atributy?
Jo, taky bych volil ten první příklad z nastavení samby, žádné to následující XML :o)
18.1.2012 22:16 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: XML: tagy nebo atributy?
Ano, každý nástroj ať má svůj formát konfiguračního souboru, nejlépe nějaký bez specifikace s ručně psaným parserem. Jenom ať se na to nedají použít žádné univerzální nástroje. A vůbec nejlepší je něco jako formát Apache - má to špičaté závorky, takže to naštve odpůrce XML, ale zároveň to XML není, takže to naštve i příznivce.
18.1.2012 23:10 Kit
Rozbalit Rozbalit vše Re: XML: tagy nebo atributy?
Samba přece používá formát inifile. Některé jazyky ho přímo podporují. Ohledně Apache však souhlasím, jinde se snad takové konfiguráky nedělají.

Zajímavou konfiguraci má i Sendmail. Naštěstí se tento formát jinde nepoužívá.
19.1.2012 08:01 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: XML: tagy nebo atributy?
Ano, Samba používá jednu z milionů variant inifile.
19.1.2012 11:07 Sten Fil
Rozbalit Rozbalit vše Re: XML: tagy nebo atributy?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ahoj, ja sem volil xml jen s tagy (elementy). At nemusim implementovat i zpracovani atributu.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.