Re: [basex-talk] Somewhat unusual question

2017-02-25 Thread Kendall Shaw
I think it’s important to the original question to point out that a problem is 
likely to includes mixtures of different types of data. BaseX has an SQL module 
and Marklogic includes modules for RDF and you can write extensions and use 
http to integrate external systems in various XML database systems.

For the skeptical person that we are pitching XQuery and BaseX to it’s probably 
best to be prepared to describe a solution that isn’t unnaturally forcing XML 
to fit as the solution for every problem.

Kendall

From: Graydon Saunders <graydon...@gmail.com>
Date: Saturday, February 25, 2017 at 5:09 PM
To: Kendall Shaw <kendall.s...@workday.com>
Cc: BaseX <basex-talk@mailman.uni-konstanz.de>
Subject: Re: [basex-talk] Somewhat unusual question

Hi Kendal --

If you don't stick to attributes, it's not hard to represent that kind of 
relationship graph in XML:



karen


linda


sarah


wendy


cindy



This way you can have a lot of  elements (edges in the relationship 
graph) for an individual.  The XML graph and the represented graph don't match 
structurally and you'd have to go through and build maps or something in XQuery 
to manipulate the represented graph, but writing a function to get everybody 
who knows Cindy within a certain number of edges wouldn't be difficult.  
(Taking off the "certain number of edges" obliges you to write some sort of 
cycle detection mechanism, which is harder and presumably the people behind 
SPARQL have already done so.)

So not quite as syntactically compact but I don't think XML is obviously 
unsuitable for "represent an arbitrary graph".  You have to pick your XML 
vocabulary carefully but "arbitrary graph" and "carefully" go naturally 
together.

-- Graydon

On Sat, Feb 25, 2017 at 7:42 PM, Kendall Shaw 
<kendall.s...@workday.com<mailto:kendall.s...@workday.com>> wrote:
On 2/25/17, 12:55 PM, "Liam R. E. Quin" <l...@w3.org<mailto:l...@w3.org>> wrote:

On Sat, 2017-02-25 at 10:02 +, Kendall Shaw wrote:
> It’s interesting to me to know what sorts of applications seem like
> they would be a good match for XQuery’s data model but turned out not
> to be in some case.

I agree that's interesting - I'm afraid I have more experience with
what didn't work in SQL and did work with a forest store, probably
because I don't often encounter people whose projects didn't fit with
XML-related technologies. How do we find them?

 Aside from things like the 100,000 sensors scenario that you described, the 
friends example might be a case that is in the same area that XML makes sense.

With XPath having special support for hierarchical data, matching XML’s notion 
of element hierarchy, it’s perfect for data like:



  

  

  

  



So you can us $person//*/@name to get cindy’s sub-friends. Also, the document 
is constrained to be well-formed by the rules of XML document types, based on 
elements having only 1 parent. But, friends aren’t constrained to have only 
have 1 super-friend. And poor Wendy gets no sub-friends.

A less restricted graph representation can represent that where hierarchy 
doesn’t have special status:

@prefix : <people#> .
:cindy :name “cindy” ; :knows :karen .
:karen :name “karen” ; :knows :linda .
:linda :name “linda” ; :knows :sarah .
:sarah :name “sarah” ; :knows :wendy .
:wendy :name “wendy” :knows :cindy .

And with SPARQL, having special support for graph traversal, matching RDF’s 
notion of connected edges, it’s perfect for data like above.

So, you can use ?p :knows/:name ?name to get cindy’s friend’s friend’s friend’s 
friend’s etc. Also, Wendy gets to have a friend too.

Representing something similar in XML, ignoring RDF XML which makes it even 
more complicated:


  
  
  
  
  


The rules of XML document types don’t include special support for arbitrary 
attribute relationships, in the way that element hierarchy does have special 
status. You can write XQuery to navigate that data, but it’s not a simple 
expression and doesn’t use ancestor/descendant axes so maybe it’s not the best 
choice for the data.

The other way around, when most of the data is hierarchical it’s harder to use 
something like SPARQL with RDF than XPath with XML. And RDF is not necessarily 
the best representation for graphs where nodes and edges both have attributes.

Kendall









Re: [basex-talk] Somewhat unusual question

2017-02-25 Thread Graydon Saunders
Hi Kendal --

If you don't stick to attributes, it's not hard to represent that kind of
relationship graph in XML:



karen


linda


sarah


wendy


cindy



This way you can have a lot of  elements (edges in the relationship
graph) for an individual.  The XML graph and the represented graph don't
match structurally and you'd have to go through and build maps or something
in XQuery to manipulate the represented graph, but writing a function to
get everybody who knows Cindy within a certain number of edges wouldn't be
difficult.  (Taking off the "certain number of edges" obliges you to write
some sort of cycle detection mechanism, which is harder and presumably the
people behind SPARQL have already done so.)

So not quite as syntactically compact but I don't think XML is obviously
unsuitable for "represent an arbitrary graph".  You have to pick your XML
vocabulary carefully but "arbitrary graph" and "carefully" go naturally
together.

-- Graydon

On Sat, Feb 25, 2017 at 7:42 PM, Kendall Shaw 
wrote:

> On 2/25/17, 12:55 PM, "Liam R. E. Quin"  wrote:
>
> On Sat, 2017-02-25 at 10:02 +, Kendall Shaw wrote:
> > It’s interesting to me to know what sorts of applications seem like
> > they would be a good match for XQuery’s data model but turned out not
> > to be in some case.
>
> I agree that's interesting - I'm afraid I have more experience with
> what didn't work in SQL and did work with a forest store, probably
> because I don't often encounter people whose projects didn't fit with
> XML-related technologies. How do we find them?
>
>  Aside from things like the 100,000 sensors scenario that you described,
> the friends example might be a case that is in the same area that XML makes
> sense.
>
> With XPath having special support for hierarchical data, matching XML’s
> notion of element hierarchy, it’s perfect for data like:
>
> 
> 
>   
> 
>   
> 
>   
> 
>   
> 
> 
>
> So you can us $person//*/@name to get cindy’s sub-friends. Also, the
> document is constrained to be well-formed by the rules of XML document
> types, based on elements having only 1 parent. But, friends aren’t
> constrained to have only have 1 super-friend. And poor Wendy gets no
> sub-friends.
>
> A less restricted graph representation can represent that where hierarchy
> doesn’t have special status:
>
> @prefix :  .
> :cindy :name “cindy” ; :knows :karen .
> :karen :name “karen” ; :knows :linda .
> :linda :name “linda” ; :knows :sarah .
> :sarah :name “sarah” ; :knows :wendy .
> :wendy :name “wendy” :knows :cindy .
>
> And with SPARQL, having special support for graph traversal, matching
> RDF’s notion of connected edges, it’s perfect for data like above.
>
> So, you can use ?p :knows/:name ?name to get cindy’s friend’s friend’s
> friend’s friend’s etc. Also, Wendy gets to have a friend too.
>
> Representing something similar in XML, ignoring RDF XML which makes it
> even more complicated:
>
> 
>   
>   
>   
>   
>   
> 
>
> The rules of XML document types don’t include special support for
> arbitrary attribute relationships, in the way that element hierarchy does
> have special status. You can write XQuery to navigate that data, but it’s
> not a simple expression and doesn’t use ancestor/descendant axes so maybe
> it’s not the best choice for the data.
>
> The other way around, when most of the data is hierarchical it’s harder to
> use something like SPARQL with RDF than XPath with XML. And RDF is not
> necessarily the best representation for graphs where nodes and edges both
> have attributes.
>
> Kendall
>
>
>
>
>
>
>
>


Re: [basex-talk] Somewhat unusual question

2017-02-25 Thread Kendall Shaw
On 2/25/17, 12:55 PM, "Liam R. E. Quin"  wrote:

On Sat, 2017-02-25 at 10:02 +, Kendall Shaw wrote: 
> It’s interesting to me to know what sorts of applications seem like
> they would be a good match for XQuery’s data model but turned out not
> to be in some case.

I agree that's interesting - I'm afraid I have more experience with
what didn't work in SQL and did work with a forest store, probably
because I don't often encounter people whose projects didn't fit with
XML-related technologies. How do we find them?

 Aside from things like the 100,000 sensors scenario that you described, the 
friends example might be a case that is in the same area that XML makes sense.

With XPath having special support for hierarchical data, matching XML’s notion 
of element hierarchy, it’s perfect for data like:



  

  

  

  



So you can us $person//*/@name to get cindy’s sub-friends. Also, the document 
is constrained to be well-formed by the rules of XML document types, based on 
elements having only 1 parent. But, friends aren’t constrained to have only 
have 1 super-friend. And poor Wendy gets no sub-friends.

A less restricted graph representation can represent that where hierarchy 
doesn’t have special status:

@prefix :  .
:cindy :name “cindy” ; :knows :karen .
:karen :name “karen” ; :knows :linda .
:linda :name “linda” ; :knows :sarah .
:sarah :name “sarah” ; :knows :wendy .
:wendy :name “wendy” :knows :cindy .

And with SPARQL, having special support for graph traversal, matching RDF’s 
notion of connected edges, it’s perfect for data like above.

