slackbuilds_ponce/academic/EMBOSS/patch-1-24
Petar Petrov fd8480905d academic/EMBOSS: Updated with newest patches.
Signed-off-by: Niels Horn <niels.horn@slackbuilds.org>
2011-10-21 15:59:16 -02:00

7326 lines
215 KiB
Text

diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/ajaxdb/ajtextdb.c EMBOSS-6.4.0/ajax/ajaxdb/ajtextdb.c
*** EMBOSS-6.4.0old/ajax/ajaxdb/ajtextdb.c 2011-07-06 17:09:36.000000000 +0100
--- EMBOSS-6.4.0/ajax/ajaxdb/ajtextdb.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 2580,2588 ****
{
field = ajListIterGet(iter);
! if(!nfields)
! ajStrAppendK(&textin->Filename, '+');
! else
{
switch(field->Link)
{
--- 2580,2586 ----
{
field = ajListIterGet(iter);
! if(nfields)
{
switch(field->Link)
{
***************
*** 2684,2692 ****
{
field = ajListIterGet(iter);
! if(!nfields)
! ajStrAppendK(&textin->Filename, '+');
! else
{
switch(field->Link)
{
--- 2682,2688 ----
{
field = ajListIterGet(iter);
! if(nfields)
{
switch(field->Link)
{
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajarch.h EMBOSS-6.4.0/ajax/core/ajarch.h
*** EMBOSS-6.4.0old/ajax/core/ajarch.h 2011-06-08 11:35:28.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajarch.h 2011-10-05 14:56:07.000000000 +0100
***************
*** 137,143 ****
#ifdef WIN32
typedef int ajint;
! typedef long ajlong; /* May need to make this long long. */
typedef unsigned int ajuint;
typedef short ajshort;
typedef unsigned short ajushort;
--- 137,143 ----
#ifdef WIN32
typedef int ajint;
! typedef long long ajlong;
typedef unsigned int ajuint;
typedef short ajshort;
typedef unsigned short ajushort;
***************
*** 159,162 ****
AJ_END_DECLS
#endif
-
--- 159,161 ----
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajfeatread.c EMBOSS-6.4.0/ajax/core/ajfeatread.c
*** EMBOSS-6.4.0old/ajax/core/ajfeatread.c 2011-07-07 17:37:21.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajfeatread.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 3035,3041 ****
AjPStr TvString = NULL;
AjPStr tmptag = NULL;
AjBool grpset = ajFalse;
!
/*ajDebug("featGff3oldProcessTagval '%S'\n",
groupfield); */
--- 3035,3042 ----
AjPStr TvString = NULL;
AjPStr tmptag = NULL;
AjBool grpset = ajFalse;
! AjBool escapedquote = ajFalse;
!
/*ajDebug("featGff3oldProcessTagval '%S'\n",
groupfield); */
***************
*** 3050,3061 ****
--- 3051,3069 ----
*/
ajStrAssignS(&TvString, groupfield);
+ if(ajStrFindC(TvString, "\\\"") >= 0)
+ {
+ escapedquote = ajTrue;
+ ajStrExchangeCC(&TvString, "\\\"", "\001");
+ }
+
while(ajStrGetLen(TvString))
{
if(ajRegExec(Gff3oldRegexTvTagval, TvString))
{
ajRegSubI(Gff3oldRegexTvTagval, 1, &tmptag);
ajRegSubI(Gff3oldRegexTvTagval, 2, &featinValTmp);
+
ajStrTrimWhite(&featinValTmp);
/*ajDebug("Gff3Tv '%S' '%S'\n", tmptag, featinValTmp);*/
ajRegPost(Gff3oldRegexTvTagval, &TvString);
***************
*** 3076,3081 ****
--- 3084,3091 ----
featFlagSet(gf, featinValTmp);
else
{
+ if(escapedquote)
+ ajStrExchangeCC(&featinValTmp, "\001", "\"");
/*ajDebug("GFF3 before QuoteStrip: '%S'\n", featinValTmp);*/
ajStrQuoteStrip(&featinValTmp);
/*ajDebug(" GFF3 after QuoteStrip: '%S'\n", featinValTmp);*/
***************
*** 5896,5903 ****
Gff3Regexdirective = ajRegCompC("^##(.*)");
Gff3Regexcomment = ajRegCompC("^#(.*)");
Gff3RegexTvTagval = ajRegCompC(" *([^ =]+)[ =]([^;]+)*(;|$)"); /* "tag name */
! Gff3oldRegexTvTagval = ajRegCompC(" *([^ =]+)[ =]((\"(\\.|[^\\\"])*\"|"
! "[^;]+)*)(;|$)"); /* "tag name */
FeatInitGff3 = ajTrue;
--- 5906,5913 ----
Gff3Regexdirective = ajRegCompC("^##(.*)");
Gff3Regexcomment = ajRegCompC("^#(.*)");
Gff3RegexTvTagval = ajRegCompC(" *([^ =]+)[ =]([^;]+)*(;|$)"); /* "tag name */
! Gff3oldRegexTvTagval = ajRegCompC(" *([^ =]+)[ =](\"[^\"]*\"|"
! "[^;]+)(;|$)"); /* "tag name */
FeatInitGff3 = ajTrue;
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajfeatwrite.c EMBOSS-6.4.0/ajax/core/ajfeatwrite.c
*** EMBOSS-6.4.0old/ajax/core/ajfeatwrite.c 2011-06-23 11:56:06.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajfeatwrite.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 4134,4140 ****
tmpid = owner->Seqid;
if(thys->Score)
! ajFmtPrintF(file, "%S\t%S\t%S\t%d\t%d\t%.3f\t%c\t%c\t",
tmpid,
thys->Source,
outtyp,
--- 4134,4140 ----
tmpid = owner->Seqid;
if(thys->Score)
! ajFmtPrintF(file, "%S\t%S\t%S\t%d\t%d\t%.3g\t%c\t%c\t",
tmpid,
thys->Source,
outtyp,
***************
*** 4215,4220 ****
--- 4215,4221 ----
while(!ajListIterDone(iter))
{
tv = ajListIterGet(iter);
+ ajStrFmtLower(&tv->Tag);
outtag = tv->Tag;
if(!outtag)
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajfileio.c EMBOSS-6.4.0/ajax/core/ajfileio.c
*** EMBOSS-6.4.0old/ajax/core/ajfileio.c 2011-05-24 13:51:54.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajfileio.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 2006,2025 ****
{
AjBool ret;
ajlong fpos = 0;
- AjPStr dest;
ret = ajBuffreadLinePos(buff, Pdest, &fpos);
/* trim any trailing newline */
- dest = *Pdest;
-
/*ajDebug("Remove carriage-return characters from PC-style files\n");*/
! if(ajStrGetCharLast(dest) == '\n')
ajStrCutEnd(Pdest, 1);
/* PC files have \r\n Macintosh files have just \r : this fixes both */
! if(ajStrGetCharLast(dest) == '\r')
ajStrCutEnd(Pdest, 1);
return ret;
--- 2006,2022 ----
{
AjBool ret;
ajlong fpos = 0;
ret = ajBuffreadLinePos(buff, Pdest, &fpos);
/* trim any trailing newline */
/*ajDebug("Remove carriage-return characters from PC-style files\n");*/
! if(ajStrGetCharLast(*Pdest) == '\n')
ajStrCutEnd(Pdest, 1);
/* PC files have \r\n Macintosh files have just \r : this fixes both */
! if(ajStrGetCharLast(*Pdest) == '\r')
ajStrCutEnd(Pdest, 1);
return ret;
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajfmt.c EMBOSS-6.4.0/ajax/core/ajfmt.c
*** EMBOSS-6.4.0old/ajax/core/ajfmt.c 2011-05-16 11:31:26.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajfmt.c 2011-10-05 18:22:48.000000000 +0100
***************
*** 50,55 ****
--- 50,65 ----
#include "ajax.h"
+ #define EVF_PERCENT 1
+ #define EVF_NOCON 2
+ #define EVF_LONG 4
+ #define EVF_AJLONG 8
+ #define EVF_UNSIGNED 16
+ #define EVF_NEGATE 32
+
+ #define EVF_BUF 128
+
+
typedef void (*Fmt_T) (ajint code, VALIST ap,
int put(int c, void *cl), void *cl,
const ajuint* flags, ajint width, ajint precision);
***************
*** 148,153 ****
--- 158,165 ----
static void cvt_u(ajint code, VALIST ap, int put(int c, void* cl), void* cl,
const ajuint* flags, ajint width, ajint precision);
+ static ajint evfscanf(FILE *stream, const char *fmt, va_list ap);
+
***************
*** 2290,2296 ****
__va_copy(save_ap,ap);
#endif
! n = fscanf(file,fmt,ap);
#if defined(__amd64__) || defined(__EM64T__) || \
defined(__PPC__) && defined(_CALL_SYSV)
--- 2302,2308 ----
__va_copy(save_ap,ap);
#endif
! n = evfscanf(file,fmt,ap);
#if defined(__amd64__) || defined(__EM64T__) || \
defined(__PPC__) && defined(_CALL_SYSV)
***************
*** 2306,2311 ****
--- 2318,2836 ----
+ /* @funcstatic evfscanf *******************************************************
+ **
+ ** EMBOSS version of C99 vfscanf() including %S conversion
+ **
+ ** @param [r] stream [FILE*] file pointer.
+ ** @param [r] fmt [const char*] Format string.
+ ** @param [v] ap [va_list] Variable length argument list
+ ** @return [ajint] number of successful conversions
+ **
+ ** @release 6.4.0
+ ** @@
+ ******************************************************************************/
+
+ static ajint evfscanf(FILE *stream, const char *fmt, va_list ap)
+ {
+ char fch = '\0';
+ int ipc = 0;
+ int tpc = 0;
+
+ ajuint uflags = 0;
+ ajint nconv = 0;
+ ajint width = 0;
+ AjBool fin = ajFalse;
+ AjBool idone = ajFalse;
+
+ ajulong sum = 0L;
+
+ ajuint nread = 0;
+ ajint ret = EOF;
+ ajint base = 10;
+
+ char *p = NULL;
+ char fchars[] = "0123456789Ee.";
+
+ char buf[EVF_BUF];
+
+ AjPStr *str = NULL;
+
+ union
+ {
+ ajlong L;
+ long l;
+ unsigned long ul;
+ ajulong uL;
+ ajint i;
+ ajuint u;
+ char *c;
+ double d;
+ } val;
+
+
+ if(feof(stream))
+ return EOF;
+
+ val.ul = 0L;
+
+ while((fch = *fmt))
+ {
+ ++fmt;
+
+
+ if(uflags & EVF_PERCENT)
+ {
+ /* If %% has been given then do a simple match */
+ if(fch == '%')
+ {
+ uflags &= ~EVF_PERCENT;
+
+ if((ipc = getc(stream)) == EOF)
+ break;
+
+ ++sum;
+
+ if(ipc != (int) fch)
+ break;
+
+ continue;
+ }
+
+ /* Now in the realm of format specifiers */
+ /* First test for any width */
+
+ if(fch >= '0' && fch <= '0')
+ {
+ fch -= '0';
+
+ if(width == INT_MAX)
+ width = 0;
+ else
+ width *= 10;
+
+ width += (ajint) fch;
+
+ continue;
+ }
+
+ if((char) fch != 'S')
+ fch = tolower(fch);
+
+ switch(fch)
+ {
+ case '*':
+ uflags |= EVF_NOCON;
+ continue;
+
+ case 'n':
+ if(!(uflags & EVF_NOCON))
+ *(va_arg(ap, ajint *)) = (ajint) sum;
+
+ break;
+
+ case 'c':
+ if(!(uflags & EVF_NOCON))
+ val.c = va_arg(ap, char *);
+
+ if(width == INT_MAX)
+ width = 1;
+
+ while(width-- > 0)
+ {
+ if((ipc = getc(stream)) == EOF)
+ {
+ fin = ajTrue;
+ break;
+ }
+
+ ++nread;
+
+ if(!(uflags & EVF_NOCON))
+ *val.c++ = (char) ipc;
+ }
+
+ break;
+
+ case 'h': /* ANSI C converts shorts to ints */
+ continue;
+
+ case 'l':
+ uflags |= EVF_LONG;
+ continue;
+
+ case 'L':
+ uflags |= EVF_AJLONG;
+ continue;
+
+ case 's':
+ if(!(uflags & EVF_NOCON))
+ val.c = va_arg(ap, char *);
+
+ do
+ {
+ ipc = getc(stream);
+ ++sum;
+ } while(isspace(ipc));
+
+ if(ipc == EOF)
+ {
+ fin = ajTrue;
+ break;
+ }
+
+ while(width-- > 0)
+ {
+ if(isspace(ipc))
+ {
+ ungetc(ipc, stream);
+ --sum;
+ break;
+ }
+
+ if(!(uflags & EVF_NOCON))
+ *val.c++ = (char) ipc;
+
+ if((ipc = getc(stream)) == EOF)
+ break;
+
+ ++nread;
+ }
+
+ if(!(uflags & EVF_NOCON))
+ *val.c = '\0';
+
+ break;
+
+ case 'S':
+ if(!(uflags & EVF_NOCON))
+ {
+ str = (AjPStr *) va_arg(ap, AjPStr *);
+ ajStrAssignC(str,"");
+ }
+
+ do
+ {
+ ipc = getc(stream);
+ ++sum;
+ } while(isspace(ipc));
+
+ if(ipc == EOF)
+ {
+ fin = ajTrue;
+ break;
+ }
+
+ while(width-- > 0)
+ {
+ if(isspace(ipc))
+ {
+ ungetc(ipc, stream);
+ --sum;
+ break;
+ }
+
+ if(!(uflags & EVF_NOCON))
+ ajStrAppendK(str, (char) ipc);
+
+ if((ipc = getc(stream)) == EOF)
+ break;
+
+ ++nread;
+ }
+
+ break;
+
+ case 'o':
+ base = 8;
+ /* Fallthrough */
+ case 'x':
+ if(base == 10) /* To protect fallthrough from octal */
+ base = 16;
+ /* Fallthrough */
+ case 'u':
+ uflags |= EVF_UNSIGNED;
+ /* Fallthrough */
+ case 'd':
+ case 'i':
+ do
+ {
+ ipc = getc(stream);
+ ++sum;
+ } while(isspace(ipc));
+
+ if(ipc == EOF)
+ {
+ fin = ajTrue;
+ break;
+ }
+
+ if((char) ipc == '+' || (char) ipc == '-')
+ {
+ if(--width <= 0)
+ {
+ fin = ajTrue;
+ break;
+ }
+
+ if((char) ipc == '-')
+ uflags |= EVF_NEGATE;
+
+ if((ipc = getc(stream)) == EOF)
+ {
+ fin = ajTrue;
+ break;
+ }
+
+ ++sum;
+ }
+
+ idone = ajFalse;
+ val.uL = 0;
+
+ if((char) ipc == '0')
+ {
+ if(--width <= 0)
+ idone = ajTrue;
+
+ if(!idone)
+ if((ipc = getc(stream)) == EOF)
+ idone = ajTrue;
+
+ if((char) tolower(ipc) == 'x' && !idone)
+ {
+ if(fch == 'o' || fch == 'd' || fch == 'u')
+ {
+ /* Invalid 0x */
+ ungetc(ipc, stream);
+ idone = ajTrue;
+ }
+
+ if(!idone)
+ base = 16;
+
+ if(!idone)
+ {
+ if((ipc = getc(stream)) == EOF)
+ idone = ajTrue;
+ else
+ ++sum;
+ }
+ }
+ else if(fch == 'i' && !idone)
+ base = 8;
+ }
+
+ ++nread;
+
+ for(;!idone;)
+ {
+ tpc = tolower(ipc);
+
+ tpc -= '0';
+
+ if(tpc > 9)
+ {
+ tpc += '0';
+ tpc -= 'a';
+
+ if(tpc >= 0)
+ tpc += 10;
+ }
+
+ if(tpc < 0 || tpc >= base)
+ {
+ ungetc(ipc, stream);
+ --nread;
+ break;
+ }
+
+ val.uL *= base;
+ val.uL += tpc;
+
+ if(--width <= 0)
+ break;
+
+ if((ipc = getc(stream)) == EOF)
+ break;
+
+ ++nread;
+ }
+
+ if((uflags & EVF_NEGATE) && !idone)
+ val.L = -val.L;
+
+ if(!(uflags & EVF_NOCON))
+ {
+ if((uflags & (EVF_UNSIGNED | EVF_AJLONG)) ==
+ (EVF_UNSIGNED | EVF_AJLONG))
+ *(va_arg(ap, ajulong *)) = val.uL;
+ else if(uflags & (EVF_AJLONG))
+ *(va_arg(ap, ajlong *)) = val.L;
+ else if((uflags & (EVF_UNSIGNED | EVF_LONG)) ==
+ (EVF_UNSIGNED | EVF_LONG))
+ *(va_arg(ap, unsigned long *)) = val.ul;
+ else if(uflags & (EVF_LONG))
+ *(va_arg(ap, long *)) = val.l;
+ else if(uflags & (EVF_UNSIGNED))
+ *(va_arg(ap, ajuint *)) = val.u;
+ else
+ *(va_arg(ap, ajint *)) = val.i;
+ }
+
+ break;
+
+ case 'e':
+ case 'f':
+ case 'g':
+ do
+ {
+ ipc = getc(stream);
+ ++sum;
+ } while(isspace(ipc));
+
+ if(ipc == EOF)
+ {
+ --sum;
+ fin = ajTrue;
+ break;
+ }
+
+ if((char) ipc == '+' || (char) ipc == '-')
+ {
+ if((char) ipc == '-')
+ uflags |= EVF_NEGATE;
+
+ if((ipc = getc(stream)) == EOF)
+ {
+ fin = ajTrue;
+ break;
+ }
+
+ ++sum;
+ }
+
+ val.d = 0.0;
+
+ ++nread;
+
+ for(p = buf; p < buf + EVF_BUF - 1 && width >0; --width)
+ {
+ if(!strchr(fchars, ipc))
+ {
+ ungetc(ipc, stream);
+ --nread;
+ break;
+ }
+
+ if((char) ipc == 'e' || (char) ipc == 'E')
+ {
+ fchars[10] = '\0';
+ *p++ = (char) ipc;
+
+ if((ipc = getc(stream)) == EOF)
+ break;
+
+ ++nread;
+
+ if((char) ipc != '+' && (char) ipc != '-')
+ continue;
+ }
+ else if((char) ipc == '.')
+ fchars[12] = '\0';
+
+ *p++ = (char) ipc;
+
+ if((ipc = getc(stream)) == EOF)
+ break;
+
+ ++nread;
+ }
+
+ *p++ = '\0';
+
+ val.d = strtod(buf, 0);
+
+ if(uflags & EVF_NEGATE)
+ val.d = -val.d;
+
+ fchars[10] = 'E';
+ fchars[12] = '.';
+
+ *(va_arg(ap, double *)) = val.d;
+
+ break;
+ }
+
+ if(fin)
+ break;
+
+ if(nread)
+ {
+ if(!(uflags & EVF_NOCON))
+ ++nconv;
+
+ ret = 0;
+ sum += nread;
+ }
+ else if(fch != 'n' || ipc == EOF)
+ break;
+
+ uflags = 0;
+ }
+ else if(fch == '%')
+ {
+ uflags = EVF_PERCENT;
+ base = 10;
+ nread = 0;
+ width = INT_MAX;
+ }
+ else if(isspace(fch))
+ {
+ do
+ {
+ ipc = getc(stream);
+ ++sum;
+ } while(isspace(ipc));
+
+ --sum;
+
+ if(ipc == EOF)
+ break;
+
+ ungetc(ipc, stream);
+ }
+ else
+ {
+ if((ipc = getc(stream)) == EOF)
+ break;
+
+ ++sum;
+
+ if(ipc != (int) fch)
+ break;
+ }
+
+ }
+
+ if((uflags & EVF_PERCENT) && nread)
+ {
+ if(!(uflags & EVF_NOCON))
+ ++nconv;
+
+ ret = 0;
+ }
+
+ if(ipc == EOF && nconv == 0)
+ return ret;
+
+
+ return nconv;
+ }
+
+
+
+
/* @funcstatic fmtVscan *******************************************************
**
** Scan a string according to fmt and load the va_list variable pointers
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajindex.c EMBOSS-6.4.0/ajax/core/ajindex.c
*** EMBOSS-6.4.0old/ajax/core/ajindex.c 2011-07-13 11:59:06.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajindex.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 650,655 ****
--- 650,659 ----
ajTablePut(btreeFieldsTable,
field->Name,
(void*) field);
+ field = btreeFieldNewField(&btreeFields[i]);
+ ajTablePut(btreeFieldsTable,
+ field->Extension,
+ (void*) field);
}
return;
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajnam.c EMBOSS-6.4.0/ajax/core/ajnam.c
*** EMBOSS-6.4.0old/ajax/core/ajnam.c 2011-07-15 08:15:37.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajnam.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 8172,8177 ****
--- 8172,8181 ----
AjBool hasmethod = ajFalse;
AjBool hastype = ajFalse;
AjPStr name = NULL;
+ AjPStr token = NULL;
+ AjPStr typetoken = NULL;
+ AjPStrTok handle = NULL;
+ AjPStrTok typehandle = NULL;
const AjPStr value = NULL;
const AjPStr dbtype = NULL;
***************
*** 8202,8210 ****
{
hasformat=ajTrue;
! if(!namInformatTest(value, dbtype)) /* test: dbunknowns.rc */
! namError("Database '%S' %S: '%S' unknown",
! entry->name, name, value);
}
if(ajStrPrefixC(name, "method"))
--- 8206,8227 ----
{
hasformat=ajTrue;
! ok = ajFalse;
! ajStrTokenAssignC(&typehandle, dbtype, " ,;");
! ajStrTokenAssignC(&handle, value, " ,;");
!
! while(ajStrTokenNextParse(&typehandle, &typetoken))
! {
! while(ajStrTokenNextParse(&handle, &token))
! {
! if(namInformatTest(token, typetoken))
! ok = ajTrue;
! }
! }
!
! if(!ok) /* test: dbunknowns.rc */
! namError("Database '%S' %S: '%S' unknown",
! entry->name, name, value);
}
if(ajStrPrefixC(name, "method"))
***************
*** 8221,8229 ****
hastype=ajTrue;
oktype = ajFalse;
! for(k=0; namDbTypes[k].Name; k++)
! if(ajStrMatchCaseC(value, namDbTypes[k].Name))
! oktype = ajTrue;
if(!oktype) /* test: dbunknowns.rc */
namError("Database '%S' %S: '%S' unknown",
--- 8238,8250 ----
hastype=ajTrue;
oktype = ajFalse;
! ajStrTokenAssignC(&typehandle, value, " ,;");
! while(ajStrTokenNextParse(&typehandle, &typetoken))
! {
! for(k=0; namDbTypes[k].Name; k++)
! if(ajStrMatchCaseC(typetoken, namDbTypes[k].Name))
! oktype = ajTrue;
! }
if(!oktype) /* test: dbunknowns.rc */
namError("Database '%S' %S: '%S' unknown",
***************
*** 8260,8265 ****
--- 8281,8290 ----
}
ajStrDel(&name);
+ ajStrTokenDel(&handle);
+ ajStrTokenDel(&typehandle);
+ ajStrDel(&token);
+ ajStrDel(&typetoken);
return ok;
}
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajnexus.c EMBOSS-6.4.0/ajax/core/ajnexus.c
*** EMBOSS-6.4.0old/ajax/core/ajnexus.c 2011-03-16 17:14:10.000000000 +0000
--- EMBOSS-6.4.0/ajax/core/ajnexus.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 2,24 ****
** @source AJAX nexus file parsing functions
**
** @author Copyright (C) 2003 Peter Rice
! ** @version 1.0
** @@
**
** This library is free software; you can redistribute it and/or
! ** modify it under the terms of the GNU Library General Public
** License as published by the Free Software Foundation; either
! ** version 2 of the License, or (at your option) any later version.
**
** This library is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
! ** Library General Public License for more details.
**
- ** You should have received a copy of the GNU Library General Public
- ** License along with this library; if not, write to the
- ** Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- ** Boston, MA 02111-1307, USA.
******************************************************************************/
#include "ajax.h"
--- 2,26 ----
** @source AJAX nexus file parsing functions
**
** @author Copyright (C) 2003 Peter Rice
! ** @version $Revision: 1.20 $
! ** @modified $Date: 2011/08/09 12:03:22 $ by $Author: rice $
** @@
**
** This library is free software; you can redistribute it and/or
! ** modify it under the terms of the GNU Lesser General Public
** License as published by the Free Software Foundation; either
! ** version 2.1 of the License, or (at your option) any later version.
**
** This library is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
! ** Lesser General Public License for more details.
! **
! ** You should have received a copy of the GNU Lesser General Public
! ** License along with this library; if not, write to the Free Software
! ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
! ** MA 02110-1301, USA.
**
******************************************************************************/
#include "ajax.h"
***************
*** 152,157 ****
--- 154,161 ----
**
** @param [u] buff [AjPFilebuff] Input buffered file
** @return [AjPNexus] Nexus data object
+ **
+ ** @release 2.8.0
** @@
******************************************************************************/
***************
*** 197,202 ****
--- 201,207 ----
if(!ajStrPrefixCaseC(rdline, "#NEXUS"))
{ /* first line test */
ajFilebuffReset(buff);
+ ajStrDel(&rdline);
return NULL;
}
***************
*** 205,211 ****
--- 210,219 ----
ok = ajBuffreadLine(buff, &rdline);
if(!ok)
+ {
+ ajStrDel(&rdline);
return NULL;
+ }
block = ajFalse;
commentlevel = 0;
***************
*** 254,260 ****
--- 262,272 ----
else if (block && ajRegExec(endexp, rdline)) /* end line */
{
if (!nexusBlockSave(ret, blocklist, blockname))
+ {
+ ajStrDel(&rdline);
+ ajStrDel(&blockname);
return NULL;
+ }
ajStrAssignClear(&blockname);
block = ajFalse;
***************
*** 266,274 ****
if (ajStrGetLen(rdline))
{
ajListstrPushAppend(blocklist, rdline);
}
-
- rdline = NULL;
}
ok = ajBuffreadLine(buff, &rdline);
--- 278,285 ----
if (ajStrGetLen(rdline))
{
ajListstrPushAppend(blocklist, rdline);
+ rdline = NULL;
}
}
ok = ajBuffreadLine(buff, &rdline);
***************
*** 277,287 ****
if (block)
{
ajDebug("ajNexusParse unclosed block '%S'\n", blockname);
!
return NULL;
}
ajNexusTrace(ret);
return ret;
}
--- 288,303 ----
if (block)
{
ajDebug("ajNexusParse unclosed block '%S'\n", blockname);
! ajStrDel(&rdline);
! ajStrDel(&blockname);
return NULL;
}
ajNexusTrace(ret);
+ ajStrDel(&rdline);
+ ajStrDel(&blockname);
+
+ ajListFree(&blocklist);
return ret;
}
***************
*** 295,300 ****
--- 311,318 ----
**
** @return [AjPNexus] New AjPNexus object
** @category new [AjPNexus] Default constructor
+ **
+ ** @release 2.8.0
******************************************************************************/
AjPNexus ajNexusNew(void)
***************
*** 309,320 ****
! /* @funcstatic nexusTaxaNew ***********************************************
**
** Constructor for AjPNexusTaxa
**
** @return [AjPNexusTaxa] New AjPNexusTaxa object
** @category new [AjPNexusTaxa] Default constructor
******************************************************************************/
static AjPNexusTaxa nexusTaxaNew(void)
--- 327,340 ----
! /* @funcstatic nexusTaxaNew ***************************************************
**
** Constructor for AjPNexusTaxa
**
** @return [AjPNexusTaxa] New AjPNexusTaxa object
** @category new [AjPNexusTaxa] Default constructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjPNexusTaxa nexusTaxaNew(void)
***************
*** 335,340 ****
--- 355,362 ----
**
** @return [AjPNexusCharacters] New AjPNexusCharacters object
** @category new [AjPNexusCharacters] Default constructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjPNexusCharacters nexusCharactersNew(void)
***************
*** 363,368 ****
--- 385,392 ----
**
** @return [AjPNexusUnaligned] New AjPNexusUnaligned object
** @category new [AjPNexusUnaligned] Default constructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjPNexusUnaligned nexusUnalignedNew(void)
***************
*** 389,394 ****
--- 413,420 ----
**
** @return [AjPNexusDistances] New AjPNexusDistances object
** @category new [AjPNexusDistances] Default constructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjPNexusDistances nexusDistancesNew(void)
***************
*** 409,420 ****
! /* @funcstatic nexusSetsNew ***********************************************
**
** Constructor for AjPNexusSets
**
** @return [AjPNexusSets] New AjPNexusSets object
** @category new [AjPNexusSets] Default constructor
******************************************************************************/
static AjPNexusSets nexusSetsNew(void)
--- 435,448 ----
! /* @funcstatic nexusSetsNew ***************************************************
**
** Constructor for AjPNexusSets
**
** @return [AjPNexusSets] New AjPNexusSets object
** @category new [AjPNexusSets] Default constructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjPNexusSets nexusSetsNew(void)
***************
*** 435,440 ****
--- 463,470 ----
**
** @return [AjPNexusAssumptions] New AjPNexusAssumptions object
** @category new [AjPNexusAssumptions] Default constructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjPNexusAssumptions nexusAssumptionsNew(void)
***************
*** 452,463 ****
! /* @funcstatic nexusCodonsNew ***********************************************
**
** Constructor for AjPNexusCodons
**
** @return [AjPNexusCodons] New AjPNexusCodons object
** @category new [AjPNexusCodons] Default constructor
******************************************************************************/
static AjPNexusCodons nexusCodonsNew(void)
--- 482,495 ----
! /* @funcstatic nexusCodonsNew *************************************************
**
** Constructor for AjPNexusCodons
**
** @return [AjPNexusCodons] New AjPNexusCodons object
** @category new [AjPNexusCodons] Default constructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjPNexusCodons nexusCodonsNew(void)
***************
*** 472,483 ****
! /* @funcstatic nexusTreesNew ***********************************************
**
** Constructor for AjPNexusTrees
**
** @return [AjPNexusTrees] New AjPNexusTrees object
** @category new [AjPNexusTrees] Default constructor
******************************************************************************/
static AjPNexusTrees nexusTreesNew(void)
--- 504,517 ----
! /* @funcstatic nexusTreesNew **************************************************
**
** Constructor for AjPNexusTrees
**
** @return [AjPNexusTrees] New AjPNexusTrees object
** @category new [AjPNexusTrees] Default constructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjPNexusTrees nexusTreesNew(void)
***************
*** 492,503 ****
! /* @funcstatic nexusNotesNew ***********************************************
**
** Constructor for AjPNexusNotes
**
** @return [AjPNexusNotes] New AjPNexusNotes object
** @category new [AjPNexusNotes] Default constructor
******************************************************************************/
static AjPNexusNotes nexusNotesNew(void)
--- 526,539 ----
! /* @funcstatic nexusNotesNew **************************************************
**
** Constructor for AjPNexusNotes
**
** @return [AjPNexusNotes] New AjPNexusNotes object
** @category new [AjPNexusNotes] Default constructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjPNexusNotes nexusNotesNew(void)
***************
*** 519,524 ****
--- 555,562 ----
** @param [d] pthys [AjPNexus*] AjPNexus object
** @return [void]
** @category delete [AjPNexus] Default destructor
+ **
+ ** @release 2.8.0
******************************************************************************/
void ajNexusDel(AjPNexus* pthys)
***************
*** 553,558 ****
--- 591,598 ----
** @param [d] pthys [AjPNexusTaxa*] AjPNexusTaxa object
** @return [void]
** @category delete [AjPNexusTaxa] Default destructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static void nexusTaxaDel(AjPNexusTaxa* pthys)
***************
*** 579,584 ****
--- 619,626 ----
** @param [d] pthys [AjPNexusCharacters*] AjPNexusCharacters object
** @return [void]
** @category delete [AjPNexusCharacters] Default destructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static void nexusCharactersDel(AjPNexusCharacters* pthys)
***************
*** 618,623 ****
--- 660,667 ----
** @param [d] pthys [AjPNexusUnaligned*] AjPNexusUnaligned object
** @return [void]
** @category delete [AjPNexusUnaligned] Default destructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static void nexusUnalignedDel(AjPNexusUnaligned* pthys)
***************
*** 650,655 ****
--- 694,701 ----
** @param [d] pthys [AjPNexusDistances*] AjPNexusDistances object
** @return [void]
** @category delete [AjPNexusDistances] Default destructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static void nexusDistancesDel(AjPNexusDistances* pthys)
***************
*** 680,685 ****
--- 726,733 ----
** @param [d] pthys [AjPNexusSets*] AjPNexusSets object
** @return [void]
** @category delete [AjPNexusSets] Default destructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static void nexusSetsDel(AjPNexusSets* pthys)
***************
*** 715,720 ****
--- 763,770 ----
** @param [d] pthys [AjPNexusAssumptions*] AjPNexuAssumptionss object
** @return [void]
** @category delete [AjPNexusAssumptions] Default destructor
+ **
+ ** @release 2.9.0
******************************************************************************/
static void nexusAssumptionsDel(AjPNexusAssumptions* pthys)
***************
*** 750,755 ****
--- 800,807 ----
** @param [d] pthys [AjPNexusCodons*] AjPNexusCodons object
** @return [void]
** @category delete [AjPNexusCodons] Default destructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static void nexusCodonsDel(AjPNexusCodons* pthys)
***************
*** 780,785 ****
--- 832,839 ----
** @param [d] pthys [AjPNexusTrees*] AjPNexusTrees object
** @return [void]
** @category delete [AjPNexusTrees] Default destructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static void nexusTreesDel(AjPNexusTrees* pthys)
***************
*** 802,814 ****
! /* @funcstatic nexusNotesDel ************************************************
**
** Destructor for AjPNexusNotes
**
** @param [d] pthys [AjPNexusNotes*] AjPNexusNotes object
** @return [void]
** @category delete [AjPNexusNotes] Default destructor
******************************************************************************/
static void nexusNotesDel(AjPNexusNotes* pthys)
--- 856,870 ----
! /* @funcstatic nexusNotesDel **************************************************
**
** Destructor for AjPNexusNotes
**
** @param [d] pthys [AjPNexusNotes*] AjPNexusNotes object
** @return [void]
** @category delete [AjPNexusNotes] Default destructor
+ **
+ ** @release 2.8.0
******************************************************************************/
static void nexusNotesDel(AjPNexusNotes* pthys)
***************
*** 841,846 ****
--- 897,904 ----
** @param [w] list [AjPList] List of block records
** @param [r] blockname [const AjPStr] Block name
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusBlockSave(AjPNexus thys, AjPList list,
***************
*** 905,911 ****
! /* @funcstatic nexusCommand ********************************************
**
** Finds the next command and command string in a block
**
--- 963,969 ----
! /* @funcstatic nexusCommand ***************************************************
**
** Finds the next command and command string in a block
**
***************
*** 913,918 ****
--- 971,978 ----
** @param [w] command [AjPStr*] Command name
** @param [w] cmdstr [AjPStr*] Command string
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusCommand(AjPList list, AjPStr* command, AjPStr* cmdstr)
***************
*** 944,949 ****
--- 1004,1011 ----
{
ajRegPre(endcommand, &tmpstr);
ajStrAssignS(cmdstr, tmpstr);
+ ajStrDel(&tmpstr);
+ ajStrDel(&rdline);
return ajTrue;
}
***************
*** 957,962 ****
--- 1019,1026 ----
{
ajRegPre(endcommand, &tmpstr);
ajStrAppendS(cmdstr, tmpstr);
+ ajStrDel(&tmpstr);
+ ajStrDel(&rdline);
return ajTrue;
}
***************
*** 970,988 ****
}
}
return ajFalse;
}
! /* @funcstatic nexusParseTaxa ********************************************
**
** Parses Nexus commands for a Taxa block
**
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
******************************************************************************/
static AjBool nexusParseTaxa(AjPNexus thys, AjPList list)
--- 1034,1056 ----
}
}
+ ajStrDel(&rdline);
+
return ajFalse;
}
! /* @funcstatic nexusParseTaxa *************************************************
**
** Parses Nexus commands for a Taxa block
**
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusParseTaxa(AjPNexus thys, AjPList list)
***************
*** 1024,1029 ****
--- 1092,1099 ----
if (!thys->Taxa->Ntax)
{
ajDebug("nexusParseTaxa failed: dimension Ntax not found\n");
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
return ajFalse;
}
***************
*** 1034,1045 ****
--- 1104,1120 ----
{
ajDebug("nexusParseTaxa failed: Ntax %d read %d TaxLabels\n",
thys->Taxa->Ntax, i);
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
return ajFalse;
}
}
}
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
+
if (!thys->Taxa->Ntax)
{
ajDebug("nexusParseTaxa failed: taxa data not found\n");
***************
*** 1061,1066 ****
--- 1136,1143 ----
** @param [u] list [AjPList] List of block records
** @param [r] newtaxa [AjBool] If true, set NewTaxa
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusParseCharacters(AjPNexus thys, AjPList list, AjBool newtaxa)
***************
*** 1145,1150 ****
--- 1222,1229 ----
if(!nexusGetInt(cmdstr, dimexp3, 1, &thys->Characters->Nchar))
{
ajDebug("nexusParseCharacters failed: nchar undefined\n");
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
return ajFalse;
}
}
***************
*** 1197,1202 ****
--- 1276,1283 ----
ajDebug("nexusParseCharacters "
"failed: Ntax %d read %d TaxLabels\n",
thys->Taxa->Ntax, i);
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
return ajFalse;
}
***************
*** 1238,1243 ****
--- 1319,1327 ----
}
}
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
+
if (!thys->Characters->Nchar)
{
ajDebug("nexusParseCharacters failed: dimension nchar undefined\n");
***************
*** 1258,1263 ****
--- 1342,1349 ----
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusParseUnaligned(AjPNexus thys, AjPList list)
***************
*** 1336,1341 ****
--- 1422,1430 ----
}
}
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
+
return ajTrue;
}
***************
*** 1349,1354 ****
--- 1438,1445 ----
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusParseDistances(AjPNexus thys, AjPList list)
***************
*** 1447,1465 ****
}
}
return ajTrue;
}
! /* @funcstatic nexusParseSets ********************************************
**
** Parses Nexus commands for a Sets block
**
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
******************************************************************************/
static AjBool nexusParseSets(AjPNexus thys, AjPList list)
--- 1538,1561 ----
}
}
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
+
return ajTrue;
}
! /* @funcstatic nexusParseSets *************************************************
**
** Parses Nexus commands for a Sets block
**
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusParseSets(AjPNexus thys, AjPList list)
***************
*** 1505,1510 ****
--- 1601,1609 ----
}
}
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
+
return ajTrue;
}
***************
*** 1518,1523 ****
--- 1617,1624 ----
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusParseAssumptions(AjPNexus thys, AjPList list)
***************
*** 1594,1612 ****
}
}
return ajTrue;
}
! /* @funcstatic nexusParseCodons ********************************************
**
** Parses Nexus commands for a Codons block
**
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
******************************************************************************/
static AjBool nexusParseCodons(AjPNexus thys, AjPList list)
--- 1695,1718 ----
}
}
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
+
return ajTrue;
}
! /* @funcstatic nexusParseCodons ***********************************************
**
** Parses Nexus commands for a Codons block
**
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusParseCodons(AjPNexus thys, AjPList list)
***************
*** 1640,1658 ****
}
}
return ajTrue;
}
! /* @funcstatic nexusParseTrees ********************************************
**
** Parses Nexus commands for a Trees block
**
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
******************************************************************************/
static AjBool nexusParseTrees(AjPNexus thys, AjPList list)
--- 1746,1769 ----
}
}
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
+
return ajTrue;
}
! /* @funcstatic nexusParseTrees ************************************************
**
** Parses Nexus commands for a Trees block
**
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusParseTrees(AjPNexus thys, AjPList list)
***************
*** 1681,1699 ****
}
}
return ajTrue;
}
! /* @funcstatic nexusParseNotes ********************************************
**
** Parses Nexus commands for a Notes block
**
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
******************************************************************************/
static AjBool nexusParseNotes(AjPNexus thys, AjPList list)
--- 1792,1815 ----
}
}
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
+
return ajTrue;
}
! /* @funcstatic nexusParseNotes ************************************************
**
** Parses Nexus commands for a Notes block
**
** @param [w] thys [AjPNexus] Nexus object
** @param [u] list [AjPList] List of block records
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusParseNotes(AjPNexus thys, AjPList list)
***************
*** 1722,1727 ****
--- 1838,1846 ----
}
}
+ ajStrDel(&command);
+ ajStrDel(&cmdstr);
+
return ajTrue;
}
***************
*** 1737,1742 ****
--- 1856,1863 ----
** @param [u] exp [AjPRegexp] Compiled regular expression for parsing
** @param [w] dest [AjPStr**] Array generated
** @return [ajint] Number of strings returned
+ **
+ ** @release 2.8.0
******************************************************************************/
static ajint nexusGetArray(AjPStr src, AjPRegexp exp,
***************
*** 1779,1784 ****
--- 1900,1907 ----
** @param [r] isub [ajint] Substring number to extract
** @param [w] dest [AjPStr*] String generated
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusGetStr(AjPStr src, AjPRegexp exp, ajint isub, AjPStr* dest)
***************
*** 1805,1810 ****
--- 1928,1935 ----
** @param [r] isub [ajint] Substring number to extract
** @param [w] dest [char*] String generated
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusGetChar(AjPStr src, AjPRegexp exp, ajint isub, char* dest)
***************
*** 1841,1846 ****
--- 1966,1973 ----
** @param [r] isub [ajint] Substring number to extract
** @param [w] dest [ajuint*] Integer generated
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusGetInt(AjPStr src, AjPRegexp exp, ajint isub, ajuint* dest)
***************
*** 1860,1866 ****
! /* @funcstatic nexusGetBool **************************************************
**
** Sets a nexus bool from a parsed nexus command in the form [no]name.
** We know name is found, we test for the "no" part.
--- 1987,1993 ----
! /* @funcstatic nexusGetBool ***************************************************
**
** Sets a nexus bool from a parsed nexus command in the form [no]name.
** We know name is found, we test for the "no" part.
***************
*** 1870,1875 ****
--- 1997,2004 ----
** @param [r] isub [ajint] Substring number to extract
** @param [w] dest [AjBool*] Boolean generated
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusGetBool(AjPStr src, AjPRegexp exp, ajint isub, AjBool* dest)
***************
*** 1893,1899 ****
! /* @funcstatic nexusVocab ***************************************************
**
** Tests a string against a controlled vocabulary
**
--- 2022,2028 ----
! /* @funcstatic nexusVocab *****************************************************
**
** Tests a string against a controlled vocabulary
**
***************
*** 1901,1906 ****
--- 2030,2037 ----
** @param [r] src [const AjPStr] String to be tested
** @param [r] vocab [const char* []] List of known values, ending in a NULL
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusVocab(const char* title, const AjPStr src,
***************
*** 1927,1932 ****
--- 2058,2065 ----
**
** @param [r] thys [const AjPNexus] nexus object
** @return [void]
+ **
+ ** @release 2.8.0
******************************************************************************/
void ajNexusTrace(const AjPNexus thys)
***************
*** 2430,2435 ****
--- 2563,2570 ----
**
** @param [r] thys [const AjPNexus] Nexus object
** @return [AjPStr*] taxa string array, NULL terminated, read only
+ **
+ ** @release 2.8.0
******************************************************************************/
AjPStr* ajNexusGetTaxa(const AjPNexus thys)
***************
*** 2452,2457 ****
--- 2587,2594 ----
**
** @param [r] thys [const AjPNexus] Nexus object
** @return [ajuint] Number of taxa
+ **
+ ** @release 2.8.0
** @@
******************************************************************************/
***************
*** 2478,2483 ****
--- 2615,2622 ----
**
** @param [u] thys [AjPNexus] Nexus object
** @return [AjPStr*] taxa string array, NULL terminated, read only
+ **
+ ** @release 2.8.0
******************************************************************************/
AjPStr* ajNexusGetSequences(AjPNexus thys)
***************
*** 2502,2507 ****
--- 2641,2648 ----
**
** @param [u] thys [AjPNexus] Nexus object
** @return [AjBool] ajTrue on success
+ **
+ ** @release 2.8.0
******************************************************************************/
static AjBool nexusSetSequences(AjPNexus thys)
***************
*** 2591,2597 ****
for (i=0; thys->Taxa->TaxLabels[i]; i++)
{
! seqstr = ajStrNewRes(thys->Characters->Nchar+1);
ajTablePut(seqtab, thys->Taxa->TaxLabels[i], seqstr);
seqstr = NULL;
}
--- 2732,2738 ----
for (i=0; thys->Taxa->TaxLabels[i]; i++)
{
! seqstr = ajStrNewRes(thys->Characters->Nchar+1);
ajTablePut(seqtab, thys->Taxa->TaxLabels[i], seqstr);
seqstr = NULL;
}
***************
*** 2599,2604 ****
--- 2740,2746 ----
else
{
AJCNEW0(thys->Taxa->TaxLabels, (thys->Ntax+1));
+ ajDebug("thys->Taxa->TaxLabels 0..%u\n", (thys->Ntax+1));
}
taxlabel = NULL;
***************
*** 2609,2614 ****
--- 2751,2757 ----
ajStrAssignS(&rdline, thys->Characters->Matrix[i]);
ajStrRemoveWhiteExcess(&rdline);
+ ajDebug("rdline: '%S'\n", rdline);
if (!taxlabel || thys->Characters->Interleave ||
(ajStrGetLen(seqstr) >= thys->Characters->Nchar))
{ /* next tax label */
***************
*** 2617,2629 ****
--- 2760,2782 ----
ajRegSubI(word, 0, &taxlabel);
ajRegPost(word, &tmpstr);
+ ajDebug("taxlabel '%S' rest '%S'\n", taxlabel, tmpstr);
ajStrAssignS(&rdline, tmpstr);
ajStrQuoteStripAll(&taxlabel);
+ ajDebug("unquoted taxlabel %p '%S'\n", taxlabel, taxlabel);
if (!havetaxa)
{
+ ajDebug("ajTablePut itax.%u label %p '%S'\n",
+ itax,
+ thys->Taxa->TaxLabels[itax],
+ thys->Taxa->TaxLabels[itax]);
ajStrAssignS(&thys->Taxa->TaxLabels[itax], taxlabel);
seqstr = ajStrNewRes(thys->Characters->Nchar+1);
+ ajDebug("ajTablePut itax %u label %p '%S'\n",
+ itax,
+ thys->Taxa->TaxLabels[itax],
+ thys->Taxa->TaxLabels[itax]);
ajTablePut(seqtab, thys->Taxa->TaxLabels[itax], seqstr);
seqstr = NULL;
itax++;
***************
*** 2631,2638 ****
--- 2784,2793 ----
havetaxa = ajTrue;
}
+ ajDebug("havetaxa: %B taxlabel '%S'\n", havetaxa, taxlabel);
seqstr = ajTableFetchmodS(seqtab, taxlabel);
+ ajDebug("seqstr '%S'\n", seqstr);
if (!seqstr)
{
ajErr("Unknown taxon '%S' in nexus data", taxlabel);
***************
*** 2650,2661 ****
{
ajRegSubI(word, 0, &tmpstr);
ajStrAppendS(&seqstr, tmpstr);
- ajTablePut(seqtab, taxlabel, seqstr); /* just to make sure */
ajRegPost(word, &tmpstr);
ajStrAssignS(&rdline, tmpstr);
}
ajStrExchangeKK(&seqstr, gapch, '-');
}
ajRegFree(&word);
--- 2805,2816 ----
{
ajRegSubI(word, 0, &tmpstr);
ajStrAppendS(&seqstr, tmpstr);
ajRegPost(word, &tmpstr);
ajStrAssignS(&rdline, tmpstr);
}
ajStrExchangeKK(&seqstr, gapch, '-');
+ ajDebug("seqstr updated '%S'\n", seqstr);
}
ajRegFree(&word);
***************
*** 2683,2688 ****
--- 2838,2845 ----
}
ajTableFree(&seqtab);
+ ajStrDel(&firstseq);
+ ajStrDel(&taxlabel);
return ajTrue;
}
***************
*** 2700,2705 ****
--- 2857,2864 ----
** @param [d] pthis [AjPStr**] Pointer to the string array to be deleted.
** The pointer is always deleted.
** @return [void]
+ **
+ ** @release 4.0.0
** @@
******************************************************************************/
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajpat.c EMBOSS-6.4.0/ajax/core/ajpat.c
*** EMBOSS-6.4.0old/ajax/core/ajpat.c 2010-04-14 09:04:16.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajpat.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 752,757 ****
--- 752,759 ----
default:
mismreg = ajRegCompC("<mismatch=(\\d+)>");
+ mismatch=mismatches; /* set for first pattern */
+
while (ajBuffreadLineTrim(infile,&line))
{
if (ajStrGetCharFirst(line) == '>')
***************
*** 762,768 ****
mismatch);
ajStrSetClear(&name);
ajStrSetClear(&pat);
! mismatch=mismatches;
}
ajStrCutStart(&line,1);
--- 764,770 ----
mismatch);
ajStrSetClear(&name);
ajStrSetClear(&pat);
! mismatch=mismatches; /* reset for next pattern */
}
ajStrCutStart(&line,1);
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajquery.c EMBOSS-6.4.0/ajax/core/ajquery.c
*** EMBOSS-6.4.0old/ajax/core/ajquery.c 2011-07-03 12:39:13.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajquery.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 1609,1615 ****
--- 1609,1622 ----
fmtstat = ajRegExec(queryRegFmt, *Pqry);
if(!fmtstat)
+ {
+ if(ajStrGetLen(textin->Formatstr))
+ {
+ if(findformat(textin->Formatstr, &textin->Format))
+ ajStrAssignS(&qry->Formatstr, textin->Formatstr);
+ }
return NULL;
+ }
ajRegSubI(queryRegFmt, 1, &queryFormat);
ajRegSubI(queryRegFmt, 2, Pqry);
***************
*** 2716,2730 ****
ajDebug("ajQueryAddFieldOrC.i '%s' '%S'\n",
"id", qrystring);
! ajQueryAddFieldElseC(qry, "acc",
! MAJSTRGETPTR(qrystring));
! ajDebug("ajQueryAddFieldElseC.i '%s' '%S'\n",
! "acc", qrystring);
! ajQueryAddFieldElseC(qry, "sv",
! MAJSTRGETPTR(qrystring));
! ajDebug("ajQueryAddFieldElseC.i '%s' '%S'\n",
! "sv", qrystring);
}
ajStrAssignS(&lastoper, operstr);
ajStrTrimWhite(&lastoper);
--- 2723,2743 ----
ajDebug("ajQueryAddFieldOrC.i '%s' '%S'\n",
"id", qrystring);
! if(qry->HasAcc && ajQueryKnownFieldC(qry, "acc"))
! {
! ajQueryAddFieldElseC(qry, "acc",
! MAJSTRGETPTR(qrystring));
! ajDebug("ajQueryAddFieldElseC.i '%s' '%S'\n",
! "acc", qrystring);
! }
! if(ajQueryKnownFieldC(qry, "sv"))
! {
! ajQueryAddFieldElseC(qry, "sv",
! MAJSTRGETPTR(qrystring));
! ajDebug("ajQueryAddFieldElseC.i '%s' '%S'\n",
! "sv", qrystring);
! }
}
ajStrAssignS(&lastoper, operstr);
ajStrTrimWhite(&lastoper);
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajrange.c EMBOSS-6.4.0/ajax/core/ajrange.c
*** EMBOSS-6.4.0old/ajax/core/ajrange.c 2010-05-21 11:54:40.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajrange.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 179,185 ****
ajuint minsize, ajuint size)
{
AjPRange ret = NULL;
! AjPFile infile;
AjPStr line = NULL;
char whiteSpace[] = " \t\n\r";
char notSpace[] = "\n\r";
--- 179,185 ----
ajuint minsize, ajuint size)
{
AjPRange ret = NULL;
! AjPFile infile = NULL;
AjPStr line = NULL;
char whiteSpace[] = " \t\n\r";
char notSpace[] = "\n\r";
***************
*** 189,197 ****
ajuint numone;
ajuint numtwo;
! AjPStr one;
! AjPStr two;
! AjPStr text;
AjPList onelist;
AjPList twolist;
--- 189,197 ----
ajuint numone;
ajuint numtwo;
! AjPStr one = NULL;
! AjPStr two = NULL;
! AjPStr text = NULL;
AjPList onelist;
AjPList twolist;
***************
*** 229,241 ****
one = ajStrNew();
ajStrTokenNextParse(&tokens, &one);
ajListstrPushAppend(onelist, one);
two = ajStrNew();
ajStrTokenNextParse(&tokens, &two);
if(ajStrGetLen(two))
! ajListstrPushAppend(twolist, two);
! else
{
ajWarn("Odd integer(s) in range specification:\n%S\n", line);
--- 229,245 ----
one = ajStrNew();
ajStrTokenNextParse(&tokens, &one);
ajListstrPushAppend(onelist, one);
+ one = NULL;
two = ajStrNew();
ajStrTokenNextParse(&tokens, &two);
if(ajStrGetLen(two))
! {
! ajListstrPushAppend(twolist, two);
! two = NULL;
! }
! else
{
ajWarn("Odd integer(s) in range specification:\n%S\n", line);
***************
*** 247,256 ****
--- 251,264 ----
ajStrTokenNextParseC(&tokens, notSpace, &text);
ajStrTrimWhite(&text);
ajListstrPushAppend(textlist, text);
+ text = NULL;
ajStrTokenDel( &tokens);
}
+ ajFileClose(&infile);
+ ajStrDel(&line);
+
/* now we know how many pairs of numbers to store, create ajRange object */
n = ajListstrGetLength(onelist);
if(size)
***************
*** 331,336 ****
--- 339,345 ----
/* do the text */
ajListstrPop(textlist, &text);
ret->text[k] = text;
+ text = NULL;
}
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajreport.c EMBOSS-6.4.0/ajax/core/ajreport.c
*** EMBOSS-6.4.0old/ajax/core/ajreport.c 2011-07-08 15:54:59.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajreport.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 677,682 ****
--- 677,684 ----
istart = feature->Start;
iend = feature->End;
ilen = iend - istart + 1;
+ if(ilen == 2 && (feature->Flags & FEATFLAG_BETWEEN_SEQ))
+ ilen = 0;
ajStrAssignSubS(&subseq, seqalias, istart-1, iend-1);
/* ajStrFmtUpper(&subseq); */
i++;
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajseqabi.c EMBOSS-6.4.0/ajax/core/ajseqabi.c
*** EMBOSS-6.4.0old/ajax/core/ajseqabi.c 2011-05-19 11:28:09.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajseqabi.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 181,186 ****
--- 181,187 ----
*machine = ajStrNewRes(l+1);
ajReadbinBinary(fp,1,l,(void*)ajStrGetuniquePtr(machine));
*(ajStrGetuniquePtr(machine)+l)='\0';
+ ajStrSetValid(machine);
}
else
return ajFalse;
***************
*** 961,966 ****
--- 962,968 ----
*sample = ajStrNewRes(l+1);
ajReadbinBinary(fp,1,l,(void*)ajStrGetuniquePtr(sample));
*(ajStrGetuniquePtr(sample)+l)='\0';
+ ajStrSetValid(sample);
}
return ajTrue;
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/core/ajseqread.c EMBOSS-6.4.0/ajax/core/ajseqread.c
*** EMBOSS-6.4.0old/ajax/core/ajseqread.c 2011-06-27 08:38:44.000000000 +0100
--- EMBOSS-6.4.0/ajax/core/ajseqread.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 5497,5502 ****
--- 5497,5503 ----
static AjBool seqReadRaw(AjPSeq thys, AjPSeqin seqin)
{
AjPFilebuff buff;
+ const char* cp;
AjPFile fp;
AjBool ok = ajFalse;
ajulong filestat = 0L;
***************
*** 5506,5588 ****
AjPStr buf = NULL;
char *cbuf;
AjPStr tmpseq = NULL;
!
! if(!seqRegRawNonseq)
! seqRegRawNonseq = ajRegCompC("[^A-Za-z0-9 \t\n\r*-]");
buff = seqin->Input->Filebuff;
fp = ajFilebuffGetFile(buff);
! ajDebug("seqReadRaw\n");
if(ajFilebuffIsEnded(buff))
return ajFalse;
! buf = ajStrNewRes(4096);
! ajStrSetValidLen(&buf, inc);
! cbuf = ajStrGetuniquePtr(&buf);
!
! filestat = ajFileSeek(fp, 0L, SEEK_END);
! filesize = ajFileResetPos(fp);
! filestat = ajFileSeek(fp, (ajlong) filestat, 0);
! ok = ajTrue;
! for(i=0; i < filesize; i += inc)
{
! if((i+inc) > filesize)
{
! inc = (ajuint) (filesize - i);
! ajStrSetValidLen(&buf, inc);
}
! ajReadbinBinary(fp, inc, 1, cbuf);
! cbuf[inc] = '\0';
! if(strlen(cbuf) != inc)
{
! ajDebug("seqReadRaw: Null character found in line: %s\n",
! cbuf);
! ok = ajFalse;
! break;
}
! if(ajRegExec(seqRegRawNonseq, buf))
! {
! ajDebug("seqReadRaw: Bad character found in line: %s\n",
! cbuf);
! ok = ajFalse;
! break;
! }
! ajStrAssignC(&tmpseq, cbuf);
! if(seqin->Input->Text)
! ajStrAppendS(&thys->TextPtr, tmpseq);
! seqAppend(&thys->Seq, tmpseq);
! seqin->Input->Records++;
! ajDebug("read %d lines\n", seqin->Input->Records);
! }
! ajStrDel(&buf);
! ajStrDel(&tmpseq);
! if(!ok)
! {
! ajFileSeek(fp,(ajlong) filestat,0);
! if(seqin->Input->Text)
! ajStrAssignC(&thys->TextPtr, "");
- ajFilebuffResetPos(buff);
- return ajFalse;
}
ajFilebuffClear(buff, -1);
buff->File->End=ajTrue;
return ajTrue;
}
--- 5507,5645 ----
AjPStr buf = NULL;
char *cbuf;
AjPStr tmpseq = NULL;
! size_t iread;
!
! ajDebug("seqReadRaw\n");
buff = seqin->Input->Filebuff;
fp = ajFilebuffGetFile(buff);
! if(!seqRegRawNonseq)
! seqRegRawNonseq = ajRegCompC("[^A-Za-z0-9 \t\n\r*-]");
if(ajFilebuffIsEnded(buff))
return ajFalse;
! filestat = ajFileSeek(fp, 0L, SEEK_CUR);
! if(filestat)
! {
! /* not a file - cannot use binary, so we can only read the buffer */
! while(ajBuffreadLineStore(buff, &seqReadLine,
! seqin->Input->Text, &thys->TextPtr))
! {
! ajDebug("read '%S'\n", seqReadLine);
!
! cp = ajStrGetPtr(seqReadLine);
! if(strlen(cp) != ajStrGetLen(seqReadLine))
! {
! ajDebug("seqReadRaw: Null character found in line: %S\n",
! seqReadLine);
! ajFilebuffResetStore(buff, seqin->Input->Text, &thys->TextPtr);
! ajStrAssignClear(&thys->Seq);
!
! return ajFalse;
! }
!
! if(ajRegExec(seqRegRawNonseq, seqReadLine))
! {
! ajDebug("seqReadRaw: Bad character found in line: %S\n",
! seqReadLine);
! ajFilebuffResetStore(buff, seqin->Input->Text, &thys->TextPtr);
! ajStrAssignClear(&thys->Seq);
! return ajFalse;
! }
! seqAppend(&thys->Seq, seqReadLine);
! seqin->Input->Records++;
! ajDebug("read %d lines\n", seqin->Input->Records);
! }
! }
! else
{
! if(ajFilebuffIsEnded(buff))
{
! ajFileSeek(fp, 0L, SEEK_END);
! return ajFalse;
}
! buf = ajStrNewRes(4096);
! ajStrSetValidLen(&buf, inc);
! cbuf = ajStrGetuniquePtr(&buf);
! filestat = ajFileSeek(fp, 0L, SEEK_END);
! filesize = ajFileResetPos(fp);
! filestat = ajFileSeek(fp, 0L, SEEK_SET);
!
! if(!filesize)
{
! ajFileSeek(fp,(ajlong) filesize, SEEK_SET);
! return ajFalse;
}
+
+ ok = ajTrue;
! for(i=0; i < filesize; i += inc)
! {
! if((i+inc) > filesize)
! {
! inc = (ajuint) (filesize - i);
! ajStrSetValidLen(&buf, inc);
! }
!
! iread = ajReadbinBinary(fp, inc, 1, cbuf);
! cbuf[inc] = '\0';
! if(strlen(cbuf) != iread)
! {
! ajDebug("seqReadRaw: Null character found in line: %s\n",
! cbuf);
! ok = ajFalse;
! break;
! }
! if(ajRegExec(seqRegRawNonseq, buf))
! {
! ajDebug("seqReadRaw: Bad character found in line: %S\n",
! seqReadLine);
! ok = ajFalse;
! break;
! }
! ajStrAssignC(&tmpseq, cbuf);
! if(seqin->Input->Text)
! ajStrAppendS(&thys->TextPtr, tmpseq);
! seqAppend(&thys->Seq, tmpseq);
! seqin->Input->Records++;
! ajDebug("read %d lines\n", seqin->Input->Records);
! }
! ajStrDel(&buf);
! ajStrDel(&tmpseq);
!
! if(!ok)
! {
! ajFileSeek(fp,(ajlong) filestat,0);
!
! if(seqin->Input->Text)
! ajStrAssignC(&thys->TextPtr, "");
!
! ajFilebuffResetPos(buff);
!
! return ajFalse;
! }
}
ajFilebuffClear(buff, -1);
buff->File->End=ajTrue;
+ if(!seqin->Input->Records)
+ return ajFalse;
+
return ajTrue;
}
***************
*** 7898,7903 ****
--- 7955,7961 ----
ajuint j;
AjPFilebuff buff;
AjPStr* seqs = NULL;
+ AjPStr* names = NULL;
AjPNexus nexus = NULL;
SeqPMsfData phydata = NULL;
***************
*** 7953,7960 ****
seqs = ajNexusGetTaxa(phydata->Nexus);
phydata->Names = AJCALLOC(phydata->Nseq, sizeof(*phydata->Names));
! for(j=0;j<phydata->Nseq;j++)
! ajStrAssignS(&phydata->Names[j], seqs[j]);
seqin->SeqData = phydata;
ajDebug("Nexus parsed %d sequences\n", phydata->Nseq);
--- 8011,8021 ----
seqs = ajNexusGetTaxa(phydata->Nexus);
phydata->Names = AJCALLOC(phydata->Nseq, sizeof(*phydata->Names));
! if(seqs)
! {
! for(j=0;j<phydata->Nseq;j++)
! ajStrAssignS(&phydata->Names[j], seqs[j]);
! }
seqin->SeqData = phydata;
ajDebug("Nexus parsed %d sequences\n", phydata->Nseq);
***************
*** 7974,7995 ****
return ajFalse;
}
! if (!phydata->Names) /* finally set from the sequences */
! {
! seqs = ajNexusGetTaxa(phydata->Nexus);
phydata->Names = AJCALLOC(phydata->Nseq, sizeof(*phydata->Names));
for(j=0;j<phydata->Nseq;j++)
! ajStrAssignS(&phydata->Names[j], seqs[j]);
}
ajDebug("returning [%d] '%S'\n", i, phydata->Names[i]);
ajStrAssignS(&thys->Name, phydata->Names[i]);
- thys->Weight = 1.0;
- ajStrAssignS(&thys->Seq, seqs[i]);
-
phydata->Count++;
if(phydata->Count >= phydata->Nseq)
--- 8035,8057 ----
return ajFalse;
}
! thys->Weight = 1.0;
! ajStrAssignS(&thys->Seq, seqs[i]);
!
! if (!phydata->Names)
phydata->Names = AJCALLOC(phydata->Nseq, sizeof(*phydata->Names));
+ if (!phydata->Names[0]) /* finally set from the sequences */
+ {
+ names = ajNexusGetTaxa(phydata->Nexus);
for(j=0;j<phydata->Nseq;j++)
! ajStrAssignS(&phydata->Names[j], names[j]);
}
ajDebug("returning [%d] '%S'\n", i, phydata->Names[i]);
ajStrAssignS(&thys->Name, phydata->Names[i]);
phydata->Count++;
if(phydata->Count >= phydata->Nseq)
***************
*** 13827,13833 ****
ajStrAssignC(&seqFtFmtGff, "gff3");
if(!seqRegGff3Typ)
! seqRegGff3Typ = ajRegCompC("^#!(.*)");
ok = ajBuffreadLineStore(buff, &seqReadLine,
seqin->Input->Text, &thys->TextPtr);
--- 13889,13895 ----
ajStrAssignC(&seqFtFmtGff, "gff3");
if(!seqRegGff3Typ)
! seqRegGff3Typ = ajRegCompC("^#!Type (.*)");
ok = ajBuffreadLineStore(buff, &seqReadLine,
seqin->Input->Text, &thys->TextPtr);
***************
*** 13885,13891 ****
if(ajRegExec(seqRegGff3Typ, seqReadLine))
{
! ajFmtPrintS(&outstr, "%S\n", seqReadLine);
}
ok = ajBuffreadLineStore(buff, &seqReadLine,
--- 13947,13954 ----
if(ajRegExec(seqRegGff3Typ, seqReadLine))
{
! ajRegSubI(seqRegGff3Typ, 1, &typstr);
! ajFmtPrintS(&outstr, "#!Type %S", typstr);
}
ok = ajBuffreadLineStore(buff, &seqReadLine,
***************
*** 13966,13972 ****
ajFeattabinDel(&seqin->Ftquery);
seqin->Ftquery = ajFeattabinNewSSF(seqFtFmtGff, thys->Name,
ajStrGetPtr(seqin->Type), ftfile);
! ajDebug("GFF FEAT TabIn %x\n", seqin->Ftquery);
ftfile = NULL;
ajFeattableDel(&seqin->Fttable);
ajFeattableDel(&thys->Fttable);
--- 14029,14035 ----
ajFeattabinDel(&seqin->Ftquery);
seqin->Ftquery = ajFeattabinNewSSF(seqFtFmtGff, thys->Name,
ajStrGetPtr(seqin->Type), ftfile);
! ajDebug("GFF3 FEAT TabIn %x\n", seqin->Ftquery);
ftfile = NULL;
ajFeattableDel(&seqin->Fttable);
ajFeattableDel(&thys->Fttable);
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/ensembl/ensdatabaseadaptor.c EMBOSS-6.4.0/ajax/ensembl/ensdatabaseadaptor.c
*** EMBOSS-6.4.0old/ajax/ensembl/ensdatabaseadaptor.c 2011-07-06 22:50:28.000000000 +0100
--- EMBOSS-6.4.0/ajax/ensembl/ensdatabaseadaptor.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 156,163 ****
** @argrule Ini dbc [EnsPDatabaseconnection] Ensembl Database Connection
** @argrule Ini database [AjPStr] Database name
** @argrule Ini species [AjPStr] Species
! ** @argrule Ini dbag [EnsEDatabaseadaptorGroup] Ensembl Database Adaptor Group
! ** enumeration
** @argrule Ini multi [AjBool] Multiple species
** @argrule Ini identifier [ajuint] Species identifier
** @argrule Url url [const AjPStr] Uniform Resource Locator
--- 156,163 ----
** @argrule Ini dbc [EnsPDatabaseconnection] Ensembl Database Connection
** @argrule Ini database [AjPStr] Database name
** @argrule Ini species [AjPStr] Species
! ** @argrule Ini dbag [EnsEDatabaseadaptorGroup]
! ** Ensembl Database Adaptor Group enumeration
** @argrule Ini multi [AjBool] Multiple species
** @argrule Ini identifier [ajuint] Species identifier
** @argrule Url url [const AjPStr] Uniform Resource Locator
***************
*** 239,245 ****
return NULL;
collectionre =
! ajRegCompC("^\\w+_collection_([a-z]+)(?:_\\d+)?_(\\d+)_\\w+");
multire =
ajRegCompC("^ensembl_([a-z]+)(_\\w+?)*?(?:_\\d+)?_(\\d+)$");
--- 239,245 ----
return NULL;
collectionre =
! ajRegCompC("^(\\w+)_collection_([a-z]+)(?:_\\d+)?_(\\d+)_\\w+");
multire =
ajRegCompC("^ensembl_([a-z]+)(_\\w+?)*?(?:_\\d+)?_(\\d+)$");
***************
*** 254,263 ****
/* Ensembl Collection databases have to be matched first. */
group = ajStrNew();
swversion = ajStrNew();
! ajRegSubI(collectionre, 1, &group);
! ajRegSubI(collectionre, 2, &swversion);
if(ajStrMatchCaseC(swversion, ensSoftwareVersion))
{
--- 254,265 ----
/* Ensembl Collection databases have to be matched first. */
group = ajStrNew();
+ prefix = ajStrNew();
swversion = ajStrNew();
! ajRegSubI(collectionre, 1, &prefix);
! ajRegSubI(collectionre, 2, &group);
! ajRegSubI(collectionre, 3, &swversion);
if(ajStrMatchCaseC(swversion, ensSoftwareVersion))
{
***************
*** 290,295 ****
--- 292,298 ----
}
ajStrDel(&group);
+ ajStrDel(&prefix);
ajStrDel(&swversion);
}
else if(ajRegExec(multire, database))
***************
*** 417,422 ****
--- 420,428 ----
**
** Constructor for an Ensembl Database Adaptor with initial values.
**
+ ** If a database name has not been provided, the database name of the
+ ** Ensembl Database Connection will be used.
+ **
** Ensembl Database Adaptors are singleton objects in the sense that a single
** instance of an Ensembl Database Adaptor connected to a particular database
** is sufficient to instantiate any number of Ensembl Object Adaptors from the
***************
*** 430,441 ****
**
** @cc Bio::EnsEMBL::DBSQL::DBAdaptor::new
** @param [u] dbc [EnsPDatabaseconnection] Ensembl Database Connection
! ** @param [u] database [AjPStr] Database name (optional). If not provided, the
! ** database name in the Database Connection will
! ** be used.
** @param [u] species [AjPStr] Species
! ** @param [u] dbag [EnsEDatabaseadaptorGroup] Ensembl Database Adaptor Group
! ** enumeration
** @param [r] multi [AjBool] Multiple species
** @param [r] identifier [ajuint] Species identifier
**
--- 436,445 ----
**
** @cc Bio::EnsEMBL::DBSQL::DBAdaptor::new
** @param [u] dbc [EnsPDatabaseconnection] Ensembl Database Connection
! ** @param [uN] database [AjPStr] Database name
** @param [u] species [AjPStr] Species
! ** @param [u] dbag [EnsEDatabaseadaptorGroup]
! ** Ensembl Database Adaptor Group enumeration
** @param [r] multi [AjBool] Multiple species
** @param [r] identifier [ajuint] Species identifier
**
***************
*** 555,569 ****
/* @section destructors *******************************************************
**
! ** Destruction destroys all internal data structures and frees the
! ** memory allocated for an Ensembl Database Adaptor object.
**
** @fdata [EnsPDatabaseadaptor]
**
! ** @nam3rule Del Destroy (free) an Ensembl Database Adaptor object
**
! ** @argrule * Pdba [EnsPDatabaseadaptor*] Ensembl Database Adaptor
! ** object address
**
** @valrule * [void]
**
--- 559,573 ----
/* @section destructors *******************************************************
**
! ** Destruction destroys all internal data structures and frees the memory
! ** allocated for an Ensembl Database Adaptor object.
**
** @fdata [EnsPDatabaseadaptor]
**
! ** @nam3rule Del Destroy (free) an Ensembl Database Adaptor
**
! ** @argrule * Pdba [EnsPDatabaseadaptor*]
! ** Ensembl Database Adaptor address
**
** @valrule * [void]
**
***************
*** 586,593 ****
** @see ensExit
** @see ensRegistryExit
**
! ** @param [d] Pdba [EnsPDatabaseadaptor*] Ensembl Database Adaptor
! ** object address
**
** @return [void]
** @@
--- 590,596 ----
** @see ensExit
** @see ensRegistryExit
**
! ** @param [d] Pdba [EnsPDatabaseadaptor*] Ensembl Database Adaptor address
**
** @return [void]
** @@
***************
*** 652,659 ****
** @valrule Databaseconnection [EnsPDatabaseconnection]
** Ensembl Database Connection or NULL
** @valrule Species [AjPStr] Species or NULL
! ** @valrule Group [EnsEDatabaseadaptorGroup] Ensembl Database Adaptor Group
! ** enumeration or ensEDatabaseadaptorGroupNULL
** @valrule Multispecies [AjBool] Multiple species or ajFalse
** @valrule Identifier [ajuint] Species identifier or 0
**
--- 655,662 ----
** @valrule Databaseconnection [EnsPDatabaseconnection]
** Ensembl Database Connection or NULL
** @valrule Species [AjPStr] Species or NULL
! ** @valrule Group [EnsEDatabaseadaptorGroup]
! ** Ensembl Database Adaptor Group enumeration or ensEDatabaseadaptorGroupNULL
** @valrule Multispecies [AjBool] Multiple species or ajFalse
** @valrule Identifier [ajuint] Species identifier or 0
**
***************
*** 693,700 ****
** @cc Bio::EnsEMBL::DBSQL::DBAdaptor::group
** @param [r] dba [const EnsPDatabaseadaptor] Ensembl Database Adaptor
**
! ** @return [EnsEDatabaseadaptorGroup] Ensembl Database Adaptor Group
! ** enumeration or ensEDatabaseadaptorGroupNULL
** @@
******************************************************************************/
--- 696,703 ----
** @cc Bio::EnsEMBL::DBSQL::DBAdaptor::group
** @param [r] dba [const EnsPDatabaseadaptor] Ensembl Database Adaptor
**
! ** @return [EnsEDatabaseadaptorGroup]
! ** Ensembl Database Adaptor Group enumeration or ensEDatabaseadaptorGroupNULL
** @@
******************************************************************************/
***************
*** 793,802 ****
** @nam4rule Species Set the species
**
** @argrule * dba [EnsPDatabaseadaptor] Ensembl Database Adaptor object
! ** @argrule Databaseconnection dbc [EnsPDatabaseconnection] Ensembl Database
! ** Connection
! ** @argrule Group dbag [EnsEDatabaseadaptorGroup] Ensembl Database Adaptor
! ** Group enumeration
** @argrule Identifier identifier [ajuint] Species identifier
** @argrule Multispecies multi [AjBool] Multi-species attribute
** @argrule Species species [AjPStr] Species
--- 796,805 ----
** @nam4rule Species Set the species
**
** @argrule * dba [EnsPDatabaseadaptor] Ensembl Database Adaptor object
! ** @argrule Databaseconnection dbc [EnsPDatabaseconnection]
! ** Ensembl Database Connection
! ** @argrule Group dbag [EnsEDatabaseadaptorGroup]
! ** Ensembl Database Adaptor Group enumeration
** @argrule Identifier identifier [ajuint] Species identifier
** @argrule Multispecies multi [AjBool] Multi-species attribute
** @argrule Species species [AjPStr] Species
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/ensembl/ensdatabaseadaptor.h EMBOSS-6.4.0/ajax/ensembl/ensdatabaseadaptor.h
*** EMBOSS-6.4.0old/ajax/ensembl/ensdatabaseadaptor.h 2011-07-06 22:50:28.000000000 +0100
--- EMBOSS-6.4.0/ajax/ensembl/ensdatabaseadaptor.h 2011-10-05 14:56:07.000000000 +0100
***************
*** 121,127 ****
EnsPDatabaseadaptor ensRegistryGetDatabaseadaptor(
EnsEDatabaseadaptorGroup dbag,
! const AjPStr alias);
EnsPDatabaseadaptor ensRegistryGetReferenceadaptor(EnsPDatabaseadaptor dba);
--- 121,127 ----
EnsPDatabaseadaptor ensRegistryGetDatabaseadaptor(
EnsEDatabaseadaptorGroup dbag,
! AjPStr alias);
EnsPDatabaseadaptor ensRegistryGetReferenceadaptor(EnsPDatabaseadaptor dba);
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/ensembl/ensregistry.c EMBOSS-6.4.0/ajax/ensembl/ensregistry.c
*** EMBOSS-6.4.0old/ajax/ensembl/ensregistry.c 2011-07-08 12:43:41.000000000 +0100
--- EMBOSS-6.4.0/ajax/ensembl/ensregistry.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 569,576 ****
const RegistryPQualityCheck rqc,
ajuint level);
- static AjPStr registryAliasRegister(const AjPStr alias);
-
static AjBool registryAliasLoadDatabaseconnection(
EnsPDatabaseconnection dbc,
EnsPDatabaseadaptor dba);
--- 569,574 ----
***************
*** 2029,2034 ****
--- 2027,2034 ----
AjBool ensRegistryLoadServername(AjPStr servername)
{
+ ajuint dbid = 0;
+
AjBool debug = AJFALSE;
AjBool registered = AJFALSE;
***************
*** 2037,2042 ****
--- 2037,2045 ----
AjPList svrnames = NULL;
AjPList dbnames = NULL;
+ AjPRegexp dbidre = NULL;
+
+ AjPStr dbidstr = NULL;
AjPStr dbname = NULL;
AjPStr source = NULL;
AjPStr svrname = NULL;
***************
*** 2059,2064 ****
--- 2062,2069 ----
** List objects must be re-created and freed for each server.
*/
+ dbidre = ajRegCompC("SpeciesIdentifier=(\\d+)");
+
value = ajStrNew();
svrnames = ajListstrNew();
***************
*** 2103,2119 ****
registrySourceRegister(source, &registered);
ajStrDel(&source);
if(registered == ajTrue)
- {
- if(debug)
- ajDebug("ensRegistryLoadServername '%S' already "
- "registered.\n",
- svrname);
-
continue;
- }
/*
** Create an Ensembl Database Connection to the AJAX Server for
--- 2108,2122 ----
registrySourceRegister(source, &registered);
+ if((debug == ajTrue) && (registered == ajTrue))
+ ajDebug("ensRegistryLoadServername '%S' already "
+ "registered via source '%S'.\n",
+ svrname, source);
+
ajStrDel(&source);
if(registered == ajTrue)
continue;
/*
** Create an Ensembl Database Connection to the AJAX Server for
***************
*** 2150,2189 ****
dba = ensDatabaseadaptorNewUrl(value);
! if((ensDatabaseadaptorGetMultispecies(dba) == ajTrue) &&
! (ensDatabaseadaptorGetIdentifier(dba) == 0))
{
/*
! ** Expand an Ensembl Database Adaptor representing a
! ** collection database into species-specific
! ** Ensembl Database Adaptor objects before registering.
! ** Delete the Ensembl Database Adaptor for the collection.
*/
! registryEntryLoadCollection(
! dbc,
! ensDatabaseconnectionGetDatabasename(
! ensDatabaseadaptorGetDatabaseconnection(dba)),
! ensDatabaseadaptorGetGroup(dba));
! ensDatabaseadaptorDel(&dba);
! }
! else
! {
! /*
! ** Register Ensembl Database Adaptor objects for
! ** multi-species and species-specific databases.
! ** Add the species as alias if registered or delete the
! ** Ensembl Database Adaptor if not registered,
! ** successfully.
! */
! if(ensRegistryAddDatabaseadaptor(dba))
! ensRegistryAliasAdd(ensDatabaseadaptorGetSpecies(dba),
! ensDatabaseadaptorGetSpecies(dba));
else
ensDatabaseadaptorDel(&dba);
}
}
ajListIterDel(&dbniter);
--- 2153,2216 ----
dba = ensDatabaseadaptorNewUrl(value);
! if(ensDatabaseadaptorGetMultispecies(dba) == ajTrue)
{
/*
! ** For Ensembl Database Adaptors representing collection
! ** databases, the species name needs resetting to the AJAX
! ** database name and the species identifier needs parsing
! ** from the comment field of the AJAX database definition.
*/
! ensDatabaseadaptorSetSpecies(dba, dbname);
! ajNamSvrGetdbAttrC(svrname, dbname, "comment", &value);
! if(ajRegExec(dbidre, value))
! {
! dbid = 0;
! dbidstr = ajStrNew();
!
! ajRegSubI(dbidre, 1, &dbidstr);
!
! if(ajStrToUint(dbidstr, &dbid))
! {
! ensDatabaseadaptorSetIdentifier(dba, dbid);
!
! ajStrDel(&dbidstr);
! }
! else
! {
! ajDebug("ensRegistryLoadServer could not parse a "
! "valid unsigned integer from the "
! "'SpeciesIdentifer=INTEGER' expression in "
! "the comment field of AJAX database "
! "definition for Ensembl collection "
! "database '%S'.\n", dbname);
!
! ajStrDel(&dbidstr);
!
! ensDatabaseadaptorDel(&dba);
!
! continue;
! }
! }
else
+ {
+ ajDebug("ensRegistryLoadServer could not find a "
+ "'SpeciesIdentifer=INTEGER' entry in the "
+ "comment field of AJAX database "
+ "definition for Ensembl collection "
+ "database '%S'.\n", dbname);
+
ensDatabaseadaptorDel(&dba);
+
+ continue;
+ }
}
+
+ if(ensRegistryAddDatabaseadaptor(dba) == ajFalse)
+ ensDatabaseadaptorDel(&dba);
}
ajListIterDel(&dbniter);
***************
*** 2196,2201 ****
--- 2223,2230 ----
ajListIterDel(&svriter);
ajListstrFree(&svrnames);
+ ajRegFree(&dbidre);
+
ajStrDel(&value);
if(debug)
***************
*** 2370,2439 ****
- /* @funcstatic registryAliasRegister ******************************************
- **
- ** Check, whether an alias name can be resolved directly or after replacing
- ** underscore characters into a species name. If not, register the alias
- ** without underscore characters and set the alias with underscores as alias.
- **
- ** @param [r] alias [const AjPStr] Alias name
- **
- ** @return [AjPStr] Species name or NULL
- ** @@
- ******************************************************************************/
-
- static AjPStr registryAliasRegister(const AjPStr alias)
- {
- AjPStr species = NULL;
- AjPStr unalias = NULL;
-
- if(!(alias && ajStrGetLen(alias)))
- return NULL;
-
- /* Resolve an eventual alias to the species name. */
-
- ensRegistryAliasResolve(alias, &species);
-
- if(!species)
- {
- /*
- ** If this alias has not been registered before, test if it has been
- ** registered without underscores.
- */
-
- unalias = ajStrNewS(alias);
-
- /*
- ** FIXME: Since EMBOSS DBNAMES cannot cope with spaces species names
- ** must include underscores.
- ajStrExchangeCC(&unalias, "_", " ");
- */
-
- ensRegistryAliasResolve(unalias, &species);
-
- if(!species)
- {
- /*
- ** If the alias without underscores has also not been registered
- ** before, register it as species before registering the one
- ** with underscores as alias.
- */
-
- ensRegistryAliasAdd(unalias, unalias);
- ensRegistryAliasAdd(unalias, alias);
-
- ensRegistryAliasResolve(alias, &species);
- }
-
- ajStrDel(&unalias);
- }
-
- return species;
- }
-
-
-
-
/* @func ensRegistryAliasAdd **************************************************
**
** Add a Registry Alias entry to the Ensembl Registry.
--- 2399,2404 ----
***************
*** 2861,2868 ****
ajStrAssignS(&species, line);
- ensRegistryAliasAdd(species, species);
-
block = ajTrue;
}
}
--- 2826,2831 ----
***************
*** 3387,3394 ****
ajSqlcolumnToUint(sqlr, &identifier);
ajSqlcolumnToStr(sqlr, &species);
- ensRegistryAliasAdd(species, species);
-
dba = ensRegistryNewDatabaseadaptor(dbc,
dbname,
species,
--- 3350,3355 ----
***************
*** 3699,3705 ****
if(!alias)
return NULL;
! species = registryAliasRegister(alias);
dba = ensDatabaseadaptorNewIni(dbc,
database,
--- 3660,3669 ----
if(!alias)
return NULL;
! ensRegistryAliasResolve(alias, &species);
!
! if(species == NULL)
! species = alias;
dba = ensDatabaseadaptorNewIni(dbc,
database,
***************
*** 3801,3807 ****
if(!alias)
return NULL;
! species = registryAliasRegister(alias);
rsa = ensDatabaseadaptorNewIni(dbc,
database,
--- 3765,3774 ----
if(!alias)
return NULL;
! ensRegistryAliasResolve(alias, &species);
!
! if(species == NULL)
! species = alias;
rsa = ensDatabaseadaptorNewIni(dbc,
database,
***************
*** 4517,4529 ****
**
** @argrule AllDatabaseadaptors dbag [EnsEDatabaseadaptorGroup]
** Ensembl Database Adaptor Group enumeration
! ** @argrule AllDatabaseadaptors alias [const AjPStr]
** Ensembl Database Adaptor alias name or species name
** @argrule AllDatabaseadaptors dbas [AjPList] AJAX List of
** Ensembl Database Adaptor objects
** @argrule Databaseadaptor dbag [EnsEDatabaseadaptorGroup]
** Ensembl Database Adaptor Group enumeration
! ** @argrule Databaseadaptor alias [const AjPStr]
** Ensembl Database Adaptor alias name or species name
** @argrule Referenceadaptor dba [EnsPDatabaseadaptor] Ensembl Database Adaptor
**
--- 4484,4496 ----
**
** @argrule AllDatabaseadaptors dbag [EnsEDatabaseadaptorGroup]
** Ensembl Database Adaptor Group enumeration
! ** @argrule AllDatabaseadaptors alias [AjPStr]
** Ensembl Database Adaptor alias name or species name
** @argrule AllDatabaseadaptors dbas [AjPList] AJAX List of
** Ensembl Database Adaptor objects
** @argrule Databaseadaptor dbag [EnsEDatabaseadaptorGroup]
** Ensembl Database Adaptor Group enumeration
! ** @argrule Databaseadaptor alias [AjPStr]
** Ensembl Database Adaptor alias name or species name
** @argrule Referenceadaptor dba [EnsPDatabaseadaptor] Ensembl Database Adaptor
**
***************
*** 4549,4555 ****
**
** @param [uN] dbag [EnsEDatabaseadaptorGroup] Ensembl Database Adaptor Group
** enumeration
! ** @param [rN] alias [const AjPStr] Ensembl Database Adaptor alias name or
** species name
** @param [u] dbas [AjPList] AJAX List of Ensembl Database Adaptor objects
**
--- 4516,4522 ----
**
** @param [uN] dbag [EnsEDatabaseadaptorGroup] Ensembl Database Adaptor Group
** enumeration
! ** @param [rN] alias [AjPStr] Ensembl Database Adaptor alias name or
** species name
** @param [u] dbas [AjPList] AJAX List of Ensembl Database Adaptor objects
**
***************
*** 4558,4564 ****
******************************************************************************/
AjBool ensRegistryGetAllDatabaseadaptors(EnsEDatabaseadaptorGroup dbag,
! const AjPStr alias,
AjPList dbas)
{
void** keyarray = NULL;
--- 4525,4531 ----
******************************************************************************/
AjBool ensRegistryGetAllDatabaseadaptors(EnsEDatabaseadaptorGroup dbag,
! AjPStr alias,
AjPList dbas)
{
void** keyarray = NULL;
***************
*** 4593,4600 ****
--- 4560,4576 ----
if(!dbas)
return ajFalse;
+ /*
+ ** Resolve an alias name into a valid species name. If the alias did not
+ ** resolve into a species name, use the alias directly. If an alias was
+ ** not passed in, it is still NULL, implying all species.
+ */
+
ensRegistryAliasResolve(alias, &species);
+ if(species == NULL)
+ species = alias;
+
ajTableToarrayKeysValues(registryEntry, &keyarray, &valarray);
for(i = 0; keyarray[i]; i++)
***************
*** 4761,4767 ****
** @cc Bio::EnsEMBL::Registry::get_DBAdaptor
** @param [u] dbag [EnsEDatabaseadaptorGroup] Ensembl Database Adaptor Group
** enumeration
! ** @param [r] alias [const AjPStr] Scientific species name or alias name
**
** @return [EnsPDatabaseadaptor] Ensembl Database Adaptor or NULL
** @@
--- 4737,4743 ----
** @cc Bio::EnsEMBL::Registry::get_DBAdaptor
** @param [u] dbag [EnsEDatabaseadaptorGroup] Ensembl Database Adaptor Group
** enumeration
! ** @param [r] alias [AjPStr] Scientific species name or alias name
**
** @return [EnsPDatabaseadaptor] Ensembl Database Adaptor or NULL
** @@
***************
*** 4769,4775 ****
EnsPDatabaseadaptor ensRegistryGetDatabaseadaptor(
EnsEDatabaseadaptorGroup dbag,
! const AjPStr alias)
{
AjBool debug = AJFALSE;
--- 4745,4751 ----
EnsPDatabaseadaptor ensRegistryGetDatabaseadaptor(
EnsEDatabaseadaptorGroup dbag,
! AjPStr alias)
{
AjBool debug = AJFALSE;
***************
*** 4797,4804 ****
--- 4773,4788 ----
if(!alias)
return NULL;
+ /*
+ ** Resolve an alias name into a valid species name. If the alias did not
+ ** resolve into a species name, use the alias directly.
+ */
+
ensRegistryAliasResolve(alias, &species);
+ if(species == NULL)
+ species = alias;
+
if(debug)
ajDebug("ensRegistryGetDatabaseadaptor alias '%S' -> species '%S'\n",
alias, species);
diff -c -N --recursive -a EMBOSS-6.4.0old/ajax/ensembl/ensregistry.h EMBOSS-6.4.0/ajax/ensembl/ensregistry.h
*** EMBOSS-6.4.0old/ajax/ensembl/ensregistry.h 2011-05-25 20:55:04.000000000 +0100
--- EMBOSS-6.4.0/ajax/ensembl/ensregistry.h 2011-10-05 14:56:07.000000000 +0100
***************
*** 116,122 ****
AjBool ensRegistryRemoveDatabaseadaptor(EnsPDatabaseadaptor* Pdba);
AjBool ensRegistryGetAllDatabaseadaptors(EnsEDatabaseadaptorGroup dbag,
! const AjPStr alias,
AjPList dbas);
AjPStr ensRegistryGetStableidentifierprefix(EnsPDatabaseadaptor dba);
--- 116,122 ----
AjBool ensRegistryRemoveDatabaseadaptor(EnsPDatabaseadaptor* Pdba);
AjBool ensRegistryGetAllDatabaseadaptors(EnsEDatabaseadaptorGroup dbag,
! AjPStr alias,
AjPList dbas);
AjPStr ensRegistryGetStableidentifierprefix(EnsPDatabaseadaptor dba);
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/cacheensembl.c EMBOSS-6.4.0/emboss/cacheensembl.c
*** EMBOSS-6.4.0old/emboss/cacheensembl.c 2011-07-08 17:29:51.000000000 +0100
--- EMBOSS-6.4.0/emboss/cacheensembl.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 181,186 ****
--- 181,191 ----
ajFmtPrintF(outf, "%S\n", dbname);
ajFmtPrintF(cachef, "DBNAME %S [\n", dbname);
+
+ if(ensDatabaseadaptorGetMultispecies(dba) == ajTrue)
+ ajFmtPrintF(cachef, " comment: \"SpeciesIdentifier=%u\"\n",
+ ensDatabaseadaptorGetIdentifier(dba));
+
ajFmtPrintF(cachef, " release: \"%s\"\n", ensSoftwareGetVersion());
ajFmtPrintF(cachef, " server: \"%S\"\n", svrname);
ajFmtPrintF(cachef, " url: \"%S\"\n", dbcurl);
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/cirdna.c EMBOSS-6.4.0/emboss/cirdna.c
*** EMBOSS-6.4.0old/emboss/cirdna.c 2011-05-16 11:17:10.000000000 +0100
--- EMBOSS-6.4.0/emboss/cirdna.c 2011-10-05 14:56:07.000000000 +0100
***************
*** 970,976 ****
{
token = ajStrParseC(Name2, ";");
/*ajStrExchangeCC(&Name2, ";", " ");*/
! stringLength = ajGraphicsCalcTextlengthS(token);
xy1 = ajGraphicsCalcCoord(xDraw, yDraw, r2Ticks+postext, Angle);
xy2 = ajGraphicsCalcCoord(xDraw, yDraw, r2Ticks+postext+stringLength,
Angle);
--- 970,976 ----
{
token = ajStrParseC(Name2, ";");
/*ajStrExchangeCC(&Name2, ";", " ");*/
! stringLength = mmtolen * ajGraphicsCalcTextlengthS(token);
xy1 = ajGraphicsCalcCoord(xDraw, yDraw, r2Ticks+postext, Angle);
xy2 = ajGraphicsCalcCoord(xDraw, yDraw, r2Ticks+postext+stringLength,
Angle);
***************
*** 1029,1034 ****
--- 1029,1038 ----
float stringHeight;
float r1Blocks;
float r2Blocks;
+ float mmtolen;
+
+ /* radius is 2pi*radius in mm, RealLength in bases */
+ mmtolen = RealLength/(Radius * (float) 2.0 * (float) 3.1416);
r1Blocks = Radius+((float)1.0*BlockHeight/(float)2);
r2Blocks = r1Blocks-BlockHeight;
***************
*** 1053,1067 ****
ajGraphicsSetFgcolour(Colour);
}
! stringLength = cirdna_HorTextPileLengthMax(Name2, NumNames);
stringHeight = ajGraphicsCalcTextheight();
! StartAngle = cirdna_ComputeAngle(RealLength, (To+From)/2+stringLength/2,
OriginAngle);
! EndAngle = cirdna_ComputeAngle(RealLength, (To+From)/2-stringLength/2,
OriginAngle);
if(ajStrMatchCaseC(PosBlocks, "Out") )
! cirdna_HorTextPile(xDraw, yDraw, r1Blocks+(Adjust*postext), StartAngle,
EndAngle, Name2, postext, 1);
else
cirdna_HorTextPile(xDraw, yDraw,
--- 1057,1073 ----
ajGraphicsSetFgcolour(Colour);
}
! stringLength = mmtolen * cirdna_HorTextPileLengthMax(Name2, NumNames);
stringHeight = ajGraphicsCalcTextheight();
! StartAngle = cirdna_ComputeAngle(RealLength,
! (To+From)/2 + stringLength/2,
OriginAngle);
! EndAngle = cirdna_ComputeAngle(RealLength,
! (To+From)/2 - stringLength/2,
OriginAngle);
if(ajStrMatchCaseC(PosBlocks, "Out") )
! cirdna_HorTextPile(xDraw, yDraw, r1Blocks+Adjust*postext, StartAngle,
EndAngle, Name2, postext, 1);
else
cirdna_HorTextPile(xDraw, yDraw,
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/data/Efeatures.gff3protein EMBOSS-6.4.0/emboss/data/Efeatures.gff3protein
*** EMBOSS-6.4.0old/emboss/data/Efeatures.gff3protein 2009-03-06 12:37:43.000000000 +0000
--- EMBOSS-6.4.0/emboss/data/Efeatures.gff3protein 2011-10-05 14:56:08.000000000 +0100
***************
*** 193,199 ****
# METAL - Binding site for a metal ion.
! metal_binding SO:0001092 SO:0001092_metal
/note
/comment
--- 193,199 ----
# METAL - Binding site for a metal ion.
! polypeptide_metal_contact SO:0001092 SO:0001092_metal
/note
/comment
***************
*** 215,225 ****
# internal cyclic lactam
#SULFATATION Generally of tyrosine
! protein_modification_categorized_by_chemical_process MOD:01156
! /note
! /comment
!
! post_translational_modification SO:0001089
/note
/comment
--- 215,221 ----
# internal cyclic lactam
#SULFATATION Generally of tyrosine
! post_translationally_modified_region MOD:01156 SO:0001089
/note
/comment
***************
*** 351,357 ****
# TURN - DSSP secondary structure
! turn SO:0001128
/note
/comment
--- 347,353 ----
# TURN - DSSP secondary structure
! polypeptide_turn_motif SO:0001128
/note
/comment
***************
*** 371,377 ****
# /comment
/ftid
! natural_variant SO:0001147 SO:0001147_variant
/note
/comment
/ftid
--- 367,373 ----
# /comment
/ftid
! natural_variant_site SO:0001147 SO:0001147_variant
/note
/comment
/ftid
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/data/Etcode.dat EMBOSS-6.4.0/emboss/data/Etcode.dat
*** EMBOSS-6.4.0old/emboss/data/Etcode.dat 2003-03-07 09:45:22.000000000 +0000
--- EMBOSS-6.4.0/emboss/data/Etcode.dat 2011-10-05 14:56:08.000000000 +0100
***************
*** 22,27 ****
--- 22,28 ----
0.25
0.23
0.21
+ 0.19
0.17
0.00
#
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/dbiflat.c EMBOSS-6.4.0/emboss/dbiflat.c
*** EMBOSS-6.4.0old/emboss/dbiflat.c 2011-06-23 19:18:45.000000000 +0100
--- EMBOSS-6.4.0/emboss/dbiflat.c 2011-10-05 14:56:08.000000000 +0100
***************
*** 91,96 ****
--- 91,100 ----
static AjPList* fdl = NULL;
+ static AjBool dbiflat_ParseSwiss(AjPFile libr, AjPFile* alistfile,
+ AjBool systemsort, AjPStr* fields,
+ ajint* maxFieldLen, ajuint* countfield,
+ ajint *dpos, AjPStr* myid, AjPList* acl);
static AjBool dbiflat_ParseEmbl(AjPFile libr, AjPFile* alistfile,
AjBool systemsort, AjPStr* fields,
ajint* maxFieldLen, ajuint* countfield,
***************
*** 135,141 ****
static DbiflatOParser parser[] =
{
{"EMBL", dbiflat_ParseEmbl},
! {"SWISS", dbiflat_ParseEmbl},
{"GB", dbiflat_ParseGenbank},
{"REFSEQ", dbiflat_ParseRefseq},
{NULL, NULL}
--- 139,145 ----
static DbiflatOParser parser[] =
{
{"EMBL", dbiflat_ParseEmbl},
! {"SWISS", dbiflat_ParseSwiss},
{"GB", dbiflat_ParseGenbank},
{"REFSEQ", dbiflat_ParseRefseq},
{NULL, NULL}
***************
*** 596,601 ****
--- 600,984 ----
+ /* @funcstatic dbiflat_ParseSwiss *********************************************
+ **
+ ** Parse the ID, accession from a SwissProt or UniProtKB entry.
+ **
+ ** Reads to the end of the entry and then returns.
+ **
+ ** @param [u] libr [AjPFile] Input database file
+ ** @param [u] alistfile [AjPFile*] field data files array
+ ** @param [r] systemsort [AjBool] If ajTrue use system sort, else internal sort
+ ** @param [w] fields [AjPStr*] Fields required
+ ** @param [w] maxFieldLen [ajint*] Maximum token length for each field
+ ** @param [w] countfield [ajuint*] Number of tokens for each field
+ ** @param [w] dpos [ajint*] Byte offset
+ ** @param [w] myid [AjPStr*] ID
+ ** @param [w] myfdl [AjPList*] Lists of field values
+ ** @return [AjBool] ajTrue on success.
+ ** @@
+ ******************************************************************************/
+
+ static AjBool dbiflat_ParseSwiss(AjPFile libr, AjPFile* alistfile,
+ AjBool systemsort, AjPStr* fields,
+ ajint* maxFieldLen, ajuint* countfield,
+ ajint* dpos, AjPStr* myid,
+ AjPList* myfdl)
+ {
+ AjPStr tmpacnum = NULL;
+ char* fd;
+ ajint lineType;
+ static ajint numFields;
+ static ajint accfield = -1;
+ static ajint desfield = -1;
+ static ajint keyfield = -1;
+ static ajint taxfield = -1;
+ static ajint svnfield = -1;
+ static AjBool reset = AJTRUE;
+ AjBool svndone = ajFalse;
+ AjBool done = ajFalse;
+ ajint i;
+ ajint lo;
+ ajint hi;
+ ajint fieldwidth;
+ AjPStr tmpac = NULL;
+ AjPStr format = NULL;
+ AjPStr prefix = NULL;
+ const char* p;
+ const char* q;
+ const char* swissprefix[] = {
+ "RecName: ", "AltName: ", "SubName: ",
+ "Includes:", "Contains:", "Flags: ",
+ "Full=", "Short=", "EC=",
+ "Allergen=", "Biotech=", "CD_antigen=", "INN=",
+ NULL
+ };
+ ajuint j;
+
+ if(!fields)
+ {
+ reset = ajTrue;
+ accfield = svnfield = desfield = keyfield = taxfield = -1;
+ return ajFalse;
+ }
+
+ if(reset)
+ {
+ numFields = 0;
+ while(fields[numFields])
+ {
+ countfield[numFields]=0;
+ if(ajStrMatchCaseC(fields[numFields], "acc"))
+ accfield=numFields;
+ else if(ajStrMatchCaseC(fields[numFields], "sv"))
+ svnfield=numFields;
+ else if(ajStrMatchCaseC(fields[numFields], "des"))
+ desfield=numFields;
+ else if(ajStrMatchCaseC(fields[numFields], "key"))
+ keyfield=numFields;
+ else if(ajStrMatchCaseC(fields[numFields], "org"))
+ taxfield=numFields;
+ else
+ ajWarn("EMBL parsing unknown field '%S' ignored",
+ fields[numFields]);
+ numFields++;
+ }
+
+ reset = ajFalse;
+ }
+
+ if(!regEmblType)
+ regEmblType = ajRegCompC("^([A-Z][A-Z]) +");
+
+ if(!regEmblAcc)
+ regEmblAcc = ajRegCompC("([A-Za-z0-9-]+)");
+
+ if(!regEmblWrd)
+ regEmblWrd = ajRegCompC("([A-Za-z0-9_]+)");
+
+ if(!regEmblVer)
+ regEmblVer = ajRegCompC("([A-Za-z0-9_.]+)");
+
+ if(!regEmblPhr)
+ regEmblPhr = ajRegCompC(" *([^;.\n\r]+)");
+
+ if(!regEmblTax)
+ regEmblTax = ajRegCompC(" *([^;.\n\r()]+)");
+
+ if(!regEmblId)
+ regEmblId = ajRegCompC("^ID ([^\\s;]+)(;\\s+SV\\s+(\\d+))?");
+
+ if(!regEmblEnd)
+ regEmblEnd = ajRegCompC("^//");
+
+ *dpos = (ajint) ajFileResetPos(libr); /* Lossy cast */
+
+ while(ajReadline(libr, &rline))
+ {
+ if(ajRegExec(regEmblEnd, rline))
+ {
+ done = ajTrue;
+ break;
+ }
+
+ if(ajRegExec(regEmblType, rline))
+ {
+ ajRegSubI(regEmblType, 1, &typStr);
+ if(ajStrMatchC(typStr, "ID"))
+ lineType = FLATTYPE_ID;
+ else if(ajStrMatchC(typStr, "SV") ||
+ ajStrMatchC(typStr, "IV")) /* emblcds database */
+ lineType = FLATTYPE_VER;
+ else if(ajStrMatchC(typStr, "AC") ||
+ ajStrMatchC(typStr, "PA")) /* emblcds database */
+ lineType = FLATTYPE_ACC;
+ else if(ajStrMatchC(typStr, "DE"))
+ lineType = FLATTYPE_DES;
+ else if(ajStrMatchC(typStr, "KW"))
+ lineType = FLATTYPE_KEY;
+ else if(ajStrMatchC(typStr, "OS"))
+ lineType = FLATTYPE_TAX;
+ else if(ajStrMatchC(typStr, "OC"))
+ lineType = FLATTYPE_TAX;
+ else
+ lineType=FLATTYPE_OTHER;
+
+ if(lineType != FLATTYPE_OTHER)
+ ajRegPost(regEmblType, &tmpline);
+ }
+ else
+ lineType = FLATTYPE_OTHER;
+
+ if(lineType == FLATTYPE_ID)
+ {
+ ajRegExec(regEmblId, rline);
+ ajRegSubI(regEmblId, 1, myid);
+ ajStrFmtUpper(myid);
+ ajDebug("++id '%S'\n", *myid);
+ ajRegSubI(regEmblId, 3, &tmpfd);
+ if(svnfield >= 0 && ajStrGetLen(tmpfd))
+ {
+ ajStrFmtUpper(&tmpfd);
+ ajStrInsertK(&tmpfd, 0, '.');
+ ajStrInsertS(&tmpfd, 0, *myid);
+ /*ajDebug("++sv '%S'\n", tmpfd);*/
+ embDbiMaxlen(&tmpfd, &maxFieldLen[svnfield]);
+
+ countfield[svnfield]++;
+ if(systemsort)
+ ajFmtPrintF(alistfile[svnfield], "%S %S\n", *myid, tmpfd);
+ else
+ {
+ fd = ajCharNewS(tmpfd);
+ ajListPushAppend(myfdl[svnfield], fd);
+ }
+ svndone = ajTrue;
+ }
+ continue;
+ }
+
+ if(lineType == FLATTYPE_ACC && accfield >= 0)
+ {
+ while(ajRegExec(regEmblAcc, tmpline))
+ {
+ ajRegSubI(regEmblAcc, 1, &tmpfd);
+ ajStrFmtUpper(&tmpfd);
+ /*ajDebug("++acc '%S'\n", tmpfd);*/
+
+ if(!tmpacnum)
+ ajStrAssignS(&tmpacnum, tmpfd);
+
+ if((p=strchr(MAJSTRGETPTR(tmpfd),(int)'-')))
+ {
+ q = p;
+ while(isdigit((int)*(--q)));
+ ++q;
+ ajStrAssignSubC(&tmpstr,q,0,(ajint)(p-q-1));
+ ajStrToInt(tmpstr,&lo);
+ fieldwidth = (ajint) (p-q);
+ ajFmtPrintS(&format,"%%S%%0%dd",fieldwidth);
+
+ ++p;
+ q = p;
+ while(!isdigit((int)*q))
+ ++q;
+ sscanf(q,"%d",&hi);
+ ajStrAssignSubC(&prefix,p,0,(ajint)(q-p-1));
+
+ if(systemsort)
+ {
+ for(i=lo;i<=hi;++i)
+ {
+ ajFmtPrintS(&tmpac,MAJSTRGETPTR(format),prefix,i);
+ embDbiMaxlen(&tmpac, &maxFieldLen[accfield]);
+ countfield[accfield]++;
+ ajFmtPrintF(alistfile[accfield],
+ "%S %S\n", *myid, tmpac);
+ }
+ ajStrDel(&tmpac);
+ }
+ else
+ {
+ for(i=lo;i<=hi;++i)
+ {
+ ajFmtPrintS(&tmpac,MAJSTRGETPTR(format),prefix,i);
+ embDbiMaxlen(&tmpac, &maxFieldLen[accfield]);
+ countfield[accfield]++;
+ fd = ajCharNewS(tmpac);
+ ajListPushAppend(myfdl[accfield], fd);
+ }
+ ajStrDel(&tmpac);
+ }
+ ajStrDel(&format);
+ ajStrDel(&prefix);
+ }
+ else {
+ embDbiMaxlen(&tmpfd, &maxFieldLen[accfield]);
+
+ countfield[accfield]++;
+ if(systemsort)
+ ajFmtPrintF(alistfile[accfield],
+ "%S %S\n", *myid, tmpfd);
+ else
+ {
+ fd = ajCharNewS(tmpfd);
+ ajListPushAppend(myfdl[accfield], fd);
+ }
+ }
+ ajRegPost(regEmblAcc, &tmpstr);
+ ajStrAssignS(&tmpline, tmpstr);
+ }
+ continue;
+ }
+ else if(lineType == FLATTYPE_DES && desfield >= 0)
+ {
+ ajStrTrimWhiteStart(&tmpline);
+ for(j=0; swissprefix[j]; j++)
+ {
+ if(ajStrPrefixC(tmpline, swissprefix[j]))
+ ajStrCutStart(&tmpline, strlen(swissprefix[j]));
+ }
+ while(ajRegExec(regEmblWrd, tmpline))
+ {
+ ajRegSubI(regEmblWrd, 1, &tmpfd);
+ ajStrFmtUpper(&tmpfd);
+ /*ajDebug("++des '%S'\n", tmpfd);*/
+ embDbiMaxlen(&tmpfd, &maxFieldLen[desfield]);
+
+ countfield[desfield]++;
+ if(systemsort)
+ ajFmtPrintF(alistfile[desfield], "%S %S\n", *myid, tmpfd);
+ else
+ {
+ fd = ajCharNewS(tmpfd);
+ ajListPushAppend(myfdl[desfield], fd);
+ }
+ ajRegPost(regEmblWrd, &tmpstr);
+ ajStrAssignS(&tmpline, tmpstr);
+ }
+ continue;
+ }
+ else if(lineType == FLATTYPE_VER && svnfield >= 0)
+ {
+ while(ajRegExec(regEmblVer, tmpline))
+ {
+ ajRegSubI(regEmblVer, 1, &tmpfd);
+ ajStrFmtUpper(&tmpfd);
+ /*ajDebug("++sv '%S'\n", tmpfd);*/
+ embDbiMaxlen(&tmpfd, &maxFieldLen[svnfield]);
+
+ countfield[svnfield]++;
+ if(systemsort)
+ ajFmtPrintF(alistfile[svnfield], "%S %S\n", *myid, tmpfd);
+ else
+ {
+ fd = ajCharNewS(tmpfd);
+ ajListPushAppend(myfdl[svnfield], fd);
+ }
+ ajRegPost(regEmblVer, &tmpstr);
+ ajStrAssignS(&tmpline, tmpstr);
+ }
+ svndone = ajTrue;
+ continue;
+ }
+ else if(lineType == FLATTYPE_KEY && keyfield >= 0)
+ {
+ while(ajRegExec(regEmblPhr, tmpline))
+ {
+ ajRegSubI(regEmblPhr, 1, &tmpfd);
+ ajRegPost(regEmblPhr, &tmpstr);
+ ajStrAssignS(&tmpline, tmpstr);
+ ajStrTrimWhiteEnd(&tmpfd);
+ if(!ajStrGetLen(tmpfd))
+ continue;
+ ajStrFmtUpper(&tmpfd);
+ /*ajDebug("++key '%S'\n", tmpfd);*/
+ embDbiMaxlen(&tmpfd, &maxFieldLen[keyfield]);
+
+ countfield[keyfield]++;
+ if(systemsort)
+ ajFmtPrintF(alistfile[keyfield], "%S %S\n", *myid, tmpfd);
+ else
+ {
+ fd = ajCharNewS(tmpfd);
+ ajListPushAppend(myfdl[keyfield], fd);
+ }
+ }
+ continue;
+ }
+ else if(lineType == FLATTYPE_TAX && taxfield >= 0)
+ {
+ while(ajRegExec(regEmblTax, tmpline))
+ {
+ ajRegSubI(regEmblTax, 1, &tmpfd);
+ ajRegPost(regEmblTax, &tmpstr);
+ ajStrAssignS(&tmpline, tmpstr);
+ ajStrFmtUpper(&tmpfd);
+ ajStrTrimWhiteEnd(&tmpfd);
+ if(!ajStrGetLen(tmpfd))
+ continue;
+ /*ajDebug("++tax '%S'\n", tmpfd);*/
+ embDbiMaxlen(&tmpfd, &maxFieldLen[taxfield]);
+
+ countfield[taxfield]++;
+ if(systemsort)
+ ajFmtPrintF(alistfile[taxfield], "%S %S\n", *myid, tmpfd);
+ else
+ {
+ fd = ajCharNewS(tmpfd);
+ ajListPushAppend(myfdl[taxfield], fd);
+ }
+ }
+ continue;
+ }
+ }
+
+ if(!done)
+ return ajFalse;
+
+ if(svnfield >= 0 && !svndone && tmpacnum)
+ {
+ ajFmtPrintS(&tmpfd, "%S.0", tmpacnum);
+ embDbiMaxlen(&tmpfd, &maxFieldLen[svnfield]);
+
+ countfield[svnfield]++;
+ if(systemsort)
+ ajFmtPrintF(alistfile[svnfield], "%S %S\n", *myid, tmpfd);
+ else
+ {
+ fd = ajCharNewS(tmpfd);
+ ajListPushAppend(myfdl[svnfield], fd);
+ }
+ }
+
+ ajStrDel(&tmpacnum);
+
+ return ajTrue;
+ }
+
+
+
+
/* @funcstatic dbiflat_ParseEmbl **********************************************
**
** Parse the ID, accession from an EMBL entry.
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/dbxflat.c EMBOSS-6.4.0/emboss/dbxflat.c
*** EMBOSS-6.4.0old/emboss/dbxflat.c 2011-06-23 19:18:45.000000000 +0100
--- EMBOSS-6.4.0/emboss/dbxflat.c 2011-10-05 14:56:08.000000000 +0100
***************
*** 32,37 ****
--- 32,38 ----
static AjBool dbxflat_ParseFastq(EmbPBtreeEntry entry, AjPFile inf);
static AjBool dbxflat_ParseEmbl(EmbPBtreeEntry entry, AjPFile inf);
static AjBool dbxflat_ParseGenbank(EmbPBtreeEntry entry, AjPFile inf);
+ static AjBool dbxflat_ParseSwiss(EmbPBtreeEntry entry, AjPFile inf);
static AjBool dbxflat_NextEntry(EmbPBtreeEntry entry, AjPFile inf);
***************
*** 76,82 ****
static DbxflatOParser parser[] =
{
{"EMBL", dbxflat_ParseEmbl},
! {"SWISS", dbxflat_ParseEmbl},
{"GB", dbxflat_ParseGenbank},
{"REFSEQ", dbxflat_ParseGenbank},
{"FASTQ", dbxflat_ParseFastq},
--- 77,83 ----
static DbxflatOParser parser[] =
{
{"EMBL", dbxflat_ParseEmbl},
! {"SWISS", dbxflat_ParseSwiss},
{"GB", dbxflat_ParseGenbank},
{"REFSEQ", dbxflat_ParseGenbank},
{"FASTQ", dbxflat_ParseFastq},
***************
*** 716,721 ****
--- 717,817 ----
+ /* @funcstatic dbxflat_ParseSwiss *********************************************
+ **
+ ** Parse the ID, accession from a SwissProt or UniProtKB entry.
+ **
+ ** Reads to the end of the entry and then returns.
+ **
+ ** @param [w] entry [EmbPBtreeEntry] entry
+ ** @param [u] inf [AjPFile] Input file
+ **
+ ** @return [AjBool] ajTrue on success.
+ ** @@
+ ******************************************************************************/
+
+ static AjBool dbxflat_ParseSwiss(EmbPBtreeEntry entry, AjPFile inf)
+ {
+ AjPStr line = NULL;
+ ajlong pos = 0L;
+ const char* swissprefix[] = {
+ "RecName: ", "AltName: ", "SubName: ",
+ "Includes:", "Contains:", "Flags: ",
+ "Full=", "Short=", "EC=",
+ "Allergen=", "Biotech=", "CD_antigen=", "INN=",
+ NULL
+ };
+ ajuint i;
+
+ if(!dbxflat_wrdexp)
+ dbxflat_wrdexp = ajRegCompC("([A-Za-z0-9_-]+)");
+
+ line = ajStrNewC("");
+
+ while(!ajStrPrefixC(line,"//"))
+ {
+ pos = ajFileResetPos(inf);
+
+ if(!ajReadlineTrim(inf,&line))
+ {
+ ajStrDel(&line);
+ return ajFalse;
+ }
+ if(ajStrPrefixC(line,"ID"))
+ {
+ entry->fpos = pos;
+ ajFmtScanS(line,"%*S%S",&entry->id);
+ ajStrTrimEndC(&entry->id, ";");
+ /*
+ ++global;
+ printf("%d. %s\n",global,ajStrGetPtr(entry->id));
+ */
+ if(svfield)
+ embBtreeEmblSV(line,svfield->data);
+ }
+
+
+ if(svfield)
+ if(ajStrPrefixC(line,"SV") ||
+ ajStrPrefixC(line,"IV")) /* emblcds database format */
+ embBtreeEmblAC(line,svfield->data);
+
+ if(accfield)
+ if(ajStrPrefixC(line,"AC") ||
+ ajStrPrefixC(line,"PA")) /* emblcds database format */
+ embBtreeEmblAC(line,accfield->data);
+
+ if(keyfield)
+ if(ajStrPrefixC(line,"KW"))
+ embBtreeEmblKW(line,keyfield->data,keyfield->len);
+
+ if(desfield)
+ if(ajStrPrefixC(line,"DE"))
+ {
+ ajStrCutStart(&line, 5);
+ ajStrTrimWhiteStart(&line);
+ for(i=0; swissprefix[i]; i++)
+ {
+ if(ajStrPrefixC(line, swissprefix[i]))
+ ajStrCutStart(&line, strlen(swissprefix[i]));
+ }
+ embBtreeParseField(line,dbxflat_wrdexp, desfield);
+ }
+
+ if(orgfield)
+ if(ajStrPrefixC(line,"OC") || ajStrPrefixC(line,"OS"))
+ embBtreeEmblTX(line,orgfield->data,orgfield->len);
+ }
+
+
+ ajStrDel(&line);
+
+ return ajTrue;
+ }
+
+
+
+
/* @funcstatic dbxflat_NextEntry ********************************************
**
** Parse the next entry from a flatfile
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/dbxresource.c EMBOSS-6.4.0/emboss/dbxresource.c
*** EMBOSS-6.4.0old/emboss/dbxresource.c 2011-06-23 19:18:45.000000000 +0100
--- EMBOSS-6.4.0/emboss/dbxresource.c 2011-10-05 14:56:08.000000000 +0100
***************
*** 535,540 ****
--- 535,553 ----
if(urlfield && !ajStrMatchC(rest, "None"))
embBtreeParseField(rest, dbxresource_wrdexp, urlfield);
}
+ else if(ajStrMatchC(name, "NARCat"))
+ {
+ if(catfield && !ajStrMatchC(rest, "None"))
+ {
+ handle = ajStrTokenNewC(rest, "|");
+ while(ajStrTokenNextParse(&handle, &token))
+ {
+ ajStrRemoveWhiteExcess(&token);
+ ajListstrPush(catfield->data,ajStrNewS(token));
+ }
+ ajStrTokenDel(&handle);
+ }
+ }
else if(ajStrSuffixC(name, "Cat"))
{
if(catfield && !ajStrMatchC(rest, "None"))
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/diffseq.c EMBOSS-6.4.0/emboss/diffseq.c
*** EMBOSS-6.4.0old/emboss/diffseq.c 2010-04-14 09:19:27.000000000 +0100
--- EMBOSS-6.4.0/emboss/diffseq.c 2011-10-05 14:56:08.000000000 +0100
***************
*** 338,344 ****
}
else
{
! gf = ajFeatNewII(ftab, diff->End1, diff->End1-1);
ajStrAssignC(&tmp, "");
}
diffseq_Features("first_feature", gf,
--- 338,345 ----
}
else
{
! gf = ajFeatNewII(ftab, diff->Start1-1, diff->Start1);
! gf->Flags |= FEATFLAG_BETWEEN_SEQ;
ajStrAssignC(&tmp, "");
}
diffseq_Features("first_feature", gf,
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/drfinddata.c EMBOSS-6.4.0/emboss/drfinddata.c
*** EMBOSS-6.4.0old/emboss/drfinddata.c 2011-05-25 10:10:32.000000000 +0100
--- EMBOSS-6.4.0/emboss/drfinddata.c 2011-10-05 14:56:08.000000000 +0100
***************
*** 155,162 ****
{
if(!ajTableMatchS(foundtable, resource->Id))
{
! ajDebug("drcat id '%S' category '%S'\n",
! resource->Id, resource->Cat);
ajResourceoutWrite(outfile, resource);
ajTablePut(foundtable, ajStrNewS(resource->Id),
(void *) 1);
--- 155,163 ----
{
if(!ajTableMatchS(foundtable, resource->Id))
{
! ajDebug("drcat id '%S' categories %u\n",
! resource->Id,
! ajListGetLength(resource->Cat));
ajResourceoutWrite(outfile, resource);
ajTablePut(foundtable, ajStrNewS(resource->Id),
(void *) 1);
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/drfindformat.c EMBOSS-6.4.0/emboss/drfindformat.c
*** EMBOSS-6.4.0old/emboss/drfindformat.c 2011-05-25 13:41:47.000000000 +0100
--- EMBOSS-6.4.0/emboss/drfindformat.c 2011-10-05 14:56:08.000000000 +0100
***************
*** 152,159 ****
{
if(!ajTableMatchS(foundtable, resource->Id))
{
! ajDebug("drcat id '%S' category '%S'\n",
! resource->Id, resource->Cat);
ajResourceoutWrite(outfile, resource);
ajTablePut(foundtable, ajStrNewS(resource->Id),
(void *) 1);
--- 152,160 ----
{
if(!ajTableMatchS(foundtable, resource->Id))
{
! ajDebug("drcat id '%S' categories %u\n",
! resource->Id,
! ajListGetLength(resource->Cat));
ajResourceoutWrite(outfile, resource);
ajTablePut(foundtable, ajStrNewS(resource->Id),
(void *) 1);
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/drfindid.c EMBOSS-6.4.0/emboss/drfindid.c
*** EMBOSS-6.4.0old/emboss/drfindid.c 2011-05-25 13:41:47.000000000 +0100
--- EMBOSS-6.4.0/emboss/drfindid.c 2011-10-05 14:56:08.000000000 +0100
***************
*** 152,159 ****
{
if(!ajTableMatchS(foundtable, resource->Id))
{
! ajDebug("drcat id '%S' category '%S'\n",
! resource->Id, resource->Cat);
ajResourceoutWrite(outfile, resource);
ajTablePut(foundtable, ajStrNewS(resource->Id),
(void *) 1);
--- 152,160 ----
{
if(!ajTableMatchS(foundtable, resource->Id))
{
! ajDebug("drcat id '%S' categories %u\n",
! resource->Id,
! ajListGetLength(resource->Cat));
ajResourceoutWrite(outfile, resource);
ajTablePut(foundtable, ajStrNewS(resource->Id),
(void *) 1);
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/drfindresource.c EMBOSS-6.4.0/emboss/drfindresource.c
*** EMBOSS-6.4.0old/emboss/drfindresource.c 2011-04-12 17:30:58.000000000 +0100
--- EMBOSS-6.4.0/emboss/drfindresource.c 2011-10-05 14:56:08.000000000 +0100
***************
*** 162,170 ****
{
if(!ajTableMatchS(foundtable, resource->Id))
{
! ajDebug("drcat id '%S' category '%S'\n",
! resource->Id, resource->Cat);
! ajResourceoutWrite(outfile, resource);
ajTablePut(foundtable, ajStrNewS(resource->Id),
(void *) 1);
}
--- 162,171 ----
{
if(!ajTableMatchS(foundtable, resource->Id))
{
! ajDebug("drcat id '%S' categories %u\n",
! resource->Id,
! ajListGetLength(resource->Cat));
! ajResourceoutWrite(outfile, resource);
ajTablePut(foundtable, ajStrNewS(resource->Id),
(void *) 1);
}
diff -c -N --recursive -a EMBOSS-6.4.0old/emboss/server.ensemblgenomes EMBOSS-6.4.0/emboss/server.ensemblgenomes
*** EMBOSS-6.4.0old/emboss/server.ensemblgenomes 2011-07-06 23:14:17.000000000 +0100
--- EMBOSS-6.4.0/emboss/server.ensemblgenomes 2011-10-05 14:56:08.000000000 +0100
***************
*** 1,4 ****
! # server.ensemblgenomes 2011-07-05 00:00:00
# Automatically generated by cacheensembl for server 'ensemblgenomes'.
DBNAME acyrthosiphon_pisum [
--- 1,4 ----
! # server.ensemblgenomes 2011-07-27 00:00:00
# Automatically generated by cacheensembl for server 'ensemblgenomes'.
DBNAME acyrthosiphon_pisum [
***************
*** 194,199 ****
--- 194,200 ----
ALIAS 15368 brachypodium_distachyon
DBNAME b_afzelii [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/borrelia_collection_core_9_62_1a"
***************
*** 202,207 ****
--- 203,209 ----
ALIAS 390236 b_afzelii
DBNAME b_amyloliquefaciens [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 210,215 ****
--- 212,218 ----
ALIAS 326423 b_amyloliquefaciens
DBNAME b_anthracis_a0248 [
+ comment: "SpeciesIdentifier=25"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 218,223 ****
--- 221,227 ----
ALIAS 592021 b_anthracis_a0248
DBNAME b_anthracis_ames [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 226,231 ****
--- 230,236 ----
ALIAS 198094 b_anthracis_ames
DBNAME b_anthracis_ames_ancestor [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 234,239 ****
--- 239,245 ----
ALIAS 261594 b_anthracis_ames_ancestor
DBNAME b_anthracis_cdc_684 [
+ comment: "SpeciesIdentifier=24"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 242,247 ****
--- 248,254 ----
ALIAS 568206 b_anthracis_cdc_684
DBNAME b_anthracis_sterne [
+ comment: "SpeciesIdentifier=5"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 250,255 ****
--- 257,263 ----
ALIAS 260799 b_anthracis_sterne
DBNAME b_aphidicola_5a [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/buchnera_collection_core_9_62_1a"
***************
*** 258,263 ****
--- 266,272 ----
ALIAS 563178 b_aphidicola_5a
DBNAME b_aphidicola_baizongia [
+ comment: "SpeciesIdentifier=5"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/buchnera_collection_core_9_62_1a"
***************
*** 266,271 ****
--- 275,281 ----
ALIAS 224915 b_aphidicola_baizongia
DBNAME b_aphidicola_cinara [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/buchnera_collection_core_9_62_1a"
***************
*** 274,279 ****
--- 284,290 ----
ALIAS 372461 b_aphidicola_cinara
DBNAME b_aphidicola_schizaphis [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/buchnera_collection_core_9_62_1a"
***************
*** 282,287 ****
--- 293,299 ----
ALIAS 198804 b_aphidicola_schizaphis
DBNAME b_aphidicola_tokyo_1998 [
+ comment: "SpeciesIdentifier=6"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/buchnera_collection_core_9_62_1a"
***************
*** 290,295 ****
--- 302,308 ----
ALIAS 107806 b_aphidicola_tokyo_1998
DBNAME b_aphidicola_tuc7 [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/buchnera_collection_core_9_62_1a"
***************
*** 298,303 ****
--- 311,317 ----
ALIAS 561501 b_aphidicola_tuc7
DBNAME b_burgdorferi_dsm_4680 [
+ comment: "SpeciesIdentifier=8"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/borrelia_collection_core_9_62_1a"
***************
*** 306,311 ****
--- 320,326 ----
ALIAS 224326 b_burgdorferi_dsm_4680
DBNAME b_burgdorferi_zs7 [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/borrelia_collection_core_9_62_1a"
***************
*** 314,319 ****
--- 329,335 ----
ALIAS 445985 b_burgdorferi_zs7
DBNAME b_cereus_03bb102 [
+ comment: "SpeciesIdentifier=20"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 322,327 ****
--- 338,344 ----
ALIAS 572264 b_cereus_03bb102
DBNAME b_cereus_172560w [
+ comment: "SpeciesIdentifier=50"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 330,335 ****
--- 347,353 ----
ALIAS 526967 b_cereus_172560w
DBNAME b_cereus_95_8201 [
+ comment: "SpeciesIdentifier=36"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 338,343 ****
--- 356,362 ----
ALIAS 526979 b_cereus_95_8201
DBNAME b_cereus_ah1271 [
+ comment: "SpeciesIdentifier=71"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 346,351 ****
--- 365,371 ----
ALIAS 526992 b_cereus_ah1271
DBNAME b_cereus_ah1272 [
+ comment: "SpeciesIdentifier=53"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 354,359 ****
--- 374,380 ----
ALIAS 526993 b_cereus_ah1272
DBNAME b_cereus_ah1273 [
+ comment: "SpeciesIdentifier=43"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 362,367 ****
--- 383,389 ----
ALIAS 526994 b_cereus_ah1273
DBNAME b_cereus_ah187 [
+ comment: "SpeciesIdentifier=19"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 370,375 ****
--- 392,398 ----
ALIAS 405534 b_cereus_ah187
DBNAME b_cereus_ah603 [
+ comment: "SpeciesIdentifier=49"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 378,383 ****
--- 401,407 ----
ALIAS 526990 b_cereus_ah603
DBNAME b_cereus_ah621 [
+ comment: "SpeciesIdentifier=46"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 386,391 ****
--- 410,416 ----
ALIAS 526972 b_cereus_ah621
DBNAME b_cereus_ah676 [
+ comment: "SpeciesIdentifier=38"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 394,399 ****
--- 419,425 ----
ALIAS 526991 b_cereus_ah676
DBNAME b_cereus_ah820 [
+ comment: "SpeciesIdentifier=18"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 402,407 ****
--- 428,434 ----
ALIAS 405535 b_cereus_ah820
DBNAME b_cereus_atcc_10876 [
+ comment: "SpeciesIdentifier=70"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 410,415 ****
--- 437,443 ----
ALIAS 526980 b_cereus_atcc_10876
DBNAME b_cereus_atcc_10987 [
+ comment: "SpeciesIdentifier=6"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 418,423 ****
--- 446,452 ----
ALIAS 222523 b_cereus_atcc_10987
DBNAME b_cereus_atcc_14579 [
+ comment: "SpeciesIdentifier=7"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 426,431 ****
--- 455,461 ----
ALIAS 226900 b_cereus_atcc_14579
DBNAME b_cereus_atcc_4342 [
+ comment: "SpeciesIdentifier=72"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 434,439 ****
--- 464,470 ----
ALIAS 526977 b_cereus_atcc_4342
DBNAME b_cereus_b4264 [
+ comment: "SpeciesIdentifier=23"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 442,447 ****
--- 473,479 ----
ALIAS 405532 b_cereus_b4264
DBNAME b_cereus_bdrd_bcer4 [
+ comment: "SpeciesIdentifier=62"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 450,455 ****
--- 482,488 ----
ALIAS 526978 b_cereus_bdrd_bcer4
DBNAME b_cereus_bdrd_st196 [
+ comment: "SpeciesIdentifier=34"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 458,463 ****
--- 491,497 ----
ALIAS 526976 b_cereus_bdrd_st196
DBNAME b_cereus_bdrd_st24 [
+ comment: "SpeciesIdentifier=37"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 466,471 ****
--- 500,506 ----
ALIAS 526974 b_cereus_bdrd_st24
DBNAME b_cereus_bdrd_st26 [
+ comment: "SpeciesIdentifier=39"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 474,479 ****
--- 509,515 ----
ALIAS 526975 b_cereus_bdrd_st26
DBNAME b_cereus_bgsc_6e1 [
+ comment: "SpeciesIdentifier=67"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 482,487 ****
--- 518,524 ----
ALIAS 526970 b_cereus_bgsc_6e1
DBNAME b_cereus_cytotoxis [
+ comment: "SpeciesIdentifier=8"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 490,495 ****
--- 527,533 ----
ALIAS 315749 b_cereus_cytotoxis
DBNAME b_cereus_f65185 [
+ comment: "SpeciesIdentifier=30"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 498,503 ****
--- 536,542 ----
ALIAS 526989 b_cereus_f65185
DBNAME b_cereus_g9842 [
+ comment: "SpeciesIdentifier=22"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 506,511 ****
--- 545,551 ----
ALIAS 405531 b_cereus_g9842
DBNAME b_cereus_m1293 [
+ comment: "SpeciesIdentifier=40"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 514,519 ****
--- 554,560 ----
ALIAS 526973 b_cereus_m1293
DBNAME b_cereus_mm1550 [
+ comment: "SpeciesIdentifier=65"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 522,527 ****
--- 563,569 ----
ALIAS 526969 b_cereus_mm1550
DBNAME b_cereus_mm3 [
+ comment: "SpeciesIdentifier=52"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 530,535 ****
--- 572,578 ----
ALIAS 526971 b_cereus_mm3
DBNAME b_cereus_q1 [
+ comment: "SpeciesIdentifier=21"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 538,543 ****
--- 581,587 ----
ALIAS 361100 b_cereus_q1
DBNAME b_cereus_r309803 [
+ comment: "SpeciesIdentifier=33"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 546,551 ****
--- 590,596 ----
ALIAS 526968 b_cereus_r309803
DBNAME b_cereus_rock1_15 [
+ comment: "SpeciesIdentifier=42"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 554,559 ****
--- 599,605 ----
ALIAS 526982 b_cereus_rock1_15
DBNAME b_cereus_rock1_3 [
+ comment: "SpeciesIdentifier=78"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 562,567 ****
--- 608,614 ----
ALIAS 526981 b_cereus_rock1_3
DBNAME b_cereus_rock3_28 [
+ comment: "SpeciesIdentifier=57"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 570,575 ****
--- 617,623 ----
ALIAS 526983 b_cereus_rock3_28
DBNAME b_cereus_rock3_29 [
+ comment: "SpeciesIdentifier=51"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 578,583 ****
--- 626,632 ----
ALIAS 526984 b_cereus_rock3_29
DBNAME b_cereus_rock3_42 [
+ comment: "SpeciesIdentifier=77"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 586,591 ****
--- 635,641 ----
ALIAS 526985 b_cereus_rock3_42
DBNAME b_cereus_rock3_44 [
+ comment: "SpeciesIdentifier=48"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 594,599 ****
--- 644,650 ----
ALIAS 526986 b_cereus_rock3_44
DBNAME b_cereus_rock4_18 [
+ comment: "SpeciesIdentifier=55"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 602,607 ****
--- 653,659 ----
ALIAS 526988 b_cereus_rock4_18
DBNAME b_cereus_rock4_2 [
+ comment: "SpeciesIdentifier=76"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 610,615 ****
--- 662,668 ----
ALIAS 526987 b_cereus_rock4_2
DBNAME b_cereus_var_anthracis [
+ comment: "SpeciesIdentifier=69"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 618,623 ****
--- 671,677 ----
ALIAS 637380 b_cereus_var_anthracis
DBNAME b_cereus_zk [
+ comment: "SpeciesIdentifier=9"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 626,631 ****
--- 680,686 ----
ALIAS 288681 b_cereus_zk
DBNAME b_clausii [
+ comment: "SpeciesIdentifier=10"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 634,639 ****
--- 689,695 ----
ALIAS 66692 b_clausii
DBNAME b_duttonii [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/borrelia_collection_core_9_62_1a"
***************
*** 642,647 ****
--- 698,704 ----
ALIAS 412419 b_duttonii
DBNAME b_garinii [
+ comment: "SpeciesIdentifier=7"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/borrelia_collection_core_9_62_1a"
***************
*** 650,655 ****
--- 707,713 ----
ALIAS 290434 b_garinii
DBNAME b_halodurans [
+ comment: "SpeciesIdentifier=11"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 658,663 ****
--- 716,722 ----
ALIAS 272558 b_halodurans
DBNAME b_hermsii [
+ comment: "SpeciesIdentifier=6"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/borrelia_collection_core_9_62_1a"
***************
*** 666,671 ****
--- 725,731 ----
ALIAS 314723 b_hermsii
DBNAME b_licheniformis_goettingen [
+ comment: "SpeciesIdentifier=12"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 674,679 ****
--- 734,740 ----
ALIAS 279010 b_licheniformis_goettingen
DBNAME b_licheniformis_novozymes [
+ comment: "SpeciesIdentifier=13"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 681,686 ****
--- 742,748 ----
DBNAME b_megaterium_atcc_12872 [
+ comment: "SpeciesIdentifier=73"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 689,694 ****
--- 751,757 ----
ALIAS 545693 b_megaterium_atcc_12872
DBNAME b_megaterium_dsm_319 [
+ comment: "SpeciesIdentifier=80"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 697,702 ****
--- 760,766 ----
ALIAS 592022 b_megaterium_dsm_319
DBNAME b_mycoides_dsm_2048 [
+ comment: "SpeciesIdentifier=47"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 705,710 ****
--- 769,775 ----
ALIAS 526997 b_mycoides_dsm_2048
DBNAME b_mycoides_rock1_4 [
+ comment: "SpeciesIdentifier=28"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 713,718 ****
--- 778,784 ----
ALIAS 526998 b_mycoides_rock1_4
DBNAME b_mycoides_rock3_17 [
+ comment: "SpeciesIdentifier=59"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 721,726 ****
--- 787,793 ----
ALIAS 526999 b_mycoides_rock3_17
DBNAME b_pseudofirmus [
+ comment: "SpeciesIdentifier=54"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 729,734 ****
--- 796,802 ----
ALIAS 398511 b_pseudofirmus
DBNAME b_pseudomycoides [
+ comment: "SpeciesIdentifier=58"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 737,742 ****
--- 805,811 ----
ALIAS 527000 b_pseudomycoides
DBNAME b_pumilus [
+ comment: "SpeciesIdentifier=14"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 745,750 ****
--- 814,820 ----
ALIAS 315750 b_pumilus
DBNAME b_recurrentis [
+ comment: "SpeciesIdentifier=5"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/borrelia_collection_core_9_62_1a"
***************
*** 753,758 ****
--- 823,829 ----
ALIAS 412418 b_recurrentis
DBNAME b_selenitireducens [
+ comment: "SpeciesIdentifier=32"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 761,766 ****
--- 832,838 ----
ALIAS 439292 b_selenitireducens
DBNAME b_subtilis [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 769,774 ****
--- 841,847 ----
ALIAS 224308 b_subtilis
DBNAME b_thuringiensis [
+ comment: "SpeciesIdentifier=15"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 777,782 ****
--- 850,856 ----
ALIAS 412694 b_thuringiensis
DBNAME b_thuringiensis_atcc_10792 [
+ comment: "SpeciesIdentifier=41"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 785,790 ****
--- 859,865 ----
ALIAS 527031 b_thuringiensis_atcc_10792
DBNAME b_thuringiensis_bgsc_4aj1 [
+ comment: "SpeciesIdentifier=75"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 793,798 ****
--- 868,874 ----
ALIAS 527022 b_thuringiensis_bgsc_4aj1
DBNAME b_thuringiensis_bgsc_4aw1_andalous [
+ comment: "SpeciesIdentifier=56"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 801,806 ****
--- 877,883 ----
ALIAS 527032 b_thuringiensis_bgsc_4aw1_andalous
DBNAME b_thuringiensis_bgsc_4ba1_pondicheri [
+ comment: "SpeciesIdentifier=29"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 809,814 ****
--- 886,892 ----
ALIAS 527029 b_thuringiensis_bgsc_4ba1_pondicheri
DBNAME b_thuringiensis_bgsc_4bd1_huazhong [
+ comment: "SpeciesIdentifier=31"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 817,822 ****
--- 895,901 ----
ALIAS 527030 b_thuringiensis_bgsc_4bd1_huazhong
DBNAME b_thuringiensis_bgsc_4cc1_pulsiensis [
+ comment: "SpeciesIdentifier=35"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 825,830 ****
--- 904,910 ----
ALIAS 527028 b_thuringiensis_bgsc_4cc1_pulsiensis
DBNAME b_thuringiensis_bgsc_4y1_tochigiensis [
+ comment: "SpeciesIdentifier=44"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 833,838 ****
--- 913,919 ----
ALIAS 527024 b_thuringiensis_bgsc_4y1_tochigiensis
DBNAME b_thuringiensis_bmb171 [
+ comment: "SpeciesIdentifier=68"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 841,846 ****
--- 922,928 ----
ALIAS 714359 b_thuringiensis_bmb171
DBNAME b_thuringiensis_bt407 [
+ comment: "SpeciesIdentifier=26"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 849,854 ****
--- 931,937 ----
ALIAS 527021 b_thuringiensis_bt407
DBNAME b_thuringiensis_ibl200 [
+ comment: "SpeciesIdentifier=27"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 857,862 ****
--- 940,946 ----
ALIAS 527019 b_thuringiensis_ibl200
DBNAME b_thuringiensis_ibl4222 [
+ comment: "SpeciesIdentifier=64"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 865,870 ****
--- 949,955 ----
ALIAS 527020 b_thuringiensis_ibl4222
DBNAME b_thuringiensis_konkukian [
+ comment: "SpeciesIdentifier=16"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 873,878 ****
--- 958,964 ----
ALIAS 281309 b_thuringiensis_konkukian
DBNAME b_thuringiensis_t01001 [
+ comment: "SpeciesIdentifier=60"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 881,886 ****
--- 967,973 ----
ALIAS 527025 b_thuringiensis_t01001
DBNAME b_thuringiensis_t03a001_kurstaki [
+ comment: "SpeciesIdentifier=63"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 889,894 ****
--- 976,982 ----
ALIAS 527023 b_thuringiensis_t03a001_kurstaki
DBNAME b_thuringiensis_t04001_sotto [
+ comment: "SpeciesIdentifier=61"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 897,902 ****
--- 985,991 ----
ALIAS 527026 b_thuringiensis_t04001_sotto
DBNAME b_thuringiensis_t13001_pakistani [
+ comment: "SpeciesIdentifier=45"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 905,910 ****
--- 994,1000 ----
ALIAS 527027 b_thuringiensis_t13001_pakistani
DBNAME b_turicatae [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/borrelia_collection_core_9_62_1a"
***************
*** 913,918 ****
--- 1003,1009 ----
ALIAS 314724 b_turicatae
DBNAME b_tusciae [
+ comment: "SpeciesIdentifier=79"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 921,926 ****
--- 1012,1018 ----
ALIAS 562970 b_tusciae
DBNAME b_weihenstephanensis [
+ comment: "SpeciesIdentifier=17"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/bacillus_collection_core_9_62_4a"
***************
*** 1221,1226 ****
--- 1313,1319 ----
]
DBNAME e_coli_042 [
+ comment: "SpeciesIdentifier=43"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1229,1240 ****
--- 1322,1335 ----
ALIAS 216592 e_coli_042
DBNAME e_coli_042_funcgen [
+ comment: "SpeciesIdentifier=43"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_55989 [
+ comment: "SpeciesIdentifier=26"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1243,1254 ****
--- 1338,1351 ----
ALIAS 585055 e_coli_55989
DBNAME e_coli_55989_funcgen [
+ comment: "SpeciesIdentifier=26"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_atcc_27325 [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1257,1268 ****
--- 1354,1367 ----
ALIAS 316407 e_coli_atcc_27325
DBNAME e_coli_atcc_27325_funcgen [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_atcc_33849 [
+ comment: "SpeciesIdentifier=39"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1271,1282 ****
--- 1370,1383 ----
ALIAS 536056 e_coli_atcc_33849
DBNAME e_coli_atcc_33849_funcgen [
+ comment: "SpeciesIdentifier=39"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_atcc_8739 [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1285,1296 ****
--- 1386,1399 ----
ALIAS 481805 e_coli_atcc_8739
DBNAME e_coli_atcc_8739_funcgen [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_bl21 [
+ comment: "SpeciesIdentifier=32"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1299,1310 ****
--- 1402,1415 ----
ALIAS 511693 e_coli_bl21
DBNAME e_coli_bl21_funcgen [
+ comment: "SpeciesIdentifier=32"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_bl21_de3_jgi [
+ comment: "SpeciesIdentifier=40"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1313,1324 ****
--- 1418,1431 ----
ALIAS 866768 e_coli_bl21_de3_jgi
DBNAME e_coli_bl21_de3_jgi_funcgen [
+ comment: "SpeciesIdentifier=40"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_bl21_de3_kribb [
+ comment: "SpeciesIdentifier=38"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1327,1338 ****
--- 1434,1447 ----
ALIAS 469008 e_coli_bl21_de3_kribb
DBNAME e_coli_bl21_de3_kribb_funcgen [
+ comment: "SpeciesIdentifier=38"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_bw2952 [
+ comment: "SpeciesIdentifier=31"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1341,1352 ****
--- 1450,1463 ----
ALIAS 595496 e_coli_bw2952
DBNAME e_coli_bw2952_funcgen [
+ comment: "SpeciesIdentifier=31"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_dh10b [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1355,1366 ****
--- 1466,1479 ----
ALIAS 316385 e_coli_dh10b
DBNAME e_coli_dh10b_funcgen [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_ec4115 [
+ comment: "SpeciesIdentifier=7"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1369,1380 ****
--- 1482,1495 ----
ALIAS 444450 e_coli_ec4115
DBNAME e_coli_ec4115_funcgen [
+ comment: "SpeciesIdentifier=7"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_edl933 [
+ comment: "SpeciesIdentifier=6"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1383,1394 ****
--- 1498,1511 ----
ALIAS 155864 e_coli_edl933
DBNAME e_coli_edl933_funcgen [
+ comment: "SpeciesIdentifier=6"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_k12 [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1397,1408 ****
--- 1514,1527 ----
ALIAS 511145 e_coli_k12
DBNAME e_coli_k12_funcgen [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o103_h2 [
+ comment: "SpeciesIdentifier=36"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1411,1422 ****
--- 1530,1543 ----
ALIAS 585395 e_coli_o103_h2
DBNAME e_coli_o103_h2_funcgen [
+ comment: "SpeciesIdentifier=36"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o111_h_ [
+ comment: "SpeciesIdentifier=37"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1425,1436 ****
--- 1546,1559 ----
ALIAS 585396 e_coli_o111_h_
DBNAME e_coli_o111_h__funcgen [
+ comment: "SpeciesIdentifier=37"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o127_h6 [
+ comment: "SpeciesIdentifier=23"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1439,1450 ****
--- 1562,1575 ----
ALIAS 574521 e_coli_o127_h6
DBNAME e_coli_o127_h6_funcgen [
+ comment: "SpeciesIdentifier=23"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o139_h28 [
+ comment: "SpeciesIdentifier=5"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1453,1464 ****
--- 1578,1591 ----
ALIAS 331111 e_coli_o139_h28
DBNAME e_coli_o139_h28_funcgen [
+ comment: "SpeciesIdentifier=5"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o157_h7_tw14588 [
+ comment: "SpeciesIdentifier=45"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1467,1478 ****
--- 1594,1607 ----
ALIAS 502346 e_coli_o157_h7_tw14588
DBNAME e_coli_o157_h7_tw14588_funcgen [
+ comment: "SpeciesIdentifier=45"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o17_k52_h18 [
+ comment: "SpeciesIdentifier=24"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1481,1492 ****
--- 1610,1623 ----
ALIAS 585056 e_coli_o17_k52_h18
DBNAME e_coli_o17_k52_h18_funcgen [
+ comment: "SpeciesIdentifier=24"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o18_k1_h7 [
+ comment: "SpeciesIdentifier=46"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1495,1506 ****
--- 1626,1639 ----
ALIAS 714962 e_coli_o18_k1_h7
DBNAME e_coli_o18_k1_h7_funcgen [
+ comment: "SpeciesIdentifier=46"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o1_k1_apec [
+ comment: "SpeciesIdentifier=8"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1509,1520 ****
--- 1642,1655 ----
ALIAS 405955 e_coli_o1_k1_apec
DBNAME e_coli_o1_k1_apec_funcgen [
+ comment: "SpeciesIdentifier=8"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o26_h11 [
+ comment: "SpeciesIdentifier=35"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1523,1534 ****
--- 1658,1671 ----
ALIAS 573235 e_coli_o26_h11
DBNAME e_coli_o26_h11_funcgen [
+ comment: "SpeciesIdentifier=35"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o45_k1 [
+ comment: "SpeciesIdentifier=28"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1537,1548 ****
--- 1674,1687 ----
ALIAS 585035 e_coli_o45_k1
DBNAME e_coli_o45_k1_funcgen [
+ comment: "SpeciesIdentifier=28"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o55_h7 [
+ comment: "SpeciesIdentifier=44"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1551,1562 ****
--- 1690,1703 ----
ALIAS 701177 e_coli_o55_h7
DBNAME e_coli_o55_h7_funcgen [
+ comment: "SpeciesIdentifier=44"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o6 [
+ comment: "SpeciesIdentifier=9"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1565,1576 ****
--- 1706,1719 ----
ALIAS 217992 e_coli_o6
DBNAME e_coli_o6_funcgen [
+ comment: "SpeciesIdentifier=9"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o6_k15_h31 [
+ comment: "SpeciesIdentifier=10"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1579,1590 ****
--- 1722,1735 ----
ALIAS 362663 e_coli_o6_k15_h31
DBNAME e_coli_o6_k15_h31_funcgen [
+ comment: "SpeciesIdentifier=10"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o7_k1 [
+ comment: "SpeciesIdentifier=30"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1593,1604 ****
--- 1738,1751 ----
ALIAS 585057 e_coli_o7_k1
DBNAME e_coli_o7_k1_funcgen [
+ comment: "SpeciesIdentifier=30"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o8 [
+ comment: "SpeciesIdentifier=27"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1607,1618 ****
--- 1754,1767 ----
ALIAS 585034 e_coli_o8
DBNAME e_coli_o8_funcgen [
+ comment: "SpeciesIdentifier=27"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o81 [
+ comment: "SpeciesIdentifier=29"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1621,1632 ****
--- 1770,1783 ----
ALIAS 585397 e_coli_o81
DBNAME e_coli_o81_funcgen [
+ comment: "SpeciesIdentifier=29"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_o9_h4 [
+ comment: "SpeciesIdentifier=11"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1635,1646 ****
--- 1786,1799 ----
ALIAS 331112 e_coli_o9_h4
DBNAME e_coli_o9_h4_funcgen [
+ comment: "SpeciesIdentifier=11"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_rel606 [
+ comment: "SpeciesIdentifier=33"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1649,1660 ****
--- 1802,1815 ----
ALIAS 413997 e_coli_rel606
DBNAME e_coli_rel606_funcgen [
+ comment: "SpeciesIdentifier=33"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_sakai [
+ comment: "SpeciesIdentifier=12"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1663,1674 ****
--- 1818,1831 ----
ALIAS 386585 e_coli_sakai
DBNAME e_coli_sakai_funcgen [
+ comment: "SpeciesIdentifier=12"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_se11 [
+ comment: "SpeciesIdentifier=22"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1677,1688 ****
--- 1834,1847 ----
ALIAS 409438 e_coli_se11
DBNAME e_coli_se11_funcgen [
+ comment: "SpeciesIdentifier=22"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_se15 [
+ comment: "SpeciesIdentifier=42"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1691,1702 ****
--- 1850,1863 ----
ALIAS 431946 e_coli_se15
DBNAME e_coli_se15_funcgen [
+ comment: "SpeciesIdentifier=42"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_sms_3_5 [
+ comment: "SpeciesIdentifier=13"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1705,1716 ****
--- 1866,1879 ----
ALIAS 439855 e_coli_sms_3_5
DBNAME e_coli_sms_3_5_funcgen [
+ comment: "SpeciesIdentifier=13"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_tw14359 [
+ comment: "SpeciesIdentifier=34"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1719,1730 ****
--- 1882,1895 ----
ALIAS 544404 e_coli_tw14359
DBNAME e_coli_tw14359_funcgen [
+ comment: "SpeciesIdentifier=34"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_coli_uti89 [
+ comment: "SpeciesIdentifier=14"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1733,1744 ****
--- 1898,1911 ----
ALIAS 364106 e_coli_uti89
DBNAME e_coli_uti89_funcgen [
+ comment: "SpeciesIdentifier=14"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME e_fergusonii [
+ comment: "SpeciesIdentifier=25"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 1747,1752 ****
--- 1914,1920 ----
ALIAS 585054 e_fergusonii
DBNAME e_fergusonii_funcgen [
+ comment: "SpeciesIdentifier=25"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
***************
*** 1843,1848 ****
--- 2011,2017 ----
]
DBNAME mycobacterium_sp_jls [
+ comment: "SpeciesIdentifier=11"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1851,1856 ****
--- 2020,2026 ----
ALIAS 164757 mycobacterium_sp_jls
DBNAME mycobacterium_sp_kms [
+ comment: "SpeciesIdentifier=12"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1859,1864 ****
--- 2029,2035 ----
ALIAS 189918 mycobacterium_sp_kms
DBNAME mycobacterium_sp_mcs [
+ comment: "SpeciesIdentifier=13"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1867,1872 ****
--- 2038,2044 ----
ALIAS 164756 mycobacterium_sp_mcs
DBNAME m_abscessus [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1875,1880 ****
--- 2047,2053 ----
ALIAS 36809 m_abscessus
DBNAME m_avium [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1883,1888 ****
--- 2056,2062 ----
ALIAS 243243 m_avium
DBNAME m_bovis_af2122_97 [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1891,1896 ****
--- 2065,2071 ----
ALIAS 233413 m_bovis_af2122_97
DBNAME m_bovis_pasteur_1173p2 [
+ comment: "SpeciesIdentifier=5"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1899,1904 ****
--- 2074,2080 ----
ALIAS 410289 m_bovis_pasteur_1173p2
DBNAME m_bovis_tokyo_172 [
+ comment: "SpeciesIdentifier=19"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1907,1912 ****
--- 2083,2089 ----
ALIAS 561275 m_bovis_tokyo_172
DBNAME m_gilvum [
+ comment: "SpeciesIdentifier=6"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1915,1920 ****
--- 2092,2098 ----
ALIAS 350054 m_gilvum
DBNAME m_leprae_br4923 [
+ comment: "SpeciesIdentifier=18"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1923,1928 ****
--- 2101,2107 ----
ALIAS 561304 m_leprae_br4923
DBNAME m_leprae_tn [
+ comment: "SpeciesIdentifier=7"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1931,1936 ****
--- 2110,2116 ----
ALIAS 272631 m_leprae_tn
DBNAME m_marinum [
+ comment: "SpeciesIdentifier=8"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1939,1944 ****
--- 2119,2125 ----
ALIAS 216594 m_marinum
DBNAME m_paratuberculosis [
+ comment: "SpeciesIdentifier=9"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1947,1952 ****
--- 2128,2134 ----
ALIAS 262316 m_paratuberculosis
DBNAME m_smegmatis [
+ comment: "SpeciesIdentifier=10"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1955,1960 ****
--- 2137,2143 ----
ALIAS 246196 m_smegmatis
DBNAME m_tuberculosis_atcc_25177 [
+ comment: "SpeciesIdentifier=14"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1963,1968 ****
--- 2146,2152 ----
ALIAS 419947 m_tuberculosis_atcc_25177
DBNAME m_tuberculosis_cdc1551 [
+ comment: "SpeciesIdentifier=15"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1971,1976 ****
--- 2155,2161 ----
ALIAS 83331 m_tuberculosis_cdc1551
DBNAME m_tuberculosis_h37rv [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1979,1984 ****
--- 2164,2170 ----
ALIAS 83332 m_tuberculosis_h37rv
DBNAME m_tuberculosis_kzn_1435 [
+ comment: "SpeciesIdentifier=21"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1987,1992 ****
--- 2173,2179 ----
ALIAS 478434 m_tuberculosis_kzn_1435
DBNAME m_ulcerans [
+ comment: "SpeciesIdentifier=16"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 1995,2000 ****
--- 2182,2188 ----
ALIAS 362242 m_ulcerans
DBNAME m_vanbaalenii [
+ comment: "SpeciesIdentifier=17"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/mycobacterium_collection_core_9_62_3a"
***************
*** 2030,2035 ****
--- 2218,2224 ----
ALIAS n_crassa neurospora_crassa
DBNAME n_gonorrhoeae_atcc_700825 [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/neisseria_collection_core_9_62_3a"
***************
*** 2038,2043 ****
--- 2227,2233 ----
ALIAS 242231 n_gonorrhoeae_atcc_700825
DBNAME n_gonorrhoeae_nccp11945 [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/neisseria_collection_core_9_62_3a"
***************
*** 2046,2051 ****
--- 2236,2242 ----
ALIAS 521006 n_gonorrhoeae_nccp11945
DBNAME n_meningitidis_053442 [
+ comment: "SpeciesIdentifier=6"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/neisseria_collection_core_9_62_3a"
***************
*** 2054,2059 ****
--- 2245,2251 ----
ALIAS 374833 n_meningitidis_053442
DBNAME n_meningitidis_2a [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/neisseria_collection_core_9_62_3a"
***************
*** 2062,2067 ****
--- 2254,2260 ----
ALIAS 272831 n_meningitidis_2a
DBNAME n_meningitidis_8013 [
+ comment: "SpeciesIdentifier=8"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/neisseria_collection_core_9_62_3a"
***************
*** 2070,2075 ****
--- 2263,2269 ----
ALIAS 604162 n_meningitidis_8013
DBNAME n_meningitidis_a [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/neisseria_collection_core_9_62_3a"
***************
*** 2078,2083 ****
--- 2272,2278 ----
ALIAS 122587 n_meningitidis_a
DBNAME n_meningitidis_alpha14 [
+ comment: "SpeciesIdentifier=7"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/neisseria_collection_core_9_62_3a"
***************
*** 2086,2091 ****
--- 2281,2287 ----
ALIAS 487 n_meningitidis_alpha14
DBNAME n_meningitidis_b [
+ comment: "SpeciesIdentifier=5"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/neisseria_collection_core_9_62_3a"
***************
*** 2330,2335 ****
--- 2526,2532 ----
]
DBNAME p_abyssi [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/pyrococcus_collection_core_9_62_1a"
***************
*** 2338,2343 ****
--- 2535,2541 ----
ALIAS 272844 p_abyssi
DBNAME p_furiosus [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/pyrococcus_collection_core_9_62_1a"
***************
*** 2346,2351 ****
--- 2544,2550 ----
ALIAS 186497 p_furiosus
DBNAME p_horikoshii [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/pyrococcus_collection_core_9_62_1a"
***************
*** 2354,2359 ****
--- 2553,2559 ----
ALIAS 70601 p_horikoshii
DBNAME p_kodakaraensis [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/pyrococcus_collection_core_9_62_1a"
***************
*** 2428,2433 ****
--- 2628,2634 ----
ALIAS 7668 strongylocentrotus_purpuratus
DBNAME s_agalactiae_ia [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2436,2441 ****
--- 2637,2643 ----
ALIAS 205921 s_agalactiae_ia
DBNAME s_agalactiae_iii [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2444,2449 ****
--- 2646,2652 ----
ALIAS 211110 s_agalactiae_iii
DBNAME s_agalactiae_v [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2452,2457 ****
--- 2655,2661 ----
ALIAS 208435 s_agalactiae_v
DBNAME s_aureus_04_02981 [
+ comment: "SpeciesIdentifier=24"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2460,2471 ****
--- 2664,2677 ----
ALIAS 703339 s_aureus_04_02981
DBNAME s_aureus_04_02981_funcgen [
+ comment: "SpeciesIdentifier=24"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_bovine_rf122 [
+ comment: "SpeciesIdentifier=5"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2474,2485 ****
--- 2680,2693 ----
ALIAS 273036 s_aureus_bovine_rf122
DBNAME s_aureus_bovine_rf122_funcgen [
+ comment: "SpeciesIdentifier=5"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_col [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2488,2499 ****
--- 2696,2709 ----
ALIAS 93062 s_aureus_col
DBNAME s_aureus_col_funcgen [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_ed133 [
+ comment: "SpeciesIdentifier=25"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2502,2513 ****
--- 2712,2725 ----
ALIAS 685039 s_aureus_ed133
DBNAME s_aureus_ed133_funcgen [
+ comment: "SpeciesIdentifier=25"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_ed98 [
+ comment: "SpeciesIdentifier=21"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2516,2527 ****
--- 2728,2741 ----
ALIAS 681288 s_aureus_ed98
DBNAME s_aureus_ed98_funcgen [
+ comment: "SpeciesIdentifier=21"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_jh1 [
+ comment: "SpeciesIdentifier=6"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2530,2541 ****
--- 2744,2757 ----
ALIAS 359787 s_aureus_jh1
DBNAME s_aureus_jh1_funcgen [
+ comment: "SpeciesIdentifier=6"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_jh9 [
+ comment: "SpeciesIdentifier=7"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2544,2555 ****
--- 2760,2773 ----
ALIAS 359786 s_aureus_jh9
DBNAME s_aureus_jh9_funcgen [
+ comment: "SpeciesIdentifier=7"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_jkd6008 [
+ comment: "SpeciesIdentifier=26"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2558,2569 ****
--- 2776,2789 ----
ALIAS 546342 s_aureus_jkd6008
DBNAME s_aureus_jkd6008_funcgen [
+ comment: "SpeciesIdentifier=26"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_jkd6159 [
+ comment: "SpeciesIdentifier=23"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2572,2583 ****
--- 2792,2805 ----
ALIAS 869816 s_aureus_jkd6159
DBNAME s_aureus_jkd6159_funcgen [
+ comment: "SpeciesIdentifier=23"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_mrsa252 [
+ comment: "SpeciesIdentifier=8"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2586,2597 ****
--- 2808,2821 ----
ALIAS 282458 s_aureus_mrsa252
DBNAME s_aureus_mrsa252_funcgen [
+ comment: "SpeciesIdentifier=8"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_mssa476 [
+ comment: "SpeciesIdentifier=9"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2600,2611 ****
--- 2824,2837 ----
ALIAS 282459 s_aureus_mssa476
DBNAME s_aureus_mssa476_funcgen [
+ comment: "SpeciesIdentifier=9"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_mu3 [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2614,2625 ****
--- 2840,2853 ----
ALIAS 418127 s_aureus_mu3
DBNAME s_aureus_mu3_funcgen [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_mu50 [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2628,2639 ****
--- 2856,2869 ----
ALIAS 158878 s_aureus_mu50
DBNAME s_aureus_mu50_funcgen [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_mw2 [
+ comment: "SpeciesIdentifier=10"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2642,2653 ****
--- 2872,2885 ----
ALIAS 196620 s_aureus_mw2
DBNAME s_aureus_mw2_funcgen [
+ comment: "SpeciesIdentifier=10"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_n315 [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2656,2667 ****
--- 2888,2901 ----
ALIAS 158879 s_aureus_n315
DBNAME s_aureus_n315_funcgen [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_nctc_8325 [
+ comment: "SpeciesIdentifier=11"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2670,2681 ****
--- 2904,2917 ----
ALIAS 93061 s_aureus_nctc_8325
DBNAME s_aureus_nctc_8325_funcgen [
+ comment: "SpeciesIdentifier=11"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_newman [
+ comment: "SpeciesIdentifier=12"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2684,2695 ****
--- 2920,2933 ----
ALIAS 426430 s_aureus_newman
DBNAME s_aureus_newman_funcgen [
+ comment: "SpeciesIdentifier=12"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_st398 [
+ comment: "SpeciesIdentifier=20"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2698,2709 ****
--- 2936,2949 ----
ALIAS 523796 s_aureus_st398
DBNAME s_aureus_st398_funcgen [
+ comment: "SpeciesIdentifier=20"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_tch1516 [
+ comment: "SpeciesIdentifier=13"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2712,2723 ****
--- 2952,2965 ----
ALIAS 451516 s_aureus_tch1516
DBNAME s_aureus_tch1516_funcgen [
+ comment: "SpeciesIdentifier=13"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_tw20 [
+ comment: "SpeciesIdentifier=22"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2726,2737 ****
--- 2968,2981 ----
ALIAS 663951 s_aureus_tw20
DBNAME s_aureus_tw20_funcgen [
+ comment: "SpeciesIdentifier=22"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_aureus_usa300 [
+ comment: "SpeciesIdentifier=14"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2740,2751 ****
--- 2984,2997 ----
ALIAS 451515 s_aureus_usa300
DBNAME s_aureus_usa300_funcgen [
+ comment: "SpeciesIdentifier=14"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_boydii_18 [
+ comment: "SpeciesIdentifier=15"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 2754,2765 ****
--- 3000,3013 ----
ALIAS 344609 s_boydii_18
DBNAME s_boydii_18_funcgen [
+ comment: "SpeciesIdentifier=15"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME s_boydii_4 [
+ comment: "SpeciesIdentifier=16"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 2768,2779 ****
--- 3016,3029 ----
ALIAS 300268 s_boydii_4
DBNAME s_boydii_4_funcgen [
+ comment: "SpeciesIdentifier=16"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME s_carnosus [
+ comment: "SpeciesIdentifier=19"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2782,2793 ****
--- 3032,3045 ----
ALIAS 396513 s_carnosus
DBNAME s_carnosus_funcgen [
+ comment: "SpeciesIdentifier=19"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_dysenteriae [
+ comment: "SpeciesIdentifier=17"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 2796,2807 ****
--- 3048,3061 ----
ALIAS 300267 s_dysenteriae
DBNAME s_dysenteriae_funcgen [
+ comment: "SpeciesIdentifier=17"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME s_dysgalactiae [
+ comment: "SpeciesIdentifier=40"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2810,2815 ****
--- 3064,3070 ----
ALIAS 486410 s_dysgalactiae
DBNAME s_epidermidis_atcc_12228 [
+ comment: "SpeciesIdentifier=15"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2818,2829 ****
--- 3073,3086 ----
ALIAS 176280 s_epidermidis_atcc_12228
DBNAME s_epidermidis_atcc_12228_funcgen [
+ comment: "SpeciesIdentifier=15"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_epidermidis_atcc_35984 [
+ comment: "SpeciesIdentifier=16"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2832,2843 ****
--- 3089,3102 ----
ALIAS 176279 s_epidermidis_atcc_35984
DBNAME s_epidermidis_atcc_35984_funcgen [
+ comment: "SpeciesIdentifier=16"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_equi [
+ comment: "SpeciesIdentifier=33"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2846,2851 ****
--- 3105,3111 ----
ALIAS 553482 s_equi
DBNAME s_equi_mgcs10565 [
+ comment: "SpeciesIdentifier=5"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2854,2859 ****
--- 3114,3120 ----
ALIAS 552526 s_equi_mgcs10565
DBNAME s_equi_zooepidemicus [
+ comment: "SpeciesIdentifier=32"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2862,2867 ****
--- 3123,3129 ----
ALIAS 40041 s_equi_zooepidemicus
DBNAME s_flexneri_2457t [
+ comment: "SpeciesIdentifier=18"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 2870,2881 ****
--- 3132,3145 ----
ALIAS 198215 s_flexneri_2457t
DBNAME s_flexneri_2457t_funcgen [
+ comment: "SpeciesIdentifier=18"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME s_flexneri_301 [
+ comment: "SpeciesIdentifier=19"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 2884,2895 ****
--- 3148,3161 ----
ALIAS 198214 s_flexneri_301
DBNAME s_flexneri_301_funcgen [
+ comment: "SpeciesIdentifier=19"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME s_flexneri_5b [
+ comment: "SpeciesIdentifier=20"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 2898,2909 ****
--- 3164,3177 ----
ALIAS 373384 s_flexneri_5b
DBNAME s_flexneri_5b_funcgen [
+ comment: "SpeciesIdentifier=20"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME s_flexneri_x [
+ comment: "SpeciesIdentifier=41"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 2912,2923 ****
--- 3180,3193 ----
ALIAS 591020 s_flexneri_x
DBNAME s_flexneri_x_funcgen [
+ comment: "SpeciesIdentifier=41"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME s_gallolyticus [
+ comment: "SpeciesIdentifier=45"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2926,2931 ****
--- 3196,3202 ----
ALIAS 637909 s_gallolyticus
DBNAME s_gordonii [
+ comment: "SpeciesIdentifier=6"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2934,2939 ****
--- 3205,3211 ----
ALIAS 467705 s_gordonii
DBNAME s_haemolyticus [
+ comment: "SpeciesIdentifier=17"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2942,2953 ****
--- 3214,3227 ----
ALIAS 279808 s_haemolyticus
DBNAME s_haemolyticus_funcgen [
+ comment: "SpeciesIdentifier=17"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_lugdunensis [
+ comment: "SpeciesIdentifier=27"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 2956,2967 ****
--- 3230,3243 ----
ALIAS 698737 s_lugdunensis
DBNAME s_lugdunensis_funcgen [
+ comment: "SpeciesIdentifier=27"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_mitis [
+ comment: "SpeciesIdentifier=48"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2970,2975 ****
--- 3246,3252 ----
ALIAS 365659 s_mitis
DBNAME s_mutans_atcc_700610 [
+ comment: "SpeciesIdentifier=7"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2978,2983 ****
--- 3255,3261 ----
ALIAS 210007 s_mutans_atcc_700610
DBNAME s_mutans_nn2025 [
+ comment: "SpeciesIdentifier=44"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2986,2991 ****
--- 3264,3270 ----
ALIAS 511691 s_mutans_nn2025
DBNAME s_pneumoniae_70585 [
+ comment: "SpeciesIdentifier=34"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 2994,2999 ****
--- 3273,3279 ----
ALIAS 488221 s_pneumoniae_70585
DBNAME s_pneumoniae_a19 [
+ comment: "SpeciesIdentifier=49"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3002,3007 ****
--- 3282,3288 ----
ALIAS 525381 s_pneumoniae_a19
DBNAME s_pneumoniae_atcc_700669 [
+ comment: "SpeciesIdentifier=39"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3010,3015 ****
--- 3291,3297 ----
ALIAS 561276 s_pneumoniae_atcc_700669
DBNAME s_pneumoniae_atcc_baa_255 [
+ comment: "SpeciesIdentifier=8"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3018,3023 ****
--- 3300,3306 ----
ALIAS 171101 s_pneumoniae_atcc_baa_255
DBNAME s_pneumoniae_cgsp14 [
+ comment: "SpeciesIdentifier=9"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3026,3031 ****
--- 3309,3315 ----
ALIAS 516950 s_pneumoniae_cgsp14
DBNAME s_pneumoniae_d39 [
+ comment: "SpeciesIdentifier=10"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3034,3039 ****
--- 3318,3324 ----
ALIAS 373153 s_pneumoniae_d39
DBNAME s_pneumoniae_g54 [
+ comment: "SpeciesIdentifier=11"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3042,3047 ****
--- 3327,3333 ----
ALIAS 512566 s_pneumoniae_g54
DBNAME s_pneumoniae_hungary19a_6 [
+ comment: "SpeciesIdentifier=12"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3050,3055 ****
--- 3336,3342 ----
ALIAS 487214 s_pneumoniae_hungary19a_6
DBNAME s_pneumoniae_jja [
+ comment: "SpeciesIdentifier=35"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3058,3063 ****
--- 3345,3351 ----
ALIAS 488222 s_pneumoniae_jja
DBNAME s_pneumoniae_p1031 [
+ comment: "SpeciesIdentifier=37"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3066,3071 ****
--- 3354,3360 ----
ALIAS 488223 s_pneumoniae_p1031
DBNAME s_pneumoniae_taiwan19f_14 [
+ comment: "SpeciesIdentifier=36"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3074,3079 ****
--- 3363,3369 ----
ALIAS 487213 s_pneumoniae_taiwan19f_14
DBNAME s_pneumoniae_tigr4 [
+ comment: "SpeciesIdentifier=13"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3082,3087 ****
--- 3372,3378 ----
ALIAS 170187 s_pneumoniae_tigr4
DBNAME s_pyogenes_atcc_baa_595 [
+ comment: "SpeciesIdentifier=17"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3090,3095 ****
--- 3381,3387 ----
ALIAS 198466 s_pyogenes_atcc_baa_595
DBNAME s_pyogenes_m18 [
+ comment: "SpeciesIdentifier=15"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3098,3103 ****
--- 3390,3396 ----
ALIAS 186103 s_pyogenes_m18
DBNAME s_pyogenes_m2 [
+ comment: "SpeciesIdentifier=20"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3106,3111 ****
--- 3399,3405 ----
ALIAS 370552 s_pyogenes_m2
DBNAME s_pyogenes_m28 [
+ comment: "SpeciesIdentifier=16"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3114,3119 ****
--- 3408,3414 ----
ALIAS 319701 s_pyogenes_m28
DBNAME s_pyogenes_m4 [
+ comment: "SpeciesIdentifier=21"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3122,3127 ****
--- 3417,3423 ----
ALIAS 370554 s_pyogenes_m4
DBNAME s_pyogenes_m49 [
+ comment: "SpeciesIdentifier=25"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3130,3135 ****
--- 3426,3432 ----
ALIAS 471876 s_pyogenes_m49
DBNAME s_pyogenes_m5 [
+ comment: "SpeciesIdentifier=24"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3138,3143 ****
--- 3435,3441 ----
ALIAS 160491 s_pyogenes_m5
DBNAME s_pyogenes_m6 [
+ comment: "SpeciesIdentifier=19"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3146,3151 ****
--- 3444,3450 ----
ALIAS 286636 s_pyogenes_m6
DBNAME s_pyogenes_mgas2096 [
+ comment: "SpeciesIdentifier=22"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3154,3159 ****
--- 3453,3459 ----
ALIAS 370553 s_pyogenes_mgas2096
DBNAME s_pyogenes_mgas5005 [
+ comment: "SpeciesIdentifier=14"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3162,3167 ****
--- 3462,3468 ----
ALIAS 293653 s_pyogenes_mgas5005
DBNAME s_pyogenes_mgas9429 [
+ comment: "SpeciesIdentifier=23"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3170,3175 ****
--- 3471,3477 ----
ALIAS 370551 s_pyogenes_mgas9429
DBNAME s_pyogenes_sf370 [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3178,3183 ****
--- 3480,3486 ----
ALIAS 160490 s_pyogenes_sf370
DBNAME s_pyogenes_ssi_1 [
+ comment: "SpeciesIdentifier=18"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3186,3191 ****
--- 3489,3495 ----
ALIAS 193567 s_pyogenes_ssi_1
DBNAME s_sanguinis [
+ comment: "SpeciesIdentifier=26"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3194,3199 ****
--- 3498,3504 ----
ALIAS 388919 s_sanguinis
DBNAME s_saprophyticus [
+ comment: "SpeciesIdentifier=18"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_core_9_62_4a"
***************
*** 3202,3213 ****
--- 3507,3520 ----
ALIAS 342451 s_saprophyticus
DBNAME s_saprophyticus_funcgen [
+ comment: "SpeciesIdentifier=18"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/staphylococcus_collection_funcgen_9_62_4a"
]
DBNAME s_sonnei [
+ comment: "SpeciesIdentifier=21"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_core_9_62_5a"
***************
*** 3216,3227 ****
--- 3523,3536 ----
ALIAS 300269 s_sonnei
DBNAME s_sonnei_funcgen [
+ comment: "SpeciesIdentifier=21"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/escherichia_shigella_collection_funcgen_9_62_5a"
]
DBNAME s_suis_05zyh33 [
+ comment: "SpeciesIdentifier=27"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3230,3235 ****
--- 3539,3545 ----
ALIAS 391295 s_suis_05zyh33
DBNAME s_suis_98hah33 [
+ comment: "SpeciesIdentifier=28"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3238,3243 ****
--- 3548,3554 ----
ALIAS 391296 s_suis_98hah33
DBNAME s_suis_bm407 [
+ comment: "SpeciesIdentifier=42"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3246,3251 ****
--- 3557,3563 ----
ALIAS 568814 s_suis_bm407
DBNAME s_suis_gz1 [
+ comment: "SpeciesIdentifier=50"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3254,3259 ****
--- 3566,3572 ----
ALIAS 423211 s_suis_gz1
DBNAME s_suis_p1_7 [
+ comment: "SpeciesIdentifier=43"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3262,3267 ****
--- 3575,3581 ----
ALIAS 218494 s_suis_p1_7
DBNAME s_suis_sc84 [
+ comment: "SpeciesIdentifier=41"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3270,3275 ****
--- 3584,3590 ----
ALIAS 568813 s_suis_sc84
DBNAME s_thermophilus_atcc_baa_250 [
+ comment: "SpeciesIdentifier=29"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3278,3283 ****
--- 3593,3599 ----
ALIAS 264199 s_thermophilus_atcc_baa_250
DBNAME s_thermophilus_atcc_baa_491 [
+ comment: "SpeciesIdentifier=30"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3286,3291 ****
--- 3602,3608 ----
ALIAS 322159 s_thermophilus_atcc_baa_491
DBNAME s_thermophilus_cnrz_1066 [
+ comment: "SpeciesIdentifier=31"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3294,3299 ****
--- 3611,3617 ----
ALIAS 299768 s_thermophilus_cnrz_1066
DBNAME s_uberis [
+ comment: "SpeciesIdentifier=38"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/streptococcus_collection_core_9_62_4a"
***************
*** 3350,3355 ****
--- 3668,3674 ----
]
DBNAME wolbachia_sp_brugia_malayi [
+ comment: "SpeciesIdentifier=3"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/wolbachia_collection_core_9_62_1a"
***************
*** 3358,3363 ****
--- 3677,3683 ----
ALIAS 292805 wolbachia_sp_brugia_malayi
DBNAME wolbachia_sp_drosophila_simulans [
+ comment: "SpeciesIdentifier=2"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/wolbachia_collection_core_9_62_1a"
***************
*** 3366,3371 ****
--- 3686,3692 ----
ALIAS 66084 wolbachia_sp_drosophila_simulans
DBNAME w_pipientis_culex_pipiens [
+ comment: "SpeciesIdentifier=1"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/wolbachia_collection_core_9_62_1a"
***************
*** 3374,3379 ****
--- 3695,3701 ----
ALIAS 570417 w_pipientis_culex_pipiens
DBNAME w_pipientis_wmel [
+ comment: "SpeciesIdentifier=4"
release: "62"
server: "ensemblgenomes"
url: "mysql://anonymous@mysql.ebi.ac.uk:4157/wolbachia_collection_core_9_62_1a"
diff -c -N --recursive -a EMBOSS-6.4.0old/nucleus/embgroup.c EMBOSS-6.4.0/nucleus/embgroup.c
*** EMBOSS-6.4.0old/nucleus/embgroup.c 2011-05-16 11:14:30.000000000 +0100
--- EMBOSS-6.4.0/nucleus/embgroup.c 2011-10-05 14:56:08.000000000 +0100
***************
*** 1173,1179 ****
AjPStr tail;
AjPStr revhead;
AjPStr revtail;
! AjPStr dummy; /* dummy string for ajListstrPop() */
len = ajListstrToarray(sublist, &sub);
--- 1173,1179 ----
AjPStr tail;
AjPStr revhead;
AjPStr revtail;
! AjPStr dummy = NULL; /* dummy string for ajListstrPop() */
len = ajListstrToarray(sublist, &sub);