Skip to content

Instantly share code, notes, and snippets.

@luanne
luanne / harrypotter.adoc
Last active December 29, 2015 02:18
Harry Potter GraphGist

Harry Potter

harry

Welcome to the wonderful world of Harry Potter!

v0 of this graph models some of Harrys friends, enemies and their parents. Also have some pets and a few killings. The obvious relation missing is the one between Harry Potter and Voldemort- it took us 7 books to figure that one out, so you’ll have to wait till I add more data :-)

The model

start c=node:companies(id={id})
match
c<-[:parent_company*0..]-n
with n
match
n-[:defines_business_process]->bp-[:has_cycle]->cm
where
cm.measureDate>={measureStartDate} and cm.measureDate<={measureEndDate}
with cm
match
start c=node:companies(id={companyId})
match
c<-[:parent_company*0..]-n
with n
match
n-[:defines_process"]->bp-[:has_cycle]->cm-[:cycle_metric]->m-[:metric_activity]->ma-[:metric_unit]->u
where
cm.measureDate>={measureStartDate} and cm.measureDate<={measureEndDate}
with ma,u,cm
match
start t=node:types(id={id})
match
(t)<-[:has_type]-(u)<-[:metric_unit]-(ma)<-[:metric_activity]-(m)<-[cm:cycle_metric]-(c)
where
c.measureDate>={measureStartDate} and c.measureDate <= {measureEndDate}
with distinct m, ma, u, c
match
(u)<-[:alert_for_unit]-(a)
where
a.alertDate=c.measureDate and a.fromEntityType={type}
start t=node:types(id={id})
match
(t)<-[:has_type]-(u)<-[:metric_unit]-(ma)<-[:metric_activity]-(m)<-[cm:cycle_metric]-(c)
where
c.measureDate>={measureStart} and c.measureDate <= {measureEnd}
with distinct m, ma, u, c
match
(ma)-[:metric_unit]->(u)<-[:alert_for_unit]-(a)-[:alert_for_inspection]->(i)-[:has_result]->(ir)
<-[:for_inspection_result]-(a)
where
@luanne
luanne / mapping.xml
Created June 22, 2012 18:33
RDBMS Schema to Neoj graph model
<node type="customer" index="customerIndex">
<table name="customer">
<field name="id" property="id" indexKey="true"/>
<field name="name" property="name"/>
<field name="locationId" relationship="locatedIn" nodeType="location" direction="outgoing"/>
</table>
</node>
<node type="location" index="locationIndex">
<table name="location">