Visual Design of GraphQL Data
Visual Design of GraphQL Data


This book is no longer available for sale.

Visual Design of GraphQL Data

Last updated on 2018-07-06

About the Book

This book is now published by Apress: Look here.

Understand and Visualize GraphQL, Prettify Legacy Content and get the API Structures Right!

New in the April 2018 version: Issues with legacy data as well as issues and benefits in combining GraphQL with Neo4j graph databases.

GraphQL is indeed an attractive data API for applications (and people). The GraphQL Schema is pivotal to the success of a GraphQL API in that it describes an application side scope as well as the mapping to data sources.

There are many contexts, where complex structures and semantics must be communicated effectively, and the trick invariably turns out to be: Use good visualizations! Most development projects involve many stakeholders.

The main proposition of this book is graph visualization: GraphQL Schema structure and meaning must be visualized, and the book shows you how. Since the schema is a “data graph” containing related concepts in a network organized as a directed graph, the increasingly popular property graph paradigm is very appropriate for visualizing GraphQL structures and semantics.

The second theme of this book is that of quality of the content. GraphQL APIs can be used in many constellations possibly including legacy data and/or externally sourced data. Quality must be ensured in all cases. The book contains simple guidelines based on lessons learned from real life data discovery and unification. This helps developers and architects to get good quality in the resulting API designs. And the visual techniques help in producing convincing visual communication about the structure of the API designs.

The third theme is how to handle GraphQL with legacy data as well as with Neo4j graph databases.

Spending time on schema quality means that developers work from sharp definitions, which in turn leads to greater productivity and well-structured applications.

About the Author

Thomas Frisendal
Thomas Frisendal

Thomas Frisendal is an experienced data guy with more than 30 years on the IT vendor side and as an independent consultant. He has worked with databases and data modeling since the late 70s; since 1995 primarily on data warehouse projects. He has a strong urge to visualize everything as graphs - even datamodels! He excels in the art of turning data into information and knowledge. His approach to information-driven analysis and design is "New Nordic" in the sense that it represents the traditional Nordic values such as superior quality, functionality, reliability and innovation by new ways of communicating the structure and meaning of the business context.

Thomas is an active writer and speaker.

He has previously published:

Design Thinking Business Analysis: Business Concept Mapping Applied, Springer, 2012 and

Graph Data Modeling for NoSQL and SQL: Visualize Structure and Meaning, Technics Publications, 2017

He is blogging at Dataversity.

Thomas lives in Copenhagen, close to the Airport.

Table of Contents

  • Introduction
  • Acknowledgements
  • Visual Design of GraphQL Data
    • What is GraphQL – and why is Design important?
    • Issues with defining Data Structures in GraphQL
    • Issues with Data Content in GraphQL
  • GraphQL Concepts
  • Getting Started
    • Which Design Levels?
    • Getting an Overview
  • An Email Example
  • Business Meaning
    • Data Names in the API matter
    • Finding Standard Data Structures
    • Establishing Identity and Uniqueness
  • Presenting the Business Flow
    • Presenting the Keys
    • Presenting State Changes
    • Presenting Versions of Data
  • Content Matters
    • Housekeeping Proper
    • Scalar Data Types
    • Presenting Dates and Times
    • Using Custom Schema Directives
    • Design is Decisions
  • Getting the Structure Right
    • Which Objects and Which Relationships?
    • GraphQL Schema Stitching, Making a Patchwork
    • Presenting Relationships and Missing References
    • Presenting the Right Level of Detail
    • Good Relationships
  • From Graph to Trees
    • Structure Design at the API Level
    • Positioning the Graph for Generation of Trees
  • Resolving Legacy SQL Data Issues
    • Data Names etc.
    • Identity, Uniqueness and Keys
    • States, Versions and Housekeeping
    • Scalar Data Types
    • Date and Time
    • Naming Relationships
    • Relationship Types
    • Missing Information
    • Properties on Relationships
  • Using GraphQL with an Existing Graph Database
    • The Neo4j GraphQL Plugin
    • Generating Your First GraphQL Schema
    • Data Names etc.
    • Identity, Uniqueness and Keys
    • States, Versions and Housekeeping
    • Scalar Data Types
    • Date and Time
    • Naming Relationships
    • Relationship Types
    • Missing Information
    • Properties on Relationships
  • Using GraphQL with a New Graph Database
    • Design Goals of the Neo4j-GraphQL Integration
    • Generating Your Neo4j Database From The GraphQL Schema
    • Neo4j-GraphQL Resources
  • Summary

The Leanpub 45-day 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms...

Write and Publish on Leanpub

Authors, publishers and universities use Leanpub to publish amazing in-progress and completed books and courses, just like this one. You can use Leanpub to write, publish and sell your book or course as well! Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks. Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. It really is that easy.

Learn more about writing on Leanpub