Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Piqi – universal schema language: JSON, XML, Protocol Buffers data validation and conversion
OCaml Protocol Buffer Shell Makefile Other

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin
camlp4
deps
editors/vim
examples
make
piqi.org
piqi
piqic
piqicc
piqirun-ocaml
tests
.gitignore
AUTHORS
CHANGES
INSTALL
LICENSE
Makefile
NOTICE
README
VERSION
setenv.sh

README

OVERVIEW
========

Piqi is a set of languages and open-source tools for working with structured
data. It includes:

        * High-level data representation (Piq) and data definition languages
        (Piqi).

        * Support for binary and JSON encodings for portable data
        representation.

        * Tools for validating, pretty-printing and converting data between
        different formats: Piq, JSON, binary.

        * Mappings to various programing languages allowing programs to
        serialize and deserialize data in a portable manner.


The combination of data representation (Piq) and data definition (Piqi)
languages is similar to the concept of "valid XML" (i.e. XML with XML Schema).
However, unlike XML, Piq has a concise, clean syntax and a data model similar
to those of high-level programming languages such as ML.

In addition to that, Piqi supports binary encoding and static language mappings
which makes it similar to cross-language data serialization tools like Google
Protocol Buffers or ASN.1.

In fact, Piqi was inspired by Google Protocol Buffers
(http://code.google.com/p/protobuf/) and designed to be largely compatible
with it. Like Protocol Buffers, Piqi relies on type definitions and supports
data schema evolution. The main difference is that Piqi has a richer data model,
high-level modules and a human-friendly data representation language (Piq).


FURTHER INFORMATION
===================

Full description, documentation and binary builds can be found at 

       http://piqi.org


INSTALLATION
============

See INSTALL file for installation instructions.


FILES
=====

  README                this file
  INSTALL               installation instructions
  setenv.sh             installation configuration file
  LICENSE               license
  NOTICE                copyright notice
  AUTHORS               Piqi authors
  CHANGES               release history
  VERSION               current version
  Makefile              main Makefile
  make/                 make files for building the project
  deps/                 third-party components
  camlp4/               camlp4 extensions
  piqicc/               Piqi compiler compiler
  piqic/                Piq interface compiler
  piqi/                 "piqi" command-line utility (piqi tools)
  piqi.org/             Piqi self-specifications
  piqirun-ocaml/        runtime library for stubs generated by "piqic ocaml"
  examples/             examples
  tests/                tests for various piqi functionality; see tests/README
  editors/              text editor plugins for .piq and .piqi files

Something went wrong with that request. Please try again.