aboutsummaryrefslogtreecommitdiff
path: root/libxsde/xsde/cxx/parser/validating
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2010-10-18 11:17:51 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2010-10-18 11:17:51 +0200
commitd80d096ee8743fd6f7382d274272b0b6d7faf9bf (patch)
treed0f0bee1e645cb2b86b6837ac0db8a7d2821e533 /libxsde/xsde/cxx/parser/validating
parent0e4637025fa8d1b4234b0512561d31f0dd023843 (diff)
Support for schema evolution using substitution groups
New examples: hybrid/evolution/ignore and hybrid/evolution/passthrough.
Diffstat (limited to 'libxsde/xsde/cxx/parser/validating')
-rw-r--r--libxsde/xsde/cxx/parser/validating/inheritance-map.cxx5
-rw-r--r--libxsde/xsde/cxx/parser/validating/inheritance-map.hxx1
2 files changed, 5 insertions, 1 deletions
diff --git a/libxsde/xsde/cxx/parser/validating/inheritance-map.cxx b/libxsde/xsde/cxx/parser/validating/inheritance-map.cxx
index f23e841..c46ac1f 100644
--- a/libxsde/xsde/cxx/parser/validating/inheritance-map.cxx
+++ b/libxsde/xsde/cxx/parser/validating/inheritance-map.cxx
@@ -33,6 +33,11 @@ namespace xsde
bool inheritance_map::
check (const char* derived, const char* base) const
{
+ // Check for the special match-anything marker.
+ //
+ if (derived[0] == '*')
+ return true;
+
if (strcmp (derived, base) == 0)
return true;
diff --git a/libxsde/xsde/cxx/parser/validating/inheritance-map.hxx b/libxsde/xsde/cxx/parser/validating/inheritance-map.hxx
index ba8335e..1462fb2 100644
--- a/libxsde/xsde/cxx/parser/validating/inheritance-map.hxx
+++ b/libxsde/xsde/cxx/parser/validating/inheritance-map.hxx
@@ -60,4 +60,3 @@ namespace xsde
#include <xsde/cxx/parser/validating/inheritance-map.ixx>
#endif // XSDE_CXX_PARSER_VALIDATING_INHERITANCE_MAP_HXX
-