+ def convert_to_identifiers(self, obj={}):
+ """Translate key/value pairs to machine readable identifiers.
+ """
+ if not isinstance(obj, dict):
+ raise ValueError("obj must be a dict")
+ r = {}
+ for k, v in obj.items():
+ k_id, v_id = k, v
+ try:
+ k_id = self[k].identifier
+ try:
+ v_id = self[k][v].identifier
+ except KeyError:
+ pass
+ except KeyError:
+ pass
+ r[k_id] = v_id
+ return r
+
+ def convert_to_labels(self, obj={}):
+ """Translate key/value pairs to human readable labels.
+ """
+ if not isinstance(obj, dict):
+ raise ValueError("obj must be a dict")
+ r = {}
+ for k, v in obj.items():
+ k_lbl, v_lbl = k, v
+ try:
+ k_lbl = self[k].preferred_label
+ try:
+ v_lbl = self[k][v].preferred_label
+ except KeyError:
+ pass
+ except KeyError:
+ pass
+ r[k_lbl] = v_lbl
+ return r
+