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 2003/11/10 21:44:41 UTC
cvs commit: xml-xerces/java/src/org/apache/xerces/impl/xs/traversers XSDAttributeTraverser.java XSDComplexTypeTraverser.java XSDElementTraverser.java
sandygao 2003/11/10 12:44:41
Modified: java/src/org/apache/xerces/impl/xs/traversers
XSDAttributeTraverser.java
XSDComplexTypeTraverser.java
XSDElementTraverser.java
Log:
Committing the PSVI Writer patch propsed by Pete Lloyd,
with minor modifications. Thx Pete.
Revision Changes Path
1.26 +6 -3 xml-xerces/java/src/org/apache/xerces/impl/xs/traversers/XSDAttributeTraverser.java
Index: XSDAttributeTraverser.java
===================================================================
RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/xs/traversers/XSDAttributeTraverser.java,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- XSDAttributeTraverser.java 23 Jun 2003 16:35:22 -0000 1.25
+++ XSDAttributeTraverser.java 10 Nov 2003 20:44:41 -0000 1.26
@@ -263,13 +263,16 @@
// get 'target namespace'
String tnsAtt = null;
XSComplexTypeDecl enclCT = null;
- short scope = 0;
+ short scope = XSAttributeDecl.SCOPE_ABSENT;
if (isGlobal) {
tnsAtt = schemaDoc.fTargetNamespace;
scope = XSAttributeDecl.SCOPE_GLOBAL;
}
else {
- enclCT = enclosingCT;
+ if (enclosingCT != null) {
+ enclCT = enclosingCT;
+ scope = XSAttributeDecl.SCOPE_LOCAL;
+ }
if (formAtt != null) {
if (formAtt.intValue() == SchemaSymbols.FORM_QUALIFIED)
tnsAtt = schemaDoc.fTargetNamespace;
1.39 +13 -5 xml-xerces/java/src/org/apache/xerces/impl/xs/traversers/XSDComplexTypeTraverser.java
Index: XSDComplexTypeTraverser.java
===================================================================
RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/xs/traversers/XSDComplexTypeTraverser.java,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- XSDComplexTypeTraverser.java 25 Sep 2003 22:59:21 -0000 1.38
+++ XSDComplexTypeTraverser.java 10 Nov 2003 20:44:41 -0000 1.39
@@ -225,10 +225,18 @@
fName = complexTypeName;
fComplexTypeDecl.setName(fName);
fTargetNamespace = schemaDoc.fTargetNamespace;
- fBlock = blockAtt == null ?
- schemaDoc.fBlockDefault : blockAtt.shortValue();
- fFinal = finalAtt == null ?
- schemaDoc.fFinalDefault : finalAtt.shortValue();
+ if (blockAtt == null) {
+ fBlock = (short)(schemaDoc.fBlockDefault&(XSConstants.DERIVATION_EXTENSION | XSConstants.DERIVATION_RESTRICTION));
+ }
+ else {
+ fBlock = blockAtt.shortValue();
+ }
+ if (finalAtt == null) {
+ fFinal = (short)(schemaDoc.fFinalDefault&(XSConstants.DERIVATION_EXTENSION | XSConstants.DERIVATION_RESTRICTION));
+ }
+ else {
+ fFinal = finalAtt.shortValue();
+ }
if (abstractAtt != null && abstractAtt.booleanValue())
fIsAbstract = true;
1.26 +13 -3 xml-xerces/java/src/org/apache/xerces/impl/xs/traversers/XSDElementTraverser.java
Index: XSDElementTraverser.java
===================================================================
RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/xs/traversers/XSDElementTraverser.java,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- XSDElementTraverser.java 23 Jun 2003 16:35:22 -0000 1.25
+++ XSDElementTraverser.java 10 Nov 2003 20:44:41 -0000 1.26
@@ -310,8 +310,18 @@
}
// get 'block', 'final', 'nillable', 'abstract'
- element.fBlock = blockAtt == null ? schemaDoc.fBlockDefault : blockAtt.shortValue();
- element.fFinal = finalAtt == null ? schemaDoc.fFinalDefault : finalAtt.shortValue();
+ if (blockAtt == null) {
+ element.fBlock = (short)(schemaDoc.fBlockDefault&(XSConstants.DERIVATION_EXTENSION | XSConstants.DERIVATION_RESTRICTION | XSConstants.DERIVATION_SUBSTITUTION));
+ }
+ else {
+ element.fBlock = blockAtt.shortValue();
+ }
+ if (finalAtt == null) {
+ element.fFinal = (short)(schemaDoc.fFinalDefault&(XSConstants.DERIVATION_EXTENSION | XSConstants.DERIVATION_RESTRICTION));
+ }
+ else {
+ element.fFinal = finalAtt.shortValue();
+ }
if (nillableAtt.booleanValue())
element.setIsNillable();
if (abstractAtt != null && abstractAtt.booleanValue())
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org