Huis Persoonlijke financiën Nemen van de Document Object Model (DOM) -aanpak van XML-documenten - dummy's

Nemen van de Document Object Model (DOM) -aanpak van XML-documenten - dummy's

Inhoudsopgave:

Video: Week 7, continued 2024

Video: Week 7, continued 2024
Anonim

De dichotomie tussen lineair denken en holistisch denken scheidt (respectievelijk) SAX van DOM.

SAX (Simple API for XML) behandelt een XML-document lineair en werkt stuk voor stuk door een document, van begin tot eind. Maar met DOM (het document-objectmodel) springt u erin en bekijkt u het hele document. Een beetje later zoom je in op het wortelelement en focus je dichter op een element in het wortelelement. In sommige situaties is springen precies wat u moet doen.

DOM-knooppunten

Bij DOM denkt u dat een XML-document meerdere knooppunten bevat. Voorbeelden van knooppunten zijn elementen, kenmerken, opmerkingen en de tekens tussen een paar begin- en eindlabels. Een volledig XML-document is zelf een knooppunt. Al met al kan een XML-document 12 verschillende soorten knooppunten hebben.

De knooppunten van een boom

Alles bij elkaar vormen alle DOM-knooppunten in een XML-document een boom. Neem bijvoorbeeld het document in listing 1. De DOM-structuur van dit document lijkt op de boom in figuur 1.

Advertentie 1: The Anchovy Lovers Club

Oprichter, president, secretaris, Publicity Manager

De boom heeft elf knooppunten. Om ze te tellen, begint u met het tellen van de takken van de boom (handig weergegeven in figuur 1). Tel daarna de Member firstname = "Herbert" branch een tweede keer. (Deze tak heeft twee DOM-knooppunten, het element met de naam Lid is een knooppunt en het kenmerk van het element firstname = "Herbert" is een knooppunt.)

Figuur 1: Een boom die het document in listing 1 vertegenwoordigt.

Een verhandeling over bomen

Er zijn een paar dingen die je zult ontdekken door naar de boom in figuur te staren 1.

  • Sommige knooppunten zijn kinderen van andere knooppunten.
  • Het lidknooppunt is bijvoorbeeld een kind van het knooppunt AnchovyLoversClub. Dat komt omdat, in Listing 1, het element Member genest is in het element AncoverLoversClub.Op dezelfde manier is het staande knooppunt een kind van het lidknooppunt. Deze familie-analogie gaat maar door. Het lidknooppunt is het bovenliggende van het permanente knooppunt en de AncoverLoversClub is het bovenliggende lid van het lidknooppunt.
  • Het volledige document is een knooppunt.
  • Dit is een belangrijk punt en het is gemakkelijk om het te vergeten. In listing 1 is het rootelement van het document AnchovyLoversClub. Maar in figuur 1 staat de naam AnchovyLoversClub niet bovenaan. In plaats daarvan staat het woord #document bovenaan de structuur.Het bovenste knooppunt van een DOM-structuur vertegenwoordigt een volledig XML-document. Er treden fouten op wanneer programmeurs denken dat het rootelement van het document de structuur start.(Dat is het niet.)
  • Opmerkingen en stukjes tekst zijn knooppunten.
  • In figuur 1 is de opmerking een onderliggende knoop van het documentknooppunt. Dat komt omdat in listing 1 de opmerking deel uitmaakt van het document. De opmerking is niet genest in een van de elementen van het document.Opnieuw spelen we genealogie. We zeggen dat het knooppunt #document twee kinderen heeft: een reactieknooppunt en een knooppunt van AnchovyLoversClub. Deze twee knooppunten - de opmerking en de AnchovyLoversClub - worden broers en zussen genoemd.Ook in figuur 1 maakt de tekst Founder, President, Secretary, Publicity Manager deel uit van een knooppunt. In Listing 1 bevindt de tekst Founder, President, Secretary, Publicity Manager zich in het Standing-element. Dus, in figuur 1, is dit tekstknooppunt een kind van het staande knooppunt.
  • Zelfs ignorable tekst is onderdeel van een knooppunt.
  • Volgens figuur 1 heeft het knooppunt AnchovyLoversClub drie directe onderliggende knooppunten - twee knooppunten met het label #text en een ander knooppunt met het label Lid. Dat komt omdat, voor zover het DOM betreft, het knooppunt van AnchovyLoversClub drie dingen bevat.

carriage return en three blanks

Member element

carriage return

    De situatie is geïllustreerd in figuur 2.

Figuur 2: twee tekstknooppunten in Listing 1.
    De drie kinderen van het lidknooppunt - twee stukken witruimte en één staand element - zijn allemaal broers en zussen.Let nu op de punten en de [cr] in figuren 1 en 2. In het boomstructuurdiagram vertegenwoordigt een punt een lege ruimte en vertegenwoordigt [cr] een carriage return. Met DOM begint alle ignorable witruimte tussen de AnchovyLoversClub-tag en de Member start-tag vormt een knooppunt. Beginnend met de hoeksteun die de AnchovyLoversClub-startlabel beëindigt, gaat u naar de volgende regel en hebt u drie lege ruimten vóór de hoeksteun die de startlabel voor leden opent. Al dat spul is een DOM-knooppunt.
  • Eindetiketten zijn geen knooppunten.
  • Met SAX denkt u misschien in termen van het starten van het element Member en het beëindigen van het element Member. In DOM denk je niet zo. In plaats daarvan bezoekt u het element Lid slechts eenmaal. Tijdens dat bezoek bezoek je het Standing-element en wat tekst. DOM heeft geen methode die overeenkomt met de SAX endElement-methode.
