public void addId(String name) { if (fIDContext == null) { super.addId(name); } else if (fIdIdrefChecking) { fIDContext.add(name); } }
protected boolean containsID(String name) { return (fIDContext == null) ? super.containsID(name) : fIDContext.containsID(name); } }
boolean isDeclared(String id) { final int idDepth = get(id); // did not find a match in the table if (idDepth == -1) { // root element with simple content of type ID is invalid return fIDScope == -1; } return idDepth != fIDScope; }
fIDContext.pushContext(); fIDContext.setCurrentScopeToParent();
void pushContext() { if (fElementDepth == fElementIDTable.length) { resizeElementDepthIDTable(); } fElementScope = fElementDepth++; fElementIDTable[fElementScope] = fIDScope = 0; }
void add(String id) { final int bucket = (id.hashCode() & 0x7FFFFFFF) % fTableSize; Entry entry = search(id, bucket); if (entry == null) { if (fElementIDTable[fElementScope] == 0) { fElementIDTable[fElementScope] = fIDScope = ++fIDDepth; } entry = new Entry(id, fIDScope, fBuckets[bucket]); fBuckets[bucket] = entry; fNum++; } }
public boolean isIdDeclared(String name) { if (fIDContext == null) { return super.isIdDeclared(name); } return (fIdIdrefChecking) ? fIDContext.isDeclared(name) : false; }
if (fSchemaVersion == Constants.SCHEMA_VERSION_1_1) { if (fIDContext == null) { fIDContext = new IDContext();
fIDContext.popContext();
fIDContext.clear();