Define.xmlの外堀をうめるたい
先日のCJUG会合でDefine.xmlの初心者向け発表があり、盛り上がったので個人的感想を。Define.xmlの内容には触れません。
Define.xmlの作成方法
現状では富士通が公開している
「tsClinical Metadata Desktop Tools」
もしくは「Pinacle21」を使うのが一般的。
Define.xmlのデータソース
選択肢は2つ
EDCスペック表から作成する。「データベースの定義書」
Rawデータから作成する「Rawデータの定義書」
と定義するデータが違うので注意が必要。
1.の場合。早い段階からDefine.xmlが作成できる。EDCの改訂があった場合でも変更箇所が明確なので修正しやすい。
2.の場合、作成時のタイミングによりDefine.xmlの内容が変化する。Rawデータにない設定値(特にCT)がある場合はDefine.xmlに登場しない。
FDAのSubmition guidline では1が推奨されているが必須ではない。
ここではどちらが良いかは結論しない。なぜならどちらを選択してもFDAもPMDAも承認申請が可能なため。
Define.xmlの表示方法
Define.xmlはマシンリーダブルなxmlフォーマットのためヒトの目では読みにくい(読めない)そのためスタイルシート(*.xsl)を使ってhtmlに変換して見ることになるが、Internet exploreでしかネイティブに対応していない。現行のWindowsのEdgeでは互換モードで開く、MacではSafariの設定変更で開くしかない。そもそもの原因がセキュリティポリシーが問題なのでこの回避方法もいつ無くなるかわからない。当然だがChrome等でも同様である。こちらは互換モードもない。
代替方法として前出の「tsClinical Metadata Desktop Tools」にはhtmlに変換する機能が実装されているのでそれを使ってhtmlで閲覧するのが平易である。
またSAS等のプログラムで変換できる。例えばPythonでは下記コードで変換できる。
from lxml import etree
xml_tree = etree.parse("7130001.xml")
xsl_tree = etree.parse("7130001.xsl")
transform = etree.XSLT(xsl_tree)
html = transform(xml_tree)
html.write("7130001.html", pretty_print=True)