If I use an ARQParser to parse the string "?x < 10" I get an E_LessThan object with the expected var and and XMLSchema#integer
If I use NodeFactory.createLiteral(LiteralLabelFactory.createTypedLiteral( 10 )) I get the XMLSchema#int. This means that the following fails {noformat} E_LessThan lt1 = new E_LessThan( new ExprVar(Var.alloc( "x" )), NodeFactory.createLiteral(LiteralLabelFactory.createTypedLiteral( 10 )); E_LessThan lt2 = ARQParser.parse( "?x < 10" ) ElementFilter ef1 = new ElementFilter( lt1 ); ElementFilter ef2 = new ElementFilter( lt2 ); assertTrue( ef1.equalTo( ef2 ) ); {noformat} It fails because ElementFilter.equalTo executes lt1.equalsBySyntax( lt2 ) and by syntax they are different. Even though they will return the same results for any set of data. Should E_LessThan and other similar functions do something more akin to the NodeValue.compare() to determine if the functions are equal? I'm not sure what a good solution would be here but I think this is a problem. comments? Claude Now this doesn't make a difference during evaluation as they both evaluate as BitInteger. However, when comparing the -- I like: Like Like - The likeliest place on the web <http://like-like.xenei.com> LinkedIn: http://www.linkedin.com/in/claudewarren