fnp
/
wolnelektury.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Moved Person class from dcparser.person to dcparser.converters and removed module...
[wolnelektury.git]
/
lib
/
dcparser
/
dcparser.py
diff --git
a/lib/dcparser/dcparser.py
b/lib/dcparser/dcparser.py
index
e8a733a
..
5df7700
100644
(file)
--- a/
lib/dcparser/dcparser.py
+++ b/
lib/dcparser/dcparser.py
@@
-13,17
+13,14
@@
except ImportError:
import converters
import converters
-
__all__ = ('parse', 'ParseError')
__all__ = ('parse', 'ParseError')
-
class ParseError(Exception):
def __init__(self, message):
super(self, Exception).__init__(message)
class ParseError(Exception):
def __init__(self, message):
super(self, Exception).__init__(message)
-
class XMLNamespace(object):
'''Represents XML namespace.'''
class XMLNamespace(object):
'''Represents XML namespace.'''
@@
-37,13
+34,12
@@
class XMLNamespace(object):
return tag.startswith(str(self))
def __repr__(self):
return tag.startswith(str(self))
def __repr__(self):
- return '
NS
(%r)' % self.uri
+ return '
XMLNamespace
(%r)' % self.uri
def __str__(self):
return '%s' % self.uri
def __str__(self):
return '%s' % self.uri
-
class BookInfo(object):
RDF = XMLNamespace('http://www.w3.org/1999/02/22-rdf-syntax-ns#')
DC = XMLNamespace('http://purl.org/dc/elements/1.1/')
class BookInfo(object):
RDF = XMLNamespace('http://www.w3.org/1999/02/22-rdf-syntax-ns#')
DC = XMLNamespace('http://purl.org/dc/elements/1.1/')
@@
-63,13
+59,10
@@
class BookInfo(object):
DC('source.URL') : ('source_url', converters.str_to_unicode),
}
DC('source.URL') : ('source_url', converters.str_to_unicode),
}
-
@classmethod
def from_string(cls, xml):
@classmethod
def from_string(cls, xml):
- """docstring for from_string"""
from StringIO import StringIO
return cls.from_file(StringIO(xml))
from StringIO import StringIO
return cls.from_file(StringIO(xml))
-
@classmethod
def from_file(cls, xml_file):
@classmethod
def from_file(cls, xml_file):
@@
-89,15
+82,13
@@
class BookInfo(object):
return book_info
return book_info
-
def parse_element(self, element):
try:
attribute, converter = self.mapping[element.tag]
def parse_element(self, element):
try:
attribute, converter = self.mapping[element.tag]
- setattr(self, attribute, converter(element.text))
+ setattr(self, attribute, converter(element.text
, getattr(self, attribute, None)
))
except KeyError:
pass
except KeyError:
pass
-
def to_xml(self):
"""XML representation of this object."""
ET._namespace_map[str(self.RDF)] = 'rdf'
def to_xml(self):
"""XML representation of this object."""
ET._namespace_map[str(self.RDF)] = 'rdf'
@@
-118,4
+109,3
@@
class BookInfo(object):
def parse(file_name):
return BookInfo.from_file(file_name)
def parse(file_name):
return BookInfo.from_file(file_name)
-