Views: 69
ディレクトリ構成と__init__.pyファイル
genInvoice及びinvoice2tsvで共通してモジュールdic2treeを使用するのためにdic2etreeサブディレクトリに次の内容で__init__.pyファイルを定義した。
ディレクトリ構成を次に示す。
. ├── LICENSE ├── README.md ├── data │ ├── common │ │ └── xpath.txt │ ├── in │ │ ├── ubl-tc434-example1.xml │ │ ├── ubl-tc434-example2.xml │ │ └── ubl-tc434-example3.xml │ └── out │ ├── ubl-tc434-example1.tsv │ ├── ubl-tc434-example1.xml │ ├── ubl-tc434-example2.tsv │ ├── ubl-tc434-example2.xml │ ├── ubl-tc434-example3.tsv │ └── ubl-tc434-example3.xml ├── dic2etree │ ├── __init__.py │ └── dic2etree.py ├── doc │ └── dic2etree.md ├── genInvoice └── invoice2tsv
from .dic2etree import dict_to_etree from .dic2etree import etree_to_dict from .dic2etree import get_path_value from .dic2etree import set_path_value ns = { '': 'urn:oasis:names:specification:ubl:schema:xsd:Invoice-2', 'xsi': 'http://www.w3.org/2001/XMLSchema-instance', 'cac': 'urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2', 'cbc': 'urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2', 'qdt': 'urn:oasis:names:specification:ubl:schema:xsd:QualifiedDataTypes-2', 'udt': 'urn:oasis:names:specification:ubl:schema:xsd:UnqualifiedDataTypes-2', 'ccts': 'urn:un:unece:uncefact:documentation:2' } __all__ = ['dict_to_etree', 'etree_to_dict', 'get_path_value', 'set_path_value', 'ns']
両モジュールで共通して使用する名前空間定義のnsをここで定義すると同時に、dic2etree.pyで定義した4つの関数をimportしている。これらの共有関数を__all__で指定することで、両モジュールの中で、
from dic2etree import *
を記述することで利用可能としている。