Closed
Description
A partial fix was added to #93 for handling XML names starting with a colon.
@som-snytt raises the issue that colons may not be fully corrected.
Here is an empty element:
scala> val x = <:/>
<console>:10: error: not found: value <:/>
val x = <:/>
^
Here is a name with a letter, but starting with a colon:
scala> val a = <:a/>
<console>:1: error: illegal start of simple expression
val a = <:a/>
^
Trying with a string doesn't work much better
scala> val a = "<:a/>"
a: String = <:a/>
scala> val x = scala.xml.XML.loadString(a)
java.lang.IllegalArgumentException: prefix of zero length, use null instead
at scala.xml.Elem.<init>(Elem.scala:102)
at scala.xml.Elem$.apply(Elem.scala:34)
at scala.xml.parsing.NoBindingFactoryAdapter.createNode(NoBindingFactoryAdapter.scala:30)
at scala.xml.parsing.NoBindingFactoryAdapter.createNode(NoBindingFactoryAdapter.scala:19)
at scala.xml.parsing.FactoryAdapter.endElement(FactoryAdapter.scala:182)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609)
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:183)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(XMLDTDValidator.java:766)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1343)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$ContentDriver.scanRootElementHook(XMLDocumentScannerImpl.java:1292)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3138)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:880)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:333)
at scala.xml.factory.XMLLoader$class.loadXML(XMLLoader.scala:41)
at scala.xml.XML$.loadXML(XML.scala:60)
at scala.xml.factory.XMLLoader$class.loadString(XMLLoader.scala:60)
at scala.xml.XML$.loadString(XML.scala:60)
... 43 elided
Metadata
Metadata
Assignees
Labels
No labels