XML-parser

Formatteer, valideer en bevraag XML-documenten direct. Aangedreven door native browser-API's voor maximale snelheid en privacy.

Formatteren & Minificeren XPath-query's Validatie

Hoe gebruik je de XML-parser

1

Plak je XML

Kopieer en plak je XML-inhoud in het invoerveld, of klik op Voorbeeld-XML laden.

2

Formatteren & valideren

Gebruik Formatteren om mooier te maken, Minificeren om te comprimeren of Valideren om fouten te controleren.

3

Bevragen met XPath

Voer een XPath-expressie in en klik op XPath uitvoeren om specifieke nodes te extraheren.

Wat is XML?

XML (eXtensible Markup Language) is een opmaaktaal die regels definieert voor het coderen van documenten in een formaat dat zowel mens- als machineleesbaar is. Het wordt veel gebruikt voor configuratiebestanden, data-uitwisseling (SOAP, RSS, Atom) en documentopslag.

Kernkenmerken van XML

Zelfbeschrijvend

XML gebruikt aangepaste tags om datastructuur te beschrijven, waardoor inhoud en hiërarchie in één oogopslag te begrijpen zijn.

Platformonafhankelijk

Als platte tekst werkt XML op alle platforms, programmeertalen en systemen zonder compatibiliteitsproblemen.

Uitbreidbaar

Je kunt je eigen tags en documentstructuur definiëren met DTD of XML Schema, passend bij elk datamodel.

Veelgestelde vragen

Wat is het verschil tussen well-formed en geldige XML?

Well-formed XML volgt de basissyntaxisregels van XML (juiste nesting, sluittags, één rootelement). Geldige XML is well-formed ÉN conform een schema (DTD, XSD) dat de toegestane structuur en datatypen definieert.

Valideert deze tool tegen een XSD-schema?

Nee, deze tool controleert alleen well-formedness (syntactische correctheid). Schemavalidatie tegen DTD of XSD wordt niet natief in de browser ondersteund.

Welke XPath-versie wordt ondersteund?

De native document.evaluate() van de browser ondersteunt XPath 1.0. Dit dekt de meeste gangbare queries, waaronder axes, predicaten en functies zoals contains(), text() en @attribute.

Wat zijn XML-namespaces en hoe lees je ze?

Een namespace koppelt elementnamen aan een URI via xmlns-attributen - bijvoorbeeld een atom:feed-element dat xmlns:atom="http://www.w3.org/2005/Atom" declareert. Het prefix is willekeurig; alleen de URI identificeert de namespace, dus twee documenten kunnen verschillende prefixes voor dezelfde vocabulaire gebruiken. Namespaces zijn de reden dat XPath-matching vaak local-name()-trucs nodig heeft wanneer prefixes verschillen.

Hoe selecteert XPath nodes?

XPath 1.0-expressies lopen door de boomstructuur: /rss/channel/item selecteert via een pad, //item vindt items overal in het document, item[@type='news'] filtert op een attribuut, en predicaten als item[1] of item[last()] kiezen specifieke nodes. Het is de querytaal achter XSLT, vele testframeworks en de evaluator van deze tool.

Wat is XXE en kan deze tool erdoor worden geraakt?

XXE-injectie (XML External Entity) misbruikt een DTD-entity die naar een bestandspad of URL wijst, zodat een server-side parser die ophaalt - historisch lekte dit /etc/passwd of interne diensten. Browser-XML-parsers lossen externe entities niet op, en deze tool draait volledig in je browser zonder server-roundtrip, dus geplakte XML kan geen bestandslezingen of SSRF veroorzaken.

Wat is het verschil tussen DOM- en SAX-parsing?

DOM laadt het hele document in een boomstructuur die je willekeurig kunt doorlopen - intuïtief maar geheugenhongerig voor enorme bestanden. SAX streamt events (begintag, tekst, eindtag) in één passage met constant geheugen - snel maar alleen vooruit. Browser-Javascript biedt DOMParser (DOM-stijl); streaming XML in Javascript vereist een library of Web Streams.

Hoe voeg ik < of & toe binnen XML-inhoud?

Escape ze als &lt; en &amp; in gewone tekst - < en & zijn rauw illegaal in character data. Voor blokken tekst vol markup kun je een CDATA-sectie gebruiken, die geen escaping nodig heeft tot de sequentie ]]> aan het einde. Alleen < en & zijn strikt vereist in inhoud; > hoeft alleen geëscaped wanneer het die afsluitende sequentie vormt.

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}