user function TXCanon()
Local cXML := "", cNewXML := ""
Local oXML
oXML := TXMLManager():New()
cXML := '<?xml version="1.0"?>' + CRLF
cXML += CRLF
cXML += '<?xml-stylesheet href="doc.xsl"' + CRLF
cXML += ' type="text/xsl" ?>' + CRLF
cXML += CRLF
cXML += '<!DOCTYPE doc SYSTEM "doc.dtd">' + CRLF
cXML += CRLF
cXML += '<doc>Hello, world!<!-- Comment 1 --></doc>' + CRLF
cXML += CRLF
cXML += '<?pi-without-data ?>' + CRLF
cXML += CRLF
cXML += '<!-- Comment 2 -->' + CRLF
cXML += CRLF
cXML += '<!-- Comment 3 -->' + CRLF
if !oXML:Parse( cXML )
conout( "Errors on Parse!" )
return
endif
cNewXML := oXML:CanonicalC14N( cXML, , 0, , 0 )
// Vai exibir ".F."
conout( cNewXML == cXML )
// Vai exibir
// <?xml-stylesheet href="doc.xsl"
// type="text/xsl" ?>
// <doc>Hello, world!</doc>
// <?pi-without-data?>
//
conout( cNewXML )
cNewXML := oXML:CanonicalC14N( cXML, , 0, , 1 )
// Vai exibir ".F."
conout( cNewXML == cXML )
// Vai exibir
// <?xml-stylesheet href="doc.xsl"
// type="text/xsl" ?>
// <doc>Hello, world!<!-- Comment 1 --></doc>
// <?pi-without-data?>
// <!-- Comment 2 -->
// <!-- Comment 3 -->
//
conout( cNewXML )
return
|