|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Language Theorie concerning XML Schema (heavy, at least to me)
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 instance) (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 syntax" http://www.w3.org/TR/2001/WD-xmlschema-formal-20010320/) Is it therefore fair to assume that since XML Schema is context free, that everything (in language terms "every production rule") is validated independently? 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 functional equivalent) I receive the production rule for A which is A ::= B | D for 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 ;-) Best Regards, Gregor
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








