You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by ne...@apache.org on 2003/11/14 23:35:10 UTC
cvs commit: xml-xerces/c/src/xercesc/validators/schema SchemaGrammar.hpp TraverseSchema.cpp
neilg 2003/11/14 14:35:10
Modified: c/src/xercesc/validators/schema/identity
IdentityConstraint.cpp IdentityConstraint.hpp
c/src/xercesc/validators/schema SchemaGrammar.hpp
TraverseSchema.cpp
Log:
changes in support of second phase of XSModel implementation; thanks to David Cargill
Revision Changes Path
1.9 +5 -2 xml-xerces/c/src/xercesc/validators/schema/identity/IdentityConstraint.cpp
Index: IdentityConstraint.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/schema/identity/IdentityConstraint.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- IdentityConstraint.cpp 13 Nov 2003 23:21:41 -0000 1.8
+++ IdentityConstraint.cpp 14 Nov 2003 22:35:09 -0000 1.9
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.9 2003/11/14 22:35:09 neilg
+ * changes in support of second phase of XSModel implementation; thanks to David Cargill
+ *
* Revision 1.8 2003/11/13 23:21:41 peiyongz
* initSize
*
@@ -212,7 +215,7 @@
serEng.writeString(fElemName);
serEng<<fSelector;
-
+ serEng<<fNamespaceURI;
/***
*
* Serialize RefVectorOf<IC_Field>* fFields;
@@ -228,7 +231,7 @@
serEng.readString(fElemName);
serEng>>fSelector;
-
+ serEng>>fNamespaceURI;
/***
*
* Deserialize RefVectorOf<IC_Field>* fFields;
1.7 +17 -1 xml-xerces/c/src/xercesc/validators/schema/identity/IdentityConstraint.hpp
Index: IdentityConstraint.hpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/schema/identity/IdentityConstraint.hpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- IdentityConstraint.hpp 14 Oct 2003 15:24:23 -0000 1.6
+++ IdentityConstraint.hpp 14 Nov 2003 22:35:09 -0000 1.7
@@ -113,11 +113,13 @@
XMLCh* getIdentityConstraintName() const;
XMLCh* getElementName() const;
IC_Selector* getSelector() const;
+ int getNamespaceURI() const;
// -----------------------------------------------------------------------
// Setter methods
// -----------------------------------------------------------------------
void setSelector(IC_Selector* const selector);
+ void setNamespaceURI(int uri);
// -----------------------------------------------------------------------
// Access methods
@@ -176,6 +178,7 @@
IC_Selector* fSelector;
RefVectorOf<IC_Field>* fFields;
MemoryManager* fMemoryManager;
+ int fNamespaceURI;
};
@@ -204,6 +207,19 @@
inline IC_Selector* IdentityConstraint::getSelector() const {
return fSelector;
+}
+
+inline int IdentityConstraint::getNamespaceURI() const
+{
+ return fNamespaceURI;
+}
+
+// ---------------------------------------------------------------------------
+// IdentityConstraint: Setter methods
+// ---------------------------------------------------------------------------
+inline void IdentityConstraint::setNamespaceURI(int uri)
+{
+ fNamespaceURI = uri;
}
// ---------------------------------------------------------------------------
1.13 +10 -0 xml-xerces/c/src/xercesc/validators/schema/SchemaGrammar.hpp
Index: SchemaGrammar.hpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/schema/SchemaGrammar.hpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- SchemaGrammar.hpp 12 Nov 2003 20:35:31 -0000 1.12
+++ SchemaGrammar.hpp 14 Nov 2003 22:35:09 -0000 1.13
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.13 2003/11/14 22:35:09 neilg
+ * changes in support of second phase of XSModel implementation; thanks to David Cargill
+ *
* Revision 1.12 2003/11/12 20:35:31 peiyongz
* Stateless Grammar: ValidationContext
*
@@ -280,6 +283,7 @@
// Getter methods
// -----------------------------------------------------------------------
RefHash3KeysIdPoolEnumerator<SchemaElementDecl> getElemEnumerator() const;
+ NameIdPoolEnumerator<XMLNotationDecl> getNotationEnumerator() const;
RefHashTableOf<XMLAttDef>* getAttributeDeclRegistry() const;
RefHashTableOf<ComplexTypeInfo>* getComplexTypeRegistry() const;
RefHashTableOf<XercesGroupInfo>* getGroupInfoRegistry() const;
@@ -448,6 +452,12 @@
SchemaGrammar::getElemEnumerator() const
{
return RefHash3KeysIdPoolEnumerator<SchemaElementDecl>(fElemDeclPool);
+}
+
+inline NameIdPoolEnumerator<XMLNotationDecl>
+SchemaGrammar::getNotationEnumerator() const
+{
+ return NameIdPoolEnumerator<XMLNotationDecl>(fNotationDeclPool);
}
inline RefHashTableOf<XMLAttDef>* SchemaGrammar::getAttributeDeclRegistry() const {
1.95 +6 -6 xml-xerces/c/src/xercesc/validators/schema/TraverseSchema.cpp
Index: TraverseSchema.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/schema/TraverseSchema.cpp,v
retrieving revision 1.94
retrieving revision 1.95
diff -u -r1.94 -r1.95
--- TraverseSchema.cpp 14 Nov 2003 16:32:41 -0000 1.94
+++ TraverseSchema.cpp 14 Nov 2003 22:35:09 -0000 1.95
@@ -4095,9 +4095,7 @@
if (!fIdentityConstraintNames) {
fIdentityConstraintNames = new (fMemoryManager) RefHash2KeysTableOf<IdentityConstraint>(29, (bool) false, fMemoryManager);
}
-
- if (fIdentityConstraintNames->containsKey(name, fTargetNSURI)) {
-
+ else if (fIdentityConstraintNames->containsKey(name, fTargetNSURI)) {
reportSchemaError(icElem, XMLUni::fgXMLErrDomain, XMLErrs::IC_DuplicateDecl, name);
return;
}
@@ -4120,6 +4118,7 @@
// Add key to element declaration
// -----------------------------------------------------------------------
elemDecl->addIdentityConstraint(icKey);
+ icKey->setNamespaceURI(fTargetNSURI);
janKey.orphan();
}
@@ -4156,8 +4155,7 @@
if (!fIdentityConstraintNames) {
fIdentityConstraintNames = new (fGrammarPoolMemoryManager) RefHash2KeysTableOf<IdentityConstraint>(29, (bool) false, fGrammarPoolMemoryManager);
}
-
- if (fIdentityConstraintNames->containsKey(name, fTargetNSURI)) {
+ else if (fIdentityConstraintNames->containsKey(name, fTargetNSURI)) {
reportSchemaError(icElem, XMLUni::fgXMLErrDomain, XMLErrs::IC_DuplicateDecl, name);
return;
@@ -4181,6 +4179,7 @@
// Add identity cosntraints to element declaration
// -----------------------------------------------------------------------
elemDecl->addIdentityConstraint(icUnique);
+ icUnique->setNamespaceURI(fTargetNSURI);
janUnique.orphan();
}
@@ -4263,6 +4262,7 @@
else {
elemDecl->addIdentityConstraint(icKeyRef);
+ icKeyRef->setNamespaceURI(fTargetNSURI);
janKeyRef.orphan();
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org