/** Start element. */
public void startElement(String uri, String localName, String qname,
Attributes attributes) throws SAXException {
TypeInfo type;
printIndent();
fOut.print("startElement(");
fOut.print("name=");
printQName(uri, localName);
fOut.print(',');
fOut.print("type=");
if (fTypeInfoProvider != null && (type = fTypeInfoProvider.getElementTypeInfo()) != null) {
printQName(type.getTypeNamespace(), type.getTypeName());
}
else {
fOut.print("null");
}
fOut.print(',');
fOut.print("attributes=");
if (attributes == null) {
fOut.println("null");
}
else {
fOut.print('{');
int length = attributes.getLength();
for (int i = 0; i < length; i++) {
if (i > 0) {
fOut.print(',');
}
String attrURI = attributes.getURI(i);
String attrLocalName = attributes.getLocalName(i);
fOut.print('{');
fOut.print("name=");
printQName(attrURI, attrLocalName);
fOut.print(',');
fOut.print("type=");
if (fTypeInfoProvider != null && (type = fTypeInfoProvider.getAttributeTypeInfo(i)) != null) {
printQName(type.getTypeNamespace(), type.getTypeName());
}
else {
fOut.print("null");
}
fOut.print(',');