diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2010-03-03 15:46:34 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2010-03-03 15:46:34 +0200 |
commit | ca2bc859cf0001848224ff00a92fcc5d60a16e7f (patch) | |
tree | f9cc0a6608a7c3cdb069ff0a3411a516a6319ddc | |
parent | b99e9f7e2bc39d7a0be0b7910668a14e04cf24c9 (diff) |
Handle "superimposed" simple content restriction
-rw-r--r-- | xsd-frontend/parser.cxx | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/xsd-frontend/parser.cxx b/xsd-frontend/parser.cxx index b68c189..9137725 100644 --- a/xsd-frontend/parser.cxx +++ b/xsd-frontend/parser.cxx @@ -3246,7 +3246,20 @@ namespace XSDFrontend XML::Element e (next ()); String name (e.name ()); - if (name == L"enumeration") + if (name == L"simpleType") + { + // This is a "superimposed" restriction where the base + // content is restricted by specifying another simple + // type. The attributes are restricted in the ussual + // way. So in effect we have kind of two base classes. + // I guess the way to handle this one day would be to + // copy all the facets from the base-to-this-type + // part of the hierarchy (will need to "know" facets + // for the built-in type restrictions as well). For + // now just ignore it. + // + } + else if (name == L"enumeration") { // Right now our sementic graph cannot represent enumerations // with attributes so we are going to ignore enumerators for |