So, you can use ?p :knows/:name ?name to get cindy’s friend’s friend’s friend’s 
friend’s etc. Also, Wendy gets to have a friend too.

Representing something similar in XML, ignoring RDF XML which makes it even 
more complicated:


  
  
  
  
  


The rules of XML document types don’t include special support for arbitrary 
attribute relationships, in the way that element hierarchy does have special 
status. You can write XQuery to navigate that data, but it’s not a simple 
expression and doesn’t use ancestor/descendant axes so maybe it’s not the best 
choice for the data.

The other way around, when most of the data is hierarchical it’s harder to use 
something like SPARQL with RDF than XPath with XML. And RDF is not necessarily 
the best representation for graphs where nodes and edges both have attributes.

Kendall




 




Re: [basex-talk] Somewhat unusual question

2017-02-25 Thread Liam R. E. Quin
On Sat, 2017-02-25 at 10:02 +, Kendall Shaw wrote:
> 
[...]
> The original post was asking for examples of ways that XQuery is a
> good solution for an unknown problem.

Unknown to us at least... yes.

>  Generally, if I found myself think that technology x is the solution
> to every problem, I would proceed as if I am probably wrong about
> that.

:-)
> 
> It’s interesting to me to know what sorts of applications seem like
> they would be a good match for XQuery’s data model but turned out not
> to be in some case.

I agree that's interesting - I'm afraid I have more experience with
what didn't work in SQL and did work with a forest store, probably
because I don't often encounter people whose projects didn't fit with
XML-related technologies. How do we find them?

I do know of people who moved to JSONiq in order to persist JSON
documents alongside XML ones, but XQuery 3.1 might well reduce that
pressure. Or at least that was a large part of our goal in the XML
Query Working Group in developing it, to improve the XML+JSON and JSON-
only support. But JSONiq still has the XQuery support there.

An example of where I probably would not use an XQuery-based system as
my first choice might be where I'm dealing with data coming in from
100,000 sensors at a high rate and I have to store, say, the past
hour's worth of data for simple queries. The tree-based collection
model works best with data that has hierarchy and is, in SQL terms,
semi-structured (i.e. has irregularity). XQuery tends to be a win over
SQL when a lot of the queries involve hierarchy or sequence, but if
those aspects aren't present it's less obviously a win.

Of course, if the sensors are sending EXI-compressed XML parse events,
and the db supports that, an XML db can be a win even there; I heard
from someone who experimented with devices that could send either JSON
or EXI, and he was blown away at the performance improvement he got by
switching to EXI. So you have to measure and experiment, too.

best,

Liam


-- 
Liam R. E. Quin 
The World Wide Web Consortium (W3C)


Re: [basex-talk] Somewhat unusual question

2017-02-25 Thread Marc van Grootel
Hi,

I was following this thread last week but couldn't chime in yet as I was 
inundated with work.  I am, in a sense, lucky to be able to spend about 2/3 to 
3/4 of my time on XQuery and XSLT. It used to be just XSLT but we started using 
XQuery more and nowadays it's predominantly XQuery (with BaseX of course).

I saw this thread shift towards the merits of XQuery applications in a 
commercial context. The original question was about a comparison between XQuery 
and other languages. Marco said that he was anticipating some pushback, or at 
least some difficulty in proposing an XQuery or even XML-based solution for a 
client. Maybe I can tell a something about the role XQuery or XML technologies 
play in our company which is a marketing operations company with many 
international clients.

I use XQuery for fun and for commercial work. I have also used XSLT extensively 
for about 15 years. From the start I was able to apply XML technologies on 
commercial projects. Only quite recently I came to XQuery. Having dabbled with 
Marklogic and Exist before I knew about XML databases and XQuery. Then I 
"found" BaseX and about 2 years ago I started to introduce it at work. First 
for small adhoc jobs, or for, what I call, "glue". But soon for applications 
that sit beside or are integrated with our main systems or products. 
Our company has bought into XML technologies from the beginning more than 10 
years ago. Mainly XSL-FO and XSLT. Mostly for quite traditional publishing 
use-cases. Even though our main products are built with Java and we are thus 
quite a mainstream software development shop we are also not afraid of applying 
XML technologies where it makes sense.

Our development team is trusted by the business to make their own technology 
choices. In many cases the business doesn't even care which technology is used 
to build something. They mostly care about what it can do, how quickly we can 
build it and how reliable it is. Of course this is not a green-field and we do 
have to build solutions that operate with or inside our existing applications 
(which happen to be written in Java for the most part).

We are a marketing operations company and our systems are used by marketing 
departments of large international clients in retail, government, publishing, 
manufacturing, automotive and other areas. Where does XQuery, or XML technology 
in general, fit within our main on-line applications? Here are some examples of 
areas where it is beneficial for us.

- Publishing: XSLT, XSL-FO and increasingly XQuery are used to create printed 
materials such as catalogs, posters, brochures, business cards etc. But also 
micro-sites or web-apps that sales staff can take on the road with them to talk 
to their customers. The content for these products can be authored in an 
XML-based system that gives it's users an almost WYSIWYG view of the finished 
product. Or it can be provided and edited in a configurable database/content 
mangement system that acts as an on-line ordering system for these products. 
XQuery is also used for publishing projects that cannot be handled by our 
existing systems. An example is generating an annual report web site for one of 
our clients.

- Order fulfillment:  when our clients order products via one of our systems 
they need to have it rendered. Often into PDF for printing but also for on-line 
use such as publication on their own web-site. Also, each client may have 
different requirements for fulfilling orders. Some require submitting files to 
a printer's web-service, or they require order data in the form of 
spreadsheets. Some are pushed to one of our other systems to be handled by our 
internal staff. XQuery orchestrates the rendering and reporting (often with 
XSLT) for these orders in a way that gives each client what they need.

- Content APIs: our customizable content management system is a Java 
application with a RDBMS. It may store anything from printable products, 
articles with textual content or even a detailed inventory with photos of all 
the retail stores of a client. To access this data more easily we developed an 
XQuery and BaseX integration that will have a synced version of all this 
system's data in XML format. Any of our internal services (such as the above 
mentioned order fulfillment service) can use this XQuery-based content API to 
get the relevant data from this content management system.

- Data & Content Engineering: frequently we are tasked with assignments that 
cannot be handled by our regular systems. A good example is processing and 
transforming the data representing the complete and detailed inventory of all 
500+ stores from a retail client and bringing it into our content management 
system used by the client to plan their marketing campaigns for their stores. 
From this case I learned that XQuery is very well suited for this type of job. 
Another good example is enabling translation of our applications, preparing UI 
and content for 

Re: [basex-talk] Somewhat unusual question

2017-02-25 Thread Kendall Shaw
We users of BaseX probably all agree that it and XQuery are super and powerful. 
XML ,like RDF,  is not a perfect match for every problem. Wordstar is however 
the solution to every problem.

Kendall

On 2/25/17, 1:28 AM, "meumapple"  wrote:

XML offers an elegant yet simple tree structure. You can find a way to 
express in XML the kinds of relationships you mention by simply using a 
different strategy (using not a parent element but, for example, attributes). 

In general, every format has limitations (so this is not an XML-related 
problem, but a more general one). I have also to add that while triples may 
suit your case, there are hundreds of other cases where they would simply add 
too much structure you would really prefer to get rid of.

In my experience, XQuery/XPath offers a superb/powerful and yet simple way 
to handle data (this is especially true in BaseX). XQuery/XPath data model is 
so terse that compared to others it looks so modern/intuitive/robust. I have 
recently had to code some Python, and it simply was so gratuitously intricate 
(and slow).

Joseph



Il giorno 25 feb 2017, alle ore 00:05, Kendall Shaw 
 ha scritto:

A more interesting example, maybe: If you compare XPath with this SPARQL 
fragment:

?x foaf:knows/foaf:name ?name .

All of my friend’s friend’s friend’s friend’s friend’s etc., with arbitrary 
depth, who know my friend with name x.

Friends are not limited to having 1  “befriender” in the way that elements 
have 1 parent, so it could make sense to represent some data as a less 
restricted form of graph than an XML element tree. 

Kendall

On 2/24/17, 10:07 AM, "basex-talk-boun...@mailman.uni-konstanz.de on behalf 
of Kendall Shaw"  wrote:

   For example, a program that regulates flow of water in a garden 
sprinkler is probably not a good match for xquery and an xml database. 

   On 2/24/17, 2:20 AM, "meumapple"  wrote:

   Hi Kendall,

   I do not agree. A few considerations. If data are XML, I find it 
difficult to use a different language from XQuery. It is possible, of course, 
but much much more complex (why doing that?!). But native XML files are not the 
entire story. You can transform, for example, all of text data into an elegant 
XML working version and very very easily query it. I can do whatever I want 
with XQuery easily and deal with different kinds of data, so I do not agree at 
all. 




   Il giorno 24 feb 2017, alle ore 00:37, Kendall Shaw 
 ha scritto:

   What the application is makes all the difference. If the purpose 
