/* * @(#)$Id: DataState.java,v 1.5 2001/11/21 22:15:19 kk122374 Exp $ * * Copyright 2001 Sun Microsystems, Inc. All Rights Reserved. * * This software is the proprietary information of Sun Microsystems, Inc. * Use is subject to license terms. * */ package com.sun.msv.reader.trex.classic; import com.sun.msv.grammar.Expression; import com.sun.msv.reader.ExpressionWithoutChildState; import com.sun.msv.util.StringPair; /** * parses <data> pattern. * * @author <a href="mailto:kohsuke.kawaguchi@eng.sun.com">Kohsuke KAWAGUCHI</a> */ public class DataState extends ExpressionWithoutChildState { protected Expression makeExpression() { final String typeName = startTag.getAttribute("type"); if( typeName==null ) { // type attribute is required reader.reportError( TREXGrammarReader.ERR_MISSING_ATTRIBUTE, startTag.qName, "type" ); // recover from error by assuming anyString. return Expression.anyString; } else { return reader.pool.createData( ((TREXGrammarReader)reader).resolveDatatype(typeName), new StringPair("",typeName) ); } } }