When attempting to run Mono's XSL processor with a simple docbook document and the latest docbook stylesheets, mono merely errors out with the
following message:


an attribute value was not quoted Line 18, position 25.

This message isn't all that useful by itself (putting a filename in there would help, y'know...), but I finally managed to track it down to this item in common/l10n.dtd(in the docbook tree):

<!ATTLIST %i18n;
        %xmlns;         CDATA   #FIXED %uri;


Line 18, column 25 corresponds to the # in #FIXED. The stack trace(attached) indicates that the error originates in mcs/class/System.XML/System.Xml/DTDReader.cs:ReadDefaultAttribute.


The Microsoft implementation does not have this (particular) problem with the Docbook stylesheets. xsltproc handles it just fine.

--
Arild
System.Xml.XPath.XPathException
System.Xml
in <0x000af> System.Xml.XPath.CompiledExpression:Evaluate 
(System.Xml.XPath.BaseIterator)
in <0x000bc> System.Xml.XPath.XPathNavigator:Evaluate 
(System.Xml.XPath.XPathExpression,System.Xml.XPath.XPathNodeIterator,System.Xml.XmlNamespaceManager)
in <0x00088> Mono.Xml.Xsl.XslTransformProcessor:Evaluate 
(System.Xml.XPath.XPathExpression)
in <0x0004b> Mono.Xml.Xsl.Operations.XslVariableInformation:Evaluate 
(Mono.Xml.Xsl.XslTransformProcessor)
in <0x000ce> Mono.Xml.Xsl.Operations.XslGlobalVariable:Evaluate 
(Mono.Xml.Xsl.XslTransformProcessor)
in <0x0044f> Mono.Xml.Xsl.XslTransformProcessor:Process 
(System.Xml.XPath.XPathNavigator,Mono.Xml.Xsl.Outputter,System.Xml.Xsl.XsltArgumentList,System.Xml.XmlResolver)
in <0x000a6> System.Xml.Xsl.ManagedXslTransform:Transform 
(System.Xml.XPath.XPathNavigator,System.Xml.Xsl.XsltArgumentList,System.IO.TextWriter,System.Xml.XmlResolver)
in <0x0001a> System.Xml.Xsl.XslTransform:Transform 
(System.Xml.XPath.XPathNavigator,System.Xml.Xsl.XsltArgumentList,System.IO.TextWriter,System.Xml.XmlResolver)
in <0x00038> System.Xml.Xsl.XslTransform:Transform 
(System.Xml.XPath.IXPathNavigable,System.Xml.Xsl.XsltArgumentList,System.IO.TextWriter,System.Xml.XmlResolver)
in <0x00129> Transform.Transform:Main (string[])

Error during evaluation
System.Xml.XmlException
System.Xml
in <0x00089> System.Xml.DTDReader:ReadDefaultAttribute ()
in <0x00189> System.Xml.DTDReader:ReadAttributeDefaultValue 
(Mono.Xml.DTDAttributeDefinition)
in <0x00801> System.Xml.DTDReader:ReadAttributeDefinition ()
in <0x001e0> System.Xml.DTDReader:ReadAttListDecl ()
in <0x0036a> System.Xml.DTDReader:CompileDeclaration ()
in <0x001ed> System.Xml.DTDReader:ProcessDTDSubset ()
in <0x00292> System.Xml.DTDReader:GenerateDTDObjectModel ()
in <0x0020e> System.Xml.XmlTextReader:GenerateDTDObjectModel 
(string,string,string,string,int,int)
in <0x002f8> System.Xml.XmlTextReader:ReadDoctypeDecl ()
in <0x000bd> System.Xml.XmlTextReader:ReadDeclaration ()
in <0x0008e> System.Xml.XmlTextReader:ReadTag ()
in <0x000db> System.Xml.XmlTextReader:ReadContent ()
in <0x0018e> System.Xml.XmlTextReader:Read ()
in <0x00349> Mono.Xml.DTDValidatingReader:ReadContent ()
in <0x01741> Mono.Xml.DTDValidatingReader:ReadContent ()
in <0x000c3> Mono.Xml.DTDValidatingReader:Read ()
in <0x000bc> Mono.Xml.Schema.XsdValidatingReader:Read ()
in <0x002dd> System.Xml.XmlValidatingReader:Read ()
in <0x00048> Mono.Xml.XPath.DTMXPathDocumentBuilder:Read ()
in <0x001aa> Mono.Xml.XPath.DTMXPathDocumentBuilder:Compile ()
in <0x00189> Mono.Xml.XPath.DTMXPathDocumentBuilder:Init 
(System.Xml.XmlReader,System.Xml.XmlSpace,int)
in <0x00047> Mono.Xml.XPath.DTMXPathDocumentBuilder:.ctor 
(System.Xml.XmlReader,System.Xml.XmlSpace,int)
in <0x00015> Mono.Xml.XPath.DTMXPathDocumentBuilder:.ctor 
(System.Xml.XmlReader,System.Xml.XmlSpace)
in <0x00030> System.Xml.XPath.XPathDocument:Initialize 
(System.Xml.XmlReader,System.Xml.XmlSpace)
in <0x0001f> System.Xml.XPath.XPathDocument:.ctor 
(System.Xml.XmlReader,System.Xml.XmlSpace)
in <0x00223> Mono.Xml.Xsl.XslTransformProcessor:GetDocument (System.Uri)
in <0x0010d> Mono.Xml.Xsl.XsltDocument:GetDocument 
(Mono.Xml.Xsl.XsltCompiledContext,string,string)
in <0x00349> Mono.Xml.Xsl.XsltDocument:Evaluate (System.Xml.XPath.BaseIterator)
in <0x00046> System.Xml.XPath.CompiledExpression:Evaluate 
(System.Xml.XPath.BaseIterator)

Reply via email to