does not have to do with XML and XML in a database, then XQuery and BaseX is 
less likely to be appropriate.

   Kendall

   On 2/23/17, 12:36 PM, "basex-talk-boun...@mailman.uni-konstanz.de on 
behalf of Maximilian Gärber"  wrote:

 Hi Marco,

 from my experience, the best way to handle these types of 
arguments is
 to make clear that there is nothing 'special' about XQuery. It is a
 query language.

 If you have to compare BaseX to something that most Java developers
 will know, I'd use Hibernate and HQL, a library and DSL that is all
 about querying data(bases).

 For C# developers, LINQ would probably ring a bell.

 Of course there is a lot more to it, and when it comes to web
 applications, you can use it in almost every layer (templating,
 routing, storage, etc).


 Regards,

 Max













 2017-02-22 13:43 GMT+01:00 Marco Lettere :
> Hi to everyone,
> 
> probably this is not the right place for such a discussion but the BaseX
> communitiy is the one I'm better introduced to and the one I trust the 
most.
> So I hope that this somewhat unusual excursus will anyway be of interest 
to
> some of you.
> 
> As for myself I fell in love with XQuery and its power in terms of data
> manipulation many years ago. I wouldn't change it with anything else and 
BTW
> we're using it (thanks to the incredible BaseX runtime) much beyond
> data-processing being it the backbone of all our micro-service oriented
> architectures.
> 
> Now, to the point, in the near future I probably will be called to face a
> somewhat skeptical customer who will argue about the technological choice 
of
> XQuery.
> 
> My point will be to make a comparison with the technologies they're
 

Re: [basex-talk] Somewhat unusual question

2017-02-25 Thread Kendall Shaw
On 2/24/17, 7:15 PM, "Liam R. E. Quin"  wrote:

On Fri, 2017-02-24 at 18:07 +, Kendall Shaw wrote:
> For example, a program that regulates flow of water in a garden
> sprinkler is probably not a good match for xquery and an xml
> database.
Funnily enough, sensors these days often report results using EXI, and
an embedded XQuery engine might be a fine way to go. People used to use
mxquery for such applications.
 
A lot of tooling choice comes down to warm fuzzies and familiarity.

If you're actually querying XML, then an XML database and XQuery do
make an obvious choice. I find it can help to say it's a "fast forest
store" with XML as an interchange and loading format, to try & prevent
the misunderstanding that the software reads the entire database as
pointy-bracket XML with each query and is glacially slow. I wish we'd
used a forest metaphor for naming XQuery...

So, maybe, if representing a problem in terms of XQuery’s data model has you 
using a forest of interrelated stumps, then the tree aspect of forests is not a 
good match for the problem.

The original post was asking for examples of ways that XQuery is a good 
solution for an unknown problem. Generally, if I found myself think that 
technology x is the solution to every problem, I would proceed as if I am 
probably wrong about that.

It’s interesting to me to know what sorts of applications seem like they would 
be a good match for XQuery’s data model but turned out not to be in some case.

Kendall



Re: [basex-talk] Somewhat unusual question

2017-02-25 Thread meumapple
XML offers an elegant yet simple tree structure. You can find a way to express 
in XML the kinds of relationships you mention by simply using a different 
strategy (using not a parent element but, for example, attributes). 

In general, every format has limitations (so this is not an XML-related 
problem, but a more general one). I have also to add that while triples may 
suit your case, there are hundreds of other cases where they would simply add 
too much structure you would really prefer to get rid of.

In my experience, XQuery/XPath offers a superb/powerful and yet simple way to 
handle data (this is especially true in BaseX). XQuery/XPath data model is so 
terse that compared to others it looks so modern/intuitive/robust. I have 
recently had to code some Python, and it simply was so gratuitously intricate 
(and slow).

Joseph



Il giorno 25 feb 2017, alle ore 00:05, Kendall Shaw  
ha scritto:

A more interesting example, maybe: If you compare XPath with this SPARQL 
fragment:

?x foaf:knows/foaf:name ?name .

All of my friend’s friend’s friend’s friend’s friend’s etc., with arbitrary 
depth, who know my friend with name x.

Friends are not limited to having 1  “befriender” in the way that elements have 
1 parent, so it could make sense to represent some data as a less restricted 
form of graph than an XML element tree. 

Kendall

On 2/24/17, 10:07 AM, "basex-talk-boun...@mailman.uni-konstanz.de on behalf of 
Kendall Shaw"  wrote:

   For example, a program that regulates flow of water in a garden sprinkler is 
probably not a good match for xquery and an xml database. 

   On 2/24/17, 2:20 AM, "meumapple"  wrote:

   Hi Kendall,

   I do not agree. A few considerations. If data are XML, I find it 
difficult to use a different language from XQuery. It is possible, of course, 
but much much more complex (why doing that?!). But native XML files are not the 
entire story. You can transform, for example, all of text data into an elegant 
XML working version and very very easily query it. I can do whatever I want 
with XQuery easily and deal with different kinds of data, so I do not agree at 
all. 




   Il giorno 24 feb 2017, alle ore 00:37, Kendall Shaw 
 ha scritto:

   What the application is makes all the difference. If the purpose does 
not have to do with XML and XML in a database, then XQuery and BaseX is less 
likely to be appropriate.

   Kendall

   On 2/23/17, 12:36 PM, "basex-talk-boun...@mailman.uni-konstanz.de on 
behalf of Maximilian Gärber"  wrote:

 Hi Marco,

 from my experience, the best way to handle these types of arguments is
 to make clear that there is nothing 'special' about XQuery. It is a
 query language.

 If you have to compare BaseX to something that most Java developers
 will know, I'd use Hibernate and HQL, a library and DSL that is all
 about querying data(bases).

 For C# developers, LINQ would probably ring a bell.

 Of course there is a lot more to it, and when it comes to web
 applications, you can use it in almost every layer (templating,
 routing, storage, etc).


 Regards,

 Max













 2017-02-22 13:43 GMT+01:00 Marco Lettere :
> Hi to everyone,
> 
> probably this is not the right place for such a discussion but the BaseX
> communitiy is the one I'm better introduced to and the one I trust the most.
> So I hope that this somewhat unusual excursus will anyway be of interest to
> some of you.
> 
> As for myself I fell in love with XQuery and its power in terms of data
> manipulation many years ago. I wouldn't change it with anything else and BTW
> we're using it (thanks to the incredible BaseX runtime) much beyond
> data-processing being it the backbone of all our micro-service oriented
> architectures.
> 
> Now, to the point, in the near future I probably will be called to face a
> somewhat skeptical customer who will argue about the technological choice of
> XQuery.
> 
> My point will be to make a comparison with the technologies they're
> currently using and I would like to demonstrate that for a rather XML- (and
> in general data-) intensive workflow XQuery is perfectly suitable and
> probably better than many other alternatives.
> 
> I would tend to exclude XSLT because it would face similar opposition. I
> would also exclude languages at a lower level of abstraction like Java,
> Python, Javascript, C/C++ and so on for obvious architectural reasons.
> 
> But then only templating languages/engines come to my mind. Those would
> still be probably novel technologies to learn and wouldn't offer the
> structural, syntactic and semantic power of XQuery anyway.
> 
> So I ask you 

Re: [basex-talk] Somewhat unusual question

2017-02-25 Thread meumapple
I do not think this an argument to 

Il giorno 25 feb 2017, alle ore 00:05, Kendall Shaw  
ha scritto:

A more interesting example, maybe: If you compare XPath with this SPARQL 
fragment:

?x foaf:knows/foaf:name ?name .

All of my friend’s friend’s friend’s friend’s friend’s etc., with arbitrary 
depth, who know my friend with name x.

Friends are not limited to having 1  “befriender” in the way that elements have 
1 parent, so it could make sense to represent some data as a less restricted 
form of graph than an XML element tree. 

Kendall

On 2/24/17, 10:07 AM, "basex-talk-boun...@mailman.uni-konstanz.de on behalf of 
Kendall Shaw"  wrote:

   For example, a program that regulates flow of water in a garden sprinkler is 
probably not a good match for xquery and an xml database. 

   On 2/24/17, 2:20 AM, "meumapple"  wrote:

   Hi Kendall,

   I do not agree. A few considerations. If data are XML, I find it 
difficult to use a different language from XQuery. It is possible, of course, 
but much much more complex (why doing that?!). But native XML files are not the 
entire story. You can transform, for example, all of text data into an elegant 
XML working version and very very easily query it. I can do whatever I want 
with XQuery easily and deal with different kinds of data, so I do not agree at 
all. 




   Il giorno 24 feb 2017, alle ore 00:37, Kendall Shaw 
 ha scritto:

   What the application is makes all the difference. If the purpose does 
not have to do with XML and XML in a database, then XQuery and BaseX is less 
likely to be appropriate.

   Kendall

   On 2/23/17, 12:36 PM, "basex-talk-boun...@mailman.uni-konstanz.de on 
