View this PageEdit this PageUploads to this PageHistory of this PageTop of the SwikiRecent ChangesSearch the SwikiHelp Guide

Creating compatible XML files from Java

Home   How To   Code Pool   Public Library   Theory   Events
Here are some hints for creating XML files in java that are compatible with the SuperCollider classes for XML parsing and formatting by Jens Guilden:


here's some pseudo-code:

import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.stream.*;
import org.w3c.dom.*;
import org.xml.sax.*;

final DocumentBuilderFactory    builderFactory;
final DocumentBuilder           builder;
final TransformerFactory        transformerFactory;
final Transformer               transformer;
final org.w3c.dom.Document      domDoc;
final DOMSource                 domSrc;
final StreamResult              streamResult;
final Element                   childNode;

builderFactory      = DocumentBuilderFactory.newInstance();
builderFactory.setValidating( true );
transformerFactory  = TransformerFactory.newInstance();
builder             = builderFactory.newDocumentBuilder();
transformer         = transformerFactory.newTransformer();
// builder.setEntityResolver( myResolver );
domDoc              = builder.newDocument();
childNode           = domDoc.createElement( myRootElementName );
domDoc.appendChild( childNode );
myDocument.createSomeXMLCode( domDoc, childNode );
domSrc              = new DOMSource( domDoc );
streamResult        = new StreamResult( myOutputFile );
// note: DTD will be ignored by SuperCollider XML classes, so
// we could use one if we want:
// transformer.setOutputProperty( OutputKeys.DOCTYPE_SYSTEM, myDTD );
transformer.setOutputProperty( OutputKeys.INDENT, "yes" );
transformer.setOutputProperty( OutputKeys.OMIT_XML_DECLARATION, "yes" );
transformer.transform( domSrc, streamResult );


last mod: 24-nov-06 sciss

Link to this Page