### Neo4j NAME_1 labels and relationships, with their properties:
#
# Paper(id,publish_date)
# Author(fullname)
# Year(year_number)
# Title(text)
# Summary(text)
# (:Paper) -[:HAS_TITLE]-> (:Title)
# (:Paper) -[:PUBLISHED_IN_YEAR]-> (:Year)
# (:Paper) -[:HAS_AUTHOR]-> (:Author)
# (:Paper) -[:HAS_SUMMARY]-> (:Summary)
# (:Year) -[:HAS_NEXT_YEAR]-> (:Year)
# CREATE CONSTRAINT FOR (p:Paper) REQUIRE (p.id) IS UNIQUE;
# CREATE CONSTRAINT FOR (a:Author) REQUIRE (a.fullname) IS UNIQUE;
# CREATE CONSTRAINT FOR (y:Year) REQUIRE (y.year_number) IS UNIQUE;
### A query to find the author of a paper 'abc'
MATCH (p:Paper {id: 'abc'}) -[:HAS_AUTHOR]-> (a:Author) RETURN a.fullname