Gem Version Build Status (macOS) Build Status (Windows) Build Status (Ubuntu) Code Climate Pull Requests Commits since latest

RelatonPlateau is a Ruby gem that implements the BibliographicItem model.

You can use it to retrieve metadata of Plateau Standards from GitHub repositori, and access such metadata through the BibliographicItem object.

Installation

Add this line to your application’s Gemfile:

gem 'relaton-plateau'

And then execute:

$ bundle

Or install it yourself as:

$ gem install relaton-plateau

Usage

Fetching

Fetching Technical Reports

require "relaton/plateau"
Relaton::Plateau::Bibliography.get("PLATEAU Technical Report #00")
[relaton-plateau] INFO: (PLATEAU Technical Report #00) Fetching ...
[relaton-plateau] INFO: (PLATEAU Technical Report #00) Found `PLATEAU Technical Report #00 1.0`
 => #<Relaton::Plateau::BibItem:0x00000001238cfc98
...

Fetching Handbooks unversioned

Relaton::Plateau::Bibliography.get("PLATEAU Handbook #00")
[relaton-plateau] INFO: (PLATEAU Handbook #00) Fetching ...
[relaton-plateau] INFO: (PLATEAU Handbook #00) Found `PLATEAU Handbook #00`
 => #<Relaton::Plateau::BibItem:0x00000001238c7598
...

Fetching Handbooks versioned

bib = Relaton::Plateau::Bibliography.get("PLATEAU Handbook #00 1.0")
[relaton-plateau] INFO: (PLATEAU Handbook #00 1.0) Fetching ...
[relaton-plateau] INFO: (PLATEAU Handbook #00 1.0) Found `PLATEAU Handbook #00 1.0`
=> #<Relaton::Plateau::BibItem:0x0000000104afbcc0
...

Serializing

XML

# Render bibitem
puts bib.to_xml
<bibitem id="PLATEAUHandbook#001.0" type="standard" schema-version="v1.2.9">
  <fetched>2024-08-25</fetched>
  <title type="main" format="text/plain" language="ja" script="Jpan">3D都市モデルの導入ガイダンス</title>
  <title type="main" format="text/plain" language="en" script="Latn">Guidance on the Installation for 3D City Model</title>
  <uri type="pdf">https://www.mlit.go.jp/plateau/file/libraries/doc/plateau_doc_0000_ver01.pdf</uri>
  <docidentifier type="PLATEAU" primary="true">PLATEAU Handbook #00 1.0</docidentifier>
  <docnumber>Handbook #00 1.0</docnumber>
  <date type="published">
    <on>2021-03-26</on>
  </date>
  <contributor>
    <role type="publisher"/>
    <organization>
      <name language="ja" script="Jpan">国土交通省</name>
      <name language="en" script="Latn">Japanese Ministry of Land, Infrastructure, Transport and Tourism</name>
      <abbreviation>MLIT</abbreviation>
    </organization>
  </contributor>
  <edition number="1.0">1.0</edition>
  <abstract format="text/plain" language="ja" script="Jpan">地方自治体担当者や民間事業者等に向けた 3D都市モデル導入のためのガイダンス</abstract>
</bibitem>

# Render bibdata
puts bib.to_xml(bibdata: true)
<bibdata type="standard" schema-version="v1.2.9">
  <fetched>2024-08-25</fetched>
  <title type="main" format="text/plain" language="ja" script="Jpan">3D都市モデルの導入ガイダンス</title>
  <title type="main" format="text/plain" language="en" script="Latn">Guidance on the Installation for 3D City Model</title>
  <uri type="pdf">https://www.mlit.go.jp/plateau/file/libraries/doc/plateau_doc_0000_ver01.pdf</uri>
  <docidentifier type="PLATEAU" primary="true">PLATEAU Handbook #00 1.</docidentifier>
  <docnumber>Handbook #00 1.0</docnumber>
  <date type="published">
    <on>2021-03-26</on>
  </date>
    <contributor>
    <role type="publisher"/>
    <organization>
      <name language="ja" script="Jpan">国土交通省</name>
      <name language="en" script="Latn">Japanese Ministry of Land, Infrastructure, Transport and Tourism</name>
      <abbreviation>MLIT</abbreviation>
    </organization>
  </contributor>
  <edition number="1.0">1.0</edition>
  <abstract format="text/plain" language="ja" script="Jpan">地方自治体担当者や民間事業者等に向けた 3D都市モデル導入のためのガイダンス</abstract>
  <ext>
    <doctype>handbook</doctype>
    <structuredidentifier type="Handbook">
      <agency>PLATEAU</agency>
      <docnumber>00</docnumber>
      <edition>1.0</edition>
    </structuredidentifier>
    <cover>
      <image src="https://www.mlit.go.jp//plateau/uploads/2022/06/1@2x.jpg" mimetype="image/jpeg"/>
    </cover>
    <filesize>18381880</filesize>
  </ext>
</bibdata>

YAML

puts bib.to_hash.to_yaml
---
schema-version: v1.2.9
id: PLATEAUHandbook#001.0
title:
- content: 3D

BibXML

puts bib.to_bibxml
<reference anchor="PLATEAU.Handbook.#00.1.0">
  <front>
    <title>3D

AsciiBib

puts bib.to_asciibib
[bibitem]
== {blank}
id:: PLATEAUHandbook#001.0
title::
title.type:: main
title.content:: 3D

Fetching data

Two datasets are available for fetching: platau-handbooks and plateau-technical-reports. The data is stored in the data directory. The format can be xml, 'yaml', or bibxml.

Relaton::Plateau::Fetcher.fetch("plateau-handbooks", output: "dir", format: "xml")

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/metanorma/relaton-plateau

License

The gem is available as open source under the terms of the MIT license.