Lists Home |
Date Index |
In my previous post today I generalized about the Schema for Schemas
not being usefull and founded the opinion with a quote about Xerces
(as Michael and Henry rightfully pointed out). This was a mistake on
my part and I am sorry for that.
Nonetheless I would be happy if somebody would help me with the
following theoretical problem (I do not know whether I was able to
describe it simple enough which leaves me wondering whether I
understood the problem or whether I am the problem myself:-)
In general, my question is:
Does the fact that XML Schema is a context free language with
additional rules mean that if a parser is supporting a feature (say
Complex Types) correctly, it will support it where ever it might
appear nested in whatever other type? (supporting means it can
validate an element a complexType is providing a type for, in any
(Short language intermezzo: XML Schema is design using the approach of
"context free grammars to provide syntactic checking and the use of
inference rules to provide the semantics associated with each piece of
Is it therefore fair to assume that since XML Schema is context free, that
everything (in language terms "every production rule") is validated
Or rephrased: Based on the assumption that XML Schema is a context
free language is it true to state that if I need to validate the
structures A, B, C
where in A is including B is including C -> A(B(C))
If I only have production rules for B and C but not for A I can
always validate B and C correctly (partial validation)?
(That should work in my opinion, since XML Schema provides the
I receive the production rule for A which is
A ::= B | D
D ::= E|F
And the full production rule for B:
B ::= E|C
D, E and F are not supported by my parsers implementation of the grammar.
If I test the production rules for A B and C individually and they all
work, is it correct to state that I can correctly validate any
vocabulary that only contains As Bs and Cs?
In real world terms: A parser is capable of correctly validating
complex types, simple types and elements. Will it (in theory) always
correctly validate all instances of all XML Schemas that only use
these three components? Is the reason for this behaviour that the
language is context free?
If I want to test whether a parser supports the features of a certain
huge XML vocabulary like RosettaNet, should I start testing the
features the vocabulary uses (building blocks) or should I generate a
finite amount of RosettaNet-Test messages?
Since these questions are input to my thesis anybody anserwing
it in a founded way (citing external sources or specs) will reveice a
beautiful e-Card from India. Horray!!!
Anyway I am extremly thankful for any hints (especially from people
who have written their own parser ;-)