behalf of Maximilian Gärber"  wrote:

 Hi Marco,

 from my experience, the best way to handle these types of arguments is
 to make clear that there is nothing 'special' about XQuery. It is a
 query language.

 If you have to compare BaseX to something that most Java developers
 will know, I'd use Hibernate and HQL, a library and DSL that is all
 about querying data(bases).

 For C# developers, LINQ would probably ring a bell.

 Of course there is a lot more to it, and when it comes to web
 applications, you can use it in almost every layer (templating,
 routing, storage, etc).


 Regards,

 Max













 2017-02-22 13:43 GMT+01:00 Marco Lettere :
> Hi to everyone,
> 
> probably this is not the right place for such a discussion but the BaseX
> communitiy is the one I'm better introduced to and the one I trust the most.
> So I hope that this somewhat unusual excursus will anyway be of interest to
> some of you.
> 
> As for myself I fell in love with XQuery and its power in terms of data
> manipulation many years ago. I wouldn't change it with anything else and BTW
> we're using it (thanks to the incredible BaseX runtime) much beyond
> data-processing being it the backbone of all our micro-service oriented
> architectures.
> 
> Now, to the point, in the near future I probably will be called to face a
> somewhat skeptical customer who will argue about the technological choice of
> XQuery.
> 
> My point will be to make a comparison with the technologies they're
> currently using and I would like to demonstrate that for a rather XML- (and
> in general data-) intensive workflow XQuery is perfectly suitable and
> probably better than many other alternatives.
> 
> I would tend to exclude XSLT because it would face similar opposition. I
> would also exclude languages at a lower level of abstraction like Java,
> Python, Javascript, C/C++ and so on for obvious architectural reasons.
> 
> But then only templating languages/engines come to my mind. Those would
> still be probably novel technologies to learn and wouldn't offer the
> structural, syntactic and semantic power of XQuery anyway.
> 
> So I ask you kindly, in order to complete my preparation on these matters,
> is there anyone that has experience with other tools or languages that can
> be compared with XQuery when used for XML querying, generation,
> transformation, templating, composition and so on?
> 
> Thanks a lot!
> 
> Marco.








Re: [basex-talk] Somewhat unusual question

2017-02-24 Thread Liam R. E. Quin
On Fri, 2017-02-24 at 18:07 +, Kendall Shaw wrote:
> For example, a program that regulates flow of water in a garden
> sprinkler is probably not a good match for xquery and an xml
> database.
Funnily enough, sensors these days often report results using EXI, and
an embedded XQuery engine might be a fine way to go. People used to use
mxquery for such applications.
 
A lot of tooling choice comes down to warm fuzzies and familiarity.

If you're actually querying XML, then an XML database and XQuery do
make an obvious choice. I find it can help to say it's a "fast forest
store" with XML as an interchange and loading format, to try & prevent
the misunderstanding that the software reads the entire database as
pointy-bracket XML with each query and is glacially slow. I wish we'd
used a forest metaphor for naming XQuery...

Liam



Re: [basex-talk] Somewhat unusual question

2017-02-24 Thread Kendall Shaw
A more interesting example, maybe: If you compare XPath with this SPARQL 
fragment:

?x foaf:knows/foaf:name ?name .

All of my friend’s friend’s friend’s friend’s friend’s etc., with arbitrary 
depth, who know my friend with name x.

Friends are not limited to having 1  “befriender” in the way that elements have 
1 parent, so it could make sense to represent some data as a less restricted 
form of graph than an XML element tree. 

Kendall

On 2/24/17, 10:07 AM, "basex-talk-boun...@mailman.uni-konstanz.de on behalf of 
Kendall Shaw"  wrote:

For example, a program that regulates flow of water in a garden sprinkler 
is probably not a good match for xquery and an xml database. 

On 2/24/17, 2:20 AM, "meumapple"  wrote:

Hi Kendall,

I do not agree. A few considerations. If data are XML, I find it 
difficult to use a different language from XQuery. It is possible, of course, 
but much much more complex (why doing that?!). But native XML files are not the 
entire story. You can transform, for example, all of text data into an elegant 
XML working version and very very easily query it. I can do whatever I want 
with XQuery easily and deal with different kinds of data, so I do not agree at 
all. 




Il giorno 24 feb 2017, alle ore 00:37, Kendall Shaw 
 ha scritto:

What the application is makes all the difference. If the purpose does 
not have to do with XML and XML in a database, then XQuery and BaseX is less 
likely to be appropriate.

Kendall

On 2/23/17, 12:36 PM, "basex-talk-boun...@mailman.uni-konstanz.de on 
behalf of Maximilian Gärber"  wrote:

  Hi Marco,

  from my experience, the best way to handle these types of arguments is
  to make clear that there is nothing 'special' about XQuery. It is a
  query language.

  If you have to compare BaseX to something that most Java developers
  will know, I'd use Hibernate and HQL, a library and DSL that is all
  about querying data(bases).

  For C# developers, LINQ would probably ring a bell.

  Of course there is a lot more to it, and when it comes to web
  applications, you can use it in almost every layer (templating,
  routing, storage, etc).


  Regards,

  Max













  2017-02-22 13:43 GMT+01:00 Marco Lettere :
> Hi to everyone,
> 
> probably this is not the right place for such a discussion but the 
BaseX
> communitiy is the one I'm better introduced to and the one I trust 
the most.
> So I hope that this somewhat unusual excursus will anyway be of 
interest to
> some of you.
> 
> As for myself I fell in love with XQuery and its power in terms of 
data
> manipulation many years ago. I wouldn't change it with anything else 
and BTW
> we're using it (thanks to the incredible BaseX runtime) much beyond
> data-processing being it the backbone of all our micro-service 
oriented
> architectures.
> 
> Now, to the point, in the near future I probably will be called to 
face a
> somewhat skeptical customer who will argue about the technological 
choice of
> XQuery.
> 
> My point will be to make a comparison with the technologies they're
> currently using and I would like to demonstrate that for a rather 
XML- (and
> in general data-) intensive workflow XQuery is perfectly suitable and
> probably better than many other alternatives.
> 
> I would tend to exclude XSLT because it would face similar 
opposition. I
> would also exclude languages at a lower level of abstraction like 
Java,
> Python, Javascript, C/C++ and so on for obvious architectural reasons.
> 
> But then only templating languages/engines come to my mind. Those 
would
> still be probably novel technologies to learn and wouldn't offer the
> structural, syntactic and semantic power of XQuery anyway.
> 
> So I ask you kindly, in order to complete my preparation on these 
matters,
> is there anyone that has experience with other tools or languages 
that can
> be compared with XQuery when used for XML querying, generation,
> transformation, templating, composition and so on?
> 
> Thanks a lot!
> 
> Marco.








Re: [basex-talk] Somewhat unusual question

2017-02-24 Thread Kendall Shaw
For example, a program that regulates flow of water in a garden sprinkler is 
probably not a good match for xquery and an xml database. 

On 2/24/17, 2:20 AM, "meumapple"  wrote:

Hi Kendall,

I do not agree. A few considerations. If data are XML, I find it difficult 
to use a different language from XQuery. It is possible, of course, but much 
much more complex (why doing that?!). But native XML files are not the entire 
story. You can transform, for example, all of text data into an elegant XML 
working version and very very easily query it. I can do whatever I want with 
XQuery easily and deal with different kinds of data, so I do not agree at all. 




Il giorno 24 feb 2017, alle ore 00:37, Kendall Shaw 
 ha scritto:

What the application is makes all the difference. If the purpose does not 
have to do with XML and XML in a database, then XQuery and BaseX is less likely 
to be appropriate.

Kendall

On 2/23/17, 12:36 PM, "basex-talk-boun...@mailman.uni-konstanz.de on behalf 
of Maximilian Gärber"  wrote:

  Hi Marco,

  from my experience, the best way to handle these types of arguments is
  to make clear that there is nothing 'special' about XQuery. It is a
  query language.

  If you have to compare BaseX to something that most Java developers
  will know, I'd use Hibernate and HQL, a library and DSL that is all
  about querying data(bases).

  For C# developers, LINQ would probably ring a bell.

  Of course there is a lot more to it, and when it comes to web
  applications, you can use it in almost every layer (templating,
  routing, storage, etc).


  Regards,

  Max













  2017-02-22 13:43 GMT+01:00 Marco Lettere :
> Hi to everyone,
> 
> probably this is not the right place for such a discussion but the BaseX
> communitiy is the one I'm better introduced to and the one I trust the 
most.
> So I hope that this somewhat unusual excursus will anyway be of interest 
to
> some of you.
> 
> As for myself I fell in love with XQuery and its power in terms of data
> manipulation many years ago. I wouldn't change it with anything else and 
BTW
> we're using it (thanks to the incredible BaseX runtime) much beyond
> data-processing being it the backbone of all our micro-service oriented
> architectures.
> 
> Now, to the point, in the near future I probably will be called to face a
> somewhat skeptical customer who will argue about the technological choice 
of
> XQuery.
> 
> My point will be to make a comparison with the technologies they're
> currently using and I would like to demonstrate that for a rather XML- 
(and
> in general data-) intensive workflow XQuery is perfectly suitable and
> probably better than many other alternatives.
> 
> I would tend to exclude XSLT because it would face similar opposition. I
> would also exclude languages at a lower level of abstraction like Java,
> Python, Javascript, C/C++ and so on for obvious architectural reasons.
> 
> But then only templating languages/engines come to my mind. Those would
> still be probably novel technologies to learn and wouldn't offer the
> structural, syntactic and semantic power of XQuery anyway.
> 
> So I ask you kindly, in order to complete my preparation on these matters,
> is there anyone that has experience with other tools or languages that can
> be compared with XQuery when used for XML querying, generation,
> transformation, templating, composition and so on?
> 
> Thanks a lot!
> 
> Marco.






