Re: Samples from the Internet

I wrote
> <m:apply> <m:mo>&gg;</m:mo>
> is not valid, as can easiy be confirmed with a validating xml parser.

which was, depending on how charitable you are feeling, either incorrect
or not as accurate as it could be...

It's clearly not allowed by the prose description of apply, but the DTD
is rather more permissive by default (for compatibility with the mathml1
dtd, the reasons for the original mathml dtd being permisive are not
really clear, but remember mathml was largely developed in at a time
while XML was being developed (I wasn't on the WG at that time) and they
probably wanted to keep the dtd fairly simple.

Anyway in my defence, I usually use the DTD with 

<!DOCTYPE apply SYSTEM
"/cygwin/home/w3ccvs/WWW/Math/DTD/mathml2/mathml2.dtd"
[
<!ENTITY % MathMLstrict "INCLUDE">
]>
<apply>
<mo/>
<ci/>
</apply>

with MathMLstrict parsing enabled, an mo in an apply does generate a
validation error as you would expect.

 rxp -sxV mml.xml  
Warning: Content model for apply does not allow element mo here
 in unnamed entity at line 6 char 4 of file:///c:/tmp/mml.xml


Sorry about the misinformation earlier.


I think that we should probably make things default to the mathml strict
content models in mathml3, but that's a WG decision to be taken at some
future time.

David

Received on Sunday, 26 November 2006 22:41:11 UTC