Takes a set of JSON Schema definitions and returns a relational database structure capable of storing compliant data.
$ npm install relationize --saveconstrelationize=require('relationize')relationize({source: {paths: [{namespace: 'relationizeTest',path: '/somewhere/json-schemas/live'}]}},function(err,dbStructure){// Done!// - The value of 'dbStructure' takes the same form // as the output generated by the 'pg-info' package.})| Option | Type | Notes |
|---|---|---|
source | object | A source object for configuring where to derive JSON Schema data from. |
Examples
- From files:
{paths: [{namespace: 'relationizeTest',path: '/somewhere/json-schemas/live'}]}- From Javascript object:
{schemas: [{namespace: 'relationizeTest',schema: {// JSON schema here}}]}Properties
| property | Type | Notes |
|---|---|---|
paths | [object] | An array of objects containing a namespace property (used to separate related tables into schemas_ and path (a file-path from where to load JSON files from - uses glob, so the ** pattern is supported) |
schemas | [object] | An array of objects containing a namespace property (used to separate related tables into schemas_ and schema (a ready-to-use JSON Schema) |
Relationize returns objects of the same form as those returned by the pg-info package. The output of Relationize can then be used to generate a relational database (complete with comments, tables, indexes and foreign key constraints) to store your JSON-structured data.
- Please refer to the pg-info docs for more details.
$ npm test