You're right with the validation issue. Still I think it's the best solution 
compared to having HTML spilled all over XQuery code (no offence anyone...) or 
having perf-heavy XSLT.
JsonML implementation in BaseX also kills namespace information (no ns prefix 
prepended in my tests), as far as I tested. So this might be a problem if I 
wanted to send and receive data with mixed namespaces. But that can be worked 
around as well somehow...
Also I don't know what is the perf impact of BaseX's JsonML mapping but I don't 
think it's too much of an issue.

Daniel

--
danielkvasnicka.net

On Nov 19, 2012, at 10:08 , Dirk Kirsten <d...@basex.org> wrote:

> This is quite an interesting approach (I didn't know about AngularJS before). 
> . In the end it looks like AngularJS does exactly what XForms was created 
> for. However, I see your point of no existing 100% satisfying XForms 
> implementation as well. But there is one problem with this approach in 
> comparison to pure XForms I'd like to mention, though.
> XForms automatically does form validation on the client and server side, 
> AngularJS in comparison is just validating on client side, i.e. you are 
> responsible to validate it on server side. Depending on how much and what 
> form elements you use this could significantly add work hours. Depending on 
> the use case this might be negligible, but everyone thinking about the same 
> problem should keep this in mind. And of course AngularJS puts some 
> processing on the client, but I guess with nowadays JavaScript 
> implementations in the browser this shouldn't be much of an issue.
> 
> Cheers,
> Dirk
> 
> 
> On Mon, Nov 19, 2012 at 9:56 AM, Daniel Kvasnička <daniel.kvasni...@me.com> 
> wrote:
> Well, I've actually opted for a completely different solution - AngularJS & 
> RESTXQ & JsonML. Very cool so far! It actually makes BaseX only a service 
> layer and moves all UI composition and teplating to the client.
> Originally I wanted to make a pure XRX solution but I don't see any easily 
> embeddable and widely supported XForms implementation on the market 
> (XSLTForms comes close but I see too many "buts" and "ifs").
> 
> Daniel
> 
> --
> danielkvasnicka.net
> 
> On Nov 19, 2012, at 9:47 , Michael Seiferle <m...@basex.org> wrote:
> 
> > Hi Daniel,
> >
> > thanks a lot for your observations, I know moustache.{xq,js} as well, and 
> > I'd be thrilled if we eventually come up with our own BaseX compatible 
> > implementation :-)
> >
> > Anyway, until then, I'd like to let you know how we handle this at the 
> > moment:
> > We introduce a template module that accepts a map of options and some 
> > content.
> > Inside the template wrapping function, we wire our page elements with the 
> > map’s contents.
> > This proved to be rather flexible while still being lightweight enough to 
> > be out of the way most of the time.
> >
> > Please excuse the messed up highlighting: 
> > https://gist.github.com/e053068a41eb35e727bb
> >
> > We chose maps, as they make it especially easy to provide default values 
> > that can be easily overridden from calling functions by combining a map:
> >> let $defaults := map {"Foo" := "Bar", "foo" := "bar", "Bar" := "Foo"}
> >> let $options  := map {"Foo" := "Override"}
> >> let $options  := map:new(($defaults, $options))
> >> return       string-join(map:keys($options) ! (. || " := "|| $options(.)), 
> >> "&#10;")
> >
> > I hope this helps feel free to discuss this issue more :)
> >
> > Michael
> >
> >
> >
> > Am 17.11.2012 um 19:27 schrieb Daniel Kvasnička <daniel.kvasni...@me.com>:
> >
> >> Hi folks,
> >>
> >> another thing I'm trying to solve while working on a XQuery web app. What 
> >> kind of templating system do you use to separate HTML templates from the 
> >> rest of your code?
> >>
> >> - XSLT - the only problem I have with this is performance. I tested the 
> >> XSLT Module with Saxon 9 and a primitive page and it was more than 3x 
> >> slower compared to pure XQuery templates (XQuery fn taking $model). Other 
> >> than that I think it's the best built-in option. I actually don't have any 
> >> users-per-second expectations and those templates will be quite small... 
> >> do I overemphasize the perf. question?
> >>
> >> - pure XQuery - not aimed at templating at all and it shows I'm afraid... 
> >> just can't come up with a solution that would be clean enough (plus HTML, 
> >> JS & CSS highlighting withing xq files is not good at all, at least in Vim)
> >>
> >> - I looked at Mustache.xq and quite liked it - depends on MarkLogic though 
> >> :(
> >>
> >> - Any hidden gem I haven't googled yet?
> >>
> >> Leaning towards XSLT right now...
> >> Daniel
> >>
> >> --
> >> danielkvasnicka.net
> >>
> >> _______________________________________________
> >> BaseX-Talk mailing list
> >> BaseX-Talk@mailman.uni-konstanz.de
> >> https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
> >
> 
> _______________________________________________
> BaseX-Talk mailing list
> BaseX-Talk@mailman.uni-konstanz.de
> https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
> 
> 
> 
> -- 
> Dirk Kirsten, BaseX GmbH, http://basex.org
> |-- Firmensitz: Blarerstrasse 56, 78462 Konstanz
> |-- Registergericht Freiburg, HRB: 708285, Geschäftsführer:
> |   Dr. Christian Grün, Alexander Holupirek, Michael Seiferle
> `-- Phone: 0049 7531 28 28 676, Fax: 0049 7531 20 05 22

_______________________________________________
BaseX-Talk mailing list
BaseX-Talk@mailman.uni-konstanz.de
https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk

Reply via email to