// writer.println(name+ " <T "+baseType);
// Type definition
+ if (inheritance.additionalClass != null) {
+ writer.println(name+ " <T " + inheritance.baseClass + " <T " + inheritance.additionalClass);
+ } else if (inheritance.atomicType != null){
+ writer.println(name+ " <T " + inheritance.baseClass + " <T " + inheritance.atomicType.l0Type);
+ } else {
writer.println(name+ " <T " + inheritance.baseClass);
+ }
writer.println(name + "_List <T XML.ElementList");
// Access relations
public static class Inheritance {
public String baseClass;
+ public String additionalClass;
public InheritanceType type;
public TypeEntry atomicType;
ExtensionType extensionType = simpleContent.getExtension();
if (extensionType != null) {
type = extensionType.getBase();
+ SchemaObject simpleType = getSimpleType(type);
+ if (simpleType != null)
+ inheritance.additionalClass = getName(simpleType);
getAtomicTypeInheritance(type, inheritance);
}
}