Nemen van de Document Object Model (DOM) -aanpak van XML-documenten - dummy's

Bewerkers keuze

Hoe u Flash-video maakt en codeert - dummies

Hoe u Flash-video maakt en codeert - dummies

Als de pagina's die u maakt, zijn gewonnen ' t kan worden bekeken op mobiele apparaten (zoals een iPad of een smartphone), kunt u webpagina's maken met prachtige Flash-video. Adobe Flash Professional CS6 heeft een eigen ingebouwde video-encoder. Full-motionvideo in Flash is iets heel moois. U past de video aan voor het bekijken door de doelgroep ...

Hoe een aanpasbare interface te maken in CSS3 - dummies

Hoe een aanpasbare interface te maken in CSS3 - dummies

De grote variëteit en soorten schermen gebruikt om informatie weer te geven, maakt het nodig dat uw CSS3-commando's de gebruiker toestaan ​​om het formaat van de elementen naar wens aan te passen. In de meeste gevallen kunt u de gebruiker eenvoudig toestaan ​​om het element op elke gewenste grootte te maken. Er kunnen zich echter situaties voordoen waarin u de grootte van de grootte moet controleren ...

Hoe u een eenvoudige tabel op uw webpagina maakt - dummies

Hoe u een eenvoudige tabel op uw webpagina maakt - dummies

Tabellen laten u organiseer informatie op uw webpagina en geef het een georganiseerde uitstraling die uw bezoekers nuttig zullen vinden. Bij gebruik zoals bedoeld, hebben tabellen rijen en kolommen. Voor elke spot waar een rij en kolom elkaar kruisen, hebt u een tabelcel. Elke cel kan zijn eigen opmaak hebben: de gegevens erin ...

Bewerkers keuze

Hoe Postproduction Shareninging Filters werken - dummies

Hoe Postproduction Shareninging Filters werken - dummies

Verscherpingsfilters werken in postproductie door de randen (of aangrenzende gebieden met tonaal contrast) te benadrukken aan elkaar) in een afbeelding. Ze creëren een fijne highlight aan de donkere kant van de rand en een piepklein lowlight aan de lichtere kant van de rand. Dit toegevoegde contrast zorgt ervoor dat de randen er scherper uitzien vanaf een ...

HDR Work-Flow voor foto's met één belichting - dummies

HDR Work-Flow voor foto's met één belichting - dummies

In grote lijnen, enkele belichting hoog dynamisch bereik volgt dezelfde workflow als HDR-fotografie tussen haakjes. Er kunnen kleine verschillen zijn, dus hier is een overzicht van de werkstroom: configureer uw camera voor single-shot HDR. Het enige dat u zoekt, is de beste foto die u kunt maken. Besteed aandacht aan de lichtomstandigheden, het onderwerp, beweging en ...

Geavanceerde compacte en superzoomcamera's voor HDR-fotografie - dummies

Geavanceerde compacte en superzoomcamera's voor HDR-fotografie - dummies

Stap omhoog van compacte digitale camera's binnen het budgetbereik, vindt u duurdere compacte digitale camera's voor HDR-fotografie, ook wel high-end compacts, superzoomlenzen en dSLR-look-alikes genoemd. Er zijn zoveel vaak overlappende categorieën dat het je hoofd laat draaien. De twee dingen die deze reeks camera's gemeen hebben, zijn hun ...

Bewerkers keuze

In te schakelen Class Tracking in QuickBooks 2013 - dummies

In te schakelen Class Tracking in QuickBooks 2013 - dummies

Om activity-based costing te gebruiken (ABC ) in QuickBooks 2013 moet u de QuickBooks Class Tracking-functie inschakelen. Met Class Tracking kunt u inkomsten- en onkostentransacties categoriseren als niet alleen vallen in inkomsten- en uitgavenrekeningen, maar ook als vallen in bepaalde klassen. Volg deze stappen om Class Tracking in QuickBooks in te schakelen: Kies Bewerken → Voorkeuren ...

Gebruikt om een ​​exemplaar van een QuickBooks-gegevensbestand te gebruiken - dummies

Gebruikt om een ​​exemplaar van een QuickBooks-gegevensbestand te gebruiken - dummies

Ongeacht of de client verzendt handmatig een accountantskopie van een QuickBooks-gegevensbestand, e-mails een accountantsexemplaar, of verzendt een accountantskopie via de Intuit-bestandsoverdrachtservice, u gebruikt de kopie van de accountant door Bestand → Verzend bedrijfsdossier → Accountantskopie → Open & converteer overzetten te kiezen Bestand commando. Wanneer u deze opdracht kiest, geeft QuickBooks een ...

Hoe Audit Trails te gebruiken in QuickBooks - dummies

Hoe Audit Trails te gebruiken in QuickBooks - dummies

Als u besluit om meerdere gebruikers toegang te geven tot de QuickBooks-gegevens bestand, zult u de QuickBooks Audit Trail-functie waarderen, die bijhoudt wie welke wijzigingen aan het QuickBooks-gegevensbestand aanbrengt. U kunt transacties niet verwijderen uit de lijst of geschiedenis van de audittrail, behalve door gegevens te archiveren en te condenseren. Audit trail inschakelen ...