2015-09-24 45 views
-1

我正在考慮編寫一段代碼(如果可能的話,腳本)。將人類可讀規範(DICOM)轉換爲機器可分析驗證。元語言生成Schematron

DICOM standard使用的DocBook(XML)來定義爲它的元件的關係和屬性,例如:

等效的DocBook XML爲掃描順序是:

  <tr valign="top"> 
      <td align="left" colspan="1" rowspan="1"> 
       <para>Scanning Sequence</para> 
      </td> 
      <td align="center" colspan="1" rowspan="1"> 
       <para>(0018,0020)</para> 
      </td> 
      <td align="center" colspan="1" rowspan="1"> 
       <para>1</para> 
      </td> 
      <td align="left" colspan="1" rowspan="1"> 
       <para>Description of the type of data taken.</para> 
       <variablelist spacing="compact"> 
       <title>Enumerated Values:</title> 
       <varlistentry> 
        <term>SE</term> 
        <listitem> 
        <para>Spin Echo</para> 
        </listitem> 
       </varlistentry> 
       <varlistentry> 
        <term>IR</term> 
        <listitem> 
        <para>Inversion Recovery</para> 
        </listitem> 
       </varlistentry> 
       <varlistentry> 
        <term>GR</term> 
        <listitem> 
        <para>Gradient Recalled</para> 
        </listitem> 
       </varlistentry> 
       <varlistentry> 
        <term>EP</term> 
        <listitem> 
        <para>Echo Planar</para> 
        </listitem> 
       </varlistentry> 
       <varlistentry> 
        <term>RM</term> 
        <listitem> 
        <para>Research Mode</para> 
        </listitem> 
       </varlistentry> 
       </variablelist> 
       <note> 
       <para>Multi-valued, but not all combinations are valid (e.g., SE/GR, etc.).</para> 
       </note> 
      </td> 

所以我需要解析這個XML InfoSet,並從這組DICOM密鑰中生成schematron規則字。我可以使用哪種語言來保持高效和準確?該語言應該允許輕鬆解析XML輸入並輕鬆生成schematron規則。

回答

1

據我所知,這應該是非常簡單的,所以我會說使用你喜歡的任何語言。 XML解析器在任何地方都可用,使用sprintf()或其他方法生成schematron很容易。總的來說,在XSLT中進行轉換可能是最容易的,因爲您可以免費獲得解析和生成。但是如果你不知道XSLT,你已經知道的語言對你來說可能會更快。

-s

PS:如果你碰巧使用Python,要小心你使用的解析器庫。我還沒有發現他們都可靠。但是你的數據看起來很乾淨,你不會給他們太多壓力,所以你應該沒問題。