医薬品チームブログ
新記載要領

添付文書用XML解析 1. XMLの全体像

投稿日:2024.10.15

更新日:2024.10.15


添付文書用XML解析 1

 

先日の通知により添付文書用のXMLのスキーマが公開されました。
今までのSGMLからどのように変わったのでしょうか。

 

今回から何度かに渡ってXMLとSGMLの違いを中心に概要をみていきましょう。
今後の改訂に向けて少しでも参考になれば幸いです。

 

なお、XMLスキーマは今後も随時更新されると考えられます。
内容はあくまでも記事の掲載時の情報である旨ご了承ください。

 

内容については順次更新していく予定です。

 

 

XMLの全体像

今回はルート直下の要素を見て全体像を把握しましょう。

 

 SGMLのルート直下要素 

まず、今までのSGMLのルート直下の要素を見てみましょう

 

現在PMDAのサイトにアップする際に作成しているSGMLのルート要素とその直下の要素の一覧です。

 

まず、ルート要素は「packins」、ルート直下の「添付文書番号」から「特殊記載」までは製品名等の基本情報、「警告」以降が添付文書の本文の内容、主に【】の付く項目単位で要素が構成されていますね。

 

SGMLの仕様だと、 【組成・性状】の項目がルート直下には存在しません
これは【組成・性状】の内容は、「承認等」の項目に、含量毎に記載されているためです。

 

また、『紙』の添付文書には無い、「薬物動態の表」や「臨床成績の表」等の表の為の要素が存在しています

 

SGMLは文章の途中で表を記載する仕様になっていないので、表を表現する場合にはこれらの表の為の要素に記載する必要があるためです。

 

 XMLのルート直下要素 

それではXMLのルート直下の要素を見てみましょう。

 

ルート要素は同じく「Packins」ですが、XMLでは要素名に大文字を用いる様になっています。
以降の要素名も同様で、長い要素名はかなり読みやすくなりました。

 

「Warnings」や「ContraIndications」等変更の無い要素名は基本的にSGMLと同じ要素名を採用しています。
ルート直下の要素はSGMLと同じく、「添付文書番号」から「特殊記載」までが基本情報、以降は添付文書の本文内容という構造ですが、新記載要領に合わせて項目の追加・削除・移動があります。

 

「原則禁忌」や「使用上の注意」等の一部項目が無くなり、「特定の背景を有する患者に関する注意」等の項目が追加、また「使用上の注意」に含まれていた「重要な基本的注意 」等の項目がルート直下に移動されています

 

新記載要領対応の添付文書を作成する為に要素の構造が整理されているのがわかるかと思います。

【組成・性状】は「承認等」から分離され、「禁忌」の直後に配置されるようになりました。
それに伴い【組成・性状】は今までのSGMLと記述方法が大きく変わった要素の一つです。

 

XMLとSGMLの違いの中でも、大きな変更点になるので、具体的な変更内容、記述方法については、別途記事で詳しく見ていきたいと思います。

 

また、「〇〇〇の表」という項目がなくなりました
SGMLでは文章中に表を記載出来ませんでしたが、XMLでは可能になったためです。

 

これらにより、XMLは『紙』の添付文書と同じ順番で各項目を記述する事が出来るようになりました。
SGMLでは『紙』の添付文書と表示順が異なる箇所がありましたが、XMLではより『紙』の添付文書に近い表示が出来るようになりそうです。

 

 ルート直下要素の属性 

XMLのルート要素、「Packins」にはいくつか属性が設定出来ます。
少しだけスキーマを見て確認してみましょう。