Re: [basex-talk] Somewhat unusual question

2017-02-24 Thread Adil Hasan
Hello Marco,
I'm sure your thinking like this: look at it from the customer's point
of view. They will view the
s/w as a means to a enabling them to get their product to the consumer
more cheaply or quickly or to allow them to reach more consumers.

>From that viewpoint here's a few points to consider:
- is Xquery easy to learn and use?
- is it cheap?
- is it secure?
- is it faster?
- does it scale?
- how difficult is it to port what we have to using Xquery?
- is it easy to maintain?

As Dirk says below you also should point out the XML database products
exist and are relatively mature with good support. Business people are
risk-averse when it comes to tools required to build their product
(unless the new tool offers such a compelling advantage that the risk is
worth taking).

It may be worth demonstrating that a novice user was able to get some
Xquery example up and running in a short time. Or, showing some demo
that is a mock-up of some component of their system and describe how
long it took to put together (perhaps compare with a similar approach
with another s/w).

hth
adil

On Fri, Feb 24, 2017 at 07:55:25PM +0330, Dirk Kirsten wrote:
> Hello Marco,
> 
> I think Max is spot on, that the main objection of business people is
> that XQuery is not exactly mainstream stuff. Nobody will be questioned
> if you buy Oracle and your project in the end fails - Hey, you bought
> the established market leader, what could go wrong? But you use a
> relatively unknown, open source database (BaseX comes to mind...) and
> the project fails - Hey, everyone will criticize this decision, for sure.
> 
> However, to at least decrease the fears it might be worth mentioning the
> standardization efforts and open source software involved:
> 
> - XQuery, XPath, etc.pp. are all W3C standards
> 
> - There are several XQuery implementations (BaseX, exist-db, MarkLogic),
> so even in the case your platform in the end might not be maintained
> anymore you might be able to change to another implementation
> 
> - Functional languages are quite "in" at the moment (look at the success
> of Haskell, Clojure, Scala, Erlang, ...). With XQuery being also a
> functional language it is quite easier for those developers also to
> grasp XQuery. So you should have an increasing number of at least
> potential XQuery developers
> 
> - Using BaseX (or exist-db) as your XQuery processor you use open source
> software, which has several business benefits (e.g. decreased risk of
> vendor lock in)
> 
> - Using BaseX (or exist-db) you can get get commercial supports from the
> companies behind these open source tools. For some reason, business
> people love to buy commercial support...
> 
> 
> I hope you can convince them - Wish you all the best
> 
> Dirk
> 
> 
> On 02/24/2017 06:06 PM, Marco Lettere wrote:
> > Hi guys,
> > thank you all so much for the great feedback.
> > This one in particular feels like a crucial point and it's why I'm
> > currently collecting all possible feedback also from students, stagers
> > and other technicians that are somehow representative of entry-level
> > to basic staff.
> > Nice to see that people with fresh minds are extremely positive about
> > the simplicity and the productivity of XQuery even if confronted with
> > non XML specific use cases!
> > Marco.
> >
> > On 24/02/2017 15:25, Adil Hasan wrote:
> >> Hello Max,
> >>
> >> I think business decisions follow that path to avoid ending up in
> >> a niche area where it would be terribly difficult to employ a
> >> replacement once a/the developer has left.
> >> Perhaps also pointing out that there are standards and perhaps
> >> that it's not too difficult to learn would help to allay fears?
> >>
> >> hth
> >> adil
> >>
> >> On Fri, Feb 24, 2017 at 03:06:59PM +0100, Maximilian Gärber wrote:
> >>> Hi,
> >>>
> >>> I really like this thread! Keep the arguments coming! ;-)
> >>>
> >>> I am not saying that XQuery is just another query language. But if
> >>> somebody (who has never heard anything about XQuery) is asking about
> >>> your technological choice then telling them that XQuery is so special
> >>> and unique is counter-productive.
> >>>
> >>> Because business decisions are always the same when it comes to
> >>> technology: they want this warm and fuzzy feeling that you are running
> >>> on mainstream stuff.
> >>>
> >>>
> >>> Br,
> >>> Max
> >>>
> >>>
> >>>
> >>>
> >>> 2017-02-24 12:56 GMT+01:00 Hans-Juergen Rennau :
>  To put it mildly, I disagree. I think the greatest mistake one can
>  make is
>  call XQuery a query language. I prefer to say that it is an
>  information
>  language. If this appears to be an incomprehensible statement, this
>  reflects
>  the novelty of the concept of an "information language". A book
>  should be
>  written about it. Which points to my ...
> 
>  second disagreement, which concerns your statement that there is
>  nothing
>  special about XQuery. I think XQuery is 

Re: [basex-talk] Somewhat unusual question

2017-02-24 Thread Dirk Kirsten
Hello Marco,

I think Max is spot on, that the main objection of business people is
that XQuery is not exactly mainstream stuff. Nobody will be questioned
if you buy Oracle and your project in the end fails - Hey, you bought
the established market leader, what could go wrong? But you use a
relatively unknown, open source database (BaseX comes to mind...) and
the project fails - Hey, everyone will criticize this decision, for sure.

However, to at least decrease the fears it might be worth mentioning the
standardization efforts and open source software involved:

- XQuery, XPath, etc.pp. are all W3C standards

- There are several XQuery implementations (BaseX, exist-db, MarkLogic),
so even in the case your platform in the end might not be maintained
anymore you might be able to change to another implementation

- Functional languages are quite "in" at the moment (look at the success
of Haskell, Clojure, Scala, Erlang, ...). With XQuery being also a
functional language it is quite easier for those developers also to
grasp XQuery. So you should have an increasing number of at least
potential XQuery developers

- Using BaseX (or exist-db) as your XQuery processor you use open source
software, which has several business benefits (e.g. decreased risk of
vendor lock in)

- Using BaseX (or exist-db) you can get get commercial supports from the
companies behind these open source tools. For some reason, business
people love to buy commercial support...


I hope you can convince them - Wish you all the best

Dirk


On 02/24/2017 06:06 PM, Marco Lettere wrote:
> Hi guys,
> thank you all so much for the great feedback.
> This one in particular feels like a crucial point and it's why I'm
> currently collecting all possible feedback also from students, stagers
> and other technicians that are somehow representative of entry-level
> to basic staff.
> Nice to see that people with fresh minds are extremely positive about
> the simplicity and the productivity of XQuery even if confronted with
> non XML specific use cases!
> Marco.
>
> On 24/02/2017 15:25, Adil Hasan wrote:
>> Hello Max,
>>
>> I think business decisions follow that path to avoid ending up in
>> a niche area where it would be terribly difficult to employ a
>> replacement once a/the developer has left.
>> Perhaps also pointing out that there are standards and perhaps
>> that it's not too difficult to learn would help to allay fears?
>>
>> hth
>> adil
>>
>> On Fri, Feb 24, 2017 at 03:06:59PM +0100, Maximilian Gärber wrote:
>>> Hi,
>>>
>>> I really like this thread! Keep the arguments coming! ;-)
>>>
>>> I am not saying that XQuery is just another query language. But if
>>> somebody (who has never heard anything about XQuery) is asking about
>>> your technological choice then telling them that XQuery is so special
>>> and unique is counter-productive.
>>>
>>> Because business decisions are always the same when it comes to
>>> technology: they want this warm and fuzzy feeling that you are running
>>> on mainstream stuff.
>>>
>>>
>>> Br,
>>> Max
>>>
>>>
>>>
>>>
>>> 2017-02-24 12:56 GMT+01:00 Hans-Juergen Rennau :
 To put it mildly, I disagree. I think the greatest mistake one can
 make is
 call XQuery a query language. I prefer to say that it is an
 information
 language. If this appears to be an incomprehensible statement, this
 reflects
 the novelty of the concept of an "information language". A book
 should be
 written about it. Which points to my ...

 second disagreement, which concerns your statement that there is
 nothing
 special about XQuery. I think XQuery is unique, as it is (or am I
 wrong?)
 the first and only general-purpose programming language which is a
 pure
 expression language built upon the ground of a value model centered
 in the
 concept of resources composed of globally addressable, interrelated
 information (i.e. nodes).

 With kind regards,
 Hans-Jürgen


 Maximilian Gärber  schrieb am 21:36 Donnerstag,
 23.Februar 2017:


 Hi Marco,

 from my experience, the best way to handle these types of arguments is
 to make clear that there is nothing 'special' about XQuery. It is a
 query language.

 If you have to compare BaseX to something that most Java developers
 will know, I'd use Hibernate and HQL, a library and DSL that is all
 about querying data(bases).

 For C# developers, LINQ would probably ring a bell.

 Of course there is a lot more to it, and when it comes to web
 applications, you can use it in almost every layer (templating,
 routing, storage, etc).


 Regards,

 Max













 2017-02-22 13:43 GMT+01:00 Marco Lettere :
