public static String getTargetNamespace( Model model, Version version ) throws ModelloException { return getTargetNamespace( model, version, getNamespace( model, version ) ); } }
public void generate( Model model, Properties parameters ) throws ModelloException { initialize( model, parameters ); try { generateXsd( parameters ); } catch ( IOException ex ) { throw new ModelloException( "Exception while generating xsd.", ex ); } }
private static void writeClassDocumentation( XMLWriter w, ModelClass modelClass ) { writeDocumentation( w, modelClass.getVersionRange().toString(), modelClass.getDescription() ); }
List<ModelField> fields = getFieldsForXml( modelClass, getGeneratedVersion() ); ModelField contentField = getContentField( fields ); List<ModelField> attributeFields = getXmlAttributeFields( fields ); w.addAttribute( "base", getXsdType( contentField.getType() ) ); writeClassDocumentation( w, modelClass ); boolean compositorAll = XsdClassMetadata.COMPOSITOR_ALL.equals( xsdClassMetadata.getCompositor() ); String fieldTagName = resolveTagName( field, xmlFieldMetadata ); String xsdType = getXsdType( field.getType() ); xsdType = getXsdType( "long" ); writeFieldDocumentation( w, field ); writeCharElement( w ); if ( isInnerAssociation( field ) ) ModelClass fieldModelClass = objectModel.getClass( association.getTo(), getGeneratedVersion() ); writeFieldDocumentation( w, field ); writeListElement( w, xmlFieldMetadata, xmlAssociationMetadata, field,
Model objectModel = getModel(); File directory = getOutputDirectory(); if ( isPackageWithVersion() ) directory = new File( directory, getGeneratedVersion().toString() ); File f = new File( directory, objectModel.getId() + "-" + getGeneratedVersion() + ".xsd" ); initHeader( w ); ModelClass root = objectModel.getClass( objectModel.getRoot( getGeneratedVersion() ), getGeneratedVersion() ); String namespace = XsdModelHelper.getNamespace( root.getModel(), getGeneratedVersion() ); String targetNamespace = XsdModelHelper.getTargetNamespace( root.getModel(), getGeneratedVersion(), namespace ); String tagName = resolveTagName( root ); w.addAttribute( "name", tagName ); w.addAttribute( "type", root.getName() ); writeClassDocumentation( w, root ); int initialCapacity = objectModel.getClasses( getGeneratedVersion() ).size(); writeComplexTypeDescriptor( w, objectModel, root, new HashSet<ModelClass>( initialCapacity ) );
String targetNamespace = XsdModelHelper.getTargetNamespace( modelClass.getModel(), getGeneratedVersion() );
private void writeListElement( XMLWriter w, XmlFieldMetadata xmlFieldMetadata, XmlAssociationMetadata xmlAssociationMetadata, ModelField field, String type ) { String fieldTagName = resolveTagName( field, xmlFieldMetadata ); String valuesTagName = resolveTagName( fieldTagName, xmlAssociationMetadata ); w.startElement( "xs:complexType" ); w.startElement( "xs:sequence" ); w.startElement( "xs:element" ); w.addAttribute( "name", valuesTagName ); w.addAttribute( "minOccurs", "0" ); w.addAttribute( "maxOccurs", "unbounded" ); w.addAttribute( "type", type ); w.endElement(); w.endElement(); w.endElement(); }
private static void writeFieldDocumentation( XMLWriter w, ModelField field ) { writeDocumentation( w, field.getVersionRange().toString(), field.getDescription() ); }