Did you know you can use XSLT to format your XML so that it is more readable? XSLT stands for eXtensible Stylesheet Language. This XSLT can be used to format XML:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes" />
<xsl:template match="/">
<xsl:copy-of select="/" />
</xsl:template>
</xsl:transform>
Apply this XSLT to your XML using whatever XSLT Transformation command is available to you.
To use this XSLT with Xojo, add a module to your project (name it XMLExtensions), add a String constant to the module (call it kXSLTFormat) and copy the above XSLT into the constant.
Now add a Global function to the module that extends the XMLDocument class with a Format function:
Function Format(Extends xml As XMLDocument) As String
Return xml.Transform(kXSLTFormat)
End Function
Now you can call it to get back formatted XML as a String. For example, this code takes unformatted XML from a TextField and displays the formatted XML in another TextField:
Dim xml As New XMLDocument
xml.LoadXml(TextArea1.Text)
TextArea2.Text = xml.Format
Top comments (0)