> Hi to everyone,
>
> probably this is not the right place for such a discussion but the

Re: [basex-talk] Somewhat unusual question

2017-02-24 Thread Paul Swennenhuis

Nice article Greg!

Paul

On 24-2-2017 14:29, Murray, Gregory wrote:
I agree entirely that XQuery is unique and that calling it a query 
language gives the wrong impression. I gave a talk about this last 
August at Balisage:


http://www.balisage.net/Proceedings/vol18/html/Murray01/BalisageVol18-Murray01.html

Regards,
Greg

From: <basex-talk-boun...@mailman.uni-konstanz.de 
<mailto:basex-talk-boun...@mailman.uni-konstanz.de>> on behalf of 
Hans-Juergen Rennau <hren...@yahoo.de <mailto:hren...@yahoo.de>>

Reply-To: Hans-Juergen Rennau <hren...@yahoo.de <mailto:hren...@yahoo.de>>
Date: Friday, February 24, 2017 at 6:56 AM
To: Maximilian Gärber <mgaer...@arcor.de <mailto:mgaer...@arcor.de>>, 
"basex-talk@mailman.uni-konstanz.de 
<mailto:basex-talk@mailman.uni-konstanz.de>" 
<basex-talk@mailman.uni-konstanz.de 
<mailto:basex-talk@mailman.uni-konstanz.de>>

Subject: Re: [basex-talk] Somewhat unusual question

To put it mildly, I disagree. I think the greatest mistake one can 
make is call XQuery a query language. I prefer to say that it is an 
information language. If this appears to be an incomprehensible 
statement, this reflects the novelty of the concept of an "information 
language". A book should be written about it. Which points to my ...


second disagreement, which concerns your statement that there is 
nothing special about XQuery. I think XQuery is unique, as it is (or 
am I wrong?) the first and only general-purpose programming language 
which is a pure expression language built upon the ground of a value 
model centered in the concept of resources composed of globally 
addressable, interrelated information (i.e. nodes).


With kind regards,
Hans-Jürgen


Maximilian Gärber <mgaer...@arcor.de <mailto:mgaer...@arcor.de>> 
schrieb am 21:36 Donnerstag, 23.Februar 2017:



Hi Marco,

from my experience, the best way to handle these types of arguments is
to make clear that there is nothing 'special' about XQuery. It is a
query language.

If you have to compare BaseX to something that most Java developers
will know, I'd use Hibernate and HQL, a library and DSL that is all
about querying data(bases).

For C# developers, LINQ would probably ring a bell.

Of course there is a lot more to it, and when it comes to web
applications, you can use it in almost every layer (templating,
routing, storage, etc).


Regards,

Max













2017-02-22 13:43 GMT+01:00 Marco Lettere <m.lett...@gmail.com 
<mailto:m.lett...@gmail.com>>:

> Hi to everyone,
>
> probably this is not the right place for such a discussion but the BaseX
> communitiy is the one I'm better introduced to and the one I trust 
the most.
> So I hope that this somewhat unusual excursus will anyway be of 
interest to

> some of you.
>
> As for myself I fell in love with XQuery and its power in terms of data
> manipulation many years ago. I wouldn't change it with anything else 
and BTW

> we're using it (thanks to the incredible BaseX runtime) much beyond
> data-processing being it the backbone of all our micro-service oriented
> architectures.
>
> Now, to the point, in the near future I probably will be called to 
face a
> somewhat skeptical customer who will argue about the technological 
choice of

> XQuery.
>
> My point will be to make a comparison with the technologies they're
> currently using and I would like to demonstrate that for a rather 
XML- (and

> in general data-) intensive workflow XQuery is perfectly suitable and
> probably better than many other alternatives.
>
> I would tend to exclude XSLT because it would face similar opposition. I
> would also exclude languages at a lower level of abstraction like Java,
> Python, Javascript, C/C++ and so on for obvious architectural reasons.
>
> But then only templating languages/engines come to my mind. Those would
> still be probably novel technologies to learn and wouldn't offer the
> structural, syntactic and semantic power of XQuery anyway.
>
> So I ask you kindly, in order to complete my preparation on these 
matters,
> is there anyone that has experience with other tools or languages 
that can

> be compared with XQuery when used for XML querying, generation,
> transformation, templating, composition and so on?
>
> Thanks a lot!
>
> Marco.
>






Re: [basex-talk] Somewhat unusual question

2017-02-24 Thread Adil Hasan
Hello Max,

I think business decisions follow that path to avoid ending up in
a niche area where it would be terribly difficult to employ a 
replacement once a/the developer has left.
Perhaps also pointing out that there are standards and perhaps
that it's not too difficult to learn would help to allay fears?

hth
adil

On Fri, Feb 24, 2017 at 03:06:59PM +0100, Maximilian Gärber wrote:
> Hi,
> 
> I really like this thread! Keep the arguments coming! ;-)
> 
> I am not saying that XQuery is just another query language. But if
> somebody (who has never heard anything about XQuery) is asking about
> your technological choice then telling them that XQuery is so special
> and unique is counter-productive.
> 
> Because business decisions are always the same when it comes to
> technology: they want this warm and fuzzy feeling that you are running
> on mainstream stuff.
> 
> 
> Br,
> Max
> 
> 
> 
> 
> 2017-02-24 12:56 GMT+01:00 Hans-Juergen Rennau :
> > To put it mildly, I disagree. I think the greatest mistake one can make is
> > call XQuery a query language. I prefer to say that it is an information
> > language. If this appears to be an incomprehensible statement, this reflects
> > the novelty of the concept of an "information language". A book should be
> > written about it. Which points to my ...
> >
> > second disagreement, which concerns your statement that there is nothing
> > special about XQuery. I think XQuery is unique, as it is (or am I wrong?)
> > the first and only general-purpose programming language which is a pure
> > expression language built upon the ground of a value model centered in the
> > concept of resources composed of globally addressable, interrelated
> > information (i.e. nodes).
> >
> > With kind regards,
> > Hans-Jürgen
> >
> >
> > Maximilian Gärber  schrieb am 21:36 Donnerstag,
> > 23.Februar 2017:
> >
> >
> > Hi Marco,
> >
> > from my experience, the best way to handle these types of arguments is
> > to make clear that there is nothing 'special' about XQuery. It is a
> > query language.
> >
> > If you have to compare BaseX to something that most Java developers
> > will know, I'd use Hibernate and HQL, a library and DSL that is all
> > about querying data(bases).
> >
> > For C# developers, LINQ would probably ring a bell.
> >
> > Of course there is a lot more to it, and when it comes to web
> > applications, you can use it in almost every layer (templating,
> > routing, storage, etc).
> >
> >
> > Regards,
> >
> > Max
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > 2017-02-22 13:43 GMT+01:00 Marco Lettere :
> >> Hi to everyone,
> >>
> >> probably this is not the right place for such a discussion but the BaseX
> >> communitiy is the one I'm better introduced to and the one I trust the
> >> most.
> >> So I hope that this somewhat unusual excursus will anyway be of interest
> >> to
> >> some of you.
> >>
> >> As for myself I fell in love with XQuery and its power in terms of data
> >> manipulation many years ago. I wouldn't change it with anything else and
> >> BTW
> >> we're using it (thanks to the incredible BaseX runtime) much beyond
> >> data-processing being it the backbone of all our micro-service oriented
> >> architectures.
> >>
> >> Now, to the point, in the near future I probably will be called to face a
> >> somewhat skeptical customer who will argue about the technological choice
> >> of
> >> XQuery.
> >>
> >> My point will be to make a comparison with the technologies they're
> >> currently using and I would like to demonstrate that for a rather XML-
> >> (and
> >> in general data-) intensive workflow XQuery is perfectly suitable and
> >> probably better than many other alternatives.
> >>
> >> I would tend to exclude XSLT because it would face similar opposition. I
> >> would also exclude languages at a lower level of abstraction like Java,
> >> Python, Javascript, C/C++ and so on for obvious architectural reasons.
> >>
> >> But then only templating languages/engines come to my mind. Those would
> >> still be probably novel technologies to learn and wouldn't offer the
> >> structural, syntactic and semantic power of XQuery anyway.
> >>
> >> So I ask you kindly, in order to complete my preparation on these matters,
> >> is there anyone that has experience with other tools or languages that can
> >> be compared with XQuery when used for XML querying, generation,
> >> transformation, templating, composition and so on?
> >>
> >> Thanks a lot!
> >>
> >> Marco.
> >>
> >
> >


Re: [basex-talk] Somewhat unusual question

2017-02-24 Thread Murray, Gregory
I agree entirely that XQuery is unique and that calling it a query language 
gives the wrong impression. I gave a talk about this last August at Balisage:

http://www.balisage.net/Proceedings/vol18/html/Murray01/BalisageVol18-Murray01.html

Regards,
Greg

