home *** CD-ROM | disk | FTP | other *** search
Wrap
package com.extensibility.xml; import com.extensibility.util.Debug; import java.util.Enumeration; public class DDMLWriter extends SchemaWriter implements ExportInterface { ElemProxy elemProxy; AttrProxy attrProxy; UnparsedEntityProxy unparsedEntityProxy; NotationProxy notationProxy; ExtSubsetProxy extSubsetProxy; public DDMLWriter(SchemaIntf var1) { super(var1, var1.getURI()); } public DDMLWriter(SchemaIntf var1, URI var2) { super(var1, var2); } public String getType(String var1) { if (var1.equals("CDATA")) { return "CData"; } else if (var1.equals("ID")) { return "ID"; } else if (var1.equals("IDREF")) { return "IDRef"; } else if (var1.equals("IDREFS")) { return "IDRefs"; } else if (var1.equals("ENTITY")) { return "Entity"; } else if (var1.equals("ENTITIES")) { return "Entities"; } else if (var1.equals("NMTOKEN")) { return "Nmtoken"; } else if (var1.equals("NMTOKENS")) { return "Nmtokens"; } else if (var1.equals("NOTATION")) { return "Notation"; } else if (var1.equals("")) { return "Enumeration"; } else { Debug.assert(false, String.valueOf("unknown datatype: ").concat(String.valueOf(var1))); return String.valueOf("#UNKNOWN: ").concat(String.valueOf(var1)); } } protected SchemaWriter.DeclWriterProxyIntf createProxy(ElementDeclaration var1) { if (this.elemProxy == null) { this.elemProxy = new ElemProxy(this); } this.elemProxy.setDecl(var1); return this.elemProxy; } protected SchemaWriter.DeclWriterProxyIntf createProxy(AttributeDeclaration var1) { if (this.attrProxy == null) { this.attrProxy = new AttrProxy(this); } this.attrProxy.setDecl(var1); return this.attrProxy; } protected SchemaWriter.DeclWriterProxyIntf createProxy(GeneralEntityDeclaration var1) { if (!(var1 instanceof ExternalGEDeclaration)) { return super.nopProxy; } else { ExternalGEDeclaration var2 = (ExternalGEDeclaration)var1; if (!var2.isUnparsed()) { return super.nopProxy; } else { if (this.unparsedEntityProxy == null) { this.unparsedEntityProxy = new UnparsedEntityProxy(this); } this.unparsedEntityProxy.setDecl(var2); return this.unparsedEntityProxy; } } } protected SchemaWriter.DeclWriterProxyIntf createProxy(NotationDeclaration var1) { if (this.notationProxy == null) { this.notationProxy = new NotationProxy(this); } this.notationProxy.setDecl(var1); return this.notationProxy; } protected SchemaWriter.DeclWriterProxyIntf createProxy(ExternalSubset var1) { if (this.extSubsetProxy == null) { this.extSubsetProxy = new ExtSubsetProxy(this); } this.extSubsetProxy.setDecl(var1); return this.extSubsetProxy; } protected String getExtSubsetsAsGEDecls() { StringBuffer var1 = new StringBuffer(); Enumeration var2 = super.schema.getStructure().children(); String var3 = String.valueOf(System.getProperty("line.separator")).concat(String.valueOf("\t")); while(var2.hasMoreElements()) { ExternalSubset var4 = (ExternalSubset)var2.nextElement(); var1.append(String.valueOf(String.valueOf(String.valueOf(String.valueOf(String.valueOf(var3).concat(String.valueOf("<!ENTITY "))).concat(String.valueOf(((BaseDeclaration)var4).getName()))).concat(String.valueOf(" SYSTEM '"))).concat(String.valueOf(var4.getSystemURI().toSource()))).concat(String.valueOf("'>"))); } var1.append(System.getProperty("line.separator")); return var1.toString(); } protected void writeHeader(SXE var1) { String var2 = this.getExtSubsetsAsGEDecls(); var1.writeDocTypeWithInternal("DocumentDef", (String)null, var2); var1.writeComment("Generated by XML Authority. DDML version 1.0"); var1.writeElem("DocumentDef"); var1.writeAttr("name", super.schema.getURI().getShortName()); var1.writeLineBreak(); var1.writeAttr("xmlns", "http://www.purl.org/NET/ddml/v1"); var1.writeLineBreak(); var1.writeAttr("xmlns:DDML", "http://www.purl.org/NET/ddml/v1"); var1.writeAttr("Version", "1.0"); } }