BTW, in BaseX every xqm module containing RestXQ annotated functions and
stored inside the webapp folder will be handled as RestXQ entrypoint
thus you can write your functions where ever you prefer.
Ciao,
M.
On 12/04/2016 07:51, kleist-digital wrote:
Hi Christian, hi Marco,
I checked the docs and I managed a solution, but it’s combined with the more
classical assemble-page approach. [1]
In Marco’s approach using xquery:invoke there is an index.xqm, which handles
all XQuery annotations for RESTXQ. They are all based an %rest:GET, but for
handling forms, I need a %rest:PUT annotation. I can’t figure out, where to put
it. Or in generell: is the index.xqm the only place, where all annotations are
handled?
Comparing the two approaches with the functions assemble-page and xquery:invoke
for me the last one is more intuitive, so it would be nice, to get it run.
Thanks for help,
Günter
[1] https://en.wikibooks.org/wiki/XQuery/Creating_XQuery_Functions
Am 11.04.2016 um 19:57 schrieb Christian Grün <christian.gr...@gmail.com>:
Hi Günter,
I recommend you to check out our RESTXQ documentation [1], and the
example you get displayed after starting basexhttp and visiting
http://localhost:8984/. In the next step, the DBA code should give you
many helpful hints (but it may be too advanced to start off with).
Hope this helps
Christian
[1] http://docs.basex.org/wiki/RESTXQ
On Mon, Apr 11, 2016 at 3:50 PM, kleist-digital
<kle...@mail.dunzwolff.de> wrote:
Hi Marco,
one problem I achieved: how to handle a simple search-form with your approach
or with RESTXQ in generell?
I have to modules: search.xqm and results.xqm.
- How do I have to handle the RESTXQ-Annotations in index.xqm and or searchxqm,
so that the query-params are transferred to results.xqm?
- What kind if form-action is necessary to get from /search to /results?
I tried different things, but didn’t succeed. Perhaps you have an advice?
Thanks in advance.
Herzlich gegruesst,
Günter
Am 10.04.2016 um 22:36 schrieb Marco Lettere <m.lett...@gmail.com>:
Hi Günter,
sorry for the delay but here you go with a very small example that should show
off what I told.
You can copy the .xqm files into the webapp dir of a basex installation and and
the .css files into the corresponding static folder.
Then invoke the "entrypoint" RestXQ from within your browser with an url
similar to
http://localhost:8984/myapp/page1?user=Marco
As you can see the HTML page built from the entrypoint is composed of three
parts. One that selects the styles to apply according to the user being
anonymous or not.
Then a common header markup is generated and finally a dynamic part that
depends on the page element of the path.
It's really not anything special but nevertheless it should be useful in
clarifying the approach.
Hoffe es gefaellt dir.
Herzliche Gruesse,
Marco.
On 10/04/2016 17:36, Günter Dunz-Wolff wrote:
Hi Marco,
it’s me again. Just to be more specific, I’m especially interested in your
approach
- to pass parametric values into the „exploded“ modules
- to map requests to module invocations by exploiting REST path segments
It would be really helpful, to get some snippets of your code. Tanks a lot.
Ciao, Günter
Am 08.04.2016 um 10:13 schrieb Marco Lettere <m.lett...@gmail.com>:
Hi Günter,
we have worked on several web applications that include a frontend and we are
very happy with using basex for serving both static (scripts, css, images) and
dynamic (markup) content.
One pattern that we've used often and that we find very productive is to split
markup content into different .xqm modules.
The modules are called through the xquery:invoke function in order to "explode"
their output into the main page.
In our opinion this is a good approach because it is applicable recursively to
sub-modules. Content of modules may be dynamic as well and parametric values
are passed into the module through external variables.
Finally, it is possible to set up an automatic way of mapping requests to
module invocations by exploiting REST path segments for example.
I hope I have been able to explain it well enough otherwise, just let me know
and as soon as possible I'll provide an example code snippet that demonstrates
the approach.
Ciao,
Marco.
On 07/04/2016 17:08, Günter Dunz-Wolff wrote:
Hi,
I'm planning to relaunch my website (kleist-digital.de) with OpenShift as
BaseX-Server. After some difficulties and a lot of help from Christian and Andy
the server is running now.
I took a look at RESTXQ and it seems quite interesting to build the whole
frontend for my app with it. Some questions I have:
1. I'm working with a basic layout for all pages. This basic layout-file
includes header, footer and changing content. What is the best approach with
RESTXQ. How to build a modular concept with RESTXQ?
2. Is there any site-structure preferred?
3. Most of the site is dynamic. But I need also static files like images, css,
javascript. Where to put them best (so that the Openshift-Server can handle
them)?
Thanks for any advice and help.
Günter
<styles.xqm><page1.xqm><style2.css><style1.css><commonheader.xqm><index.xqm>