[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: XML to graph

  • From: Ihe Onwuka <ihe.onwuka@gmail.com>
  • To: Peter Hunsberger <peter.hunsberger@gmail.com>
  • Date: Wed, 8 Jul 2015 08:50:36 -0400

Re:  XML to graph
I like what I have seen of Cypher, it looks very similar to XQuery. Neo justify it in their talks with   "Developers don't get SparQL" which I find weird (as well as shocking) as  Cypher looks similar to SParQL to me. The example where they were doing date comparisons by comparing date month and year  suggests an impoverished type system. and there is also a potential pitfall with the ability to allocate properties to both nodes and relationships . If one is not careful how that is modelled you can suddenly find yourself effectively stuck with a schema that is cumbersome to unravel and you are nowhere near as agile as you thought you were.

Don't need an intermediate GraphML step, since Cypher looks so agreeable just generate it  direct from the XML. In fact the quickest way  to a graph would be to hack the original text files into Cypher's LoadCSV format. However the XML is still valuable as a source of denormalized master data so you won't need to pay the price of graph traversal to service such requirements.

So for now I press on with that as a dual solution. Neo looks a very good fit for this sort of application. Thank you.


On Thu, Jul 2, 2015 at 9:08 AM, Peter Hunsberger <peter.hunsberger@gmail.com> wrote:
Yes, but once the data is imported he'll want to use Cypher if he wants a declarative language for query and manipulation of the graph...

Peter Hunsberger

On Thu, Jul 2, 2015 at 2:44 AM, bryan rasmussen <rasmussen.bryan@gmail.com> wrote:
neo4j allows the importing of graphml, so I would think that was the most declarative. http://graphml.graphdrawing.org/

On Thu, Jul 2, 2015 at 1:51 AM, Peter Hunsberger <peter.hunsberger@g...> wrote:
That would be Cypher, however it only runs on Neo4J: https://en.wikipedia.org/wiki/Cypher_Query_Language

Gremlin has the advantage it can run on multiple graph databases: https://en.wikipedia.org/wiki/Gremlin_(programming_language) 

Note you do things like can annotate any graph edge with a weight (or other property) so you can express confidence levels directly.  You can then write queries to only retrieve nodes linked by a confidence greater than some value. There are differences in how each database supports edge properties.  They can also be proxied by building new nodes to connect other nodes but that get's ugly fast if you need to do any amount of it.

In your case the problem will be building the edges (relationships) in the first place if you don't already have them.  Once you have some basic relationships built out both languages will give you capabilities for things like cluster analysis.

Peter Hunsberger

On Wed, Jul 1, 2015 at 5:36 PM, Ihe Onwuka <ihe.onwuka@gmail.com> wrote:


On Wed, Jul 1, 2015 at 3:23 PM, Peter Hunsberger <peter.hunsberger@g...> wrote:
. The learning curve will be languages like Gremlin or Cypher, though you could also write Java plugins for Neo if need be.

Which is the more declarative of the two? 





  • Follow-Ups:

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.