Return-Path: Delivered-To: apmail-jackrabbit-users-archive@locus.apache.org Received: (qmail 73803 invoked from network); 6 May 2008 19:44:10 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 6 May 2008 19:44:10 -0000 Received: (qmail 47212 invoked by uid 500); 6 May 2008 19:44:11 -0000 Delivered-To: apmail-jackrabbit-users-archive@jackrabbit.apache.org Received: (qmail 47193 invoked by uid 500); 6 May 2008 19:44:10 -0000 Mailing-List: contact users-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@jackrabbit.apache.org Delivered-To: mailing list users@jackrabbit.apache.org Received: (qmail 47182 invoked by uid 99); 6 May 2008 19:44:10 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 May 2008 12:44:10 -0700 X-ASF-Spam-Status: No, hits=1.2 required=10.0 tests=SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (athena.apache.org: local policy) Received: from [80.237.132.9] (HELO wp002.webpack.hosteurope.de) (80.237.132.9) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 May 2008 19:43:22 +0000 Received: from nat-88-212-23-194.antik.sk ([88.212.23.194] helo=bono.lan); authenticated by wp002.webpack.hosteurope.de running ExIM using esmtpsa (TLSv1:RC4-SHA:128) id 1JtT4X-0000iZ-8B; Tue, 06 May 2008 21:43:33 +0200 From: Martin Zdila Organization: M-Way Solutions Slovakia Ltd. To: users@jackrabbit.apache.org Subject: Re: XPath ignoring predicate Date: Tue, 6 May 2008 21:43:29 +0200 User-Agent: KMail/1.9.9 References: <200805050857.27178.m.zdila@mwaysolutions.com> <510143ac0805061121q12a12fd7lc64c3358788d03a6@mail.gmail.com> In-Reply-To: <510143ac0805061121q12a12fd7lc64c3358788d03a6@mail.gmail.com> X-Face: 1GwK|3V*x8-a|]3o(Lr^nyGl"r7O.h-c<\4`qFd?^!70ubP\bT9P(=?utf-8?q?IlB=236s01DrVS=5D=7EYT6=0A=091=5CIBhr=5DO=242W0M=7ECl6-!=7D++SIX5?= =?utf-8?q?zB=7ERb?=>6r1hf+h:2OaQ4=E057EbgrmQ?dL3, =?utf-8?q?K2=27=27zl=60b=5E=0A=09+1=3FLTusnn?= X-bounce-key: webpack.hosteurope.de;m.zdila@mwaysolutions.com;1210103036;b35d38d0; X-Virus-Checked: Checked by ClamAV on apache.org --nextPart7814818.5IWKdnMKhn Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Thanks for the helpful reply, Jukka. I also think that for unsupported constructs an appropriate exception shoul= d =20 be thrown. I hope that in the JCR 2 specifications the query language will be required= to=20 be more powerful as this is really a key in many usecases. Just if you are interested, my usecase is to store ACL in the nodes in the= =20 node hierarchy: /my-node1 (someProperty =3D ...) /acl /owner (username =3D ...) /entries /acl-entry /sid (nodeType =3D userSid, username =3D ...) /other-subnodes /my-node2 ... =46or my-node listing purposes it is necessary for query engine to support: =2D query nodes that can be accessed by current user =2D apply user filter (applied to node and its subnode properties) =2D sorting =2D pagination (limit offset) I am not 100% sure, but AFAIK child-axis predicates were not supported in s= ome=20 near previous version (at least they didn't work for me). Now it seems that= =20 they work sufficiently to support child axis filtering, which is also kind = of=20 superset of ACL matching. And I am also glad that sorting and proprietary=20 Jackrabbit's implementation dependent pagination is supported. Thanks On Tue 6. May 2008 20:21:53 Jukka Zitting wrote: > Hi, > > On Mon, May 5, 2008 at 9:57 AM, Martin Zdila = =20 wrote: > > I have nodes named "aaa" and if I execute XPath query > > "//aaa[nonexistingnode] then all "aaa" nodes are returned regardless if > > they contain nonexisting node or not. Is that a bug? > > The JCR spec doesn't require support for such queries, and though we > have added some support for the child axis within predicates (see for > example JCR-247), there still are a number of cases like this that > don't work. > > You can file a feature request for such child node existence > predicates, or a bug report for the fact that such unsupported queries > are not rejected by the Jackrabbit query manager. > > > Second strange thing: //*[name() =3D 'aaa'] returns nothing even I have > > nodes named "aaa" in my repository. > > Try //*[fn:name() =3D 'aaa'], see JCR-857. > > Again, Jackrabbit should reject queries with functions or other > constructs that are not supported. > > > Third strange thing: if I execute //*[aaa] query, then > > nodeIterator.getSize() returns -1. Another bug? > > A feature. RangeIterator.getSize() is allowed to return -1 in case the > size of the collection is unknown. > > BR, > > Jukka Zitting =2D-=20 Martin Zdila=20 CTO M-Way Solutions Slovakia s.r.o. Letna 27, 040 01 Kosice Slovakia tel:+421-908-363-848 mailto:m.zdila@mwaysolutions.com http://www.mwaysolutions.com xmpp:zdila@jabbim.sk (Jabber) skype:m.zdila --nextPart7814818.5IWKdnMKhn Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Disposition: attachment; filename="smime.p7s" Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIDkjCCA44w ggL3oAMCAQICEBLD3KiamZ/lw/mUntwh5SQwDQYJKoZIhvcNAQEFBQAwYjELMAkGA1UEBhMCWkEx JTAjBgNVBAoTHFRoYXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQ ZXJzb25hbCBGcmVlbWFpbCBJc3N1aW5nIENBMB4XDTA3MDcxMzA3MDcyOVoXDTA4MDcxMjA3MDcy OVowgbIxHzAdBgNVBAMTFlRoYXd0ZSBGcmVlbWFpbCBNZW1iZXIxHTAbBgkqhkiG9w0BCQEWDnpk aWxhQGFudGlrLnNrMSYwJAYJKoZIhvcNAQkBFhdtLnpkaWxhQGVwaXNvZnR3YXJlLmNvbTEeMBwG CSqGSIb3DQEJARYPbWFydGluQHpkaWxhLnNrMSgwJgYJKoZIhvcNAQkBFhltLnpkaWxhQG13YXlz b2x1dGlvbnMuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvH50ILW9pXRW1WnP 8XBo6NUQT5PMqhU6y0z0t+WlGUCvFIun+bBD8FkePzalSPrSgcZRZIA5KjN7e3AJ/JfYLJhT1oj0 0/+xWTWwJdttIRHgYuZKrlTsKMWcf6WxjEzn9hVRS+3TtGuGypoZKRacVaS7V4yYI0hw1WdT8eCS oSJZBt0X/jwAt0sMH3YqmEjanEwY/YQ0ac/ZLA6pWzIqvbQjjxpb+Pku4a+JMtv4ohhKMNaScEBv 2mGq2lSyrRd4URKwYzL2R6PK+Okzfq2/ml8C2o6l8dRkLOdPNJiMy76qYafbVa8Zql3Scg/KtuXN Yqmo1hBGx1d3lcw41NiBlQIDAQABo3AwbjBeBgNVHREEVzBVgQ56ZGlsYUBhbnRpay5za4EXbS56 ZGlsYUBlcGlzb2Z0d2FyZS5jb22BD21hcnRpbkB6ZGlsYS5za4EZbS56ZGlsYUBtd2F5c29sdXRp b25zLmNvbTAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBBQUAA4GBAEQmSZqBRXktnCqosZJCFAuv /rGuvhTcwxL9vYdIad4vykEXQgSqlFMtuRwu+SFK2miwgTLm99RAZIrOneSPMpOtO0OorAvRDHWC u/wvwVAXgpxXm7q9P0GEQ+ZjA3/4gDC0EX+lwJratjOVmXCf6ufwuyp0XEmUJjuA3zOS9F5oMYIC JzCCAiMCAQEwdjBiMQswCQYDVQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0 eSkgTHRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNvbmFsIEZyZWVtYWlsIElzc3VpbmcgQ0ECEBLD 3KiamZ/lw/mUntwh5SQwBwYFKw4DAhqggYswGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkq hkiG9w0BCQUxDxcNMDgwNTA2MTk0MzI5WjAjBgkqhkiG9w0BCQQxFgQU1w4rr0Ye6D04FRlzxEU8 O4B1CRkwLAYJKoZIhvcNAQkPMR8wHTANBglghkgBZQMEAQIFADAMBggqhkiG9w0DBwUAMAsGCSqG SIb3DQEBAQSCAQCnPaGpBwPMeIDN7adHkAwiqkVeldl29Bc3Lbtgs/KeDOj6+2JODdmJZLKWtbat rQYpkgFFdmMpiV+wjhAB5gbjWnHf6qvzlJIotYoFm+5DZtxo1DnUrq9eqNV5vqPlYNzCkLykPYnE Ay5/cHv3SBuHG6JLqWkTAgxpf6UH+NZZ53ri6FGlZD+qmT5xzYwnIXeemOlrtvMqyGDcbx6NVl4V kzjurxHZOqvS2/0CzWop5xXQPRcqBtmBNWPp86T5m0+4vam2PMpoGOizcnaCZewJnmBeI/9uo0h+ p5XgoM8KvcQWN60nKGOrHiVe+TkmPoc2EZRuZEcl8196WUB6RLatAAAAAAAA --nextPart7814818.5IWKdnMKhn--