elena 2003/07/23 11:19:03 Modified: java/src/org/apache/xerces/impl/dv/xs XSSimpleTypeDecl.java java/src/org/apache/xerces/impl/xs/traversers XSDAbstractTraverser.java Log: Fix a small bug in exposing pattern annotation. Revision Changes Path 1.42 +2 -1 xml-xerces/java/src/org/apache/xerces/impl/dv/xs/XSSimpleTypeDecl.java Index: XSSimpleTypeDecl.java =================================================================== RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/dv/xs/XSSimpleTypeDecl.java,v retrieving revision 1.41 retrieving revision 1.42 diff -u -r1.41 -r1.42 --- XSSimpleTypeDecl.java 23 Jul 2003 15:51:11 -0000 1.41 +++ XSSimpleTypeDecl.java 23 Jul 2003 18:19:02 -0000 1.42 @@ -725,6 +725,7 @@ if ((allowedFacet & FACET_PATTERN) == 0) { reportError("cos-applicable-facets", new Object[]{"pattern", fTypeName}); } else { + patternAnnotations = facets.patternAnnotations; RegularExpression regex = null; try { regex = new RegularExpression(facets.pattern, "X"); 1.31 +9 -5 xml-xerces/java/src/org/apache/xerces/impl/xs/traversers/XSDAbstractTraverser.java Index: XSDAbstractTraverser.java =================================================================== RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/xs/traversers/XSDAbstractTraverser.java,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- XSDAbstractTraverser.java 23 Jul 2003 15:51:13 -0000 1.30 +++ XSDAbstractTraverser.java 23 Jul 2003 18:19:02 -0000 1.31 @@ -292,19 +292,22 @@ // --------------------------------------------- fPattern.append("|"); fPattern.append((String)attrs[XSAttributeChecker.ATTIDX_VALUE]); - - Element child = DOMUtil.getFirstChildElement( content ); - if (child != null) { + } + Element child = DOMUtil.getFirstChildElement( content ); + if (child != null) { // traverse annotation if any if (DOMUtil.getLocalName(child).equals(SchemaSymbols.ELT_ANNOTATION)) { + if (patternAnnotations == null){ + patternAnnotations = new XSObjectListImpl(); + } patternAnnotations.add(traverseAnnotationDecl(child, attrs, false, schemaDoc)); child = DOMUtil.getNextSiblingElement(child); } if (child !=null && DOMUtil.getLocalName(child).equals(SchemaSymbols.ELT_ANNOTATION)) { reportSchemaError("s4s-elt-must-match.1", new Object[]{"pattern", "(annotation?)", DOMUtil.getLocalName(child)}, child); } - } } + } else { if (facet.equals(SchemaSymbols.ELT_MINLENGTH)) { @@ -444,6 +447,7 @@ if (fPattern.length() != 0) { facetsPresent |= XSSimpleType.FACET_PATTERN; xsFacets.pattern = fPattern.toString(); + xsFacets.patternAnnotations = patternAnnotations; } fPattern.setLength(0);
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]