From 4f317375f4113be6cf5797f831407f2b75019177 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 6 Jul 2016 10:35:16 +0530 Subject: [PATCH] Use known prefixes when querying for an item by property --- src/calibre/ebooks/metadata/opf3.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/calibre/ebooks/metadata/opf3.py b/src/calibre/ebooks/metadata/opf3.py index 5ccfadf275..82b8ad3e54 100644 --- a/src/calibre/ebooks/metadata/opf3.py +++ b/src/calibre/ebooks/metadata/opf3.py @@ -117,7 +117,7 @@ def simple_text(f): return wrapper def items_with_property(root, q, prefixes): - q = expand_prefix(q, prefixes).lower() + q = expand_prefix(q, known_prefixes).lower() for item in XPath("./opf:manifest/opf:item[@properties]")(root): for prop in (item.get('properties') or '').lower().split(): prop = expand_prefix(prop, prefixes) @@ -142,6 +142,8 @@ reserved_prefixes = { } CALIBRE_PREFIX = 'https://calibre-ebook.com' +known_prefixes = reserved_prefixes.copy() +known_prefixes['calibre'] = CALIBRE_PREFIX def parse_prefixes(x): return {m.group(1):m.group(2) for m in re.finditer(r'(\S+): \s*(\S+)', x)}