def _serialize_meta(self, obj): """ Transform pairs in a Json-friendly form. Assumes that pairs is sorted according to the first component (key). """ ret = {} umps = iter(self.unserialized_meta_prefixes) ump = umps.next() for k, v in iter_filtered_meta_ids(obj): while ump and k >= ump: if k.startswith(ump): k = None # used below to continue outer loop break else: ump = umps.next() if k is None: continue ns, tag = split_uri_ref(k) if (ns == DC_NS_PREFIX and tag in UNPREFIXED_DC) or ns == CAM_NS_PREFIX: k = tag.replace("-", "_") else: prefix = self.namespaces.get(ns) if prefix is not None: k = "%s:%s" % (prefix, tag) if v.is_id: v = {"id_ref": v} ret[k] = v return ret
def _serialize_meta(self, obj, uri): """ Transform pairs in a Json-friendly form. Assumes that pairs is sorted according to the first component (key). """ ret = {} umps = iter(self.unserialized_meta_prefixes) ump = umps.next() for k, v in iter_filtered_meta_ids(obj): while ump and k >= ump: if k.startswith(ump): k = None # used below to continue outer loop break else: ump = umps.next() if k is None: continue if getattr(v, "is_id", None): obj = self._coin_uri_from_id(v) else: obj = Literal(v) yield (uri, URIRef(k), obj)
def _serialize_meta(self, obj, xobj): xm = SubElement(xobj, "meta") self._serialize_meta_pairs(xm, iter_filtered_meta_ids(obj)) if len(xm) == 0: xobj.remove(xm)