Project

grom

0.01
No commit activity in last 3 years
No release in over 3 years
Grom is a Graph Object Mapper
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.13
~> 10.0
~> 3.0
~> 0.51
~> 0.13

Runtime

>= 5.0.0.1
~> 2
 Project Readme

Graph Object Mapper (GROM)

GROM is a gem created by the Parliamentary Digital Service to take ntriple files representing graph data and deserialise them into ruby objects.

Build Status Test Coverage License

NOTE: This gem is in active development and is likely to change at short notice. It is not recommended that you use this in any production environment.

Contents

  • Requirements
  • Installation
  • Usage
  • Getting Started with Development
    • Running the tests
  • Contributing
  • License

Requirements

GROM requires the following:

Installation

gem 'grom'

Usage

This gem's main function is taking an ntriple data stream and deserialising it into linked Grom::Node objects.

file = File.read('people_members_current.nt')
data_stream = StringIO.new(file)

objects = Grom::Reader.new(data_stream).objects #=> [<#Grom::Node ...>, <#Grom::Node ...>, ...]

Note that ntriple data streams cannot contain a predicate named 'type', as this word is reserved for RDF types.

Getting Started with Development

To clone the repository and set up the dependencies, run the following:

git clone https://github.com/ukparliament/grom.git
cd grom
bundle install

Running the tests

We use RSpec as our testing framework and tests can be run using:

bundle exec rake

Contributing

If you wish to submit a bug fix or feature, you can create a pull request and it will be merged pending a code review.

  1. Fork the repository
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Ensure your changes are tested using Rspec
  6. Create a new Pull Request

License

grom is licensed under the MIT.

Logo design by Anna VĂ¡mos.