pyx12.codes

External Codes interface

Exceptions

CodesError

Class for code modules errors.

Classes

ExternalCodes

Validates an ID against an external list of codes

Functions

list_external_codesets([base_path])

Return (id, name) for every codeset in codes.xml.

Module Contents

exception pyx12.codes.CodesError[source]

Bases: Exception

Class for code modules errors.

Initialize self. See help(type(self)) for accurate signature.

class pyx12.codes.ExternalCodes(base_path=None, exclude=None)[source]

Validates an ID against an external list of codes

Initialize the external list of codes

Parameters:
  • base_path (str | None) – Override directory containing codes.xml. If None, uses package resource folder.

  • exclude (str | None) – comma-separated string of external code names to ignore.

self.codes maps codeset_id to {'name', 'dataele', 'codes'}.

codes: dict[str | None, _CodeSet][source]
exclude_list: list[str][source]
isValid(key, code, check_dte=None)[source]

Return True if code is in the codeset identified by key.

Parameters:
  • key (str | None)

  • code (str | None)

  • check_dte (str | None)

Return type:

bool

debug_print(count=10)[source]

Debug print first <count> codes for each codeset (alphabetical).

Parameters:

count (int)

Return type:

None

pyx12.codes.list_external_codesets(base_path=None)[source]

Return (id, name) for every codeset in codes.xml.

Used by CLI scripts to populate --help with the list of names accepted by the --exclude-external-codes flag. Loads the metadata only — does not parse code values — so the cost is small.

Parameters:

base_path (str | None) – Override directory containing codes.xml. If None, uses package resource folder.

Return type:

list[tuple[str, str]]