1 package net.sf.saxon.type; 2 3 import net.sf.saxon.expr.Expression; 4 import net.sf.saxon.expr.StaticContext; 5 import net.sf.saxon.om.NodeInfo; 6 import net.sf.saxon.om.SequenceIterator; 7 import net.sf.saxon.trans.XPathException; 8 import net.sf.saxon.value.Value; 9 10 22 23 public interface SchemaType extends SchemaComponent { 24 25 28 39 public static final int DERIVATION_RESTRICTION = 0x00000001; 40 49 public static final int DERIVATION_EXTENSION = 0x00000002; 50 63 public static final int DERIVATION_UNION = 0x00000004; 64 76 public static final int DERIVATION_LIST = 0x00000008; 77 78 82 83 public static final int DERIVE_BY_SUBSTITUTION = 16; 84 85 90 91 int getNameCode(); 92 93 97 98 int getFingerprint(); 99 100 104 105 String getDisplayName(); 106 107 111 112 boolean isComplexType(); 113 114 118 119 boolean isSimpleType(); 120 121 126 127 int getBlock(); 128 129 136 137 SchemaType getBaseType() throws UnresolvedReferenceException; 138 139 144 145 int getDerivationMethod(); 146 147 153 154 boolean allowsDerivation(int derivation); 155 156 165 166 void analyzeContentExpression(Expression expression, int kind, StaticContext env) throws XPathException; 167 168 176 177 SequenceIterator getTypedValue(NodeInfo node) throws XPathException; 178 179 187 188 Value atomize(NodeInfo node) throws XPathException; 189 190 195 196 boolean isSameType(SchemaType other); 197 198 204 205 String getDescription(); 206 207 215 216 public void isTypeDerivationOK(SchemaType base, int block) throws SchemaException, ValidationException; 217 218 } 219 220 | Popular Tags |