%% Specify Transformation Source XML as a SourceFile Object
% This example transforms the XML markup for countries and their capital cities into an HTML table. The example specifies the input XML as a matlab.io.xml.transform.SourceFile object.
% The example uses these files:
% capitals.xml
% <Countries><Country><Name>Canada</Name><Capital>Ottawa</Capital></Country><Country><Name>France</Name><Capital>Paris</Capital></Country><Country><Name>Peru</Name><Capital>Lima</Capital></Country></Countries>
% capitals.xsl
% <?xml version="1.0"?>
%
% <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
%
% <xsl:template match="/">
%   <html>
%   <body>
%       <table>
%       <tr>
%         <th>Country</th>
%         <th>Capital</th>
%       </tr>
%       <xsl:for-each select="Countries/Country">
%         <tr>
%           <td><xsl:value-of select="Name"/></td>
%           <td><xsl:value-of select="Capital"/></td>
%         </tr>
%       </xsl:for-each>
%     </table>
%   </body>
%   </html>
% </xsl:template>
%
% </xsl:stylesheet>
% Create a SourceFile object, sourceObj, that contains the XML source for the transformation.

import matlab.io.xml.transform.*
sourceObj = SourceFile("capitals.xml");

% Perform the transformation and provide sourceObj as the XML source, capitals.xsl as the stylesheet, and capitals.html as the name of the output file.

transform(Transformer,sourceObj,"capitals.xsl","capitals.html");

% Open capitals.html in a Web browser.

web("capitals.html")

% Here is the HTML table:
%
%
% Copyright 2020 The MathWorks, Inc.