001 package com.thaiopensource.relaxng.impl; 002 003 import org.relaxng.datatype.Datatype; 004 import org.relaxng.datatype.DatatypeBuilder; 005 import org.relaxng.datatype.DatatypeException; 006 import org.relaxng.datatype.DatatypeLibrary; 007 008 public class BuiltinDatatypeLibrary implements DatatypeLibrary { 009 private final DatatypeBuilder tokenDatatypeBuilder 010 = new BuiltinDatatypeBuilder(new TokenDatatype()); 011 private final DatatypeBuilder stringDatatypeBuilder 012 = new BuiltinDatatypeBuilder(new StringDatatype()); 013 public DatatypeBuilder createDatatypeBuilder(String type) 014 throws DatatypeException { 015 if (type.equals("token")) 016 return tokenDatatypeBuilder; 017 else if (type.equals("string")) 018 return stringDatatypeBuilder; 019 throw new DatatypeException(); 020 } 021 public Datatype createDatatype(String type) throws DatatypeException { 022 return createDatatypeBuilder(type).createDatatype(); 023 } 024 }