Vad är ett HTML-träd?

Ett träd i datordatatermer är en metod för att visa information som en sekvens av kapslade noder som kan expanderas eller komprimeras för att visa underrubriker eller annan information. I HyperText Markup Language (HTML) är implementeringen av ett träd ofta känd som en trädvy. Ett HTML-träd kan användas för att visa layouten på sidorna på en given webbplats; rubrikerna och underrubrikerna i en disposition, ett dokument eller en bok; eller ämnen och svar i ett forum. Det finns inget enskilt sätt att implementera ett HTML-träd, och HTML i sig har inget inbyggt stöd för en trädvy. Istället är ett HTML-träd vanligtvis konstruerat med en kombination av verktyg som tillsammans kallas dynamisk HTML (DHTML).

Ett HTML-träd används när det finns en samling information som kan visas linjärt, och varje post på toppnivå kan ha noll eller fler informationsdelar som kan relateras till den posten. Varje post kallas en nod och kan ha andra noder kapslade under sig. Ett exempel på en instans där ett träd kan användas för att organisera och visa information är inom en onlineanslagstavla.

Varje ämne i en onlineanslagstavla skulle kunna listas som en toppnivånod, med termen ”toppnivå” som indikerar att noden inte är kapslad under en annan nod. Varje svar på ett enskilt ämne är kapslat under toppnivånoden, eller huvudämnet. Om ett svar görs på ett svar, så blir det första svaret en nod under vilken det andra svaret är kapslat. På detta sätt kan information organiseras så att associationerna från toppen till botten kan porträtteras visuellt, vanligtvis genom att öka indragningen av varje rad i förhållande till hur djupt kapslad den är i strukturen.

En aspekt av ett HTML-träd som kräver användning av DHTML är möjligheten för varje nod att expanderas, visa alla noder under den, eller att dras ihop, dölja alla noder så att endast den översta nivån syns. Detta kan uppnås genom att använda en HTML-tabell som manipuleras genom ett skriptspråk som modifierar dokumentobjektmodellen (DOM) för att visa eller dölja de nödvändiga tabellcellerna. En annan metod som används för att skapa ett dynamiskt HTML-träd är att använda XML-dokument (extensible markup language) som omvandlas till HTML-sidor med skript på serversidan eller andra moduler.