static void output_includedin( fields *info, FILE *outptr, int type ) { if ( type==TYPE_JOURNALARTICLE ) { output_titleinfo( info, outptr, "b:JournalName", 1 ); } else if ( type==TYPE_ARTICLEINAPERIODICAL ) { output_titleinfo( info, outptr, "b:PeriodicalTitle", 1 ); } else if ( type==TYPE_BOOKSECTION ) { output_titleinfo( info, outptr, "b:ConferenceName", 1 ); /*??*/ } else if ( type==TYPE_PROCEEDINGS ) { output_titleinfo( info, outptr, "b:ConferenceName", 1 ); } }
static void output_generaltitle( fields *info, FILE *outptr, char *tag, int level ) { char *ttl = fields_findv( info, level, FIELDS_CHRP, "TITLE" ); char *subttl = fields_findv( info, level, FIELDS_CHRP, "SUBTITLE" ); char *shrttl = fields_findv( info, level, FIELDS_CHRP, "SHORTTITLE" ); char *shrsubttl = fields_findv( info, level, FIELDS_CHRP, "SHORTSUBTITLE" ); if ( ttl ) { output_titleinfo( ttl, subttl, outptr, tag, level ); } else if ( shrttl ) { output_titleinfo( shrttl, shrsubttl, outptr, tag, level ); } }
static void output_maintitle( fields *info, FILE *outptr, int level ) { char *ttl = fields_findv( info, level, FIELDS_CHRP, "TITLE" ); char *subttl = fields_findv( info, level, FIELDS_CHRP, "SUBTITLE" ); char *shrttl = fields_findv( info, level, FIELDS_CHRP, "SHORTTITLE" ); char *shrsubttl = fields_findv( info, level, FIELDS_CHRP, "SHORTSUBTITLE" ); if ( ttl ) { output_titleinfo( ttl, subttl, outptr, "b:Title", level ); /* output shorttitle if it's different from normal title */ if ( shrttl ) { if ( !ttl || ( strcmp( shrttl, ttl ) || subttl ) ) { fprintf( outptr, " <b:ShortTitle>" ); output_titlebits( shrttl, shrsubttl, outptr ); fprintf( outptr, "</b:ShortTitle>\n" ); } } } else if ( shrttl ) { output_titleinfo( shrttl, shrsubttl, outptr, "b:Title", level ); } }