From: 
<basex-talk-boun...@mailman.uni-konstanz.de<mailto:basex-talk-boun...@mailman.uni-konstanz.de>>
 on behalf of Hans-Juergen Rennau <hren...@yahoo.de<mailto:hren...@yahoo.de>>
Reply-To: Hans-Juergen Rennau <hren...@yahoo.de<mailto:hren...@yahoo.de>>
Date: Friday, February 24, 2017 at 6:56 AM
To: Maximilian Gärber <mgaer...@arcor.de<mailto:mgaer...@arcor.de>>, 
"basex-talk@mailman.uni-konstanz.de<mailto:basex-talk@mailman.uni-konstanz.de>" 
<basex-talk@mailman.uni-konstanz.de<mailto:basex-talk@mailman.uni-konstanz.de>>
Subject: Re: [basex-talk] Somewhat unusual question

To put it mildly, I disagree. I think the greatest mistake one can make is call 
XQuery a query language. I prefer to say that it is an information language. If 
this appears to be an incomprehensible statement, this reflects the novelty of 
the concept of an "information language". A book should be written about it. 
Which points to my ...

second disagreement, which concerns your statement that there is nothing 
special about XQuery. I think XQuery is unique, as it is (or am I wrong?) the 
first and only general-purpose programming language which is a pure expression 
language built upon the ground of a value model centered in the concept of 
resources composed of globally addressable, interrelated information (i.e. 
nodes).

With kind regards,
Hans-Jürgen


Maximilian Gärber <mgaer...@arcor.de<mailto:mgaer...@arcor.de>> schrieb am 
21:36 Donnerstag, 23.Februar 2017:


Hi Marco,

from my experience, the best way to handle these types of arguments is
to make clear that there is nothing 'special' about XQuery. It is a
query language.

If you have to compare BaseX to something that most Java developers
will know, I'd use Hibernate and HQL, a library and DSL that is all
about querying data(bases).

For C# developers, LINQ would probably ring a bell.

Of course there is a lot more to it, and when it comes to web
applications, you can use it in almost every layer (templating,
routing, storage, etc).


Regards,

Max













2017-02-22 13:43 GMT+01:00 Marco Lettere 
<m.lett...@gmail.com<mailto:m.lett...@gmail.com>>:
> Hi to everyone,
>
> probably this is not the right place for such a discussion but the BaseX
> communitiy is the one I'm better introduced to and the one I trust the most.
> So I hope that this somewhat unusual excursus will anyway be of interest to
> some of you.
>
> As for myself I fell in love with XQuery and its power in terms of data
> manipulation many years ago. I wouldn't change it with anything else and BTW
> we're using it (thanks to the incredible BaseX runtime) much beyond
> data-processing being it the backbone of all our micro-service oriented
> architectures.
>
> Now, to the point, in the near future I probably will be called to face a
> somewhat skeptical customer who will argue about the technological choice of
> XQuery.
>
> My point will be to make a comparison with the technologies they're
> currently using and I would like to demonstrate that for a rather XML- (and
> in general data-) intensive workflow XQuery is perfectly suitable and
> probably better than many other alternatives.
>
> I would tend to exclude XSLT because it would face similar opposition. I
> would also exclude languages at a lower level of abstraction like Java,
> Python, Javascript, C/C++ and so on for obvious architectural reasons.
>
> But then only templating languages/engines come to my mind. Those would
> still be probably novel technologies to learn and wouldn't offer the
> structural, syntactic and semantic power of XQuery anyway.
>
> So I ask you kindly, in order to complete my preparation on these matters,
> is there anyone that has experience with other tools or languages that can
> be compared with XQuery when used for XML querying, generation,
> transformation, templating, composition and so on?
>
> Thanks a lot!
>
> Marco.
>




Re: [basex-talk] Somewhat unusual question

2017-02-24 Thread Hans-Juergen Rennau
To put it mildly, I disagree. I think the greatest mistake one can make is call 
XQuery a query language. I prefer to say that it is an information language. If 
this appears to be an incomprehensible statement, this reflects the novelty of 
the concept of an "information language". A book should be written about it. 
Which points to my ...

second disagreement, which concerns your statement that there is nothing 
special about XQuery. I think XQuery is unique, as it is (or am I wrong?) the 
first and only general-purpose programming language which is a pure expression 
language built upon the ground of a value model centered in the concept of 
resources composed of globally addressable, interrelated information (i.e. 
nodes).
With kind regards,Hans-Jürgen
 

Maximilian Gärber  schrieb am 21:36 Donnerstag, 
23.Februar 2017:
 

 Hi Marco,

from my experience, the best way to handle these types of arguments is
to make clear that there is nothing 'special' about XQuery. It is a
query language.

If you have to compare BaseX to something that most Java developers
will know, I'd use Hibernate and HQL, a library and DSL that is all
about querying data(bases).

For C# developers, LINQ would probably ring a bell.

Of course there is a lot more to it, and when it comes to web
applications, you can use it in almost every layer (templating,
routing, storage, etc).


Regards,

Max













2017-02-22 13:43 GMT+01:00 Marco Lettere :
> Hi to everyone,
>
> probably this is not the right place for such a discussion but the BaseX
> communitiy is the one I'm better introduced to and the one I trust the most.
> So I hope that this somewhat unusual excursus will anyway be of interest to
> some of you.
>
> As for myself I fell in love with XQuery and its power in terms of data
> manipulation many years ago. I wouldn't change it with anything else and BTW
> we're using it (thanks to the incredible BaseX runtime) much beyond
> data-processing being it the backbone of all our micro-service oriented
> architectures.
>
> Now, to the point, in the near future I probably will be called to face a
> somewhat skeptical customer who will argue about the technological choice of
> XQuery.
>
> My point will be to make a comparison with the technologies they're
> currently using and I would like to demonstrate that for a rather XML- (and
> in general data-) intensive workflow XQuery is perfectly suitable and
> probably better than many other alternatives.
>
> I would tend to exclude XSLT because it would face similar opposition. I
> would also exclude languages at a lower level of abstraction like Java,
> Python, Javascript, C/C++ and so on for obvious architectural reasons.
>
> But then only templating languages/engines come to my mind. Those would
> still be probably novel technologies to learn and wouldn't offer the
> structural, syntactic and semantic power of XQuery anyway.
>
> So I ask you kindly, in order to complete my preparation on these matters,
> is there anyone that has experience with other tools or languages that can
> be compared with XQuery when used for XML querying, generation,
> transformation, templating, composition and so on?
>
> Thanks a lot!
>
> Marco.
>


   

Re: [basex-talk] Somewhat unusual question

2017-02-24 Thread meumapple
Hi Kendall,

I do not agree. A few considerations. If data are XML, I find it difficult to 
use a different language from XQuery. It is possible, of course, but much much 
more complex (why doing that?!). But native XML files are not the entire story. 
You can transform, for example, all of text data into an elegant XML working 
version and very very easily query it. I can do whatever I want with XQuery 
easily and deal with different kinds of data, so I do not agree at all. 




Il giorno 24 feb 2017, alle ore 00:37, Kendall Shaw  
ha scritto:

What the application is makes all the difference. If the purpose does not have 
to do with XML and XML in a database, then XQuery and BaseX is less likely to 
be appropriate.

Kendall

On 2/23/17, 12:36 PM, "basex-talk-boun...@mailman.uni-konstanz.de on behalf of 
Maximilian Gärber"  wrote:

  Hi Marco,

  from my experience, the best way to handle these types of arguments is
  to make clear that there is nothing 'special' about XQuery. It is a
  query language.

  If you have to compare BaseX to something that most Java developers
  will know, I'd use Hibernate and HQL, a library and DSL that is all
  about querying data(bases).

  For C# developers, LINQ would probably ring a bell.

  Of course there is a lot more to it, and when it comes to web
  applications, you can use it in almost every layer (templating,
  routing, storage, etc).


  Regards,

  Max













  2017-02-22 13:43 GMT+01:00 Marco Lettere :
> Hi to everyone,
> 
> probably this is not the right place for such a discussion but the BaseX
> communitiy is the one I'm better introduced to and the one I trust the most.
> So I hope that this somewhat unusual excursus will anyway be of interest to
> some of you.
> 
> As for myself I fell in love with XQuery and its power in terms of data
> manipulation many years ago. I wouldn't change it with anything else and BTW
> we're using it (thanks to the incredible BaseX runtime) much beyond
> data-processing being it the backbone of all our micro-service oriented
> architectures.
> 
> Now, to the point, in the near future I probably will be called to face a
> somewhat skeptical customer who will argue about the technological choice of
> XQuery.
> 
> My point will be to make a comparison with the technologies they're
> currently using and I would like to demonstrate that for a rather XML- (and
> in general data-) intensive workflow XQuery is perfectly suitable and
> probably better than many other alternatives.
> 
> I would tend to exclude XSLT because it would face similar opposition. I
> would also exclude languages at a lower level of abstraction like Java,
> Python, Javascript, C/C++ and so on for obvious architectural reasons.
> 
> But then only templating languages/engines come to my mind. Those would
> still be probably novel technologies to learn and wouldn't offer the
> structural, syntactic and semantic power of XQuery anyway.
> 
> So I ask you kindly, in order to complete my preparation on these matters,
> is there anyone that has experience with other tools or languages that can
> be compared with XQuery when used for XML querying, generation,
> transformation, templating, composition and so on?
> 
> Thanks a lot!
> 
> Marco.




