title: UbuntuでGENEONTOLOGYのgo.oboをjson形式に変換する方法
url: how-to-convert-geneontology-obo-to-json-on-ubuntu

GENEONTOLOGYのgo.oboをjson形式に変換する方法をお伝えします。

環境

今回の環境を確認しておきます。


cat /etc/lsb-release

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.4 LTS"

必要なパッケージをインストール

次のコマンドにより必要なパッケージをインストールします。


sudo apt install openjdk-8-jdk
sudo apt install maven
sudo apt install git

次のコマンドによりJava8を使うように設定します。
Java8を用いる理由は, 変換に用いるツールがJava8にしか対応していないためです。
具体的には, tools.jarが必要になるためです。


sudo update-alternatives --config java
sudo update-alternatives --config javac
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin

次のコマンドにより変換ツールをgitにより取得します。


mkdir ~/work
cd ~/work
git clone https://github.com/geneontology/obographs.git
cd obographs

pom.xmlファイルを開き、以下を追加します。
これは、org.apache.maven.pluginsをスキップする設定を追加しています。
この設定を追加しないと変換ツールのjarファイルが上手く作成されません。


<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-gpg-plugin</artifactId>
    <version>1.5</version>
	<!-- ここから -->
    <configuration>
        <skip>true</skip>
    </configuration>
	<!-- ここまでを追加 -->
    <executions>
      <execution>
        <id>sign-artifacts</id>
        <phase>verify</phase>
        <goals>
          <goal>sign</goal>
        </goals>
        <configuration>
            <gpgArguments>
                <arg>--pinentry-mode</arg>
                <arg>loopback</arg>
            </gpgArguments>
        </configuration>
      </execution>
    </executions>
</plugin>

次のコマンドによりjarファイルを作成します。


mvn install

変換

次のコマンドによりgo.oboファイルをダウンロードします。


wget http://purl.obolibrary.org/obo/go.obo -O ../go.obo

次のコマンドにより変換を行います。
この変換ツールは、変換後のjsonを標準出力するため、リダイレクトによりファイルに保存します。


./bin/ogger ../go.obo > ../go.json
Ubuntu18.04 GENEONTOLOGYのgo.oboをjson形式に変換する方法