Hjem Personlig finansiering Tar dokumentobjektmodellen (DOM) til XML-dokumenter - dummies

Tar dokumentobjektmodellen (DOM) til XML-dokumenter - dummies

Innholdsfortegnelse:

Video: Covered in solid tar puppies trapped in their own bodies, only their eyes could move, rescued 2024

Video: Covered in solid tar puppies trapped in their own bodies, only their eyes could move, rescued 2024
Anonim

Dikotomi mellom lineær tenkning og holistisk tenkning skiller (henholdsvis) SAX fra DOM.

SAX (Simple API for XML) behandler et XML-dokument lineært, og arbeider gjennom et dokument stykke fra stykke, fra begynnelse til slutt. Men med DOM (Document Object Model), hopper du inn og ser på hele dokumentet. Litt senere zoomer du inn på rotelementet, og fokuserer deretter nærmere på et element i rotelementet. I noen situasjoner er det å hoppe inn akkurat hva du trenger å gjøre.

DOM noder

Med DOM, tenker du på et XML-dokument som å ha flere noder . Eksempler på noder inkluderer elementer, attributter, kommentarer og tegnene mellom et par start- og sluttkoder. Et helt XML-dokument er i seg selv en node. Alt i alt kan et XML-dokument ha 12 forskjellige typer noder.

Nødene til et tre

Samlet sett danner alle DOM nodene i et XML-dokument et tre. Ta for eksempel dokumentet i liste 1. Dette dokumentets DOM-tre ser ut som treet som vises i figur 1.

Liste 1: Anchovy Lovers Club

Grunnlegger, president, sekretær, publiseringsleder

Træret har elleve noder. For å telle dem, begynn med å telle treets grener (vist på fig. 1). Tell deretter medlemmets fornavn = "Herbert" -gren en gang til. (Denne grenen har to DOM noder på den. Elementet som heter Medlem er en node, og elementets attributt fornavn = "Herbert" er en node.)

Figur 1: Et tre som representerer dokumentet i liste 1.

En avhandling på trær

Det er noen ting du vil oppdage ved å stirre på treet i figur 1.

  • Noen noder er barn av andre noder.
  • For eksempel er medlemskoden et barn av AnchovyLoversClub-noden. Det skyldes at i element 1 er medlemelementet nestet inne i AncoverLoversClub-elementet.På samme måte er Stående knutepunkt et barn i medlemskoden. Denne familieanalogen går videre og igjen. Medlemskoden er forelder av Stående knutepunkt, og AncoverLoversClub er forelder til medlemskoden.
  • Hele dokumentet er en node.
  • Dette er et viktig poeng, og det er lett å glemme. I liste 1 er dokumentets rotelement elementet AnchovyLoversClub. Men i figur 1 er navnet AnchovyLoversClub ikke øverst på treet. I stedet er ordet #document øverst på treet.En DOM-treets øverste node representerer et helt XML-dokument. Feil oppstår når programmererne mener at dokumentets rotelement starter treet.(Det gjør det ikke.)
  • Kommentarer og tekststykker er noder.
  • I figur 1 er kommentaren en barnekode for dokumentknuten. Det er fordi i kommentar 1 er kommentaren en del av dokumentet. Kommentaren er ikke nestet i noen av dokumentets elementer.Igjen spiller vi slektsforskning. Vi sier at #document node har to barn - en kommentar node og en AnchovyLoversClub node. Disse to noder - kommentaren og AnchovyLoversClub - kalles søsken .Også i figur 1 er teksten grunnlegger, president, sekretær, publiseringsleder en del av en knutepunkt. I liste 1 er teksten grunnlegger, president, sekretær, publisitetsansvarlig inne i det stående elementet. Så, i figur 1, er denne tekstnoden et barn av Stående knutepunkt.
  • Selv ekte tekst er en del av en node.
  • I følge figur 1 har AnchovyLoversClub-noden tre direkte barnnoder - to noder merket #text, og et annet node-merket medlem. Det er fordi, for så vidt angår DOM, har AnchovyLoversClub-noden tre ting i den.

Vognretur og tre blanker

Medlemselement

Vognretur

    Situasjonen er illustrert i figur 2.

Figur 2: To tekstnoder i liste 1.
    De tre barn av medlemskoden - to stykker av hvite rom og ett stående element - er alle søsken.Legg merke til prikkene og [cr] i figurene 1 og 2. I trediagrammet representerer en prikk et tomrom, og [cr] representerer en vognretur. Med DOM begynner all den uhyggelige hvite plass mellom AnchovyLoversClub-taggen og medlemstarttaggen en node. Fra vinkelbraketten som avslutter AnchovyLoversClub start-taggen, går du til neste linje, og du har tre tomme mellomrom før vinkelbeslaget som åpner medlemstartet. Alt dette er en DOM-node.
  • Sluttkoder er ikke noder.
  • Med SAX, kan du tenke på å starte medlemselementet, og senere avslutte medlemselementet. I DOM tror du ikke på denne måten. I stedet besøker du medlemselementet bare en gang. Innenfor besøket besøker du Stående elementet og litt tekst. DOM har ingen metode som svarer til SAX endElement-metoden.