Re: [basex-talk] Somewhat unusual question

2017-02-23 Thread Kendall Shaw
What the application is makes all the difference. If the purpose does not have 
to do with XML and XML in a database, then XQuery and BaseX is less likely to 
be appropriate.

Kendall

On 2/23/17, 12:36 PM, "basex-talk-boun...@mailman.uni-konstanz.de on behalf of 
Maximilian Gärber"  wrote:

Hi Marco,

from my experience, the best way to handle these types of arguments is
to make clear that there is nothing 'special' about XQuery. It is a
query language.

If you have to compare BaseX to something that most Java developers
will know, I'd use Hibernate and HQL, a library and DSL that is all
about querying data(bases).

For C# developers, LINQ would probably ring a bell.

Of course there is a lot more to it, and when it comes to web
applications, you can use it in almost every layer (templating,
routing, storage, etc).


Regards,

Max













2017-02-22 13:43 GMT+01:00 Marco Lettere :
> Hi to everyone,
>
> probably this is not the right place for such a discussion but the BaseX
> communitiy is the one I'm better introduced to and the one I trust the 
most.
> So I hope that this somewhat unusual excursus will anyway be of interest 
to
> some of you.
>
> As for myself I fell in love with XQuery and its power in terms of data
> manipulation many years ago. I wouldn't change it with anything else and 
BTW
> we're using it (thanks to the incredible BaseX runtime) much beyond
> data-processing being it the backbone of all our micro-service oriented
> architectures.
>
> Now, to the point, in the near future I probably will be called to face a
> somewhat skeptical customer who will argue about the technological choice 
of
> XQuery.
>
> My point will be to make a comparison with the technologies they're
> currently using and I would like to demonstrate that for a rather XML- 
(and
> in general data-) intensive workflow XQuery is perfectly suitable and
> probably better than many other alternatives.
>
> I would tend to exclude XSLT because it would face similar opposition. I
> would also exclude languages at a lower level of abstraction like Java,
> Python, Javascript, C/C++ and so on for obvious architectural reasons.
>
> But then only templating languages/engines come to my mind. Those would
> still be probably novel technologies to learn and wouldn't offer the
> structural, syntactic and semantic power of XQuery anyway.
>
> So I ask you kindly, in order to complete my preparation on these matters,
> is there anyone that has experience with other tools or languages that can
> be compared with XQuery when used for XML querying, generation,
> transformation, templating, composition and so on?
>
> Thanks a lot!
>
> Marco.
>




Re: [basex-talk] Somewhat unusual question

2017-02-23 Thread Kristian Kankainen

Hello Marco and all,

There was a similar question asked on the xquery-talk mailing list two 
years ago: "what are the prime factors behind the resistance to adopt 
XQuery or it's derivatives". Here's a direct link to that thread [1].


Around the same time there was many similar topics about other competing 
technologies that kind of were easier to sell for business people, but 
from a technological point of view was/is just plain stupid. You might 
want to look around in the threads of june 2015 [2].


[1]: http://x-query.com/pipermail/talk/2015-June/004783.html

[2]: http://x-query.com/pipermail/talk/2015-June/thread.html

Cheers
Kristian K


22.02.2017 14:43 Marco Lettere kirjutas:

Hi to everyone,

probably this is not the right place for such a discussion but the 
BaseX communitiy is the one I'm better introduced to and the one I 
trust the most. So I hope that this somewhat unusual excursus will 
anyway be of interest to some of you.


As for myself I fell in love with XQuery and its power in terms of 
data manipulation many years ago. I wouldn't change it with anything 
else and BTW we're using it (thanks to the incredible BaseX runtime) 
much beyond data-processing being it the backbone of all our 
micro-service oriented architectures.


Now, to the point, in the near future I probably will be called to 
face a somewhat skeptical customer who will argue about the 
technological choice of XQuery.


My point will be to make a comparison with the technologies they're 
currently using and I would like to demonstrate that for a rather XML- 
(and in general data-) intensive workflow XQuery is perfectly suitable 
and probably better than many other alternatives.


I would tend to exclude XSLT because it would face similar opposition. 
I would also exclude languages at a lower level of abstraction like 
Java, Python, Javascript, C/C++ and so on for obvious architectural 
reasons.


But then only templating languages/engines come to my mind. Those 
would still be probably novel technologies to learn and wouldn't offer 
the structural, syntactic and semantic power of XQuery anyway.


So I ask you kindly, in order to complete my preparation on these 
matters, is there anyone that has experience with other tools or 
languages that can be compared with XQuery when used for XML querying, 
generation, transformation, templating, composition and so on?


Thanks a lot!

Marco.





Re: [basex-talk] Somewhat unusual question

2017-02-22 Thread Dirk Kirsten
Hello Marco,

I don't really get why you want to exclude languages which you call
"lower level of abstraction", at least to me the architectural reasons
are not obvious at all. In the wild when I see XML handling applications
which are not XQuery/XSLT I would say they are mostly Java, C# or python
applications. All of them have XML handling capabilities, although I
think they are rather weak and limited if you know XQuery. Bu anyway,
certainly many people are using these languages for data handling in
general, so I think they are a valid choice.

Apart from that I think there is not so much to compare XQuery with.
Jsoniq comes to mind, because it is based on XQuery, but I think it is
probably dead and never got any traction.

And depending on the scale of the data processing you handle you might
want to consider a map/reduce approach, e.g. by using Hadoop and one of
the several languages specifically designed for it.

Just my thoughts. Hope it helps

Dirk


On 02/22/2017 04:13 PM, Marco Lettere wrote:
> Hi to everyone,
>
> probably this is not the right place for such a discussion but the
> BaseX communitiy is the one I'm better introduced to and the one I
> trust the most. So I hope that this somewhat unusual excursus will
> anyway be of interest to some of you.
>
> As for myself I fell in love with XQuery and its power in terms of
> data manipulation many years ago. I wouldn't change it with anything
> else and BTW we're using it (thanks to the incredible BaseX runtime)
> much beyond data-processing being it the backbone of all our
> micro-service oriented architectures.
>
> Now, to the point, in the near future I probably will be called to
> face a somewhat skeptical customer who will argue about the
> technological choice of XQuery.
>
> My point will be to make a comparison with the technologies they're
> currently using and I would like to demonstrate that for a rather XML-
> (and in general data-) intensive workflow XQuery is perfectly suitable
> and probably better than many other alternatives.
>
> I would tend to exclude XSLT because it would face similar opposition.
> I would also exclude languages at a lower level of abstraction like
> Java, Python, Javascript, C/C++ and so on for obvious architectural
> reasons.
>
> But then only templating languages/engines come to my mind. Those
> would still be probably novel technologies to learn and wouldn't offer
> the structural, syntactic and semantic power of XQuery anyway.
>
> So I ask you kindly, in order to complete my preparation on these
> matters, is there anyone that has experience with other tools or
> languages that can be compared with XQuery when used for XML querying,
> generation, transformation, templating, composition and so on?
>
> Thanks a lot!
>
> Marco.
>

-- 
Dirk Kirsten, BaseX GmbH, http://basexgmbh.de
|-- Firmensitz: Blarerstrasse 56, 78462 Konstanz
|-- Registergericht Freiburg, HRB: 708285, Geschäftsführer:
|   Dr. Christian Grün, Dr. Alexander Holupirek, Michael Seiferle
`-- Phone: 0049 7531 91 68 276, Fax: 0049 7531 20 05 22



[basex-talk] Somewhat unusual question

2017-02-22 Thread Marco Lettere

Hi to everyone,

probably this is not the right place for such a discussion but the BaseX 
communitiy is the one I'm better introduced to and the one I trust the 
most. So I hope that this somewhat unusual excursus will anyway be of 
interest to some of you.


As for myself I fell in love with XQuery and its power in terms of data 
manipulation many years ago. I wouldn't change it with anything else and 
BTW we're using it (thanks to the incredible BaseX runtime) much beyond 
data-processing being it the backbone of all our micro-service oriented 
architectures.


Now, to the point, in the near future I probably will be called to face 
a somewhat skeptical customer who will argue about the technological 
choice of XQuery.


My point will be to make a comparison with the technologies they're 
currently using and I would like to demonstrate that for a rather XML- 
(and in general data-) intensive workflow XQuery is perfectly suitable 
and probably better than many other alternatives.


I would tend to exclude XSLT because it would face similar opposition. I 
would also exclude languages at a lower level of abstraction like Java, 
Python, Javascript, C/C++ and so on for obvious architectural reasons.


But then only templating languages/engines come to my mind. Those would 
still be probably novel technologies to learn and wouldn't offer the 
structural, syntactic and semantic power of XQuery anyway.


So I ask you kindly, in order to complete my preparation on these 
matters, is there anyone that has experience with other tools or 
languages that can be compared with XQuery when used for XML querying, 
generation, transformation, templating, composition and so on?


Thanks a lot!

Marco.