糖鎖を登録する際、構造を分析して関連しているデータをRDF化しています。糖鎖構造コンポーネント(単糖、残基、リンケージ)のRDF形式を説明します。

処理フロー

UML Diagram

  1. 糖鎖が登録されると、まずWURCSシーケンスに変換します。
  2. Accession numberが付く(単糖、糖鎖どちらも)
  3. WurcsRDFのMSライブラリーが単糖と構造データのRDF生成します。
  4. 単糖かどうかを判定します。
  5. 単糖であれば単糖の登録、糖鎖であればに糖鎖の登録に移動
  6. 単糖の場合、単糖であれば、Componentを作成していません。(Cardinalityは1)

単糖判定

WURCSの文字列に対して前方一致で判定(”WURCS=2.0/1,1,0/”)

単糖の登録アウトライン

単糖(WURCS-MS-RDFに入っている)をGlyTouCanに登録するフロー。詳細は下記の通り

  1. 単糖はglycan:saccharideのサブクラス、glycan:monosaccharideタイプを付けする
  2. monosaccharideタイプ別のReadableNameを取得
    1. 取得する方法
      • monosaccharideDB http://www.monosaccharidedb.org/remote_access.action#conversion
      • glycanformatconverter https://bitbucket.org/glycosw/glycanformatconverter
  3. monosaccharide_aliasにインサート、glycan:monosaccharideにリンク

糖鎖の登録アウトライン

糖鎖をGlyTouCanに登録するフロー。詳細は下記の通り

  1. 糖鎖に含まれている単糖をループしてResidueGenerator(残基?)を実行します:
  2. 単糖のWURCSを取得・生成
  3. 単糖を糖鎖として登録 (最初の処理フローに戻る)
    1. 登録した単糖のAccession numberを取得
  4. Componentの作成
    1. 糖鎖に登録された単糖のAcc#をひも付ける
  5. Cardinalityの計算
    1. どのタイプに絞る?
  6. Top Page単糖数

関係しているRDF

    <glycan:Saccharide>
      a	glycan:Saccharide #or
      glycan:has_component	<glycan:Component>

    <glycan:Monosaccharide>
        a glycan:Monosaccharide #Saccharideのサブクラス
        sio:has-component-part <wurcs:Monosaccharide>
        glycan:has_alias	<glycan:MonosaccharideAlias>

    <glycan:Component>
    	a	glycan:Component
    	glycan:has_cardinality	integer

      # 今までのMonosaccharideSparqlを再利用
    	glycan:has_monosaccharide	<glycan:monosaccharide>

    <wurcs:Monosaccharide>
      a wurcs:Monosaccharide ;
      wurcs:has_basetype <http://rdf.glycoinfo.org/glycan/wurcs/2.0/Basetype/u2122h_2%2ANCC%2F3%3DO> ;
      wurcs:has_MOD	<http://rdf.glycoinfo.org/glycan/wurcs/2.0/MOD/1-5>
      wurcs:has_MOD ; <http://rdf.glycoinfo.org/glycan/wurcs/2.0/MOD/2%2ANCC%2F3%3DO>
      wurcs:has_SC ; <http://rdf.glycoinfo.org/glycan/wurcs/2.0/SkeletonCode/a2122h>
      wurcs:has_anomeric_position	1 ;
      wurcs:has_anomeric_symbol "x"^^<http://www.w3.org/2001/XMLSchema#string> ;
      wurcs:has_ring <http://rdf.glycoinfo.org/glycan/wurcs/2.0/MOD/1-5> .
    	is_type1 true/false
    	glycan:has_alias	<glycan:MonosaccharideAliasURI>
      sio:is-component-part-of	    <glycan:MonosaccharideURI>

    <glycan:MonosaccharideAlias>
    	a	glycan:monosaccharide_alias
      glycan:is_monosaccharide <glycan:Monosaccharide> ;
    	glycan:has_monosaccharide_notation_scheme glycan:monosaccharide_notation_scheme_carbbank
    	glycan:has_alias_name "Gal-ol"

    <glycan:MonosaccharideAlias>
      a glycan:monosaccharide_alias
      glycan:is_monosaccharide <glycan:Monosaccharide> ;
    	glycan:has_monosaccharide_notation_scheme glycan:monosaccharide_notation_scheme_iupac ;
    	glycan:has_alias_name "Gal-ol" .

WURCS MSが生成する単糖のRDF

WURCS-MS-RDFのライブラリーにある、WURCSシーケンスら単糖データの新しいRDFを生成。

<wurcs:Monosaccharide>
  a wurcs:Monosaccharide ;
  wurcs:has_basetype <http://rdf.glycoinfo.org/glycan/wurcs/2.0/Basetype/u2122h_2%2ANCC%2F3%3DO> ;
  wurcs:has_MOD	<http://rdf.glycoinfo.org/glycan/wurcs/2.0/MOD/1-5>
  wurcs:has_MOD ; <http://rdf.glycoinfo.org/glycan/wurcs/2.0/MOD/2%2ANCC%2F3%3DO>
  wurcs:has_SC ; <http://rdf.glycoinfo.org/glycan/wurcs/2.0/SkeletonCode/a2122h>
  wurcs:has_anomeric_position	1 ;
  wurcs:has_anomeric_symbol "x"^^<http://www.w3.org/2001/XMLSchema#string> ;
  wurcs:has_ring <http://rdf.glycoinfo.org/glycan/wurcs/2.0/MOD/1-5> .
  is_type1 true/false

