Hi, devs.
I would like to discuss about the new xwiki query language.
http://dev.xwiki.org/xwiki/bin/view/Design/XWikiQueryLanguage
We need to choose a syntax and data model of the query language
There are some examples in
http://dev.xwiki.org/xwiki/bin/view/Design/XWiki+Query+Language+Specificati…
I already have a prototype based on my JPQL parser (SableCC based) and
hql generator. It is quite easy to modify syntax and generator. Results
of my query parser research in the end of the …
[View More]message.
I propose:
0) Name: XWiki Query Language, XWQL as a name of the new language.
1) Data Model: Choose query method #1 from specification
http://dev.xwiki.org/xwiki/bin/view/Design/XWiki+Query+Language+Specificati…
with corrections:
add Document as a virtual class for our XWikiDocument.
use "docalias.XWiki.ClassName instead" of "XWiki.ClassName". docalias is
some alias for Document.
add optional select clause.
example:
"select doc.fullName
from Document as doc, doc.XWiki.XWikiUsers as user
where user.email like '%xwiki.com' and doc.author=:username"
"select doc.fullName from Document as doc" may be omitted. It will be
added if there is no Document in query statement. So "from
doc.XWiki.XWikiUsers as user" is correct query statement.
It is possible to use several documents and objects in one query.
Attachment, Class, and other xwiki entities will be added later if needed.
2) Syntax: XWQL will be JPQL subset.
(hint: JPQL is part of Java Persistance API standard, JSR#317. HQL is
a superset of JPQL. Hibernate support JPA)
All JPQL features and all hibernate data model will be accessible for
hibernate store. But it is not true for JCR store.
Only described data model will be available for XWQL on JCRStore. (But
we may add some extensions later)
In JCRv2 will not work (JCRSQL2 constraint):
arithmetic expressions (+-*/)
aggregation funtions (max,min,sum,avg)
some other functions
In JCRv1 also will not work (XPath constraint):
query on several documents (from Document as doc1, Document as doc2)
Some JPQL limitations compared with HQL:
no arithmetic expressions (+-*/) in select clause
aliases at from clause are mandatory (from Document as alias)
So the main idea is to use simple JPQL preprocessor to rewrite virtual
data model to real.
This is quite easy for HQL and JCRSQL2. But it is hard(but doable) for
JCRv1 XPath.
WDYT?
Appendix:
I researched a many of query engines and found nothing appropriate. All
query engines/parsers is either very specific or cannot be used
standalone or cannot be used as a preprocessor. JCRSQL2 language parser
from Jackrabbit is still unusable.
Next I researched a parser generators and found that SableCC is best
choose for my needs. Other tools (ANTLR, JavaCC, Cup, Beaver) requires
much more hand work to write parse tree (AST) and preprocessors
(Visitors and ast.toString). JTB and JJTree also generate AST and
visitors, but SableCC generated code is much more clean.
SableCC generate all of this from one clear grammar file. Maybe it is
not as perfect as hand-written one, but it is quite suitable.
Reason to choose sql-like syntax:
XPath isn't still much spread. XPath language is deprecated in JCRv2.
JCRv2 uses JCRSQL2 and criteria-like AQM instead. JCRSQL2 is much more
powerful (in expression sense) than JCR's XPath and JCRSQL1.
--
Artem Melentyev
[View Less]
The XWiki development team is pleased to announce the release of XWiki
Enterprise 1.5.1.
This is an important bugfixes release (including regressions
introduced in 1.5) mainly around LDAP, watchlist and pages versioning.
Go grab it at http://www.xwiki.org/xwiki/bin/view/Main/Download
Bugs fixed
* Usage of "." in LDAP logins doesn't work
* LDAP authentication fail when user already exist and contains
ldap_dn field emptied by hand
* Exception when viewing document version
* Printing …
[View More]without using the print template only prints the first page
* Superadmin doesn't have programming rights on sub-wikis
* Import fails if the user enters this URL
/xwiki/bin/admin/XWiki/XWikiPreferences manually
* Rollback to document version with v1.1 attachment fail if
attachment content is not loaded
* Left-column top logo is cropped
* Watchlist does not work with XE 1.5
Improvements
* Update MSSQL hibernate mapping file and ship it with xwiki distributions
* Added Ukrainian translation
* DB2 Hibernate mapping for 1.5
For more information see the Release notes at:
http://www.xwiki.org/xwiki/bin/view/Main/ReleaseNotesXWikiEnterprise151
Thanks
-The XWiki dev team
[View Less]
Hi Wang,
Could you tell us what's the status of the office converter and
whether there's any pending patches or things for me to apply?
I've tried using it tonight using the application and it didn't work
too well both in XHTML and in wiki format. The main problem is that
the cleaning is not good enough.
Thanks
-Vincent
Hi All,
By mistake I posted my query in JIRA tracker. From there I got the
method to post the queries.
My requirement is to set the Accordion Menu and Content Area according
to screen resolution(available Height)
I have done for content area. Now i have to do for accordion menu. In
left panel, I have navigation menu which displays the available spaces
and pages within each space . For Accordion effect on this menu, i have
created the object of accordion. as under:-
<script type="…
[View More]text/javascript">
var obj = {div:'xwikinav',height:document.body.parentNode.clientHeight -
(103 + ($mycount *22)), no:$spacecount};
var acc = createAccordion(obj);
</script>
I have set the height dynamically instead of hardcoded value. $mycount
is no of spaces. With this kind of code I get menu as per available
height. But moment i resize by pressing F11 key, my content area is
resized but the menu is not resized.
I understand that, i need to set the height as per above on
window.resize event viz.
window.resize =
currentlyexpandedaccordion.height=document.body.parentNode.clientHeight
- (103 + ($mycount *22))
But i dont know how to get the accordion or div which is in expanded
state.
I even tried. like while creating the accordion, i returned the object.
and then on window.resize event , acc.options.defaultHeight=
document.body.parentNode.clientHeight - (103 + ($mycount *22))
Please help...I have tried all approches...I am stuck.. Will appreciate
your valuable inputs.
[ Show > ]
Prachi Jain
<http://jira.xwiki.org/jira/secure/ViewProfile.jspa?name=hmajmudar> -
05/Sep/08 15:00 - edited My requirement is to set the Accordion Menu and
Content Area according to screen resolution(available Height) I have
done for content area. Now i have to do for accordion menu. In left
panel, I have navigation menu which displays the available spaces and
pages within each space . For Accordion effect on this menu, i have
created the object of accordion. as under:- <script
type="text/javascript"> var obj =
{div:'xwikinav',height:document.body.parentNode.clientHeight - (103 +
($mycount *22)), no:$spacecount}; var acc = createAccordion(obj);
</script> I have set the height dynamically instead of hardcoded value.
$mycount is no of spaces. With this kind of code I get menu as per
available height. But moment i resize by pressing F11 key, my content
area is resized but the menu is not resized. I understand that, i need
to set the height as per above on window.resize event viz. window.resize
=
currentlyexpandedaccordion.height=document.body.parentNode.clientHeight
- (103 + ($mycount *22)) But i dont know how to get the accordion or div
which is in expanded state. I even tried. like while creating the
accordion, i returned the object. and then on window.resize event ,
acc.options.defaultHeight= document.body.parentNode.clientHeight - (103
+ ($mycount *22)) Please help...I have tried all approches...I am
stuck.. Will appreciate your valuable inputs.
Thanks,
Prachi
[View Less]
Hi Artem,
On Sep 7, 2008, at 9:46 PM, amelentev (SVN) wrote:
> Author: amelentev
> Date: 2008-09-07 21:46:19 +0200 (Sun, 07 Sep 2008)
> New Revision: 12470
>
> Modified:
> platform/web/trunk/standard/pom.xml
> Log:
> XWIKI-1839: Query Plugin needs a jar file
why is this not in the query plugin pom instead?
For deployment time and not build time only you can use
<scope>runtime</scope>.
Thanks
-Vincent
> Modified: platform/web/trunk/standard/pom.…
[View More]xml
> ===================================================================
> --- platform/web/trunk/standard/pom.xml 2008-09-07 17:16:07 UTC (rev
> 12469)
> +++ platform/web/trunk/standard/pom.xml 2008-09-07 19:46:19 UTC (rev
> 12470)
> @@ -55,6 +55,13 @@
> <artifactId>xwiki-core-plexus</artifactId>
> <version>${platform.core.version}</version>
> </dependency>
> + <!-- needed for slf4j clients such as QueryPlugin and JCRStore
> + It is deployment time logging configuration, so it is here
> instead of xwiki-core. -->
> + <dependency>
> + <groupId>org.slf4j</groupId>
> + <artifactId>slf4j-log4j12</artifactId>
> + <version>1.3.0</version>
> + </dependency>
> </dependencies>
> <build>
> <plugins>
[View Less]
I am currently adding some enhancements to the Lucene plugin for
Curriki, and have a few questions.
I have submitted a patch for XPLUCENE-25 in order to not index
password fields, the patch seems to have been accepted by Sergiu (with
some adjustments) and committed.
The other patch (XPLUCENE-26) is to allow better sorting of results.
The issue is that when sorting by a field that has been tokenzied by
Lucene the sorting is by any of the tokens (seemingly random), so
titles for example are …
[View More]sorted by random words within the title. The
patch that I have created so far increases the size of the index by
about 50% though (indexing non-tokenized versions of each object
field) and I am not sure if that is acceptable to the XWiki community
at large.
One item that I noted was that the object data is being stored in the
index, but there does not seem to be anything in the SearchResult
interface that allows for getting the values back. Is there a reason
the data is stored? I see two options here, first would be to add a
method in SearchResult that lets one get the object data out (but that
ends up having security issues for pages that one would not normally
be able to see), the other would be to just index the data and not
store it (which should reduce the index size). Any thoughts on the
best direction here?
The last question I have is how do I create a string array (String[])
in a velocity script so that I can have a secondary sort column?
Velocity seems to create object arrays but the LucenePluginApi
requires a string array for the sortField argument of
getSearchResults.
Any comments/input/suggestions/answers are welcome.
David
--
[View Less]
Hi,
Sergiu has asked us on IRC if we could postpone the 1.6M2 release a
bit so we're now proposing to release it on Wednesday morning (the
10th) which means all commits should be done for Tuesday afternoon at
latest, including running verification tests that all work fine.
Each of the committers who have committed stuff should take the time
Tuesday afternoon to run XE and verify that the features they have
committed work fine as expected.
ok with everyone?
Thanks
-Vincent
Hello all!
After the recent changes on the SVN directories, how can I compile the XWiki
Enterprise using the changes I have done on XWiki Platform?
When I execute the compile it downloads a pre-compiled build of XWiki
Platform.
Thank you,
--
Tiago Rinck Caveden
http://caveden.multiply.com