Tar dokumentobjektmodellen (DOM) til XML-dokumenter - dummies

Redaktørens valg

Vanlige visuelle studio-tastaturgenveier - dummier

Vanlige visuelle studio-tastaturgenveier - dummier

Du kan få tilgang til mange av funksjonene du bruker i Visual Studio til Lag en Silverlight-applikasjon gjennom tastaturgenveier. Her er de vanlige snarveiene som hjelper deg med å utføre oppgaver raskt i Visual Studio. Tastatur snarvei Handling Ctrl + Alt + F1 Åpne Visual Studio Documentation Ctrl + Shift + B Bygg programmet Ctrl + F5 Kjør prosjektet Ctrl + Alt + X Åpne verktøykassen hvis ...

Velg riktig format for e-postmarkedsføringsmeldingen din - dummies

Velg riktig format for e-postmarkedsføringsmeldingen din - dummies

Som Du komponerer markedsførings-e-postene dine, husk at formatet på e-posten din visuelt kommuniserer hovedideen til innholdet før publikum selv begynner å lese det. Forbrukerne forventer at formatet på e-posten din samsvarer med informasjonen den inneholder, slik at bruk av riktig format bidrar til å bygge publikums tillit. Velg ...

Kombinere flere samtaler til handling i din markedsføring e-post - dummies

Kombinere flere samtaler til handling i din markedsføring e-post - dummies

Din e-postmarkedsføringslisten består sannsynligvis av prospekter og kunder i ulike stadier av kjøpesyklusen med litt forskjellige interesser, så en del av publikum vil aldri være klar til å reagere umiddelbart på hver handling. Selv om alle på din e-postliste er klare til handling, er dine anrop til handling ...

Redaktørens valg

Opprett en Pivot-tabell YTD-totalvisning for Excel-rapporten - dummies

Opprett en Pivot-tabell YTD-totalvisning for Excel-rapporten - dummies

En nyttig rapportvisning I et Excel-pivottabell er YTD-totalsvisningen. Noen ganger er det nyttig å fange et løp-total-visning for å analysere bevegelsen av tall på en årlig basis (YTD) basis. Denne figuren illustrerer et pivottabell som viser en løpende total omsetning per måned for hvert år. I denne visningen er du ...

Opprett en pivottabel ved hjelp av Excels interne datamodell - dummies

Opprett en pivottabel ved hjelp av Excels interne datamodell - dummies

I enkelte tilfeller vil du kanskje opprett et pivottabell fra grunnen ved hjelp av Excels eksisterende interne datamodell som kildedata. Her er trinnene for å gjøre det: Velg Sett inn → PivotTable fra båndet. Dialogboksen Create PivotTable åpnes. Velg alternativet Bruk en ekstern datakilde, som vist, og klikk deretter på ...

Hvordan lage en standard snikker i Power Pivot - dummies

Hvordan lage en standard snikker i Power Pivot - dummies

Slicers tilbyr et brukervennlig grensesnitt med som du kan filtrere en Power Pivot pivottabell. Det er på tide å lage din første slicer. Bare følg disse trinnene:

Redaktørens valg

Alarmhendelsen i GameMaker: Studio-dummies

Alarmhendelsen i GameMaker: Studio-dummies

Alarmer er utmerket for når du vil ha tid Handlinger i din spill i GameMaker: Studio. For eksempel, hvis du vil at spilleren bare skal skyte kuler en gang hvert annet sekund, kan du sette en alarm for det. Hvis du vil når nye fiendtlige fly vises, kan du sette en alarm for det ...

Flytt retningsaktive handlinger i GameMaker: Studio - dummies

Flytt retningsaktive handlinger i GameMaker: Studio - dummies

I GameMaker: Studio, Flytt-fanen er den første kategorien i vinduet Objektegenskaper. Her er en liste over hver av handlingene du kan tilordne objektene. I følgende definisjoner brukes begrepet Instance for å referere til hva handlingen påvirker. Men du konfigurerer handlingen i objektet ...

Andre hendelser i GameMaker: Studio - dummies

Andre hendelser i GameMaker: Studio - dummies

I GameMaker: Studio, Andre hendelser er de som ikke anses verdige av sitt eget sted på menyen Event. Disse andre hendelsene kan være ganske kjempebra. Menyelementene er ganske mye selvforklarende, så det er ikke nødvendig med detaljer her. For fullstendige beskrivelser av hver av disse elementene, kan du alltid trykke F1 i GameMaker og ...