<wurcs:Monosaccharide> URIのサンプル

<http://rdf.glycoinfo.org/glycan/wurcs/2.0/Monosaccharide/Aad211d2h-2a_2-6_5%2ANCC%2F3%3DO>

バッチ更新

大量の構造データ(アップロード、GlyTouCanクライアント)の場合、バッチプロセスを実行して更新できます。

コンポーネントと単糖は上記と同様、更新されます。

詳細は開発者用のドキュメントに記載されています。

糖鎖の登録

ResidueGenerator

単糖と関連しているコンポーネントのRDFを作成します。

単糖を取得するSPARQL設計中 :

    SELECT ?monosaccharide
    WHERE {
	    ?monosaccharide a wurcs:Monosaccharide
#    	?monosaccharide noc:is_type	2
#    	?monosaccharide noc:is_modified	false
      ?monosaccharide noc:wurcs_sequence	?sequence
    }

Sample

各単糖を登録

上記のwurcs:MonosaccharideのURIから、残機データを生成:

http://rdf.glycoinfo.org/glycan/wurcs/2.0/Monosaccharide/Aad211d2h-2a_2-6_5%2ANCC%2F3%3DO

http://rdf.glycoinfo.org/glycan/wurcs/2.0/Monosaccharide/

部分をカット

Aad211d2h-2a_2-6_5%2ANCC%2F3%3DO

WURCSをs生成

WURCS=2.0/1,1,0/Aad211d2h-2a_2-6_5%2ANCC%2F3%3DO/1

単糖情報から、単糖のWURCSを取得して、GlycoRDF:Monosaccharideとして登録します。(Saccharideのサブクラス)

a Monosaccharideをつけて、登録処理おわりましたら、Accession#を取得できます。

String id = glycanProcedure.register("monosaccharide WURCS string");

Accession#から、上記glycan:Monosaccharideと連携します。

Cardinalityの計算

単糖の登録フローにより、glycan:monsaccharide_aliasが作成されます。

SELECT ?monosaccharide count(distinct ?residue) as ?cardinality
WHERE {
  ?SaccharideURI a glycan:saccharide .
  ?monosaccharide a wurcs:Monosaccharide .
  ?monosaccharide noc:is_type	2 .
  #?monosaccharide noc:is_modified	false
  #?monosaccharide noc:wurcs_sequence	?sequence
}

Componentを作成

INSERT {
  GRAPH <http://rdf.glycoinfo.org/component> {
    <SaccharideURI> glycan:has_component <ComponentURI> .
    <ComponentURI> a glycan:component .
    glycan:has_monosaccharide_alias	<wurcs:Monosaccharide>
    glycan:has_cardinality	integer .
  }
}

<SaccharideURI><ComponentURI>はもとの糖鎖のAccession番号から生成できます。

単糖の登録

単糖として認識され、特別な処理されます。 glycan:saccharideではなく、monosaccharideのタイプを付けする。

a glycan:monosaccharide

monosaccharideタイプ別のReadableNameを取得]

monosaccharideDB

現時点、msDBのRDFには問題があり、保留。

glycanformatconverter

Monosaccharide alias name

monosaccharide_aliasにインサート、glycan:monosaccharideにリンク 新しいGRAPHに、MsDBかWC-WFWから取得したalias nameをインサート。
GRAPH <http://rdf.glytoucan.org/ms/aliasname> をベースにする

MonosaccharideDBから取得場合:

GRAPH <http://rdf.glytoucan.org/ms/aliasname/MonosaccharideDB>

WURCSのResidue文字列でRDFを取得: http://www.monosaccharidedb.org/rdf/monosaccharide.action?name=Aad211d2h-2a_2-6_5%2ANCC%2F3%3DO

MonosaccharideDBから取得したRDFをGRAPHに登録します。もしRDFに問題ありましたら、MonosaccharideDBに相談する必要があります。

monosaccharideDB に接続できない場合、無視する

WURCS2IUPACから取得場合:

Glycan Format Converter

INSERT {
  GRAPH <http://rdf.glytoucan.org/ms/aliasname/glycanformatconverter>
  {
    <Monosaccharide alias> a	glycan:monosaccharide_alias ;
    glycan:is_monosaccharide <wurcs:Monosaccharide> ;
    glycan:has_monosaccharide_notation_scheme glycan:monosaccharide_notation_scheme_iupac ;
    glycan:has_alias_name "Gal-ol" .
  } #### <a name="LinkingToWurcsRdf"></a>Monosaccharide情報をwurcsのMS(新しいオントロジー?)と連携します。 ```
  GlycoRDF:monosaccharide 	sio:has-component-part	wurcs:Monosaccharide
  wurcs:Monosaccharide	sio:is-component-part-of	GlycoRDF:monosaccharide ```

最初の設計書

Lewis Y G00052MOのサンプル

Glycan Entryで単糖と他のデータを表示する。