{{ if(row.index - row.record.fromRowIndex == 0, with(cross(cells['index'].value, 'bielefeld' , 'index'), rows, '' + '\n' + ' ' + '\n' + ' ' + '\n' + ' ' + '\n' + ' ' + '\n' + forEach(filter(rows, r, isNonBlank(r.cells['titleInfo - title'].value)), r, ' ' + '\n' + forNonBlank(r.cells['nonsort'].value, v, ' ' + v.escape('xml') + '' + '\n' , '') + forNonBlank(r.cells['titleInfo - title'].value, v, ' ' + v.escape('xml') + '' + '\n' , '') + ' ' + '\n' ).join('') + forEachIndex(rows, i, r, if(r.cells['name - type'].value == 'personal', ' ' + '\n' + ' ' + r.cells['name - namePart'].value.escape('xml') + '' + '\n' + if(and(isBlank(rows[i+1].cells['name - type'].value), isNonBlank(rows[i+1].cells['name - namePart - type'].value)), ' ' + rows[i+1].cells['name - namePart'].value.escape('xml') + '' + '\n' , '') + forNonBlank(r.cells['orcid'].value, v, ' ' + v.escape('xml') + '' + '\n' , '') + forNonBlank(r.cells['name - role - roleTerm'].value, v, ' ' + '\n' + ' ' + v.escape('xml') + '' + '\n' + ' ' + '\n' , '') + ' ' + '\n' , '')).join('') + ' text' + '\n' + ' ' + cells['doctype'].value.escape('xml') + '' + '\n' + ' ' + '\n' + forEach(filter(rows, r, isNonBlank(r.cells['originInfo - dateIssued'].value)), r, ' ' + r.cells['originInfo - dateIssued'].value.escape('xml') + '' + '\n' ).join('') + forEach(filter(rows, r, isNonBlank(r.cells['dateOther'].value)), r, ' ' + r.cells['dateOther'].value.escape('xml') + '' + '\n' ).join('') + ' ' + '\n' + ' ' + '\n' + ' ' + cells['language - languageTerm'].value.escape('xml') + '' + '\n' + ' ' + '\n' + forEach(filter(rows, r, isNonBlank(r.cells['abstract'].value)), r, ' ' + r.cells['abstract'].value.escape('xml') + '' + '\n' ).join('') + if(isNonBlank(row.record.cells['subject - topic'].value), ' ' + '\n' , '') + forEach(filter(rows, r, isNonBlank(r.cells['subject - topic'].value)), r, ' ' + r.cells['subject - topic'].value.escape('xml') + '' + '\n' ).join('') + if(isNonBlank(row.record.cells['subject - topic'].value), ' ' + '\n' , '') + forEach(filter(rows, r, isNonBlank(r.cells['ddc'].value)), r, ' ' + r.cells['ddc'].value.escape('xml') + '' + '\n' ).join('') + forEachIndex(rows, i, r, if(and(r.cells['relatedItem - type'].value == 'host', r.cells['relatedItem - part - detail - type'].value == 'volume'), ' ' + '\n' + ' ' + '\n' + ' ' + r.cells['relatedItem - titleInfo - title'].value.escape('xml') + '' + '\n' + ' ' + '\n' + ' ' + '\n' + ' ' + '\n' + ' ' + r.cells['relatedItem - part - detail - number'].value.escape('xml') + '' + '\n' + ' ' + '\n' + forNonBlank(rows[i+1].cells['relatedItem - part - detail - number'].value, v, ' ' + '\n' + ' ' + v.escape('xml') + '' + '\n' + ' ' + '\n' , '') + forNonBlank(r.cells['relatedItem - part - extent'].value.split('-')[0], v, ' ' + '\n' + ' ' + v.escape('xml') + '' + '\n' + forNonBlank(r.cells['relatedItem - part - extent'].value.split('-')[1], x, ' ' + x.escape('xml') + '' + '\n' , '') + ' ' + '\n' , '') + ' ' + '\n' + ' ' + '\n' , '')).join('') + forEach(filter(rows, r, isNonBlank(r.cells['relatedItem - identifier'].value)), r, ' ' + r.cells['relatedItem - identifier'].value.escape('xml') + '' + '\n' ).join('') + forNonBlank(cells['hbz'].value, v, ' ' + v.escape('xml') + '' + '\n' , '') + forEach(filter(rows, r, isNonBlank(r.cells['rights_url'].value)), r, ' ' + r.cells['rights'].value.escape('xml') + '' + '\n' ).join('') + ' ' + '\n' + ' ' + 'bielefeld_pub_' + cells['id'].value.escape('xml') + '' + '\n' + ' ' + '\n' + forNonBlank(cells['vldoctype'].value, v, ' ' + '\n' + ' ' + v.escape('xml') + '' + '\n' + ' ' + '\n' , '') + ' ' + '\n' + ' ' + '\n' + ' ' + '\n' + ' ' + '\n' + ' ' + '\n' + forEachIndex(filter(rows, r, and(isNonBlank(r.cells['relatedItem - location - url'].value), r.cells['relatedItem - type'].value == 'constituent')), i, r, ' ' + '\n' + ' ' + '\n' + ' ' + '\n' + ' ' + '\n' + ' ' + '\n' ).join('') + ' ' + '\n' + ' ' + '\n' + ' ' + '\n' + ' ' + '\n' + forEachIndex(filter(rows, r, and(isNonBlank(r.cells['relatedItem - location - url'].value), r.cells['relatedItem - type'].value == 'constituent')).slice(1), i, r, ' ' + '\n' + ' ' + '\n' + ' ' + '\n' ).join('') + ' ' + '\n' + ' ' + '\n' + '' + '\n' ), '') }}