Bug #4242
closedNullPointerException in checkPlausibility when parsing http://schemas.opengis.net/sos/2.0/sos.xsd
100%
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)
Updated by Michael Kay almost 5 years ago
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.
Updated by Michael Kay almost 5 years ago
- 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.
Updated by Angelo Quaglia almost 5 years ago
Great, many thanks! When do you expect the fix to be generally available?
Updated by Michael Kay almost 5 years ago
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.
Updated by O'Neil Delpratt almost 5 years ago
- 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
Updated by Angelo Quaglia almost 5 years ago
Many thanks. I will start this version today or tomorrow.
Please register to edit this issue