Flow Specification
drafts/1.0.0-rc3
drafts/1.0.0-rc3
  • Introduction
  • Changelog
  • Glossary and Definitions
  • Flow Fundamentals
  • Expressions
  • Layers
    • Layer 1: Core
    • Layer 2: Console IO
    • Layer 3: Mobile Primitives
    • Layer 4: Smart Devices
  • API Specification
Powered by GitBook
On this page
  • Introduction
  • What are Flows?
  • Who is working on this?
  • Specification - Table of Contents
  • Language
  • Dates

Was this helpful?

Introduction

NextChangelog

Last updated 3 years ago

Was this helpful?

A container and data format for describing the content and logic of digital interactions, using the Flow Data paradigm. It provides for the open publication, exchange, and analysis of Flow-like content across supporting platforms.

Flows represent a collection of actions ("Blocks") and the decision-making logic that links Blocks together into a flowchart-like description of an interactive mobile service, business process, or anything else that can be modelled as programmatic flow-chart.

Authors

Mark Boots (Viamo) Peter Lubell-Doughtie (Ona) Eduardo Jezierski (InSTEDD) Gustavo Giráldez (InSTEDD) Evan Wheeler (UNICEF)

Media Type

TODO: once registered: application/vnd.org.flowinterop.flows+json

Version

1.0.0-rc3

Last updated

2021-07-11

Created

2016-09-10

Introduction

The purpose of the project is to enable useful interoperability between Flow-based platforms, and to incentivize the joining of future software tools into an interoperable ecosystem. We will accomplish this through a set of open specifications, and a set of open-source toolsets that reduce barriers to adoption. The initial focus is on tools for mobile/web engagement, although the most basic layer of the specification is general and can represent non-mobile business logic.

What are Flows?

Flows are a modern paradign for describing the logic of digital information systems that interact with individuals, often for the purpose of (a) collecting data or (b) providing information through interactive requests. Some common examples of this are in mobile services using voice-based or SMS-based conversations over basic mobile phones. Flows follow the "flowchart" paradigm, consisting of actions (nodes) and connections between actions, which can incorporate decision-making logic.

Who is working on this?

This is an initial collaboration between makers of Flow-like platforms and supporting tools: Nyaruka, InSTEDD, Ona, and Viamo. UNICEF and USAID are providing guidance and input. The project received initial funding from USAID. We intend that this project will outlast USAID funding and grow beyond the initial set of collaborating organisations. For more information on how to contribute, see .

Specification - Table of Contents

Language

The key words MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL in this document are to be interpreted as described in RFC 2119.

Dates

All dates are RFC 3339 5.6 date-time, with offset-based timezone and space instead of T option.

Example: 2017-06-30 15:35:27.134+00:00

Project Charter and Governance Rules
Glossary and Definitions
Flow Fundamentals
Expressions
Layers in the Specification
Layer 1: Core
Layer 2: Console IO
Layer 3: Mobile Primitives
Layer 4: Smart Devices
Language
Containers
Flows
Blocks