スキーマでは「Packins」要素は以下の様に定義されています。

  <!-- 添付文書 -->
  <xs:element name="PackIns">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" ref="AdditionalInfo"/>
          <!--添付文書番号-->
        <xs:element ref="PackageInsertNo"/>
          <!--製薬会社識別コード-->
        <xs:element ref="CompanyIdentifier"/>
          <!--【ア】作成又は改訂年月 -->
        <xs:element ref="DateOfPreparationOrRevision"/>                    
          <!--【イ】日本標準商品分類番号 -->
        <xs:element ref="Sccj"/>
          <!--【オ】薬効分類名 -->
        <xs:element minOccurs="0" ref="TherapeuticClassification"/>
          <!-- 承認等 -->
        <xs:element minOccurs="0" ref="ApprovalEtc"/>
          <!--【キ】一般的名称 -->
        <xs:element minOccurs="0" ref="GenericName"/>
          <!-- 特殊記載項目 -->
        <xs:element minOccurs="0" ref="SpecialItem"/>
          <!--【1】警告 -->
        <xs:element minOccurs="0" ref="Warnings"/>
          <!--【2】禁忌 -->
        <xs:element minOccurs="0" ref="ContraIndications"/>
          <!--【3】組成・性状-->
        <xs:element minOccurs="0" ref="CompositionAndProperty"/>
          <!--【4】効能又は効果-->
        <xs:element minOccurs="0" ref="IndicationsOrEfficacy"/>
          <!--【5】効能又は効果に関連する注意 -->
        <xs:element minOccurs="0" ref="EfficacyRelatedPrecautions"/>
          <!--【6】用法及び用量 -->
        <xs:element minOccurs="0" ref="InfoDoseAdmin"/>
          <!--【7】用法及び用量に関連する注意 -->
        <xs:element minOccurs="0" ref="InfoPrecautionsDosage"/>
          <!--【8】重要な基本的注意 -->
        <xs:element minOccurs="0" ref="ImportantPrecautions"/>
          <!--【9】特定の背景を有する患者に関する注意-->
        <xs:element minOccurs="0" ref="UseInSpecificPopulations"/>
          <!--【10】相互作用 -->
        <xs:element minOccurs="0" ref="Interactions"/>
          <!--【11】副作用 -->
        <xs:element minOccurs="0" ref="AdverseEvents"/>
          <!--【12】臨床検査結果に及ぼす影響 -->
        <xs:element minOccurs="0" ref="InfluenceOnLaboratoryValues"/>
          <!--【13】過量投与 -->
        <xs:element minOccurs="0" ref="OverDosage"/>
          <!--【14】適用上の注意 -->
        <xs:element minOccurs="0" ref="PrecautionsForApplication"/>
          <!--【15】その他の注意 -->
        <xs:element minOccurs="0" ref="OtherPrecautions"/>
          <!--【16】薬物動態 -->
        <xs:element minOccurs="0" ref="Pharmacokinetics"/>
          <!--【17】臨床成績 -->
        <xs:element minOccurs="0" ref="ResultsOfClinicalTrials"/>
          <!--【18】薬効薬理 -->
        <xs:element minOccurs="0" ref="EfficacyPharmacology"/>
          <!--【19】有効成分に関する理化学的知見 -->
        <xs:element minOccurs="0" ref="PhyschemOfActIngredients"/>
          <!--【20】取扱い上の注意 -->
        <xs:element minOccurs="0" ref="PrecautionsForHandling"/>
          <!--【21】承認条件 -->
        <xs:element minOccurs="0" ref="ConditionsOfApproval"/>
          <!--【22】包装 -->
        <xs:element minOccurs="0" ref="Package"/>
          <!--【23】主要文献 -->
        <xs:element minOccurs="0" ref="MainLiterature"/>
          <!--【24】文献請求先及び問い合わせ先 -->
        <xs:element minOccurs="0" ref="AddresseeOfLiteratureRequest"/>
          <!-- その他の説明(付属機器)取り扱い、使用方法等 -->
        <xs:element minOccurs="0" ref="OtherExplainUsage"/>
          <!--【25】保険給付上の注意 -->
        <xs:element minOccurs="0" ref="AttentionOfInsurance"/>
          <!--【26】製造販売業者等 -->
        <xs:element minOccurs="0" ref="NameAddressManufact"/>
          <!-- (参考) -->
        <xs:element minOccurs="0" ref="RelatedInformation"/>
          <!-- ダウンロード用公開ファイル -->
        <xs:element minOccurs="0" ref="Download"/>
          <!-- 企業リンク先 -->
        <xs:element minOccurs="0" ref="CompanyLink"/>
      </xs:sequence>
      <xs:attribute name="id" type="xs:ID"/>
      <xs:attribute ref="xml:lang"/>
        <!--スキーマ・バージョン-->
      <xs:attribute name="version" type="xs:string" use="required"/>
        <!--使用上の注意の教科書ID-->
      <xs:attribute name="referenceOfPrecautionsForUse" type="xs:string"/>
         <!--取扱い上の注意の教科書ID-->
      <xs:attribute name="referenceOfPrecautionsForHandling" type="xs:string"/>
    </xs:complexType>
  </xs:element>

 

スキーマの読み方についてはここでは割愛させていただきます。
上記の部分の大部分で、「Packins」要素に含まれる要素が設定されており83行目から90行目で属性の設定がされています。

 

ここを見ると「Packins」要素は次の様な属性を持つ事がわかります。

  • id
  • lang
  • version
  • referenceOfPrecautionsForUse
  • referenceOfPrecautionsForHandling

 

SGMLとXMLの違いという意味では、「lang」属性と「version」属性はSGMLでも存在していました。

 

「id」と「referenceOfPrecautionsForUse」と「referenceOfPrecautionsForHandling」属性がXMLで新出です。コメントを見ると「referenceOfPrecautionsForUse」は使用上の注意の教科書ID、「referenceOfPrecautionsForHandling」は取扱い上の注意の教科書IDを記述する様です。

 

内部で教科書の内容を用いている場合、この属性を確認すればどの教科書を参照しているか確認する事が出来そうです。

 

 まとめ 

今回はSGMLとXMLの違いとして、ルート要素と直下の要素の構造を簡単ですが確認しました。

 

以下に要点をまとめます。

  • 要素名に大文字を使い読みやすくなった
  • ルート要素は引き続き「packins」、その他変更の無い要素名はSGMLから引き継ぎ
  • 【組成・性状】の項目は「承認等」から分離、「禁忌」の直後は配置。文章中に表を書ける様になった為「〇〇〇〇の表」の項目は廃止
  • SGMLよりも『紙』の添付文書の表示を再現しやすくなった
  • ルートの属性に教科書を示すIDを記述する属性を持つ

 

次回は文章の記述部分、SGMLでのitem要素やdetail要素に当たる部分をみていきたいと思います。