Bug #4242
closed
NullPointerException in checkPlausibility when parsing http://schemas.opengis.net/sos/2.0/sos.xsd
Category:
Schema conformance
Applies to branch:
9.9, trunk
Fix Committed on Branch:
9.9, trunk
Fixed in Maintenance Release:
Description
25 Jun 2019 17:42:04,001 DEBUG [main] (Transformer.java:4626) - Loaded schema validation provider com.saxonica.ee.jaxp.SchemaFactoryImpl
25 Jun 2019 17:42:04,004 DEBUG [main] (Transformer.java:4685) - Before schemaFactory.newSchema(sources)
25 Jun 2019 17:42:07,546 DEBUG [main] (Locator.java:1943) -
java.lang.NullPointerException
at net.sf.saxon.expr.AxisExpression.checkPlausibility(AxisExpression.java:492)
at net.sf.saxon.expr.AxisExpression.typeCheck(AxisExpression.java:158)
at com.saxonica.ee.schema.IdentityConstraint.typeCheck(IdentityConstraint.java:208)
at com.saxonica.ee.schema.SchemaCompiler.typeCheckIdentityConstraints(SchemaCompiler.java:624)
at com.saxonica.ee.schema.PreparedSchema.validate(PreparedSchema.java:1025)
at com.saxonica.ee.schema.SchemaCompiler.compile(SchemaCompiler.java:500)
at com.saxonica.ee.schema.SchemaCompiler.validate(SchemaCompiler.java:534)
at com.saxonica.config.EnterpriseConfiguration.addSchemaSource(EnterpriseConfiguration.java:682)
at com.saxonica.ee.jaxp.SchemaFactoryImpl.newSchema(SchemaFactoryImpl.java:271)
at eu.europa.ec.inspire.model.transform.Transformer.parseXMLSchema(Transformer.java:4686)
Reproduced.
There's a path expression appearing in the definition of ComplexType Q{http://docs.oasis-open.org/wsn/t-1}TopicType
, and Saxon is checking that the elements named in the path can legally appear in a valid document. In the case where the complex type contains a wildcard child element, all elements can legally appear, but this condition is being handled incorrectly.
- Category set to Schema conformance
- Assignee set to Michael Kay
- Applies to branch trunk added
- Fix Committed on Branch 9.9, trunk added
Fixed in 9.9 and trunk. Caller of complexType.gatherAllPermittedElements() should check that the returned set does not include "-1", indicating a wildcard in the type definition that prevents more detailed checking of path expressions.
- Status changed from New to Resolved
Great, many thanks!
When do you expect the fix to be generally available?
This one is sufficiently severe that it justifies a new maintenance release, so we're going to try and schedule that in over the next few days.
- Status changed from Resolved to Closed
- % Done changed from 0 to 100
- Fixed in Maintenance Release 9.9.1.4 added
Bug fix applied in the Saxon 9.9.1.4 maintenance release
Many thanks.
I will start this version today or tomorrow.
Please register to edit this issue
Also available in: Atom
PDF