tardis.apps.oaipmh.provider package¶
Submodules¶
tardis.apps.oaipmh.provider.base module¶
-
class
tardis.apps.oaipmh.provider.base.
BaseProvider
(site)¶ Bases:
oaipmh.interfaces.IOAI
,object
A base provider which roughly implements the PyOAI interface for OAI-PMH servers.
Extend this if you’re writing your own provider for a new type or a different metadata format.
-
getRecord
(metadataPrefix, identifier)¶ Get a record for a metadataPrefix and identifier.
Parameters: - metadataPrefix (string) – identifies metadata set to retrieve
- identifier (string) –
- repository-unique identifier of record
Raises: - oaipmh.error.CannotDisseminateFormatError – if
metadataPrefix
is unknown or not supported by identifier. - oaipmh.error.IdDoesNotExistError – if identifier is unknown or illegal.
Returns: a
header
,metadata
,about
tuple describing the record.
-
identify
()¶ Retrieve information about the repository.
Returns an Identify object describing the repository.
-
listIdentifiers
(metadataPrefix, set=None, from_=None, until=None)¶ Get a list of header information on records.
Parameters: - metadataPrefix (string) – identifies metadata set to retrieve
- set (string) – set identifier; only return headers in set
- from (datetime) – only retrieve headers from from_ date forward (in naive UTC)
- until (datetime) – only retrieve headers with dates up to and including until date (in naive UTC)
Raises: - error.CannotDisseminateFormatError – if metadataPrefix is not supported by the repository.
- error.NoSetHierarchyError – if the repository does not support sets.
Returns: an iterable of headers.
-
listMetadataFormats
(identifier=None)¶ List metadata formats supported by repository or record.
Parameters: identifier (string) – identify record for which we want to know all supported metadata formats. If absent, list all metadata formats supported by repository.
Raises: - error.IdDoesNotExistError – if record with identifier does not exist.
- error.NoMetadataFormatsError – if no formats are available for the indicated record.
Returns: an iterable of
metadataPrefix
,schema
,metadataNamespace
tuples (each entry in the tuple is a string).
-
listRecords
(metadataPrefix, set=None, from_=None, until=None)¶ Get a list of header, metadata and about information on records.
Parameters: - metadataPrefix (string) – identifies metadata set to retrieve
- set (string) – set identifier; only return records in set
- from (datetime) – only retrieve records from
from_
date forward (in naive UTC) - until (datetime) – only retrieve records with dates up to and including until date (in naive UTC)
Raises: - oaipmh.error.CannotDisseminateFormatError – if
metadataPrefix
is not supported by the repository. - oaipmh.error.NoSetHierarchyError – if the repository does not support sets.
Returns: an iterable of
header
,metadata
,about
tuples.
-
listSets
()¶ Get a list of sets in the repository.
Raises: error.NoSetHierarchyError – if the repository does not support sets. Returns: an iterable of setSpec, setName tuples (strings).
-
writeMetadata
(element, metadata)¶ Create XML elements under the given element, using the provided metadata.
Should avoid doing any model-lookups, as they should be done when creating the metadata.
Parameters: - element (lxml.etree.Element) – element to put all content under (as SubElements)
- metadata (oaipmh.common.Metadata) – metadata to turn into XML
Raises: NotImplementedError – not implemented
-
tardis.apps.oaipmh.provider.experiment module¶
-
class
tardis.apps.oaipmh.provider.experiment.
AbstractExperimentProvider
(site)¶ Bases:
tardis.apps.oaipmh.provider.base.BaseProvider
-
NS_CC
= 'http://www.tardis.edu.au/schemas/creative_commons/2011/05/17'¶
-
getRecord
(metadataPrefix, identifier)¶ Return record if we handle it.
-
static
get_id
(obj)¶
-
listIdentifiers
(metadataPrefix, set=None, from_=None, until=None)¶ Return identifiers in range, provided we handle this metadata prefix.
-
listRecords
(metadataPrefix, set=None, from_=None, until=None)¶ Return records in range, provided we handle this metadata prefix.
-
listSets
()¶ No support for sets.
-
-
class
tardis.apps.oaipmh.provider.experiment.
DcExperimentProvider
(site)¶ Bases:
tardis.apps.oaipmh.provider.experiment.AbstractExperimentProvider
-
listMetadataFormats
(identifier=None)¶ Return metadata format if no identifier, or identifier is a valid experiment.
-
-
class
tardis.apps.oaipmh.provider.experiment.
RifCsExperimentProvider
(site)¶ Bases:
tardis.apps.oaipmh.provider.experiment.AbstractExperimentProvider
-
class
ExperimentWriter
(root, metadata, site)¶ Bases:
object
-
write
()¶
-
writeRegistryObjectsWrapper
()¶
-
writeRelatedAuthor
(element, obj, relation)¶
-
writeRelatedInfo
(element, obj)¶
-
writeRelatedUser
(element, obj, relation)¶
-
writeSubject
(element, obj)¶
-
-
static
get_rifcs_id
(id_, site_=None)¶
-
listMetadataFormats
(identifier=None)¶ Return metadata format if no identifier, or identifier is a valid experiment.
-
static
writeExperimentMetadata
(element, metadata, site=None, writer=None)¶ Wrapper around experiment writer.
-
static
writeUserMetadata
(element, metadata, site=None)¶
-
class