InABlender/api-checker — pull request #114 by RackerWilliams (2013-01-24 00:14:30+00:00)
Title: Problem with XPath states with Resource Groups

Weird bug: Listing multiple resource types each with separate plain parameters:

```xml

```

We seem to produce checker with a missing xpath step. Seems to be an issue in ```joinXpath```.

```
Error on line 26
SXCH0003: org.xml.sax.SAXParseException: cvc-id.1: There is no ID/IDREF binding for IDREF
'd185e6140XPTH'.
at xsl:call-template name="joinXPath" (#33)
at xsl:call-template name="joinXPath" (#33)
at xsl:call-template name="joinXPath" (#33)
at xsl:call-template name="joinXPath" (#33)
at xsl:call-template name="joinXPath" (#33)
at xsl:call-template name="joinXPath" (#33)
at xsl:call-template name="joinXPath" (#33)
in built-in template rule
Exception in thread "main" com.rackspace.com.papi.components.checker.wadl.WADLException: WADL Processing Error: org.xml.sax.SAXParseException: cvc-id.1: There is no ID/IDREF binding for IDREF 'd185e6140XPTH'.
at com.rackspace.com.papi.components.checker.wadl.WADLCheckerBuilder.build(checker-builder.scala:130)
at com.rackspace.com.papi.components.checker.cli.Wadl2Checker$.main(wadl2checker.scala:111)
at com.rackspace.com.papi.components.checker.cli.Wadl2Checker.main(wadl2checker.scala)
Caused by: net.sf.saxon.trans.XPathException: org.xml.sax.SAXParseException: cvc-id.1: There is no ID/IDREF binding for IDREF 'd185e6140XPTH'.
at net.sf.saxon.event.ContentHandlerProxy.handleSAXException(ContentHandlerProxy.java:535)
at net.sf.saxon.event.ContentHandlerProxy.endElement(ContentHandlerProxy.java:397)
at net.sf.saxon.event.NamespaceReducer.endElement(NamespaceReducer.java:208)
at net.sf.saxon.event.ComplexContentOutputter.endElement(ComplexContentOutputter.java:459)
at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:304)
at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:254)
at net.sf.saxon.expr.instruct.Choose.processLeavingTail(Choose.java:794)
at net.sf.saxon.expr.LetExpression.processLeavingTail(LetExpression.java:586)
at net.sf.saxon.expr.instruct.Block.processLeavingTail(Block.java:615)
at net.sf.saxon.expr.instruct.Template.expand(Template.java:231)
at net.sf.saxon.expr.instruct.CallTemplate$CallTemplatePackage.processLeavingTail(CallTemplate.java:526)
at net.sf.saxon.trans.TextOnlyCopyRuleSet.process(TextOnlyCopyRuleSet.java:60)
at net.sf.saxon.trans.Mode.applyTemplates(Mode.java:1022)
at net.sf.saxon.Controller.transformDocument(Controller.java:1957)
at net.sf.saxon.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:148)
at net.sf.saxon.event.ContentHandlerProxy.close(ContentHandlerProxy.java:280)
at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:94)
at net.sf.saxon.event.ComplexContentOutputter.close(ComplexContentOutputter.java:537)
at net.sf.saxon.Controller.closeResult(Controller.java:2145)
at net.sf.saxon.Controller.transformDocument(Controller.java:1980)
at net.sf.saxon.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:148)
at net.sf.saxon.event.ContentHandlerProxy.close(ContentHandlerProxy.java:280)
at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:94)
at net.sf.saxon.event.ComplexContentOutputter.close(ComplexContentOutputter.java:537)
at net.sf.saxon.Controller.closeResult(Controller.java:2145)
at net.sf.saxon.Controller.transformDocument(Controller.java:1980)
at net.sf.saxon.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:148)
at net.sf.saxon.event.ContentHandlerProxy.close(ContentHandlerProxy.java:280)
at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:94)
at net.sf.saxon.event.ComplexContentOutputter.close(ComplexContentOutputter.java:537)
at net.sf.saxon.Controller.closeResult(Controller.java:2145)
at net.sf.saxon.Controller.transformDocument(Controller.java:1980)
at net.sf.saxon.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:148)
at net.sf.saxon.event.ContentHandlerProxy.close(ContentHandlerProxy.java:280)
at net.sf.saxon.serialize.ImplicitResultChecker.close(ImplicitResultChecker.java:96)
at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:94)
at net.sf.saxon.event.ComplexContentOutputter.close(ComplexContentOutputter.java:537)
at net.sf.saxon.Controller.closeResult(Controller.java:2145)
at net.sf.saxon.Controller.transformDocument(Controller.java:1980)
at net.sf.saxon.Controller.transform(Controller.java:1803)
at com.rackspace.cloud.api.wadl.WADLNormalizer.normalize(wadl-normalizer.scala:175)
at com.rackspace.com.papi.components.checker.wadl.WADLCheckerBuilder.build(checker-builder.scala:128)
... 2 more
Caused by: org.xml.sax.SAXParseException: cvc-id.1: There is no ID/IDREF binding for IDREF 'd185e6140XPTH'.
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:196)
at org.apache.xerces.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:132)
at org.apache.xerces.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:394)
at org.apache.xerces.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:325)
at org.apache.xerces.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:282)
at org.apache.xerces.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(XMLSchemaValidator.java:523)
at org.apache.xerces.impl.xs.XMLSchemaValidator.reportSchemaError(XMLSchemaValidator.java:4088)
at org.apache.xerces.impl.xs.XMLSchemaValidator.handleEndElement(XMLSchemaValidator.java:2786)
at org.apache.xerces.impl.xs.XMLSchemaValidator.endElement(XMLSchemaValidator.java:966)
at org.apache.xerces.jaxp.validation.ValidatorHandlerImpl.endElement(ValidatorHandlerImpl.java:608)
at net.sf.saxon.event.ContentHandlerProxy.endElement(ContentHandlerProxy.java:395)
... 42 more
```