You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by sa...@apache.org on 2002/09/10 18:59:56 UTC
cvs commit: xml-xerces/java/src/org/apache/xerces/impl/xs XMLSchemaValidator.java
sandygao 2002/09/10 09:59:56
Modified: java/src/org/apache/xerces/impl/xs XMLSchemaValidator.java
Log:
When the "validation/schema/normalized-value" feature is off, we don't
need to augment PSVI for characters() calls, hence don't need to go through
the initialization process of the augmentations and PSVI augmentation item.
Revision Changes Path
1.90 +19 -13 xml-xerces/java/src/org/apache/xerces/impl/xs/XMLSchemaValidator.java
Index: XMLSchemaValidator.java
===================================================================
RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/xs/XMLSchemaValidator.java,v
retrieving revision 1.89
retrieving revision 1.90
diff -u -r1.89 -r1.90
--- XMLSchemaValidator.java 30 Aug 2002 02:53:04 -0000 1.89
+++ XMLSchemaValidator.java 10 Sep 2002 16:59:56 -0000 1.90
@@ -635,25 +635,31 @@
public void characters(XMLString text, Augmentations augs) throws XNIException {
boolean emptyAug = false;
- if (augs == null) {
- emptyAug = true;
- augs = fAugmentations;
- augs.clear();
- }
- // get PSVI object
- fCurrentPSVI = (ElementPSVImpl)augs.getItem(Constants.ELEMENT_PSVI);
- if (fCurrentPSVI == null) {
- fCurrentPSVI = fElemPSVI;
- augs.putItem(Constants.ELEMENT_PSVI, fCurrentPSVI);
+
+ if (fNormalizeData) {
+ if (augs == null) {
+ emptyAug = true;
+ augs = fAugmentations;
+ augs.clear();
+ }
+ // get PSVI object
+ fCurrentPSVI = (ElementPSVImpl)augs.getItem(Constants.ELEMENT_PSVI);
+ if (fCurrentPSVI == null) {
+ fCurrentPSVI = fElemPSVI;
+ augs.putItem(Constants.ELEMENT_PSVI, fCurrentPSVI);
+ }
+ else {
+ fCurrentPSVI.reset();
+ }
}
else {
- fCurrentPSVI.reset();
+ fCurrentPSVI = fElemPSVI;
}
handleCharacters(text);
// call handlers
if (fDocumentHandler != null) {
- if (fUnionType) {
+ if (fNormalizeData && fUnionType) {
// for union types we can't normalize data
// thus we only need to send augs information if any;
// the normalized data for union will be send
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org