XML-formatter

Formatteer, valideer en verfraai XML-documenten met syntaxisaccentuering en foutdetectie

Draait lokaal

XML Invoer

Geformatteerde Uitvoer

Inspecteur

Plak goed gevormde XML — structuur, boomstructuur en elementpaden verschijnen hier automatisch

Geavanceerde Opties

Vergelijken met een andere XML

Stuur dit document naar Data Diff en plak een tweede versie om te zien wat er is gewijzigd.

Validatie met de exacte foutpositie

Validatie wordt bij elke toetsaanslag uitgevoerd met de XML-parser van de browser. Goedgevormde documenten krijgen live tellingen van elementen, attributen, tekstknooppunten en diepte. Kapotte documenten melden de exacte regel en kolom, een mogelijke oorzaak en een markering op de foutieve positie — niet alleen "not well-formed".

Veelvoorkomende XML-fouten die deze tool aanwijst

Deze fouten veroorzaken het merendeel van de ongeldige XML. Elk ervan wordt gedetecteerd met een positie en een mogelijke oorzaak:

Niet-overeenkomende tags

<person> gesloten met </perso>. De parser meldt "Opening and ending tag mismatch" met de regel van beide tags; de markering springt naar de foutieve.

Niet-gesloten tag

Een ontbrekende > of een ontbrekende eindtag. Meestal gemeld als "expected >" of "premature end of data in tag X" op de exacte positie.

Dubbel attribuut

Dezelfde attribuutnaam twee keer op één element, bijv. <item id="1" id="2">. Gemeld als "Attribute redefined", wijzend naar het tweede voorkomen.

Ongeldige entiteit / kale &

Een letterlijke & of < binnen tekst moet geëscapet worden (&amp;, &lt;). De parser meldt "EntityRef: expecting ;" of "not well-formed" op het exacte teken.

Voor / Na

Geminified API-respons links, hetzelfde document geformatteerd met 2 spaties inspringen rechts. Structuur, boom en paden worden bijgewerkt vanuit het geparsde document.

Before
<catalog><book id="1" category="fiction"><title>The Hobbit</title><author>J.R.R. Tolkien</author></book><book id="2" category="tech"><title>Refactoring</title><author>Martin Fowler</author></book></catalog>
After
<catalog>
  <book id="1" category="fiction">
    <title>The Hobbit</title>
    <author>J.R.R. Tolkien</author>
  </book>
  <book id="2" category="tech">
    <title>Refactoring</title>
    <author>Martin Fowler</author>
  </book>
</catalog>

Beknopte XML-naslag (W3C XML 1.0)

  • Goedgevormd ≠ geldig: goedgevormd betekent dat tags correct nesten en sluiten; geldig betekent bovendien dat het document een DTD- of XSD-schema volgt.
  • Vijf voorgedefinieerde entiteiten: &lt; &gt; &amp; &quot; &apos; — een letterlijke < of & in tekst is altijd een fout.
  • Element- en attribuutnamen zijn hoofdlettergevoelig en kunnen namespace-prefixen hebben (ns:tag).
  • Precies één rootelement; een XML-declaratie zoals <?xml version="1.0" encoding="UTF-8"?> moet, indien aanwezig, vooraan staan.
  • Commentaren <!-- … --> mogen geen -- bevatten en mogen niet genest zijn.

Volgende stappen met deze data

Formatteren is de eerste stap. Ga verder met de workflow zonder je browser te verlaten:

Veelgestelde Vragen

Veelvoorkomende vragen over Xml Formatter-opmaak beantwoord

De formatter controleert op goed gevormdheid en voert basisvalidatie uit. Hij controleert correcte tagnesting, attribuutsyntax en naleving van de XML-declaratie volgens de specificaties W3C XML 1.0/1.1.

Ja, met de ingebouwde XPath-tester schrijf en evalueer je XPath 1.0- en 2.0-expressies tegen je XML-document, met markering van overeenkomende elementen en direct zichtbare resultaten.

Ja, de formatter verwerkt XML-documenten met namespaces correct, waarbij namespace-declaraties en prefixen behouden blijven terwijl elementen en attributen netjes geformatteerd worden.

Ja, met de conversiefunctie transformeer je XML naar JSON en terug, met intelligente mapping die elementstructuur, attributen en datatypes behoudt.

De XML-formatter ondersteunt bestanden tot 50MB dankzij geoptimaliseerde parsing-algoritmen, waardoor het geschikt is voor grote configuratiebestanden, SOAP-berichten en documenten voor gegevensuitwisseling.

Namespace-declaraties (xmlns, xmlns:prefix) worden voor de inspringing als gewone attributen behandeld en worden nooit herordend of verwijderd, zodat namespace-URI's aan dezelfde prefixes gebonden blijven. Opmaken lost of herschrijft prefixes nooit - downstream tools lossen deze op conform de W3C-aanbeveling Namespaces in XML.

Opmaken springt alleen opnieuw in en normaliseert witruimte tussen elementen. Validatie controleert de structuur: gebalanceerde tags, precies één root-element, correct gequote attributen en entiteitssyntaxis volgens de W3C-specificatie XML 1.0. De formatter rapporteert fouten tegen welgevormdheid (misvormde invoer kan niet opnieuw ingesprongen worden), maar valideert niet tegen een DTD- of XSD-schema.

Ja - CDATA-blokken behouden hun exacte innerlijke inhoud (dat is hun doel: tekst escapen die anders entiteit-codering nodig zou hebben), en commentaren gaan ongewijzigd door, op de omliggende inspringing na. Ook XML-declaraties en processing instructions zoals <?xml version="1.0"?> blijven bovenaan onaangetast staan.

{-- * External Resources Component(#19 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 --}}

Gerelateerde Tools