def binding(self): """Return XML binding""" os = arelda.ordnungssystemGeverSIP() os.name = self.obj.Title() if self.obj.version: os.generation = self.obj.version if self.obj.valid_from or self.obj.valid_until: os.anwendungszeitraum = arelda.historischerZeitraum() if self.obj.valid_from: os.anwendungszeitraum.von = arelda.historischerZeitpunkt( self.obj.valid_from) else: os.anwendungszeitraum.von = NOT_SPECIFIED if self.obj.valid_until: os.anwendungszeitraum.bis = arelda.historischerZeitpunkt( self.obj.valid_until) else: os.anwendungszeitraum.bis = NOT_SPECIFIED for pos in self.positions.values(): os.ordnungssystemposition.append(pos.binding()) return os
def binding(self): dokument = arelda.dokumentGeverSIP(id=u'_{}'.format(self.obj.UID())) dokument.titel = self.obj.Title().decode('utf8') md = IDocumentMetadata(self.obj) if md.document_author: dokument.autor.append(md.document_author) if self.obj.digitally_available: dokument.erscheinungsform = u'digital' else: dokument.erscheinungsform = u'nicht digital' dokument.dokumenttyp = voc_term_title( IDocumentMetadata['document_type'], md.document_type) dokument.registrierdatum = arelda.historischerZeitpunkt( self.obj.created().asdatetime().date()) dokument.entstehungszeitraum = arelda.historischerZeitraum() dokument.entstehungszeitraum.von = arelda.historischerZeitpunkt( self.obj.created().asdatetime().date()) dokument.entstehungszeitraum.bis = arelda.historischerZeitpunkt( self.obj.modified().asdatetime().date()) set_classification_attributes(dokument, self.obj) for file_ref in self.file_refs: dokument.dateiRef.append(file_ref) return dokument
def binding(self): dokument = arelda.dokumentGeverSIP(id=u'_{}'.format(self.obj.UID())) dokument.titel = self.obj.Title().decode('utf8') md = IDocumentMetadata(self.obj) if md.document_author: dokument.autor.append(md.document_author) if self.obj.digitally_available: dokument.erscheinungsform = u'digital' else: dokument.erscheinungsform = u'nicht digital' dokument.dokumenttyp = voc_term_title( IDocumentMetadata['document_type'], md.document_type) dokument.registrierdatum = arelda.historischerZeitpunkt( self.obj.created().asdatetime().date()) dokument.entstehungszeitraum = arelda.historischerZeitraum() dokument.entstehungszeitraum.von = arelda.historischerZeitpunkt( self.obj.created().asdatetime().date()) dokument.entstehungszeitraum.bis = arelda.historischerZeitpunkt( self.obj.modified().asdatetime().date()) set_classification_attributes(dokument, self.obj) if self.file_ref: dokument.dateiRef.append(self.file_ref) return dokument
def binding(self): dossier = arelda.dossierGeverSIP(id=u'_{}'.format(self.obj.UID())) dossier.titel = self.obj.Title().decode('utf8') dossier.entstehungszeitraum = arelda.historischerZeitraum() catalog = getToolByName(self.obj, 'portal_catalog') oldest_docs = catalog( portal_type=self.document_types, path='/'.join(self.obj.getPhysicalPath()), sort_on='created', sort_order='ascending', sort_limit=1) if oldest_docs: dossier.entstehungszeitraum.von = arelda.historischerZeitpunkt( oldest_docs[0].created.asdatetime().date()) else: dossier.entstehungszeitraum.von = NOT_SPECIFIED latest_docs = catalog( portal_type=self.document_types, path='/'.join(self.obj.getPhysicalPath()), sort_on='modified', sort_order='descending', sort_limit=1) if oldest_docs: dossier.entstehungszeitraum.bis = arelda.historischerZeitpunkt( latest_docs[0].modified.asdatetime().date()) else: dossier.entstehungszeitraum.bis = NOT_SPECIFIED set_classification_attributes(dossier, self.obj) dossier.aktenzeichen = IReferenceNumber(self.obj).get_number() dossier_obj = IDossier(self.obj) if dossier_obj.start: dossier.eroeffnungsdatum = arelda.historischerZeitpunkt( dossier_obj.start) if dossier_obj.end: dossier.abschlussdatum = arelda.historischerZeitpunkt( dossier_obj.end) dossier.schutzfrist = unicode(ILifeCycle(self.obj).custody_period) for d in self.dossiers.values(): dossier.dossier.append(d.binding()) for doc in self.documents.values(): dossier.dokument.append(doc.binding()) return dossier
def binding(self): dossier = arelda.dossierGeverSIP(id=u'_{}'.format(self.obj.UID())) dossier.titel = self.obj.Title().decode('utf8') dossier.entstehungszeitraum = arelda.historischerZeitraum() catalog = getToolByName(self.obj, 'portal_catalog') oldest_docs = catalog(portal_type=self.document_types, path='/'.join(self.obj.getPhysicalPath()), sort_on='created', sort_order='ascending', sort_limit=1) if oldest_docs: dossier.entstehungszeitraum.von = arelda.historischerZeitpunkt( oldest_docs[0].created.asdatetime().date()) else: dossier.entstehungszeitraum.von = NOT_SPECIFIED latest_docs = catalog(portal_type=self.document_types, path='/'.join(self.obj.getPhysicalPath()), sort_on='modified', sort_order='descending', sort_limit=1) if oldest_docs: dossier.entstehungszeitraum.bis = arelda.historischerZeitpunkt( latest_docs[0].modified.asdatetime().date()) else: dossier.entstehungszeitraum.bis = NOT_SPECIFIED set_classification_attributes(dossier, self.obj) dossier.aktenzeichen = IReferenceNumber(self.obj).get_number() dossier_obj = IDossier(self.obj) if dossier_obj.start: dossier.eroeffnungsdatum = arelda.historischerZeitpunkt( dossier_obj.start) if dossier_obj.end: dossier.abschlussdatum = arelda.historischerZeitpunkt( dossier_obj.end) dossier.schutzfrist = unicode(ILifeCycle(self.obj).custody_period) for d in self.dossiers.values(): dossier.dossier.append(d.binding()) for doc in self.documents.values(): dossier.dokument.append(doc.binding()) return dossier