src/p4l/management/commands/dump_record.py
changeset 107 48440ff95906
parent 103 468349edbf7f
child 126 a345f1a67bf1
--- a/src/p4l/management/commands/dump_record.py	Fri Sep 20 03:19:31 2013 +0200
+++ b/src/p4l/management/commands/dump_record.py	Fri Sep 20 10:34:49 2013 +0200
@@ -17,99 +17,14 @@
 from django.core.management.base import CommandError
 from django.db.models.fields.related import ForeignKey
 
-from p4l.management.constants import (GRAPH_NAMESPACES, RDF, get_empty_graph, 
-    IIEP, DCT)
-from p4l.mapping.serializers import (ModelSerializer, SimpleFieldSerializer, 
-    BooleanFieldSerializer, RelatedFieldSerializer)
+from p4l.mapping.constants import GRAPH_NAMESPACES, RDF, get_empty_graph
+from p4l.mapping import RecordSerializer
 from p4l.models.data import Record
 from p4l.utils import show_progress
-from rdflib.namespace import RDFS
 
 
 logger = logging.getLogger(__name__)
 
-class ImprintSerializer(ModelSerializer):
-    
-    imprintCity = SimpleFieldSerializer(predicate=IIEP.imprintCity, lang_field='lang')
-    publisher = SimpleFieldSerializer(predicate=IIEP.publisher, lang_field='lang')
-    imprintDate = SimpleFieldSerializer(predicate=IIEP.imprintDate, lang_field='lang')
-
-
-class VolumeIssueSerializer(ModelSerializer):
-    volume = SimpleFieldSerializer(predicate=IIEP.volume, lang_field='lang')
-    number = SimpleFieldSerializer(predicate=IIEP.number, lang_field='lang')
-
-
-class MeetingSerializer(ModelSerializer):
-    label = SimpleFieldSerializer(predicate=RDFS.label, lang_field='lang')
-    meetingNumber = SimpleFieldSerializer(predicate=IIEP.meetingNumber, lang_field='lang')
-    meetingPlace = SimpleFieldSerializer(predicate=IIEP.meetingPlace, lang_field='lang')
-    meetingDate = SimpleFieldSerializer(predicate=IIEP.meetingDate, lang_field='lang')
-    meetingYear = SimpleFieldSerializer(predicate=IIEP.meetingYear, lang_field='lang')
-
-class SubjectMeetingSerializer(ModelSerializer):
-    label = SimpleFieldSerializer(predicate=RDFS.label)
-    meetingNumber = SimpleFieldSerializer(predicate=IIEP.meetingNumber)
-    meetingPlace = SimpleFieldSerializer(predicate=IIEP.meetingPlace)
-    meetingDate = SimpleFieldSerializer(predicate=IIEP.meetingDate)
-    meetingYear = SimpleFieldSerializer(predicate=IIEP.meetingYear)
-
-
-class SerieSerializer(ModelSerializer):
-    title = SimpleFieldSerializer(predicate=DCT.title, lang_field='lang')
-    volume = SimpleFieldSerializer(predicate=IIEP.volume, lang_field='lang')
-
-
-class UrlSerializer(ModelSerializer):
-    address = SimpleFieldSerializer(predicate=IIEP.address)
-    display = SimpleFieldSerializer(predicate=IIEP.display)
-
-
-
-class RecordSerializer(ModelSerializer):
-    
-    identifier = SimpleFieldSerializer(predicate=DCT.identifier)
-    notes = SimpleFieldSerializer(predicate=IIEP.notes)
-    editionStatement = SimpleFieldSerializer(predicate=IIEP.editionStatement)
-    corporateAuthorLabel = SimpleFieldSerializer(predicate=IIEP.corporateAuthorLabel)
-    recordType = SimpleFieldSerializer(predicate=DCT.type)
-    isDocumentPart = BooleanFieldSerializer(predicate=IIEP.isDocumentPart)
-    hidden = BooleanFieldSerializer(predicate=IIEP.hidden)
-    restricted = BooleanFieldSerializer(predicate=IIEP.restricted)    
-
-    language = RelatedFieldSerializer(many=False, value_field='uri', predicate=DCT.language) 
-    otherLanguages = RelatedFieldSerializer(many=True, value_field='uri', predicate=IIEP.otherLanguage)
-    subjects = RelatedFieldSerializer(many=True, value_field='uri', predicate=DCT.subject)
-    themes = RelatedFieldSerializer(many=True, value_field='uri', predicate=IIEP.theme)
-    countries = RelatedFieldSerializer(many=True, value_field='uri', predicate=IIEP.country)
-    projectNames = RelatedFieldSerializer(many=True, value_field='uri', predicate=IIEP.projectName)
-    subjectCorporateBodies = RelatedFieldSerializer(many=True, value_field='uri', predicate=IIEP.subjectCorporateBody) 
-    corporateAuthors = RelatedFieldSerializer(many=True, value_field='uri', predicate=IIEP.corporateAuthor)
-    audiences = RelatedFieldSerializer(many=True, value_field='uri', predicate=IIEP.audience)
-    
-    isbns = RelatedFieldSerializer(many=True, value_field='isbn', predicate=IIEP.isbn, lang_field='lang')
-    issns = RelatedFieldSerializer(many=True, value_field='issn', predicate=IIEP.issn, lang_field='lang')
-    collations = RelatedFieldSerializer(many=True, value_field='collation', predicate=IIEP.collation, lang_field='lang')
-    documentCodes = RelatedFieldSerializer(many=True, value_field='documentCode', predicate=IIEP.documentCode, lang_field='lang')
-    titles = RelatedFieldSerializer(many=True, value_field='title', predicate=IIEP.title, lang_field='lang')
-    addedTitles = RelatedFieldSerializer(many=True, value_field='title', predicate=IIEP.addedTitle, lang_field='lang')
-    titlesMainDocument = RelatedFieldSerializer(many=True, value_field='title', predicate=IIEP.titleMainDocument, lang_field='lang')
-    abstracts = RelatedFieldSerializer(many=True, value_field='abstract', predicate=IIEP.abstract, lang_field='lang')
-    periodicals = RelatedFieldSerializer(many=True, value_field='label', predicate=IIEP.periodical, lang_field='lang')
-    authors = RelatedFieldSerializer(many=True, value_field='name', predicate=IIEP.author)
-    subjectPersons = RelatedFieldSerializer(many=True, value_field='name', predicate=IIEP.subjectPerson)
-    
-    imprints = ImprintSerializer(many=True, predicate=IIEP.imprint)
-    volumeIssues = VolumeIssueSerializer(many=True, predicate=IIEP.volumeIssue)
-    meetings = MeetingSerializer(many=True, predicate=IIEP.meeting)
-    subjectMeetings = SubjectMeetingSerializer(many=True, predicate=IIEP.subjectMeeting)
-    series = SerieSerializer(many=True, predicate=IIEP.serie)
-    urls = UrlSerializer(many=True, predicate=IIEP.url)
-    
-    
-    class Meta:
-        type = IIEP.Record
-        uri_fieldname = "uri"
 
 class Command(BaseCommand):