private String resolveNamespaceOfDeclaration( String formValue, String defaultValue ) { if( "qualified".equals(formValue) ) return currentSchema.targetNamespace; if( "unqualified".equals(formValue) ) return ""; if( formValue!=null ) { reportError( ERR_BAD_ATTRIBUTE_VALUE, "form", formValue ); return "$$recover$$"; // recovery by returning whatever } return defaultValue; }
private String resolveNamespaceOfDeclaration( String formValue, String defaultValue ) { if( "qualified".equals(formValue) ) return currentSchema.targetNamespace; if( "unqualified".equals(formValue) ) return ""; if( formValue!=null ) { reportError( ERR_BAD_ATTRIBUTE_VALUE, "form", formValue ); return "$$recover$$"; // recovery by returning whatever } return defaultValue; }
private String resolveNamespaceOfDeclaration( String formValue, String defaultValue ) { if( "qualified".equals(formValue) ) return currentSchema.targetNamespace; if( "unqualified".equals(formValue) ) return ""; if( formValue!=null ) { reportError( ERR_BAD_ATTRIBUTE_VALUE, "form", formValue ); return "$$recover$$"; // recovery by returning whatever } return defaultValue; }
private String resolveNamespaceOfDeclaration( String formValue, String defaultValue ) { if( "qualified".equals(formValue) ) return currentSchema.targetNamespace; if( "unqualified".equals(formValue) ) return ""; if( formValue!=null ) { reportError( ERR_BAD_ATTRIBUTE_VALUE, "form", formValue ); return "$$recover$$"; // recovery by returning whatever } return defaultValue; }
protected void startSelf() { super.startSelf(); final XMLSchemaReader reader = (XMLSchemaReader)this.reader; base = startTag.getAttribute("base"); if(base==null) { // in extension, base attribute is mandatory. reader.reportError( XMLSchemaReader.ERR_MISSING_ATTRIBUTE, startTag.localName, "base"); return; } baseTypeName = reader.splitQName(base); if( baseTypeName==null ) { reader.reportError( XMLSchemaReader.ERR_UNDECLARED_PREFIX, base ); return; } baseSchema = reader.grammar.getByNamespace(baseTypeName[0]); }
protected void startSelf() { super.startSelf(); final XMLSchemaReader reader = (XMLSchemaReader)this.reader; base = startTag.getAttribute("base"); if(base==null) { // in extension, base attribute is mandatory. reader.reportError( XMLSchemaReader.ERR_MISSING_ATTRIBUTE, startTag.localName, "base"); return; } baseTypeName = reader.splitQName(base); if( baseTypeName==null ) { reader.reportError( XMLSchemaReader.ERR_UNDECLARED_PREFIX, base ); return; } baseSchema = reader.grammar.getByNamespace(baseTypeName[0]); }
protected void startSelf() { super.startSelf(); final XMLSchemaReader reader = (XMLSchemaReader)this.reader; base = startTag.getAttribute("base"); if(base==null) { // in extension, base attribute is mandatory. reader.reportError( XMLSchemaReader.ERR_MISSING_ATTRIBUTE, startTag.localName, "base"); return; } baseTypeName = reader.splitQName(base); if( baseTypeName==null ) { reader.reportError( XMLSchemaReader.ERR_UNDECLARED_PREFIX, base ); return; } baseSchema = reader.grammar.getByNamespace(baseTypeName[0]); }
protected void startSelf() { super.startSelf(); final XMLSchemaReader reader = (XMLSchemaReader)this.reader; base = startTag.getAttribute("base"); if(base==null) { // in extension, base attribute is mandatory. reader.reportError( XMLSchemaReader.ERR_MISSING_ATTRIBUTE, startTag.localName, "base"); return; } baseTypeName = reader.splitQName(base); if( baseTypeName==null ) { reader.reportError( XMLSchemaReader.ERR_UNDECLARED_PREFIX, base ); return; } baseSchema = reader.grammar.getByNamespace(baseTypeName[0]); }
public void onEndChild( XSDatatypeExp type ) { // handle redefinition of simpleType. final XMLSchemaReader reader = (XMLSchemaReader)this.reader; final String typeName = type.name; if( typeName==null ) { // top-level simpleType must define a named type reader.reportError( XMLSchemaReader.ERR_MISSING_ATTRIBUTE, "simpleType", "name" ); return; // recover by ignoring this declaration } oldSimpleTypeExp.set(type); reader.setDeclaredLocationOf(oldSimpleTypeExp); // restore the association reader.currentSchema.simpleTypes.redefine( oldSimpleTypeExp.name, oldSimpleTypeExp ); oldSimpleTypeExp = null; }
public void onEndChild( XSDatatypeExp type ) { // handle redefinition of simpleType. final XMLSchemaReader reader = (XMLSchemaReader)this.reader; final String typeName = type.name; if( typeName==null ) { // top-level simpleType must define a named type reader.reportError( XMLSchemaReader.ERR_MISSING_ATTRIBUTE, "simpleType", "name" ); return; // recover by ignoring this declaration } oldSimpleTypeExp.set(type); reader.setDeclaredLocationOf(oldSimpleTypeExp); // restore the association reader.currentSchema.simpleTypes.redefine( oldSimpleTypeExp.name, oldSimpleTypeExp ); oldSimpleTypeExp = null; }
public void onEndChild( XSDatatypeExp type ) { // handle redefinition of simpleType. final XMLSchemaReader reader = (XMLSchemaReader)this.reader; final String typeName = type.name; if( typeName==null ) { // top-level simpleType must define a named type reader.reportError( XMLSchemaReader.ERR_MISSING_ATTRIBUTE, "simpleType", "name" ); return; // recover by ignoring this declaration } oldSimpleTypeExp.set(type); reader.setDeclaredLocationOf(oldSimpleTypeExp); // restore the association reader.currentSchema.simpleTypes.redefine( oldSimpleTypeExp.name, oldSimpleTypeExp ); oldSimpleTypeExp = null; }
public Expression resolveQNameRef( StartTagInfo tag, String attName, RefResolver resolver ) { String refQName = tag.getAttribute(attName); if( refQName==null ) { reportError( ERR_MISSING_ATTRIBUTE, tag.qName, attName ); return null; // failed. } String[] r = splitQName(refQName); if(r==null) { reportError( ERR_UNDECLARED_PREFIX, refQName ); return null; } Expression e = resolver.get( getOrCreateSchema(r[0]/*uri*/) )._getOrCreate(r[1]/*local name*/); backwardReference.memorizeLink(e); return e; }
public Expression resolveQNameRef( StartTagInfo tag, String attName, RefResolver resolver ) { String refQName = tag.getAttribute(attName); if( refQName==null ) { reportError( ERR_MISSING_ATTRIBUTE, tag.qName, attName ); return null; // failed. } String[] r = splitQName(refQName); if(r==null) { reportError( ERR_UNDECLARED_PREFIX, refQName ); return null; } Expression e = resolver.get( getOrCreateSchema(r[0]/*uri*/) )._getOrCreate(r[1]/*local name*/); backwardReference.memorizeLink(e); return e; }
public Expression resolveQNameRef( StartTagInfo tag, String attName, RefResolver resolver ) { String refQName = tag.getAttribute(attName); if( refQName==null ) { reportError( ERR_MISSING_ATTRIBUTE, tag.qName, attName ); return null; // failed. } String[] r = splitQName(refQName); if(r==null) { reportError( ERR_UNDECLARED_PREFIX, refQName ); return null; } Expression e = resolver.get( getOrCreateSchema(r[0]/*uri*/) )._getOrCreate(r[1]/*local name*/); backwardReference.memorizeLink(e); return e; }
public Expression resolveQNameRef( StartTagInfo tag, String attName, RefResolver resolver ) { String refQName = tag.getAttribute(attName); if( refQName==null ) { reportError( ERR_MISSING_ATTRIBUTE, tag.qName, attName ); return null; // failed. } String[] r = splitQName(refQName); if(r==null) { reportError( ERR_UNDECLARED_PREFIX, refQName ); return null; } Expression e = resolver.get( getOrCreateSchema(r[0]/*uri*/) )._getOrCreate(r[1]/*local name*/); backwardReference.memorizeLink(e); return e; }
public void onEndChild( XSDatatypeExp type ) { // handle redefinition of simpleType. final XMLSchemaReader reader = (XMLSchemaReader)this.reader; final String typeName = type.name; if( typeName==null ) { // top-level simpleType must define a named type reader.reportError( XMLSchemaReader.ERR_MISSING_ATTRIBUTE, "simpleType", "name" ); return; // recover by ignoring this declaration } oldSimpleTypeExp.set(type); reader.setDeclaredLocationOf(oldSimpleTypeExp); // restore the association reader.currentSchema.simpleTypes.redefine( oldSimpleTypeExp.name, oldSimpleTypeExp ); oldSimpleTypeExp = null; }
protected void switchSource( State sourceState, State newRootState ) throws AbortException { final String schemaLocation = sourceState.getStartTag().getAttribute("schemaLocation"); if(schemaLocation==null) { // schemaLocation attribute is required. reportError( ERR_MISSING_ATTRIBUTE, sourceState.getStartTag().qName, "schemaLocation" ); // recover by ignoring this element } else // parse specified file switchSource( sourceState, schemaLocation, newRootState ); }
protected void switchSource( State sourceState, State newRootState ) throws AbortException { final String schemaLocation = sourceState.getStartTag().getAttribute("schemaLocation"); if(schemaLocation==null) { // schemaLocation attribute is required. reportError( ERR_MISSING_ATTRIBUTE, sourceState.getStartTag().qName, "schemaLocation" ); // recover by ignoring this element } else // parse specified file switchSource( sourceState, schemaLocation, newRootState ); }
protected void onTargetNamespaceResolved( String targetNs ) { super.onTargetNamespaceResolved(targetNs); final XMLSchemaReader reader = (XMLSchemaReader)this.reader; // sets new XMLSchemaGrammar object. old = reader.currentSchema; reader.currentSchema = reader.getOrCreateSchema(targetNs); if( reader.isSchemaDefined(reader.currentSchema) ) { reader.reportError( XMLSchemaReader.ERR_DUPLICATE_SCHEMA_DEFINITION, targetNs ); // recover by providing dummy grammar object. // this object is not registered to the map, // so it cannot be referenced. reader.currentSchema = new XMLSchemaSchema(targetNs,reader.grammar); } reader.markSchemaAsDefined(reader.currentSchema); }
protected void onTargetNamespaceResolved( String targetNs ) { super.onTargetNamespaceResolved(targetNs); final XMLSchemaReader reader = (XMLSchemaReader)this.reader; // sets new XMLSchemaGrammar object. old = reader.currentSchema; reader.currentSchema = reader.getOrCreateSchema(targetNs); if( reader.isSchemaDefined(reader.currentSchema) ) { reader.reportError( XMLSchemaReader.ERR_DUPLICATE_SCHEMA_DEFINITION, targetNs ); // recover by providing dummy grammar object. // this object is not registered to the map, // so it cannot be referenced. reader.currentSchema = new XMLSchemaSchema(targetNs,reader.grammar); } reader.markSchemaAsDefined(reader.currentSchema); }