Detailed List of SeqHound API Functions



SYSTEM INITIALIZATION, FINISHING AND TESTING



Functions in this group will be used by all SeqHound API programs to open a connection to SeqHound at the beginning of the program and to close the connection at the end of the program.


SHoundFini


description: Closes the SeqHound system and the NCBI NetEntrez service if it has been initialized.


C
arguments: void
return: void
prototype: void SHoundFini(void);


C++
arguments: void
return: void
prototype: void SHoundFini(void);


PERL
arguments: none
return: none
example: SHoundFini();
list of functions


SHoundInit


description: Initializes the SeqHound system; checks if the server is ready for querying. NCBI NetEntrez service can be initialized simultaneously if the user desires to query obsolete (outdated) sequences.


C
arguments: boolean value indicating if the user wants to initialize NetEntrez service (acceptable values: TRUE/FALSE); pointer to a string containing current application name
return: boolean TRUE if success or FALSE (in this case do not continue querying SeqHound)
prototype: Boolean SHoundInit(Boolean NetEntrezOnToo, CharPtr appname);


C++
arguments: boolean value indicating if the user wants to initialize NetEntrez service (acceptable values: true/false); string containing current application name
return: boolean true if success or false (in this case do not continue querying SeqHound)
prototype: bool SHoundInit(bool NetEntrezOnToo, string appname);


PERL
arguments: boolean value indicating if the user wants to initialize NetEntrez service (acceptable values: "TRUE"/"FALSE"); current application name
return: "TRUE" if success or "FALSE" (in this case do not continue querying SeqHound)
example: SHoundInit("FALSE", "myapp");
list of functions


SHoundIsInited


description: Reports if SeqHound has been initialized.


C
arguments: void
return: boolean TRUE if success or FALSE
prototype: Boolean SHoundIsInited(void);


C++
arguments: void
return: boolean true if success or false
prototype: bool SHoundIsInited(void);


PERL
arguments: none
return: "TRUE" if success or "FALSE"
example: $result = SHoundIsInited();
list of functions


SHoundIsNetEntrezOn


description: Finds out if NCBI NetEnrez service has been initialized. NCBI NetEntrez service can be used to query obsolete (outdated) sequences.


C
arguments: void
return: boolean TRUE if success or FALSE
prototype: Boolean SHoundIsNetEntrezOn(void);


C++
arguments: void
return: boolean true if success or false
prototype: bool SHoundIsNetEntrezOn(void);


PERL
arguments: none
return: "TRUE" if success or "FALSE"
example: SHoundIsNetEntrezOn();
list of functions


SHoundNetEntrezInit


description: Initializes the SeqHound system together with NCBI NetEntrez service. NCBI NetEntrez service can be used to query obsolete (outdated) sequences.


C
arguments: pointer to a string containing application name
return: boolean TRUE if success or FALSE
prototype: Boolean SHoundNetEntrezInit(CharPtr appname);


C++
arguments: string containing application name
return: boolean true if success or false
prototype: bool SHoundNetEntrezInit(const string appname);


PERL
arguments: application name
return: "TRUE" if success or "FALSE"
example: SHoundNetEntrezInit("myapp");
list of functions



GENBANK ID CONVERSIONS



GenBank sequence records are associated with three types of identifiers; Gene Info identifiers (GI), GenBank accessions and other identifiers kept in the record's "seq-id". These functions may be used to convert between these three types of identifiers. While most people are familiar with the Genbank accession and GI identifiers, GenBank may also keep identifiers that denote the source database and identifier used by GenBank to construct the record (for example embl or pir specific accessions or Blattner identifiers (BLATT)). These identifiers are usually not displayed in the GenBank flat-file but are present in the underlying ASN.1 of the record in the seq-id structure. You can read more about this structure by going to http://www.ncbi.nlm.nih.gov/IEB/ToolBox/SB/hbr.html and entering "seq-id" in the query box or by searching for "seq { id {" in the ASN.1 format of a GenBank record. A complete list of the dbnames and example identifiers that may be used with these functions is listed in the API supplementary information page. It should be noted that there is a conceptual difference between functions in this section and those in the DBXref module. Conversion between GI's, Accessions and "other" database identifiers are conversions between identifiers that point to exactly the same sequence record. In contrast, database cross-references found in source records (see DbXref module) may refer to other things (for example, annotations on or records related to the source record).


SHoundDbNameAndIdListFromGBAcc


description: This function takes a GenBank accession and retrieves all of the Database name and Id pairs that are present in the seq-id portion of the corresponding GenBank record. For additional information, see the description beneath the section header for this group of functions (Genbank ID Conversions).


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundDbNameAndIdListFromGBAccKeyedList


description: This function takes a list of GenBank accessions and retrieves all of the Database name and Id pairs that are present in the seq-id portion of the corresponding GenBank record. For additional information, see the description beneath the section header for this group of functions (Genbank ID Conversions). The returned structure maps queries with their corresponding database names and identifiers.


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundDbNameAndIdListFromGi


description: This function takes a Gene Info (GI) identifier and retrieves all of the Database name and Id pairs that are present in the seq-id portion of the corresponding GenBank record. For additional information, see the description beneath the section header for this group of functions (Genbank ID Conversions).


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundDbNameAndIdListFromGiKeyedList


description: This function takes a list of Gene Info (GI) identifiers and retrieves all of the Database name and Id pairs that are present in the seq-id portion of the corresponding GenBank record. For additional information, see the description beneath the section header for this group of functions (Genbank ID Conversions). The returned structure pairs the queries with their corresponding results.


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundGBAccFromDbNameAndId


description: This function takes a database name and identifier found in a GenBank sequence record (in the seq-id) and returns the corresponding GenBank accession. For additional information, see the description beneath the section header for this group of functions (Genbank ID Conversions).
comment: Note that EMBL shares accession numbers with GenBank; for example, accession X13776. EMBL also has its own identifiers (which are maintained by GenBank in the seq-id portion of the GenBank record). So, for instance, this function would return accession X13776 if queried with the DbName "embl" and the Id "PAAMIR". Note: if the DbName is "pdb" this function needs the "chain" parameter to be specified.


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundGBAccFromDbNameAndIdKeyedList


description: This function takes a list of database name and identifier pairs found in a GenBank sequence record (in the seq-id) and returns the corresponding GenBank accession. For additional information, see the description beneath the section header for this group of functions (Genbank ID Conversions).
comment: Note that EMBL shares accession numbers with GenBank; for example, accession X13776. EMBL also has its own identifiers (which are maintained by GenBank in the seq-id portion of the GenBank record). So, for instance, this function would return accession X13776 if queried with the DbName "embl" and the Id "PAAMIR". Note: if the DbName is "pdb" this function needs the "chain" parameter to be specified.


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundGBAccFromGi


description: Converts a GI identifier to a GenBank accession number.
comment: Sequences from the PIR or PDB databases will return "n/a" for this function since they do not have a GenBank accession. Instead, use SHoundDbNameAndIdFromGi to retrieve the corresponding pir or pdb accession.


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundGBAccFromGiKeyedList


description: Converts a list of GI identifiers to GenBank accessions. The returned structure maps queries with their corresponding accessions.
comment: Sequences from the PIR or PDB databases will return "n/a" for this function since they do not have a GenBank accession. Use SHoundDbNameAndIdFromGi to retrieve accessions for the corresponding pir or pdb GI's.


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundGetAccFromRetiredGi


description: Converts a retired GI identifier to an NCBI accession number.
comment: This function will only work if the GI identifier was retired since the public version of SeqHound was instantiated. SeqHound only keeps the most up to date versions of GenBank sequences. It keeps a local history of retired GI's. For more complete access to historical GI's, developers are directed to the ID1_Fetch utility of the NCBI C++ toolkit (see http://www.ncbi.nlm.nih.gov/books/bv.fcgi?rid=toolkit.section.3571) or NCBI's eutils (see http://eutils.ncbi.nlm.nih.gov/entrez/query/static/efetchseq_help.html). An example call to retrieve the accession for a retired GI would be: http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=protein&id=17402729&retmode=text&rettype=acc (if you knew that GI 17402729 was retired. The returned accession (actually a version id is returned and you have to remove the .1 yourself) is AC104281. This accession can be used to retrieve the GI of the most up to date version of the sequence from SeqHound (see SHoundGiFromGBAcc or SHoundFindAcc).


C
arguments: integer GI identifier
return: CharPtr (Accession number) or NULL on error
prototype: CharPtr SHoundGetAccFromRetiredGi(Int4 gi);


C++
arguments: integer GI identifier
return: string (kEmptyStr) or string Accession number
prototype: string SHoundGetAccFromRetiredGi(int Gi);


PERL
arguments: GI (e.g. 4557628)
return: accession or zero if failure
example: SHoundGetAccFromRetiredGi(4557628)
list of functions


SHoundGiFromDbNameAndId


description: This function takes a database name and identifier found in a GenBank sequence record (in the seq-id) and returns the corresponding Gene Info identifier. See the above description under Sequence Identifier Conversions.
comment: Note that EMBL shares accession numbers with GenBank. EMBL GenInfo identifiers may be returned using these accessions; for example SHoundGiFromGBAcc(X13776) will return GI 45269. EMBL also has its own identifiers (which are maintained by GenBank in the seq-id portion of the GenBank record). So the same GI may be returned using SHoundGiFromDbNameAndId with the DbName 'embl' and the Id 'PAAMIR'. Note: if the DbName is 'pdb' this function needs the 'chain' parameter to be specified.


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundGiFromDbNameAndIdKeyedList


description: This function takes a list of database names and identifiers found in a GenBank sequence record (in the seq-id) and returns the corresponding Gene Info identifier. See the above description under Sequence Identifier Conversions. The returned structure maps queries with corresponding GI's.
comment: Note that EMBL shares accession numbers with GenBank. EMBL GenInfo identifiers may be returned using these accessions; for example SHoundGiFromGBAcc(X13776) will return GI 45269. EMBL also has its own identifiers (which are maintained by GenBank in the seq-id portion of the GenBank record). So the same GI may be returned using SHoundGiFromDbNameAndId with the DbName 'embl' and the Id 'PAAMIR'. Note: if the DbName is 'pdb' this function needs the 'chain' parameter to be specified.


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundGiFromGBAcc


description: Converts an accession number for a sequence to a Gene Info identifier - GI.
comment: This function will not accept a version number (e.g. NP_116609.1). The '.1' must be removed from the example version number to form a valid accession. SeqHound only stores and returns the latest version of a sequence record. Note that if this function is passed a Swiss-Prot secondary identifier (as opposed to a primary identifier), it will fail. Swiss-Prot secondary accessions may map to more than one Swiss-Prot primary identifier (and therefore more than one GenBank accession). Developers are directed to the DBXref functions to deal with this type of identifier.


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundGiFromGBAccKeyedList


description: Converts a list of GenBank accession numbers into a list of GI identifiers. The return structure maps the original query accession with its corresponding GI.
comment: This function will not accept a version number (e.g. NP_116609.1). The '.1' must be removed from the example version number to form a valid accession. SeqHound only stores and returns the latest version of a sequence record. Note that if this function is passed a Swiss-Prot secondary identifier (as opposed to a primary identifier), it will fail. Swiss-Prot secondary accessions may map to more than one Swiss-Prot primary identifier (and therefore more than one GenBank accession). Developers are directed to the DBXref functions to deal with this type of identifier.


Java
comment: See the JavaDocs for the SHoundGenbankIDConversionInterface.
list of functions


SHoundSeqIdFromGi


description: Converts GI identifier into an ASN.1 structure seq-id which contains all available identifiers for a given sequence.


C
arguments: integer GI identifier
return: pointer to SeqId ASN.1 in a binary format or NULL
prototype: SeqIdPtr SHoundSeqIdFromGi(Int4 gi);


C++
arguments: integer GI identifier
return: pointer to SLRISeq_id ASN.1 object in a binary format or NULL
prototype: CSLRISeq_id *SHoundSeqIdFromGi(int Gi);


Java
comment: Use SHoundDbNameAndIdFromGi instead.


PERL
arguments: GI identifier
return: SeqId ASN.1 in text form e.g.
"SLRISeq-id ::= {
embl {
name "SCTRNE3A" ,
accession "X08048" ,
version 1 } ,
gi 4646 }"
or zero if failure
example: SHoundSeqIdFromGi(432);
list of functions


SHoundSeqIdFromGiList


description: Converts a list of GI identifiers into an list of ASN.1 SeqId structures which contain all available identifiers for a given sequence.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a list of SeqId structures in ASN.1 a binary format or NULL
prototype: ValNodePtr SHoundSeqIdFromGiList(ValNodePtr pnvGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to a ValNode linked list of SeqId objects or NULL
prototype: CSLRIValNode *SHoundSeqIdFromGiList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers
return: List of SeqId structures in a parseable text form of ASN.1
example: SHoundSeqIdFromGiList("432,543"); see also: SHoundSeqIdFromGi for example on SeqId structure
list of functions


SHoundTitleFromGi


description: Retrieves the title ( a short description of the sequence record) for the given GI identifier


C
arguments: integer GI identifier
return: title
prototype: CharPtr LIBCALL SHoundTitleFromGi(Int4 gi);


PERL
arguments: GI identifier
return: title or zero if failure
example: SHoundTitleFromGi(21071030);
list of functions



DATABASE CROSS-REFERENCE CONVERSIONS (DBXREF)



The DBXref API allows programmers to find cross-references that are embedded in a given source record. Conversely, given a cross-reference, a programmer can find the source records in which it is embedded. Source records and cross-references are both specified by some database name and an identifier for a record in that database. For example, a Swiss-Prot source record can be specified by the database name 'SP' and the identifier 'P38903'. The database cross-references found in this source record include GenBank 'GB' U06630 and 'Interpro' IPR001757 and the Saccharomyces cerevisiae database 'SGD' record S0005540. The returned data structure (ShDxList of ShDx) that describes the cross-references also contains information that specifies where the cross-reference was found in the source record (field) and the meaning of the cross-reference with respect to the source record (cv). The DBXref module and its contents are described in further detail in section 5 of the SeqHound Manual. A number of helper functions are also included in this module: SHoundGetDxDbNames will return a list of database names that can be used with this API. SHoundDxFieldNameListFromDbName and SHoundGetDxCvTermList will return field names and Controlled Vocabulary terms (cv) used to describe cross-references. The DBXref data set is also available from the SeqHound ftp site.


SHoundDxFieldNameListFromDbName


description: This helper function will retrieve a set of field names that may be used with the DBXref functions.
comment: The user may specify a single database name for which field names are to be retrieved. If this dbname is not specified, all field names for all databases in the DBXref module will be returned. The structure returned consists of a list of database names paired with field names for that database.


Java
comment: See the JavaDocs for the SHoundDbxrefInterface.
list of functions


SHoundDxListFromGi


description: This convenience function is based on SHoundDxListFromSource. The specified Gene Information identifier (GI) is converted to a list of GenBank accessions (considered equivalent to the query using the redundant module) and all cross-references found in these records are returned.
comment: See SHoundDxListFromSource.


Java
comment: See the JavaDocs for the SHoundDbxrefInterface.
list of functions


SHoundDxListFromSource


description: Given a database name and identifier for some source record, retrieve a list of database cross-references found in that record. The returned structure (ShDxList of ShDx) describes each cross-reference as a dbname and an id. The field in the source record where the cross-reference was found is also returned (field) and the meaning of the cross-reference with respect to the source record (cv) is also returned in the same structure.
comment: dbname is a database name. Use the helper function SHoundGetDxDbnames to retrieve a list of dbnames that may be used as input to this function. id is an (alpha)numeric identifier for some record in the database specified by dbname. field may be optionally specified. This will restrict database cross-references returned to those that are found in a certain field of the source record. Use the helper function SHoundDxFieldNameListFromDbName to retrieve a list of field names that may be used as input to this function. cv may be optionally specified. This will restrict database cross-references returned to those that are labelled with the specified controlled vocabulary term (cv). cv is an integer that describes the relationaship of the cross-reference to the source record. See the SeqHound Manual (section 5) for more details on cv. You may also use the helper function SHoundGetDxCvTermList to retrieve a list of cv values (and their meanings) that may be used as input to this function.


Java
comment: See the JavaDocs for the SHoundDbxrefInterface.
list of functions


SHoundGetDxCvTermList


description: This helper function will retrieve a set of controlled vocabulary terms that may be used with the DBXref functions.
comment: There are no input parameters. The returned structure consists of a list of pairs of cv identifiers and a description of the cv term.


Java
comment: See the JavaDocs for the SHoundDbxrefInterface.
list of functions


SHoundGetDxDbNames


description: This helper function retrieves a list of dbnames that may be consumed (or returned) by DBXref API functions.
comment: The user may specify that they only want dbnames used to describe source records (set source_dbnames to 1 and dxdbnames to 0) or that they only want those names used to describe the database cross-references (use the inverse settings). By default, all dbnames will be returned, both input booleans set to 1).


Java
comment: See the JavaDocs for the SHoundDbxrefInterface.
list of functions


SHoundSourceListFromDx


description: This is the reciprocal function to SHoundDxListFromSource. Given a database name and identifier for some database cross-reference, this function retrieves a list of source records where the cross-reference is cited.
comment: dbname is a database name. Use the helper function SHoundGetDxDbnames to retrieve a list of dbnames that may be used as input to this function. id is an (alpha)numeric identifier for some record in the database specified by dbname. The returned structure is a ShDxList of ShDx. The value of field will indicate where the source record identifier is found and cv will always be zero. Field may be optionally specified. Returned source records cite the given database cross-reference in the specified field. Use the helper function SHoundDxFieldNameListFromDbName to retrieve a list of field names that may be used as input to this function. cv may be optionally specified. This will restrict returned source records to those that cite the given cross-reference using the specified controlled vocabulary term (cv). cv is an integer that describes the relationaship of the cross-reference to the source record. See the SeqHound Manual (section 5) for more details on cv. You may also use the helper function SHoundGetDxCvTermList to retrieve a list of cv values (and their meanings) that may be used as input to this function.


Java
comment: See the JavaDocs for the SHoundDbxrefInterface.
list of functions



SEQUENCE AND STRUCTURE CHECKS



These functions may be used to do things like tell whether a given GenInfo identifier (GI) refers to a protein sequence record or whether it exists in the SeqHound database.


SHound3DbWhat


description: Finds out what kind of molecules are contained in a 3-D structure.


C
arguments: integer MMDB identifier
return: integer which represents different kinds of molecules,
The return values are so called "byte flags" where each bit is reserved for one kind of molecule:
#define AM_ION 0x80 //ion
#define AM_RNA 0x40 //RNA
#define AM_WAT 0x20 //water
#define AM_SOL 0x10 //solvent
#define AM_HET 0x08 //heteroatom
#define AM_DNA 0x04 //DNA
#define AM_PROT 0x02 //protein
#define AM_POLY 0x01 //polymer

-1 if not found or zero
prototype: Int4 SHound3DbWhat(Int4 mmdbid);


C++
arguments: integer MMDB identifier
return: integer which represents different kinds of molecules
The return values are so called "byte flags" where each bit is reserved for one kind of molecule:
#define AM_ION 0x80 // ion
#define AM_RNA 0x40 //RNA
#define AM_WAT 0x20 //water
#define AM_SOL 0x10 //solvent
#define AM_HET 0x08 //heteroatom
#define AM_DNA 0x04 //DNA
#define AM_PROT 0x02 //protein
#define AM_POLY 0x01 //polymer

or an error code:
SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred. prototype: int SHound3DbWhat(int mmdbid);


PERL
arguments: integer MMDB identifier
return: an integer which represents different kinds of molecules or zero
example: SHound3DbWhat(3436);
list of functions


SHound3DExists


description: Finds out whether a given structural identifier (MMDB ID) exists in the system.


C
arguments: integer MMDB identifier
return: TRUE if exists, FALSE if it does not
prototype: Boolean SHound3DExists(Int4 mmdbid);


C++
arguments: integer MMDB identifier
return: TRUE if it exists, FALSE if it does not
prototype: bool SHound3DExists(int mmdbid);


PERL
arguments: identifier from Molecular Modeling Database (MMDB ID) (e.g. 11)
return: "TRUE" if exists, "FALSE" if it does not
example: SHound3DExists(4534);
list of functions


SHoundExists


description: Reports whether a given GI identifier exists in the SeqHound system.


C
arguments: integer GI identifier
return: TRUE if exists, FALSE if it does not
prototype: Boolean SHoundExists(Int4 Gi);


C++
arguments: integer GI identifier
return: true if it exists, false if it does not
prototype: bool SHoundExists(int Gi);


PERL
arguments: GI identifier
return: "TRUE" if exists, "FALSE" if it does not
example: SHoundExists(34543);
list of functions


SHoundGetLargestMMDBID


description: Gets the largest Molecular Modeling Database identifier (MMDBID) in the current MMDB database


C
arguments: void
return: an integer largest MMDB ID or zero if error or -1 if not found
prototype: Int4 SHoundGetLargestMMDBID(void)


C++
arguments: void
return: an integer largest MMDB ID or SEQHOUND_ERROR, SEQHOUND_NULL, WWWGETFILE_ERROR, SEQHOUND_ABNORMAL
prototype: int SHoundGetLargestMMDBID(void)


PERL
arguments: null
return: an integer largest MMDB ID or zero if failure
example: $a = SHoundGetLargestMMDBID();
list of functions


SHoundIsNRFirst


description: Reports if a given GI identifier represents the best annotated version from a group of database entries referring to the same protein sequence (so called redundant proteins).
comment: Usable only for proteins, DNA will always return "FALSE"; generally the PDB, RefSeq and Swiss-Prot annotations are considered the most complete


C
arguments: integer GI identifier
return: TRUE if success or FALSE
prototype: Boolean SHoundIsNRFirst(Int4 Gi);


C++
arguments: integer GI identifier
return: true if success or false
prototype: bool SHoundIsNRFirst(int Gi);


PERL
arguments: GI identifier (e.g. 3236312)
return: "TRUE" if success, "FALSE"
example: SHoundIsNRFirst(34543);
list of functions


SHoundIsProtein


description: Reports whether a given GI identifier denotes a protein (as opposed to DNA or RNA).
comment: This function will be deprecated. Please use SHoundMoleculeType


C
arguments: integer GI identifier
return: TRUE if it is protein, FALSE if it is not
prototype: Boolean SHoundIsProtein(Int4 Gi);


C++
arguments: integer GI identifier
return: true if it is protein, false if it is not
prototype: bool SHoundIsProtein(int Gi);


PERL
arguments: GI identifier
return: "TRUE" if it is protein, "FALSE" if it is not
example: SHoundIsProtein(354);
list of functions


SHoundMoleculeType


description: Gets molecule type for a given GI identifier
comment: This function deprecates SHoundIsProtein


C
arguments: integer GI identifier
return: protein if given gi is the type of a protein
dna if given gi is the type of a dna
rna if given gi is the type of a rna
else returns NULL
prototype: CharPtr SHoundMoleculeType (Int4 Gi);


C++
arguments: integer GI identifier
return: protein, dna, rna or NULL
return: protein, dna, rna or an empty string
prototype: string SHoundMoleculeType(int Gi);


PERL
arguments: GI (e.g. 6322016)
return: molecule type (dna, rna, protein) or zero if failure
example: SHoundMoleculeType(6322016)
list of functions


SHoundSequenceLength


description: Gets sequence length from GI identifier


C
arguments: integer GI identifier
return: integer sequence length or -1 on error or not found or 0 on error
prototype: Int4 SHoundSequenceLength(Int4 Gi);


C++
arguments: integer GI identifier
return: integer length or SEQHOUND_ERROR, SEQHOUND_NULL, WWWGETFILE_ERROR, SEQHOUND_ABNORMAL
prototype: int SHoundSequenceLength(int Gi);


PERL
arguments: GI (e.g. 21071030)
return: sequence length or zero if failure
example: SHoundSequenceLength(21071030);
list of functions



SEQUENCE FETCH ASN.1 BIOSEQ



These functions return a sequence record as a "Bioseq". A "Bioseq" is an NCBI data structure used to store sequence data. To see a complete description of a Bioseq in ASN.1 format, go to http://www.ncbi.nlm.nih.gov/IEB/ToolBox/SB/hbr.html , type in the query "Bioseq" check the box beside "asns" and hit the "Submit query button".


SHoundGetBioseq


description: Fetches ASN.1 representation of a sequence called Bioseq. The Bioseq is a structure used to represent a single sequence, it contains all available annotation.


C
arguments: integer GI identifier
return: pointer to ASN.1 Bioseq in a binary format or NULL
prototype: BioseqPtr SHoundGetBioseq(Int4 Gi);


C++
arguments: integer GI identifier
return: pointer to ASN.1 Bioseq in a binary format or NULL
prototype: CBioseq *SHoundGetBioseq(int Gi);


PERL
arguments: GI identifier
return: ASN.1 Bioseq in a parseable text format or zero
example: SHoundGetBioseq(535);
list of functions


SHoundGetBioseqList


description: Fetches a list of ASN.1 Bioseqs. The Bioseq is a structure used to represent a single sequence, it contains all available annotation.
comment: The order in the lists is not maintained.


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of ASN.1 Bioseqs in a binary format or NULL
prototype: ValNodePtr SHoundGetBioseqList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to a ValNode linked list of ASN.1 Bioseqs in a binary format or NULL
prototype: CSLRIValNode *SHoundGetBioseqList(list& sltGi);


PERL
arguments: comma delimited list of GI identifiers
return: list of ASN.1 Bioseqs in a text format or zero
example: SHoundGetBioseqList("332");
list of functions


SHoundGetXMLBioseq


description: Fetches XML representation of a Bioseq. The Bioseq is a structure used to represent a single sequence, it contains all available annotation.


C
arguments: integer GI identifier and pointer to a string containing output file name
return: TRUE if success or FALSE
prototype: Boolean SHoundGetXMLBioseq(Int4 gi, CharPtr file_name);


C++
arguments: integer GI identifier and string output file name
return: true if success or false
prototype: bool SHoundGetXMLBioseq(int Gi, string file_name);


PERL
arguments: integer GI identifier (e.g. 4646)
return: XML sequence record or zero
example: SHoundGetXMLBioseq(555);
list of functions



SEQUENCE FETCH ASN.1 BIOSEQSET



These functions return a set of sequence records as a bioseqset (also see functions under "SEQUENCE FETCH ASN.1 BIOSEQ").


SHoundGetBioseqSet


description: Fetches ASN.1 representation of a sequence called BioseqSet. BioseqSet exists only if there is more than one sequence in logical group of sequences (e.g. gene and its protein product).


C
arguments: integer GI identifier
return: pointer to ASN.1 BioseqSet in a binary format or NULL
prototype: BioseqSetPtr SHoundGetBioseqSet(Int4 Gi);


C++
arguments: integer GI identifier
return: pointer to ASN.1 BioseqSet in a binary format or NULL
prototype: CBioseq_set *SHoundGetBioseqSet(int Gi);


PERL
arguments: GI identifier
return: ASN.1 BioseqSet in a text format or zero
example: SHoundGetBioseqSet(666);
list of functions


SHoundGetBioseqSetList


description: Fetches a list of ASN.1 BioseqSets. BioseqSet exists only if there is more than one sequence in logical group of sequences (e.g. gene and its protein product).
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of ASN.1 BioseqSets in a binary format or NULL
prototype: ValNodePtr SHoundGetBioseqSetList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to a ValNode linked list of ASN.1 BioseqSets in a binary format or NULL
prototype: CSLRIValNode *SHoundGetSeqEntryList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers
return: list of ASN.1 BioseqSets in a test format of zero
example: SHoundGetBioseqSetList("666,555");
list of functions



SEQUENCE FETCH ASN.1 SEQENTRY



A Seq-entry is an NCBI data structure used to hold Bioseqs and Bioseq-sets (see above). To see a complete description of a bioseq in ASN.1 format, go to http://www.ncbi.nlm.nih.gov/IEB/ToolBox/SB/hbr.html, type in the query "Seq-entry", check the box beside "asns" and hit the "Submit query button".


SHoundGetSeqEntry


description: Fetches ASN.1 representation of a sequence called SeqEntry. SeqEntry contains a single sequence or a group of sequences if they are logically related (e.g. gene and its protein product).


C
arguments: integer GI identifier
return: pointer to ASN.1 SeqEntry in a binary format or NULL
prototype: SeqEntryPtr SHoundGetSeqEntry(Int4 Gi);


C++
arguments: integer GI identifier
return: pointer to ASN.1 SeqEntry in a binary format or NULL
prototype: CSeq_entry *SHoundGetSeqEntry(int Gi);


PERL
arguments: GI identifier
return: ASN.1 SeqEntry in a text format or zero
example: SHoundGetSeqEntry(234);
list of functions


SHoundGetSeqEntryList


description: Fetches a list of ASN.1 SeqEntries. SeqEntry contains a single sequence or a group of sequences if they are logically related (e.g. gene and its protein product).
comment: The order in the lists is not maintained.


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of ASN.1 SeqEntries in a binary format or NULL
prototype: ValNodePtr SHoundGetSeqEntryList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to a ValNode linked list of ASN.1 SeqEntries in a binary format or NULL
prototype: CSLRIValNode *SHoundGetSeqEntryList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers
return: list of ASN.1 SeqEntries in a text format or zero
example: SHoundGetSeqEntryList("342,555");
list of functions


SHoundGetXMLSeqEntry


description: Fetches XML representation of SeqEntry. SeqEntry contains a single sequence or a group of sequences if they are logically related (e.g. gene and its protein product).


C
arguments: integer GI identifier and pointer to a string containing output file name
return: TRUE if success or FALSE
prototype: Boolean SHoundGetXMLSeqEntry(Int4 gi, CharPtr file_name)


C++
arguments: integer GI identifier and string output file name
return: true if success or false
prototype: bool SHoundGetXMLSeqEntry(int Gi, string file_name);


PERL
arguments: GI identifier (e.g. 4646)
return: XML object or zero
example: SHoundGetXMLSeqEntry(555);
list of functions



SEQUENCE FETCH FASTA



These functions return a sequence record(s) in FASTA format given a GenBank GenInfo identifier (GI).


SHoundGetFasta


description: Fetches FASTA formatted sequence. The FASTA format is widely used in the bioinformatics community; it consists of a definition line, new line followed by a sequence terminated by a second new line.


C
arguments: integer GI identifier
return: pointer to SLRIFasta structure or NULL
prototype: SLRIFastaPtr SHoundGetFasta(Int4 Gi);


C++
arguments: integer GI identifier
return: pointer to SLRIFasta structure or NULL
prototype: CSLRIFasta *SHoundGetFasta(int Gi);


PERL
arguments: GI identifier
return: FASTA formatted sequence or zero
example: SHoundGetFasta(666);
list of functions


SHoundGetFastaFromRedundantGroupID


description: Fetches FASTA formatted sequence for given redundant group identifier. The FASTA format is widely used in the bioinformatics community; it consists of a definition line, new line followed by a sequence terminated by a second new line. Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations. The redundant group identifiers can only be used temporarily, they change every day.


PERL
arguments: redundant group id
return: FASTA sequence or zero if failure
example: SHoundGetFastaFromRedundantGroupID(123);
list of functions


SHoundGetFastaFromRedundantGroupIDKeyedList


description: Fetches FASTA formatted sequence for given redundant group identifiers. The FASTA format is widely used in bioinformatics community; it consists of a definition line, new line followed by a sequence terminated by a second new line. Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations. The redundant group identifiers can only be used temporarily, they change every day.


PERL
arguments: comma delimited list of redundant group ids
return: hash table, each entry of the table stores FASTA structure and its associated query redundant group id
or an empty hash table if failure
example: %hash = SHoundGetFastaFromRedundantGroupIDKeyedList("362477,123,111");
list of functions


SHoundGetFastaKeyedList


description: Fetches GI identifiers and associated FASTA formatted sequences. The FASTA format is widely used in bioinformatics community; it consists of a definition line, new line followed by a sequence terminated by a second new line.


PERL
arguments: comma delimited list of GI identifiers
return: hash table, each entry of the table stores a fasta stucture and its associated query gi
or an empty hash table if failure
example: %hash = SHoundGetFastaKeyedList("555,111,4557225");
list of functions


SHoundGetFastaList


description: Fetches a list of FASTA formatted sequences. The FASTA format is widely used in bioinformatics community; it consists of a definition line, new line followed by a sequence terminated by a second new line.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of SLRIFasta structures or NULL
prototype: ValNodePtr SHoundGetFastaList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to a ValNode linked list of SLRIFasta structures or NULL
prototype: CSLRIValNode *SHoundGetFastaList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers
return: FASTA formatted sequences or zero.
example: SHoundGetFastaList("666,555");
list of functions



DEFLINE FETCH



These functions return a definition line for a sequence record(s) given a GenBank GenInfo identifier (GI).


SHoundGetDefline


description: Fetches definition line for a sequence. A definition line contains the GI, accession number and other available identifiers together with a short description of the sequence.


C
arguments: integer GI identifier
return: pointer to a string containing definition line or NULL on error
prototype: CharPtr SHoundGetDefline(Int4 Gi);


C++
arguments: integer GI identifier
return: string containing definition line or an empty string
prototype: string SHoundGetDefline(int Gi);


PERL
arguments: GI identifier
return: string containing definition line or zero
example: SHoundGetDefline(4646);
list of functions


SHoundGetDeflineList


description: Fetches multiple definition lines for a list of sequences. A definition line contains the GI, accession number and other available identifiers together with a short description of the sequence.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list containing string definition lines or NULL
prototype: CharPtr SHoundGetDeflineList(Int4 Gi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to an STL list of strings containing lines or to an empty list
prototype: list *SHoundGetDeflineList(list& stlGi);


PERL
arguments: comma delimited linked list of GI identifiers
return: comma delimited list containing definition lines or zero
example: SHoundGetDeflineList("2645003,480117,230940");
list of functions



SEQUENCE FETCH GENBANK FLAT FILE



These functions return a sequence record(s) in GenBank flat file format given a GenBank GenInfo identifier (GI).


SHoundGetGenBankff


description: Fetches GenBank formatted sequence. GenBank flat file contains comprehensive full annotation of a sequence.


C
arguments: integer GI identifier and an output file pointer
return: TRUE if success or FALSE
prototype: Boolean SHoundGetGenBankff(Int4 gi, FILE *pfile);


C++
arguments: integer GI identifier and a pointer to an output stream
return: true if success or false
prototype: bool SHoundGetGenBankff(int Gi, ofstream& pfile);


PERL
arguments: GI identifier
return: GenBank formatted sequence or zero
example: SHoundGetGenBankff(32);
list of functions


SHoundGetGenBankffList


description: Fetches a list of GenBank formatted sequences. GenBank flat file contains comprehensive full annotation of a sequence.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers and an output file pointer
return: TRUE if success or FALSE
prototype: Boolean SHoundGetGenBankffList(ValNodePtr pvnGi, FILE *pfile);


C++
arguments: reference to an STL list of integer GI identifiers and a pointer to an output stream
return: true if success or false
prototype: bool SHoundGetGenBankffList(list& stlGi, ofstream& pfile);


PERL
arguments: comma delimited list of GI identifiers or zero
return: GenBank formatted sequences
example: SHoundGetGenBankffList("32,666");
list of functions


SHoundGetSeqFromGenBank


description: Fetches a GenBank sequence.
list of functions



STRUCTURE FETCH



These functions return a biological structure record in either the Molecular Modeling Database (MMDB) format or the Protein Database (PDB) format.


SHoundGet3D


description: Fetches ASN.1 representation of a 3-D structure called Biostruc. Biostrucs represent data model in the Molecular Modeling database.


C
arguments: integer MMDB identifier
return: pointer to ASN.1 Biostruc in a binary format or NULL
prototype: BiostrucPtr SHoundGet3D(Int4 mmdbid);


C++
arguments: integer MMDB identifier
return: pointer to ASN.1 Biostruc in a binary format or NULL
prototype: CBiostruc *SHoundGet3D(int mmdbid);


PERL
arguments: identifier from Molecular Modeling Database (MMDB ID)
return: ASN.1 Biostruc in a parseable text format or zero
example: SHoundGet3D(32);
list of functions


SHoundGet3DEx


description: Fetches ASN.1 representation of a 3-D structure called Biostruc. Biostrucs represent data model in the Molecular Modeling database. The same as SHoundGet3D but with additional options of model level and max models.


C
arguments: integer GI identifier, integer model level and integer maximum models
return: pointer to ASN.1 Biostruc in a binary format or NULL
prototype: BiostrucPtr SHoundGet3DEx(Int4 Gi,Int4 mdlLvl,Int4 maxModels)
list of functions


SHoundGet3DfromPdbId


description: Fetches ASN.1 representation of a 3-D structure called Biostruc. Biostrucs represent data model in the Molecular Modeling database.


C
arguments: pointer to a string containing PDB code from Protein Databank
return: pointer to ASN.1 Biostruc in a binary format or NULL
prototype: BiostrucPtr SHoundGet3DfromPdbId(CharPtr pdbid);


C++
arguments: string PDB code from Protein Databank
return: pointer to ASN.1 Biostruc in a binary format or NULL
prototype: CBiostruc *SHoundGet3DfromPdbId(string pdbid);


PERL
arguments: PDB code (e.g. 3TS1)
return: ASN.1 Biostruc in a parseable text format or zero
example: SHoundGet3DfromPdbId("3INS");
list of functions


SHoundGet3DfromPdbIdEx


description: Fetches ASN.1 representation of a 3-D structure called Biostruc. Biostrucs represent data model in the Molecular Modeling database. The same as SHoundGet3DfromPdbId but with additional options of model level and max models.


C
arguments: integer PDB identifier, integer model level and integer maximum models
return: pointer to ASN.1 Biostruc in a binary format or NULL
prototype: BiostrucPtr SHoundGet3DfromPdbIdEx(CharPtr pdbid,Int4 mdlLvl,Int4 maxModels)
list of functions


SHoundGetPDB3D


description: Fetches a 3-D structure in Protein Data Bank (PDB) format. PDB text format is a format used by Protein Data Bank.


C
arguments: integer MMDB identifier and pointer to a string containing output
return: TRUE if success or FALSE
prototype: Boolean SHoundGetPDB3D(Int4 mmdbid, CharPtr file_name);


C++
arguments: integer MMDB identifier and a reference to output file name
return: true if success or false
prototype: bool SHoundGetPDB3D(int mmdbid, string& file);


PERL
arguments: identifier from Molecular Modeling Database (MMDB ID)
return: PDB formatted structural record or zero
example: SHoundGetPDB3D(11);
list of functions


SHoundGetXML3D


description: Fetches XML representation of a 3-D structure. XML is a converted Biostruc which represent data model in Molecular Modeling database.


C
arguments: integer MMDB identifier and pointer to a string containing an output file name
return: TRUE if success or FALSE
prototype: Boolean SHoundGetXML3D(Int4 mmdbid, CharPtr file_name);


C++
arguments: integer MMDB identifier and an output file name
return: true if success or false
prototype: bool SHoundGetXML3D(int mmdbid, string file);


PERL
arguments: identifier from Molecular Modeling Database (MMDB ID)
return: XML structural record or zero
example: SHoundGetXML3D(11);
list of functions



SEQHOUND LINKS



These functions return links to other databases found in a sequence or structure record. For instance, given the GI of a protein sequence record, you can retrieve links to the nucleic acid record that encodes that protein or the organism that the protein belongs to.


SHound3DFromGi


description: Converts a GI sequence identifier to a structural MMDB identifier. Reports in which 3-D structure a particular sequence can be found.


C
arguments: integer GI identifier
return: integer MMDB identifier, -1 if not found or zero
prototype: Int4 SHound3DFromGi(Int4 Gi);


C++
arguments: integer GI identifier
return: integer MMDB identifier or an error code:
SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred
SEQHOUND_NULL if the value was not found in the database
WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHound3DFromGi(int Gi);


PERL
arguments: GI sequence identifier
return: MMDB identifier or zero
example: SHound3DFromGi(442560);
list of functions


SHound3DFromGiList


description: Converts a list of sequence GI identifiers to a list of structural MMDB identifiers.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of integer MMDB identifiers or NULL
prototype: ValNodePtr SHound3DFromGiList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to an STL list of integer MMDB identifiers or to an empty list
prototype: list *SHound3DFromGiList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers
return: comma delimited list of MMDB identifiers or zero
example: SHound3DFromGiList("442560,442572");
list of functions


SHoundDNAFromProtein


description: Converts protein (gene product) identifier to a nucleic acid (gene) identifier.


C
arguments: integer GI identifier to a protein
return: integer GI identifier to nucleic acid, -1 if not found or zero
prototype: Int4 SHoundDNAFromProtein(Int4 Gi);


C++
arguments: integer GI identifier to a protein
return: integer GI identifier to nucleic acid or an error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundDNAFromProtein(int Gi);


PERL
arguments: protein GI identifier
return: DNA GI identifier or zero
example: SHoundDNAFromProtein(32);
list of functions


SHoundDNAFromProteinList


description: Converts a list of protein (gene product) identifiers to a list of nucleic acids (genes) identifiers.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list or integer GI identifiers referring to proteins
return: pointer to a ValNode linked list of integer GI identifiers referring to nucleic acids or NULL
prototype: ValNodePtr SHoundDNAFromProteinList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers referring to proteins
return: pointer to an STL list of integer GI identifiers referring to nucleic acids or pointer to an empty list
prototype: list *SHoundDNAFromProteinList(list& stlGi);


PERL
arguments: comma delimited list of protein identifiers
return: comma delimited list of DNA identifiers or zero
example: SHoundDNAFromProteinList("325,4546");
list of functions


SHoundDNAFromTaxID


description: Gets all nucleic acid sequence identifiers from one organism.


C
arguments: integer taxonomy identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundDNAFromTaxID(Int4 taxid);


C++
arguments: integer taxonomy identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundDNAFromTaxID(int taxid);


PERL
arguments: taxonomy identifier
return: comma delimited list of GI identifiers or zero
example: SHoundDNAFromTaxID(10665);
list of functions


SHoundDNAFromTaxIDIII


description: Gets all nucleic acid sequence identifiers from one organism. The function takes advantage of precomputed searches if the appropriate one is available.


C
arguments: integer taxonomy identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundDNAFromTaxIDIII(Int4 taxid);


C++
arguments: integer taxonomy identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundDNAFromTaxIDIII(int taxid);


PERL
arguments: taxonomy identifier
return: comma delimited list of GI identifiers or zero
example: SHoundDNAFromTaxIDIII(10665);
list of functions


SHoundDNAFromTaxIDList


description: Gets all nucleic acid sequence identifiers from a list of organisms.
comment: The order in the lists is not maintained


C
arguments: ValNode linked list of integer taxonomy identifiers
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundDNAFromTaxIDList(ValNodePtr pvntaxid);


C++
arguments: reference to an STL list of integer taxonomy identifiers
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundDNAFromTaxIDList(list& stltaxid);


PERL
arguments: comma delimited list of taxonomy identifiers
return: comma delimited list of nucleic acid GI identifiers or zero
example: SHoundDNAFromTaxIDList(10665);
list of functions


SHoundGetReferenceIDFromGi


description: Retrieves publication reference ID from a GI and reference type.
comment: Currently PubMed ID is not available. This function deprecates SHoundMuidFromGi


C
arguments: integer GI identifier
integer reference type
1 for PubMed ID
2 for MedLine ID
return: valnodeptr linked with a list of reference id (pubmedid, medlineids) or NULL
prototype: ValNodePtr SHoundGetReferenceIDFromGi(Int4 Gi, Int2 referencetype);


C++
arguments: integer GI identifier
integer reference type
1 for PubMed ID
2 for MedLine ID
return: list of integer reference ids or NULL
prototype: list *SHoundGetReferenceIDFromGi(int Gi, int reftype);


PERL
arguments: GI (e.g. 6322016)
reference type
1 for PubMed ID
2 for MedLine ID
return: a list of comma delimited reference ID or zero if failure
example: SHoundGetReferenceIDFormGi(6322016, 2)
list of functions


SHoundGetReferenceIDFromGiList


description: Retrieves publication reference ID from a GI list and reference type.
comment: This function deprecates SHoundMuidFromGiList
check: duplicates in list?


C
arguments: GI list
reference type
1 for PubMed ID
2 for MedLine ID
return: valnodeptr linked with a list of reference ids (unique) or NULL
prototype: ValNodePtr SHoundGetReferenceIDFromGiList(ValNodePtr vnpgi, Int2 referencetype);


C++
arguments: GI list
reference type
1 for PubMed ID
2 for MedLine ID
return: list of integer reference ids (unique) or NULL
prototype: list *SHoundGetReferenceIDFromGiList(list& stlGi, int reftype);


PERL
arguments: GI list (e.g. 6322016,4557225,21071030)
reference type
1 for PubMed ID
2 for MedLine ID
return: a list of comma delimited reference ID or zero if failure
example: SHoundGetReferenceIDFormGilist(6322016,4557225,21071030, 2)
list of functions


SHoundGiFrom3D


description: Gets GI identifiers for sequence or sequences contained in a 3-D structure.


C
arguments: integer MMDB identifier and a boolean variable indicating if user wants to get only protein GI identifiers
return: pointer to a ValNode linked list of integer GI identifiers or one GI or NULL
prototype: ValNodePtr SHoundGiFrom3D(Int4 mmdbid, Boolean ProteinOnly);


C++
arguments: integer MMDB identifier and a boolean variable indicating if user wants to get only protein GI identifiers
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundGiFrom3D(int mmdbid, bool ProteinOnly);


PERL
arguments: identifier from Molecular Modeling Database (MMDB ID) and a boolean variable indicating if user wants to get only protein GI identifiers
return: comma delimited list of GI identifiers or one GI or zero
example: SHoundGiFrom3D(23, "FALSE");
list of functions


SHoundGiFrom3DList


description: Gets GI identifiers contained in a list of 3-D identifiers.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of MMDB identifiers and a boolean variable indicating if user wants to get only protein GI identifiers
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundGiFrom3DList(ValNodePtr pvnMmdbid, Boolean ProteinOnly);


C++
arguments: reference to an STL list of MMDB identifiers and a boolean variable indicating if user wants to get only protein GI identifiers
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundGiFrom3DList(list& stlMmdbid, bool ProteinOnly);


PERL
arguments: comma delimited list of MMDB identifiers and a boolean variable indicating if user wants to get only protein GI identifiers
return: comma delimited list of GI identifiers or zero
example: SHoundGiFrom3DList("23,32", "FALSE");
list of functions


SHoundGiFromPDBchain


description: Gets a GI identifier for a Protein Data Bank (PDB) structural chain. PDB code supplemented with a chain always refers to a single sequence.


C
arguments: pointer to a string containing PDB code; pointer to a string containing PDB chain (e.g. "A")
return: integer GI identifier, -1 if not found or zero
prototype: Int4 SHoundGiFromPDBchain(CharPtr pdbcode, CharPtr chain);


C++
arguments: string PDB code; string PDB chain (e.g. "A")
return: integer GI identifier or an error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundGiFromPDBchain(string pdbcode, string chain);


PERL
arguments: PDB code; PDB chain (e.g. "A")
return: GI identifier for the PDB chain or zero
example: SHoundGiFromPDBchain("9XIM", "A");
list of functions


SHoundGiFromReferenceID


description: Gets GI identifiers from publication reference ID.
comment: Return value may be very long for some publications, eg for a high throughput publication. Currently PubMed ID is not available.


C
comment: The return list may contain duplicates.
arguments: an integer referenceID
integer reference type
1 for PubMed ID
2 for MedLine ID
return: pointer to a list of integer GIs (not unique) or NULL
prototype: ValNodePtr SHoundGiFromReferenceID(Int4 referenceid, Int2 referencetype)


C++
comment: The return list may contain duplicates.
arguments: an integer referenceID
integer reference type
1 for PubMed ID
2 for MedLine ID
return: list of integer Gis or NULL
prototype: list *SHoundGiFromReferenceID(int refid, int reftype)


PERL
comment: The return list may contain duplicates.
arguments: reference ID (e.g. 85190481)
reference type
1 for PubMed ID
2 for MedLine ID
return: a list of comma delimited GI or zero if failure
example: SHoundGiFromReferenceID(85190481, 2)
list of functions


SHoundGiFromReferenceList


description: Gets GI identifiers from publication reference ID list.
comment: Return value may be very long for some publications, eg for a high throughput publication. Currently PubMed ID is not available.


C
comment: The return list may contain duplicates.
comment: The return list may contain duplicates.
arguments: a list of integer referenceIDs
integer reference type
1 for PubMed ID
2 for MedLine ID
return: valnodeptr linked with a list of integer GIs (unique) or NULL
prototype: ValNodePtr SHoundGiFromReferenceList(ValNodePtr vnpref, Int2 referencetype);


C++
comment: The return list is unique and sorted.
comment: The return list is unique and sorted.
arguments: a list of integer referenceIDs
integer reference type
1 for PubMed ID
2 for MedLine ID
return: list of integer Gis or NULL
prototype: list *SHoundGiFromReferenceList(list& stlRef, int reftype);


PERL
comment: The return gilist may contain duplicates
arguments: referenceID list (e.g. 97002444, 85190481)
reference type
1 for PubMed ID
2 for MedLine ID
return: a list of comma delimited GI or zero if failure
example: SHoundGiFromReferenceList(97002444,85190481, 2)
list of functions


SHoundMuidFrom3D


description: Converts a Molecular Modeling Database structural identifier (MMDBID) to one or more MEDLINE identifiers (MUID). Fetches identifier of the original paper discussing a given 3-D structure.


C
arguments: integer MMDB identifier
return: pointer to a ValNode linked list of integer MEDLINE identifiers or NULL
prototype: ValNodePtr SHoundMuidFrom3D(Int4 mmdbid);


C++
arguments: integer MMDB identifier
return: pointer to an STL list of integer MEDLINE identifiers or to an empty list
prototype: list *SHoundMuidFrom3D(int mmdbid);


PERL
arguments: MMDB identifier
return: comma delimited list of MEDLINE identifiers or zero
example: SHoundMuidFrom3D(11);
list of functions


SHoundMuidFrom3DList


description: Converts a list of Molecular Modeling Database structural identifiers (MMDBID) to a list of MEDLINE identifiers (MUID). Fetches identifiers of the original papers discussing given 3-D structures.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer MMDB identifiers
return: pointer to a ValNode linked list of integer MEDLINE identifiers or NULL
prototype: ValNodePtr SHoundMuidFrom3DList(ValNodePtr pvnMmdbid);


C++
arguments: reference to an STL list of integer MMDB identifiers
return: pointer to an STL list of integer MEDLINE identifiers or to an empty list
prototype: list *SHoundMuidFrom3DList(list& stlmmdbid);


PERL
arguments: comma delimited list of MMDB identifiers
return: comma delimited list of MEDLINE identifiers or zero
example: SHoundMuidFrom3DList("11,12");
list of functions


SHoundMuidFromGi


description: Gets MEDLINE identifier(s) (MUID) for a given GI identifier. Fetches identifier(s) of the original paper(s) discussing a given sequence.
comment: This function will be deprecated. Please use SHoundGetReferenceIDFromGi


C
arguments: integer GI identifier
return: pointer to a ValNode linked list of integer MEDLINE identifiers or NULL
prototype: ValNodePtr SHoundMuidFromGi(Int4 Gi);


C++
arguments: integer GI identifier
return: pointer to an STL list of integer MEDLINE identifiers or to an empty list
prototype: list *SHoundMuidFromGi(int Gi);


PERL
arguments: GI sequence identifier
return: comma delimited list of MUID identifiers or zero
example: SHoundMuidFromGi(32);
list of functions


SHoundMuidFromGiList


description: Gets MEDLINE identifiers (MUID) for a list of GI identifiers. Fetches identifiers of the original papers discussing given sequences.
comment: This function will be deprecated. Please use SHoundGetReferenceIDFromGiList The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of MUID identifiers or NULL
prototype: ValNodePtr SHoundMuidFromGiList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to an STL list of integer MEDLINE identifiers or to an empty list
prototype: list *SHoundMuidFromGiList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers
return: comma delimited list of MUID identifiers or zero
example: SHoundMuidFromGiList("324,32");
list of functions


SHoundProteinFromDNA


description: Converts a nucleic acid (gene) identifier to one or more protein (gene product) identifiers.


C
arguments: integer GI identifier referring to nucleic acid
return: pointer to a ValNode linked list of integer GI identifiers referring to proteins or NULL
prototype: ValNodePtr SHoundProteinFromDNA(Int4 Gi);


C++
arguments: integer GI identifier to nucleic acid
return: pointer to an STL list of integer GI identifiers referring to proteins or pointer to an empty list
prototype: list *SHoundProteinFromDNA(int Gi);


PERL
arguments: DNA GI identifier
return: comma delimited list of protein identifiers
example: SHoundProteinFromDNA(31);
list of functions


SHoundProteinFromDNAList


description: Converts a list of nucleic acid (gene) identifiers to a list of protein (gene product) identifiers.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list or integer GI identifiers referring to nucleic acids
return: pointer to a ValNode linked list of integer GI identifiers referring to proteins or NULL
prototype: ValNodePtr SHoundProteinFromDNAList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers referring to nucleic acids
return: pointer to an STL list of integer GI identifiers referring to proteins or pointer to an empty list
prototype: list *SHoundProteinFromDNAList(list& stlGi);


PERL
arguments: comma delimited list of DNA identifiers
return: comma delimited list of protein identifiers or zero
example: SHoundProteinFromDNAList("324,4545");
list of functions


SHoundProteinsFromTaxID


description: Gets all protein GI identifiers from one organism.


C
arguments: integer taxonomy identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundProteinsFromTaxID(Int4 taxid);


C++
arguments: integer taxonomy identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundProteinsFromTaxID(int taxid);


PERL
arguments: taxonomy identifier
return: comma delimited list of protein GI identifiers or zero
example: SHoundProteinsFromTaxID(10665);
list of functions


SHoundProteinsFromTaxIDIII


description: Gets all protein GI identifiers from one organism. The function takes advantage of precomputed searches if the appropriate one is available.


C
arguments: integer taxonomy identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundProteinsFromTaxIDIII(Int4 taxid);


C++
arguments: integer taxonomy identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundProteinsFromTaxIDIII(int taxid);


PERL
arguments: taxonomy identifier
return: comma delimited list of protein GI identifiers or zero
example: SHoundProteinsFromTaxIDIII(10665);
list of functions


SHoundProteinsFromTaxIDList


description: Gets all protein GI identifiers from a list of organisms.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer taxonomy identifiers
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundProteinsFromTaxIDList(ValNodePtr pvntaxid);


C++
arguments: reference to an STL list of integer taxonomy identifiers
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundProteinsFromTaxIDList(list& stltaxid);


PERL
arguments: comma delimited list of taxonomy identifiers
return: comma delimited list of protein GI identifiers or zero
example: SHoundProteinsFromTaxIDList(10665);
list of functions


SHoundTaxIDFrom3D


description: Converts a structural identifier to one or more taxonomy identifiers. Reports which organism(s) the 3-D structure comes from.


C
arguments: integer MMDB identifier
return: pointer to a ValNode linked list of integer taxonomy identifiers or NULL
prototype: ValNodePtr SHoundTaxIDFrom3D(Int4 mmdbid);


C++
arguments: integer MMDB identifier
return: pointer to an STL list of integer taxonomy identifiers or to an empty list
prototype: list *SHoundTaxIDFrom3D(int mmdbid);


PERL
arguments: MMDB identifier
return: comma delimited list of taxonomy identifiers or zero
example: SHoundTaxIDFrom3D(11);
list of functions


SHoundTaxIDFrom3DList


description: Converts a list of structural identifiers to a list of taxonomy identifiers. Reports which organisms the 3-D structures come from.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer MMDB identifiers
return: pointer to a ValNode linked list of integer taxonomy identifiers or NULL
prototype: ValNodePtr SHoundTaxIDFrom3DList(ValNodePtr pvnMmdbid);


C++
arguments: reference to an STL list of integer MMDB identifiers
return: pointer to an STL list of integer taxonomy identifiers or to an empty list
prototype: list *SHoundTaxIDFrom3DList(list& stlmmdb);


PERL
arguments: comma delimited list of MMDB identifiers
return: comma delimited list of taxonomy identifiers or zero
example: SHoundTaxIDFrom3DList("11,12");
list of functions


SHoundTaxIDFromGi


description: Converts a GI identifier to an NCBI taxonomy identifier. Reports which organism a given sequence is from.


C
arguments: integer GI identifier
return: integer taxonomy identifier, -1 if not found or zero
prototype: Int4 SHoundTaxIDFromGi(Int4 Gi);


C++
arguments: integer GI identifier
return: integer taxonomy identifier or an error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundTaxIDFromGi(int Gi);


PERL
arguments: GI sequence identifier
return: taxonomy identifier or zero
example: SHoundTaxIDFromGi(32);
list of functions


SHoundTaxIDFromGiList


description: Converts a list of GI identifiers to a list of NCBI taxonomy identifier Reports which organisms given sequences are from.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of integer taxonomy identifiers or NULL
prototype: ValNodePtr SHoundTaxIDFromGiList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to an STL list of integer taxonomy identifiers or to an empty list
prototype: list *SHoundTaxIDFromGiList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers
return: comma delimited list of taxonomy identifiers or zero
example: SHoundTaxIDFromGiList("324,32");
list of functions



COMPLETE GENOME ITERATORS



These functions returns lists of things that pertain to completely sequenced genomes. For example, given a taxon identifier, these functions can retrieve a complete list of protein, nucleic acid or chromosome records associated with the completely sequenced genome for that organism.


SHoundAllGenomes


description: Gets a list of taxonomy identifiers for all complete genomes present in the SeqHound system. Complete genome annotations are available from NCBI.


C
arguments: void
return: pointer to a ValNode linked list of integer taxonomy identifiers or NULL
prototype: ValNodePtr SHoundAllGenomes(void);


C++
arguments: void
return: pointer to an STL list of integer taxonomy identifiers or to an empty list
prototype: list *SHoundAllGenomes(void);


PERL
arguments: none
return: comma delimited list of taxonomy identifiers or zero
example: SHoundAllGenomes();
list of functions


SHoundChromosomeFromGenome


description: Gets a list of DNA molecules from a complete genome. The desired return types of DNA molecules can be filtered.


C
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: integer taxonomy identifier and a Byte representation of different kinds of DNA molecules (see comment)
return: pointer to a ValNode linked list of integer chromosomal identifiers or NULL
prototype: ValNodePtr SHoundChromosomeFromGenome(Int4 taxid, Byte chromflags);


C++
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: integer taxonomy identifier and a unsigned char representation of different kinds of DNA molecules (see comment)
return: pointer to an STL list of integer chromosomal identifiers or to an empty list
prototype: list *SHoundChromosomeFromGenome(int taxid, unsigned char chromflags);


PERL
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecule:
1 is chromosome
2 is mitochondrion
4 is chloroplast
8 is plasmid
16 is extra-chromosomal element
32 is undefined
64 is phage
128 is undefined
the flags are additive; for example 255 means that all kinds of DNA molecules in a given organism are requested
arguments: taxonomy identifier and a filter integer representing different kinds of DNA molecule (see comment)
return: comma delimited list of chromosomal identifiers or zero
example: SHoundChromosomeFromGenome(155864, 1);
list of functions


SHoundChromosomeFromGenomeList


description: Gets a list of DNA molecules from a complete genome list. The desired return types of DNA molecules can be filtered.
comment: The order in the lists is not maintained


C
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: pointer to a ValNode linked list of integer taxonomy identifiers and a Byte representation of different kinds of DNA molecules (see comment)
return: pointer to a ValNode linked list of integer chromosomal identifiers or NULL
prototype: ValNodePtr SHoundChromosomeFromGenomeList(ValNodePtr pvnGenom, Byte chromflags);


C++
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: reference to an STL list of integer taxonomy identifiers and a unsigned char representation of different kinds of DNA molecules (see comment)
return: pointer to an STL list of integer chromosomal identifiers or to an empty list
prototype: list *SHoundChromosomeFromGenomeList(list& stlGenome, unsigned char chromflags);


PERL
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecule:
1 is chromosome
2 is mitochondrion
4 is chloroplast
8 is plasmid
16 is extra-chromosomal element
32 is undefined
64 is phage
128 is undefined
the flags are additive; for example 255 means that all kinds of DNA molecules in a given organism are requested
arguments: comma delimited list of taxonomy identifiers and a filter integer representing different kinds of DNA molecule (see comment)
return: comma delimited list of chromosomal identifiers or zero
example: SHoundChromosomeFromGenomeList("155864", 1);
list of functions


SHoundDNAFromChromosome


description: Gets all DNA identifiers from one DNA molecule such as chromosome, plasmid etc. The resulting DNA identifiers constitute a subset of complete genome annotation available from NCBI.


C
arguments: integer chromosomal identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundDNAFromChromosome(Int4 chromid);


C++
arguments: integer chromosomal identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundDNAFromChromosome(int chromid);


PERL
arguments: chromosomal identifier
return: comma delimited list of DNA GI identifiers or zero
example: SHoundDNAFromChromosome(169);
list of functions


SHoundDNAFromChromosomeList


description: Gets all DNA identifiers from a list DNA molecules such as chromosomes, plasmids etc. The resulting DNA identifiers constitute a subset of complete genome annotation available from NCBI.
comment: The order in the lists is not maintained


C
arguments: integer chromosomal identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundDNAFromChromosomeList(ValNodePtr pvnChrom);


C++
arguments: integer chromosomal identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: ist SHoundDNAFromChromosomeList(list& stlchrom);


PERL
arguments: comma delimited list of chromosomal identifiers
return: comma delimited list of DNA GI identifiers or zero
example: SHoundDNAFromChromosomeList("169,132");
list of functions


SHoundDNAFromOrganism


description: Gets all DNA identifiers from a complete genome annotation. Complete genome annotations are available from NCBI.


C
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: integer taxonomy identifier and a Byte representation of different kinds of DNA molecules (see comment)
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundDNAFromOrganism(Int4 taxid, Byte chromflags);


C++
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: integer taxonomy identifier and a unsigned char representation of different kinds of DNA molecules (see comment)
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundDNAFromOrganism(int taxid, unsigned char chromflags);


PERL
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecule:
1 is chromosome
2 is mitochondrion
4 is chloroplast
8 is plasmid
16 is extra-chromosomal element
32 is undefined
64 is phage
128 is undefined
the flags are additive; for example 255 means that all kinds of DNA molecules in a given organism are requested
arguments: taxonomy identifier and a filter integer representing different kinds of DNA molecule (see comment)
return: comma delimited list of DNA GI identifiers or zero
example: SHoundDNAFromOrganism(155864, 1);
list of functions


SHoundDNAFromOrganismList


description: Gets all DNA identifiers from a complete genomes list. Complete genome annotations are available from NCBI.
comment: The order in the lists is not maintained


C
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: pointer to a ValNode linked list of integer taxonomy identifiers and a Byte representation of different kinds of DNA molecules (see comment)
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundDNAFromOrganismList(ValNodePtr pvnTax, Byte chromflags);


C++
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: reference to an STL list of integer taxonomy identifiers and a unsigned char representation of different kinds of DNA molecules (see comment)
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundDNAFromOrganismList(list& stltaxid, unsigned char chromflags);


PERL
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecule:
1 is chromosome
2 is mitochondrion
4 is chloroplast
8 is plasmid
16 is extra-chromosomal element
32 is undefined
64 is phage
128 is undefined
the flags are additive; for example 255 means that all kinds of DNA molecules in a given organism are requested
arguments: comma delimited list of taxonomy identifiers and a filter integer representing different kinds of DNA molecule (see comment)
return: comma delimited list of DNA GI identifiers or zero
example: SHoundDNAFromOrganismList("155864,139", 1);
list of functions


SHoundProteinsFromChromosome


description: Gets all protein GI identifiers from one DNA molecule such as chromosome, plasmid etc. The resulting protein GI identifiers constitute a subset of complete genome annotation available from NCBI.


C
arguments: integer chromosomal identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundProteinsFromChromosome(Int4 chromid);


C++
arguments: integer chromosomal identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundProteinsFromChromosome(int chromid);


PERL
arguments: chromosomal identifier
return: comma delimited list of protein GI identifiers or zero
example: SHoundProteinsFromChromosome(169);
list of functions


SHoundProteinsFromChromosomeList


description: Gets all protein GI identifiers from a list DNA molecules such as chromosomes, plasmids etc. The resulting protein GI identifiers constitute a subset of complete genome annotation available from NCBI.
comment: The order in the lists is not maintained


C
arguments: integer chromosomal identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundProteinsFromChromosomeList(ValNodePtr pvnChrom);


C++
arguments: integer chromosomal identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: ist SHoundProteinsFromChromosomeList(list& stlchrom);


PERL
arguments: comma delimited list of chromosomal identifiers
return: comma delimited list of protein GI identifiers or zero
example: SHoundProteinsFromChromosomeList("169,132");
list of functions


SHoundProteinsFromOrganism


description: Gets all protein GI identifiers from a complete genome annotation. Complete genome annotations are available from NCBI.


C
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: integer taxonomy identifier and a Byte representation of different kinds of DNA molecules (see comment)
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundProteinsFromOrganism(Int4 taxid, Byte chromflags);


C++
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: integer taxonomy identifier and a unsigned char representation of different kinds of DNA molecules (see comment)
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundProteinsFromOrganism(int taxid, unsigned char chromflags);


PERL
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecule:
1 is chromosome
2 is mitochondrion
4 is chloroplast
8 is plasmid
16 is extra-chromosomal element
32 is undefined
64 is phage
128 is undefined
the flags are additive; for example 255 means that all kinds of DNA molecules in a given organism are requested
arguments: taxonomy identifier and a filter integer representing different kinds of DNA molecule (see comment)
return: comma delimited list of protein GI identifiers or zero
example: SHoundProteinsFromOrganism(155864, 1);
list of functions


SHoundProteinsFromOrganismList


description: Gets all protein GI identifiers from a complete genomes list. Complete genome annotations are available from NCBI.
comment: The order in the lists is not maintained


C
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: pointer to a ValNode linked list of integer taxonomy identifiers and a Byte representation of different kinds of DNA molecules
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundProteinsFromOrganismList(ValNodePtr pvnTax, Byte chromflags);


C++
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecules:
#define CHROM_PHAGE 0x40 //phage
#define CHROM_NR 0x20 //not used
#define CHROM_ECE 0x10 //extra-chromosomal element
#define CHROM_PLMD 0x08 //plasmid
#define CHROM_CHLO 0x04 //chloroplast
#define CHROM_MITO 0x02 //mitochondrion
#define CHROM_CHROM 0x01 //chromosome
#define CHROM_ALL 0xFF //all
arguments: reference to an STL list of integer taxonomy identifiers and a unsigned char representation of different kinds of DNA molecules
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundProteinsFromOrganismList(list& stltaxid, unsigned char chromflags);


PERL
comment: The arguments concerning DNA molecule type are so called "byte flags" where each bit is reserved for one kind of DNA molecule:
1 is chromosome
2 is mitochondrion
4 is chloroplast
8 is plasmid
16 is extra-chromosomal element
32 is undefined
64 is phage
128 is undefined
the flags are additive; for example 255 means that all kinds of DNA molecules in a given organism are requested
arguments: comma delimited list of taxonomy identifiers and a filter integer representing different kinds of DNA molecule
return: comma delimited list of protein GI identifiers or zero
example: SHoundProteinsFromOrganismList("155864,139", 1);
list of functions



REDUNDANT (EQUIVALENT) SEQUENCES



Sequence records in GenBank are redundant. For example, two different sets of authors may submit the same sequence to GenBank. Both groups will be given different sequence record identifiers (GI's). SeqHound, groups sequences that are exactly the same under a single identifier (Redundant Group Identifier). These functions allow the programmer to find the Redundant Group that a sequence record (GI) belongs to and then retrieve all of the other sequences that belong to the same group. This set of functions is useful when trying to collect all of the annotation that applies to a biological sequence but may be scattered across several sequence records.


SHoundFirstOfRedundantGroupFromID


description: Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations. The function gets a representative entry (generally the one with best annotation such as PDB, RefSeq or SwissProt entry) given a redundant group identifier. The redundant group identifiers can only be used temporarily, they change every day.


C
arguments: integer redundant group identifier
return: integer GI identifier, -1 if not found or zero
prototype: Int4 SHoundFirstOfRedundantGroupFromID(Int4 group);


C++
arguments: integer redundant group identifier
return: integer GI identifier or an error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundFirstOfRedundantGroupFromID(int group);


PERL
arguments: redundant group identifier
return: GI protein identifier or zero
example: SHoundFirstOfRedundantGroupFromID(362477);
list of functions


SHoundFirstOfRedundantGroupFromIDList


description: Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations. The function gets a list of representative entries (generally the one with best annotation such as PDB, RefSeq or SwissProt entry) given a list of redundant group identifiers. The redundant group identifiers can only be used temporarily, they change every day.
comment: The order in the lists is not maintained.


C
arguments: pointer to a ValNode linked list of integer redundant group identifiers
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundFirstOfRedundantGroupFromIDList(ValNodePtr pvngroup);


C++
arguments: reference to an STL list of integer redundant group identifiers
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundFirstOfRedundantGroupFromIDList(list& stlgroup);


PERL
arguments: comma delimited list of redundant group identifiers
return: comma delimited list of protein GI identifiers or zero
example: SHoundFirstOfRedundantGroupFromIDList("362477,408917");
list of functions


SHoundRedundantGroup


description: Gets all protein entries with the same sequence from the system. Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations.


C
arguments: integer GI identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundRedundantGroup(Int4 Gi);


C++
arguments: integer GI identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundRedundantGroup(int Gi);


PERL
arguments: GI protein identifier
return: a comma delimited list of protein GI identifiers or zero
example: $result = SHoundRedundantGroup(32);
list of functions


SHoundRedundantGroupFromID


description: Gets a list of redundant protein sequences from a redundant group identifier. Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations. The redundant group identifiers can only be used temporarily, they change every day.


C
arguments: integer redundant group identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr LIBCALL SHoundRedundantGroupFromID(Int4 group);


C++
arguments: integer redundant group identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundRedundantGroupFromID(int group);


PERL
arguments: redundant group identifier
return: comma delimited list of protein GI identifiers or zero
example: SHoundRedundantGroupFromID(362477);
list of functions


SHoundRedundantGroupFromIDList


description: Gets a list of redundant protein sequences from a list of redundant group identifiers. Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations. The redundant group identifiers can only be used temporarily, they change every day.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer redundant group identifiers
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundRedundantGroupFromIDList(ValNodePtr pvngroup);


C++
arguments: reference to an STL list of integer redundant group identifiers
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundRedundantGroupFromIDList(list& stlgroup);


PERL
arguments: comma delimited list of redundant group identifiers
return: comma delimited list of protein GI identifiers or zero
example: SHoundRedundantGroupFromIDList("32,362477");
list of functions


SHoundRedundantGroupIDFromGI


description: Gets an arbitrary redundant group identifier for a protein sequence. Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations. The redundant group identifiers can only be used temporarily, they change every day.


C
arguments: integer GI identifier
return: integer redundant group identifier , -1 if not found or zero
prototype: Int4 SHoundRedundantGroupIDFromGI(Int4 Gi);


C++
arguments: integer GI identifier
return: integer redundant group identifier or an error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundRedundantGroupIDFromGI(int Gi);


PERL
arguments: GI identifier
return: redundant group identifier or zero
example: SHoundRedundantGroupIDFromGI(32);
list of functions


SHoundRedundantGroupIDFromGIList


description: Gets an arbitrary redundant group identifier for a list of protein sequences. Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations. The redundant group identifiers can only be used temporarily, they change every day.
comment: The order in the lists is not maintained.


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of integer redundant group identifiers or NULL
prototype: ValNodePtr SHoundRedundantGroupIDFromGIList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to an STL list of integer redundant group identifiers or to an empty list
prototype: list *SHoundRedundantGroupIDFromGIList(list& stlGi);


PERL
arguments: comma delimited list of protein GI identifiers
return: comma delimited list of redundant group identifiers or zero
example: SHoundRedundantGroupIDFromGIList("32,6017926");
list of functions


SHoundRedundantGroupKeyedList


description: Gets all protein GI identifiers with the same sequence as the query protein GI identifier. Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations.


PERL
arguments: comma delimited list of protein GI identifiers
return: a hash table, each entry of the table stores a query protein GI identifier and its associated list of redundant group protein GI identifiers.
or an empty hash table if failure
example: %hash = SHoundRedundantGroupKeyedList("4557225,234,123");
list of functions


SHoundRedundantGroupList


description: Gets all protein entries with the same sequence from the system for a list of protein sequences. Entrez collection of databases contains redundant entries i.e. proteins with the same sequence but different annotations.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundRedundantGroupList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundRedundantGroupList(list& stlGi);


PERL
arguments: comma delimited list of protein GI identifiers
return: comma delimited list of protein GI identifiers or zero
example: SHoundRedundantGroupList("32,4586891");
list of functions



TAXONOMY



This set of functions allows the programmer to traverse the NCBI taxonomy tree.


SHoundGetAllTaxAncestors


description: Operates on NCBI's taxonomy tree. It retrieves all taxons (the whole subtree) situated above a given taxon in the taxonomy tree.


C
arguments: integer taxonomy identifier
return: pointer to a ValNode linked list of integer taxonomy identifiers or NULL
prototype: ValNodePtr SHoundGetAllTaxAncestors(Int4 taxId);


C++
arguments: integer taxonomy identifier
return: pointer to an STL list of integer taxonomy identifiers or to an empty list
prototype: list *SHoundGetAllTaxAncestors(int taxid);


PERL
arguments: taxonomy identifier
return: comma delimited list of taxonomy identifiers or zero
example: SHoundGetAllTaxAncestors(10665);
list of functions


SHoundGetAllTaxProgeny


description: Operates on NCBI's taxonomy tree. It retrieves all taxons (the whole subtree) situated below a given taxon in the taxonomy tree.


C
arguments: integer taxonomy identifier
return: pointer to a ValNode linked list of integer taxonomy identifiers or NULL
prototype: ValNodePtr SHoundGetAllTaxProgeny(Int4 taxId);


C++
arguments: integer taxonomy identifier
return: pointer to an STL list of integer taxonomy identifiers or to an empty list
prototype: list *SHoundGetAllTaxProgeny(int taxid);


PERL
arguments: taxonomy identifier
return: comma delimited list of taxonomy identifiers or zero
example: SHoundGetAllTaxProgeny(10665);
list of functions


SHoundGetTaxChildNodes


description: Operates on NCBI's taxonomy tree. Retrieves all taxons situated directly below a given taxon in the taxonomy tree.


C
arguments: integer taxonomy identifier
return: pointer to a ValNode linked list of integer taxonomy identifiers or NULL
prototype: ValNodePtr SHoundGetTaxChildNodes(Int4 taxId);


C++
arguments: integer taxonomy identifier
return: pointer to an STL list of integer taxonomy identifiers or to an empty list
prototype: list *SHoundGetTaxChildNodes(int taxid);


PERL
arguments: taxonomy identifier
return: comma delimited list of taxonomy identifiers or zero
example: SHoundGetTaxChildNodes(10665);
list of functions


SHoundGetTaxChildNodesList


description: Operates on NCBI's taxonomy tree. Retrieves all taxons situated directly below a list of taxons in the taxonomy tree.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer taxonomy identifiers
return: ValNode linked list of integer taxonomy identifiers or NULL
prototype: ValNodePtr SHoundGetTaxChildNodesList(ValNodePtr taxIdList);


C++
arguments: reference to an STL list of integer taxonomy identifiers
return: pointer to an STL list of integer taxonomy identifiers or to an empty list
prototype: list *SHoundGetTaxChildNodesList(list& sltTaxid);


PERL
arguments: comma delimited list of taxonomy identifiers
return: comma delimited list of taxonomy identifiers or zero
example: SHoundGetTaxChildNodesList("10665");
list of functions


SHoundGetTaxLineageFromTaxID


description: Operates on NCBI's taxonomy tree. Retrieves lineage information in a specified style.


C
comment: Lineage form can be specified as follows:
#define SHoundGetTaxLineage_FULL 10 //full lineage
#define SHoundGetTaxLineage_GENBANK 20 //lineage as it appears in GenBank record
#define SHoundGetTaxLineagee_TAXDBSHORT 30 //lineage as it would appear on the taxonomy database home page
arguments: integer taxonomy identifier and an integer representing a defined lineage style (e.g. "SHoundGetTaxLineage_GENBANK")
return: pointer to a string containing lineage or NULL
prototype: CharPtr SHoundGetTaxLineageFromTaxID(Int4 taxId, Uint2 type);


C++
comment: Lineage form can be specified as follows:
#define SHoundGetTaxLineage_FULL 10 //full lineage
#define SHoundGetTaxLineage_GENBANK 20 //lineage as it appears in GenBank record
#define SHoundGetTaxLineagee_TAXDBSHORT 30 //lineage as it would appear on the taxonomy database home page
arguments: integer taxonomy identifier and an integer representing a defined lineage style (e.g. "SHoundGetTaxLineage_GENBANK")
return: string taxonomy name or an empty string
prototype: string SHoundGetTaxLineageFromTaxID(int taxid, int type);


PERL
comment: Lineage filters:
SHoundGetTaxLineage_FULL -- gets full lineage
SHoundGetTaxLineage_GENBANK -- gets lineage as it appears in GenBank record
SHoundGetTaxLineage_TAXDBSHORT - gets lineage as it would appear on the taxonomy database home page
arguments: taxonomy identifier and lineage filter (e.g. "TAXDB_GetLineage_GENBANK")
return: lineage or zero
example: SHoundGetTaxLineageFromTaxID(9606, "SHoundGetTaxLineage_FULL");
list of functions


SHoundGetTaxNameFromTaxID


description: Operates on NCBI's taxonomy tree. Retrieves taxonomy name in scientific form.


C
arguments: integer taxonomy identifier
return: pointer to a string containing scientific name or NULL
prototype: CharPtr SHoundGetTaxNameFromTaxID(Int4 taxId);


C++
arguments: integer taxonomy identifier
return: string taxonomy name or an empty string
prototype: string SHoundGetTaxNameFromTaxID(int taxid);


PERL
arguments: taxonomy identifier
return: scientific taxonomy name or zero
example: SHoundGetTaxNameFromTaxID(9606);
list of functions


SHoundGetTaxNameFromTaxIDByClass


description: Operates on NCBI's taxonomy tree. Retrieves taxonomy name in specified style.


C
comment: The name form can be specified using the following defines:
#define SLRI_taxon_name_name_class_none 0
#define SLRI_taxon_name_name_class_acronym 1
#define SLRI_taxon_name_name_class_anamorph 2
#define SLRI_taxon_name_name_class_blast_name 3
#define SLRI_taxon_name_name_class_common_name 4
#define SLRI_taxon_name_name_class_equivalent_name 5
#define SLRI_taxon_name_name_class_includes 6
#define SLRI_taxon_name_name_class_in_part 7
#define SLRI_taxon_name_name_class_misnomer 8
#define SLRI_taxon_name_name_class_misspelling 9
#define SLRI_taxon_name_name_class_preferred_acronym 10
#define SLRI_taxon_name_name_class_preferred_common_name 11
#define SLRI_taxon_name_name_class_scientific_name 12
#define SLRI_taxon_name_name_class_synonym 13
#define SLRI_taxon_name_name_class_teleomorph 14 arguments: integer taxonomy identifier and an integer representing a defined style (e.g. "SLRI_taxon_name_name_class_preferred_common_name")
return: pointer to a string containing taxonomy name or NULL
prototype: CharPtr SHoundGetTaxNameFromTaxIDByClass(Int4 taxId, Uint2 nameClass);


C++
comment: The name form can be specified using the following defines:
#define SLRI_taxon_name_name_class_none 0
#define SLRI_taxon_name_name_class_acronym 1
#define SLRI_taxon_name_name_class_anamorph 2
#define SLRI_taxon_name_name_class_blast_name 3
#define SLRI_taxon_name_name_class_common_name 4
#define SLRI_taxon_name_name_class_equivalent_name 5
#define SLRI_taxon_name_name_class_includes 6
#define SLRI_taxon_name_name_class_in_part 7
#define SLRI_taxon_name_name_class_misnomer 8
#define SLRI_taxon_name_name_class_misspelling 9
#define SLRI_taxon_name_name_class_preferred_acronym 10
#define SLRI_taxon_name_name_class_preferred_common_name 11
#define SLRI_taxon_name_name_class_scientific_name 12
#define SLRI_taxon_name_name_class_synonym 13
#define SLRI_taxon_name_name_class_teleomorph 14 arguments: integer taxonomy identifier and an integer representing a defined style (e.g. "SLRI_taxon_name_name_class_preferred_common_name")
return: string taxonomy name or an empty string
prototype: string SHoundGetTaxNameFromTaxID(int taxid);


PERL
comment: Class filters usable:
SLRI_taxon_name_name_class_none
SLRI_taxon_name_name_class_acronym
SLRI_taxon_name_name_class_anamorph
SLRI_taxon_name_name_class_blast_name
SLRI_taxon_name_name_class_common_name
SLRI_taxon_name_name_class_equivalent_name
SLRI_taxon_name_name_class_includes
SLRI_taxon_name_name_class_in_part
SLRI_taxon_name_name_class_misnomer
SLRI_taxon_name_name_class_misspelling
SLRI_taxon_name_name_class_preferred_acronym
SLRI_taxon_name_name_class_preferred_common_name
SLRI_taxon_name_name_class_scientific_name
SLRI_taxon_name_name_class_synonym
SLRI_taxon_name_name_class_teleomorph arguments: taxonomy identifier and a style filter (e.g. "SLRI_taxon_name_name_class_preferred_common_name")
return: taxonomy name or zero
example: SHoundGetTaxNameFromTaxIDByClass(9606, "SLRI_taxon_name_name_class_preferred_common_name");
list of functions


SHoundGetTaxParent


description: Operates on NCBI's taxonomy tree. Retrieves the taxon situated directly above a given taxon in the taxonomy tree.


C
arguments: integer taxonomy identifier
return: integer taxonomy identifier, -1 if not found or zero
prototype: Int4 SHoundGetTaxParent(Int4 taxId);


C++
arguments: integer taxonomy identifier
return: integer taxonomy identifier or an error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundGetTaxParent(int taxid);


PERL
arguments: taxonomy identifier
return: taxonomy identifier or zero
example: SHoundGetTaxParent(10665);
list of functions


SHoundIsTaxDeleted


description: Operates on NCBI's taxonomy tree. Reports if a given taxon has been deleted.


C
arguments: integer taxonomy identifier
return: boolean TRUE if success or FALSE
prototype: Boolean SHoundIsTaxDeleted(Int4 taxId);


C++
arguments: integer taxonomy identifier
return: boolean true if success or false
prototype: bool SHoundIsTaxDeleted(int taxid);


PERL
arguments: taxonomy identifier
return: "TRUE" if success or "FALSE"
example: SHoundIsTaxDeleted(10665);
list of functions


SHoundIsTaxMerged


description: Operates on NCBI's taxonomy tree. Reports if a given taxon has been renamed.


C
arguments: integer taxonomy identifier
return: boolean TRUE if success or FALSE
prototype: Boolean SHoundIsTaxMerged(Int4 taxId);


C++
arguments: integer taxonomy identifier
return: boolean true if success or false
prototype: bool SHoundIsTaxMerged(int taxid);


PERL
arguments: taxonomy identifier
return: "TRUE" if success or "FALSE"
example: SHoundIsTaxMerged(10665);
list of functions



SEQUENCE NEIGHBOURS



This set of functions retrieves sequence neighbours and sequence alignments given a GenInfo (GI) identifier of a protein. The non-redundant set of protein sequence records in SeqHound are used to precompute neighbours and alignments that are stored by SeqHound. This process is described in the NBLAST paper available in BioMed Central.


SHound3DNeighboursFromGi


description: Retrieves a list of protein BLAST neighbours possessing 3-D structure. Uses redundancy information for the query protein. This means that if the query fails for the input GI identifier, then the query will be retried for all other GI identifiers that belong to the same redundant group. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
comment: The neighbours are stored in a structure which contains the total number of neighbours, list of GI identifiers, and a list of structural (MMDB) identifiers
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: integer GI protein identifier, memory address for the results (pointer to ILinkSetPtr), float E-value cutoff
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHound3DNeighboursFromGi(Int4 gi, ILinkSetPtr PNTR p3DNeighbours, FloatHi evalue);


C++
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
comment: The neighbours are stored in a structure which contains the total number of neighbours, list of GI identifiers, and a list of structural (MMDB) identifiers
arguments: integer GI protein identifier, reference for the result (CFLink_set_List3), float E-value cutoff
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHound3DNeighboursFromGi(int gi, CILink_set& p3DNeighbours, float evalue);


PERL
arguments: protein GI identifier, E-value cutoff
return: sequence neighbours as comma delimited list of GI identifiers or zero if failure
example: SHound3DNeighboursFromGi(68502, 0.01);
list of functions


SHound3DNeighboursFromGiEx


description:
list of functions


SHound3DNeighboursFromGiList


description: Retrieves a list of protein BLAST neighbours possessing 3-D structure using a list of proteins as a query. Uses redundancy information for the query protein. This means that if the query fails for the input GI identifier, then the query will be retried for all other GI identifiers that belong to the same redundant group. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
comment: The neighbours are stored in a list of structures which contain the total number of neighbours, list of GI identifiers, and a list of (MMDB) structural identifiers
arguments: pointer to a ValNode linked list of integer GI identifiers, memory address for the results (pointer to ILinkSetList), float E-value cutoff
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHound3DNeighboursFromGiList(ValNodePtr pvngilist, ILinkSetListPtr PNTR p3DNeighboursList, FloatHi evalue);


C++
comment: The neighbours are stored in a list of structures which contain the total number of neighbours, list of GI identifiers, and a list of (MMDB) structural identifiers
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: reference to an STL list of integer GI identifiers, reference for the result (CILink_set_List2), float E-value cutoff
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHound3DNeighboursFromGiList(list stlGi, CILink_set_List2& pNeighbours, float evalue);


PERL
arguments: comma delimited list of protein GI identifiers (e.g. 4557225, 6009729)
an evalue (e.g. 1.0)
return: sequence neighbours as comma delimited list of GI identifiers or zero if failure
example: SHound3DNeighboursFromGiList("68502,266373", 0.01);
list of functions


SHound3DNeighboursFromTaxID


description: Retrieves a list of protein BLAST neighbours possessing 3-D structure using a list of proteins belonging to a complete genome as a query. Uses redundancy information for the query protein. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
comment: The neighbours are stored in a list of structures which contain the total number of neighbours, list of GI identifiers, and a list of (MMDB) structural identifiers
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: integer taxonomy identifier, memory address for the results (pointer to ILinkSetList), float E-value cutoff
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHound3DNeighboursFromTaxID(Int4 TaxID, ILinkSetListPtr PNTR p3DNeighboursList, FloatHi evalue);


C++
comment: The neighbours are stored in a list of structures which contain the total number of neighbours, list of GI identifiers, and a list of (MMDB) structural identifiers
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: integer taxonomy identifier, reference for the result (CILink_set_List2), float E-value cutoff
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHound3DNeighboursFromTaxID(int taxid, CILink_set_List2& p3DNeighbours, float evalue);


PERL
arguments: taxonomy identifier, E-value cutoff
return: sequence neighbours as comma delimited list of GI identifiers
example: SHound3DNeighboursFromTaxID(2097, 0.01);
list of functions


SHoundGetBlastResult


description: Retrieves summary information about a BLAST alignment between two protein sequences.


C
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: pair of integer GI identifiers and a memory address for the result ( pointer to NBlastResultSet)
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHoundGetBlastResult (Int4 gi1, Int4 gi2, NBlastResultSetPtr PNTR ppResult)


C++
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: pair of integer GI identifiers and a reference for the result (CNBlast_Result_Set)
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundGetBlastResult(int gi1, int gi2, CNBlast_Result_Set& pResult)
list of functions


SHoundGetBlastSeqAlign


description: Retrieves detailed information about a BLAST alignment between two protein sequences.


C
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: pair of integer GI identifiers and a memory address for the result ( pointer to SeqAlign)
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHoundGetBlastSeqAlign(Int4 gi1, Int4 gi2, SeqAlignPtr PNTR psap)


C++
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: pair of integer GI identifiers and a reference for the result (CSeq_align)
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundGetBlastSeqAlign(int gi1, int gi2, CSeq_align& psap);
list of functions


SHoundGiAndNumNeighboursList


description: Retrieves a number of neighbours for each protein in the database. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
comment: The neighbours are stored in a structure which contains the total number of proteins, list of GI identifiers, and a list of counts
arguments: memory address for the results (pointer to ILinkSet)
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR LIBCALL SHoundGiAndNumNeighboursList (ILinkSetPtr PNTR ilsp);


C++
comment: The neighbours are stored in a structure which contains the total number of proteins, list of GI identifiers, and a list of counts
arguments: reference for the result (CILink_set)
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundGiAndNumNeighboursList(CILink_set& pilsp);
list of functions


SHoundNeighboursFromGi


description: Retrieves a list of protein BLAST neighbours. Uses redundancy information for the query protein. This means that if the query fails for the input GI identifier, then the query will be retried for all other GI identifiers that belong to the same redundant group. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
comment: The neighbours are stored in a structure which contains the total number of neighbours, list of GI identifiers, and a list of E-values
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: integer GI protein identifier, memory address for the results (pointer to FLinkSetPtr), float E-value cutoff, boolean TRUE or FALSE to limit the number of results to one hundred
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHoundNeighboursFromGi(Int4 gi, FLinkSetPtr PNTR pNeighbours, FloatHi evalue, Boolean bLimit);


C++
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
comment: The neighbours are stored in a structure which contains the total number of neighbours, list of GI identifiers, and a list of E-values
arguments: integer GI protein identifier, reference for the result (CFLink_set), float E-value cutoff, boolean true or false to limit the number of results to one hundred
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundNeighboursFromGi(int gi, CFLink_set& pNeighbours, float evalue, bool bLimit);


PERL
arguments: protein GI identifier ( e.g. 4557225)
an evalue cutoff (e.g. 0.5)
"TRUE" to restrict return list to 100, otherwise set limit "FALSE"
return: sequence neighbours as comma delimited list of GI identifiers or zero if failure
example: SHoundNeighboursFromGi(6017926,0.1,"FALSE");
list of functions


SHoundNeighboursFromGiEx


description: Retrieves a list of protein BLAST neighbours. This function does not use redundancy information. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
comment: The neighbours are stored in a structure which contains the total number of neighbours, list of GI identifiers, and a list of E-values
arguments: integer GI protein identifier, memory address for the results (pointer to FLinkSetPtr), float E-value cutoff, boolean TRUE or FALSE to limit the number of results to one hundred
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHoundNeighboursFromGiEx(Int4 gi, FLinkSetPtr PNTR pNeighbours, FloatHi evalue, Boolean bLimit);


C++
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
comment: The neighbours are stored in a structure which contains the total number of neighbours, list of GI identifiers, and a list of E-values
arguments: integer GI protein identifier, reference for the result (CFLink_set), float E-value cutoff, boolean true or false to limit the number of results to one hundred
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundNeighboursFromGiEx(int gi,CFLink_set& pNeighbours, float evalue, bool bLimit);
list of functions


SHoundNeighboursFromGiList


description: Retrieves a list of protein BLAST neighbours using a list of proteins as a query. Uses redundancy information for the query proteins. This means that if the query fails for the input GI identifier, then the query will be retried for all other GI identifiers that belong to the same redundant group. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
comment: The neighbours are stored in a list of structures which contain the total number of neighbours, list of GI identifiers, and a list of E-values
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: pointer to a ValNode linked list of integer GI identifiers, memory address for the result (pointer to FLinkSetList), float E-value cutoff
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHoundNeighboursFromGiList(ValNodePtr gilist, FLinkSetListPtr PNTR pNeighboursList, FloatHi evalue);


C++
comment: The neighbours are stored in a list of structures which contain the total number of neighbours, list of GI identifiers, and a list of E-values
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: reference to an STL list of integer GI identifiers, reference for the result (CFLink_set_List2), float E-value cutoff
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundNeighboursFromGiList(list& stlGi, CFLink_set_List2& pNeighbours, float evalue);


PERL
arguments: a comma delimited list of protein GI identifiers ( e.g. "4557225,4501843")
evalue cutoff (e.g. 0.5)
return: sequence neighbours as comma delimited list of GI identifiers or zero if failure
example: SLRI_ERR SHoundNeighboursFromGiList("6017926,32",0.01);
list of functions


SHoundNeighboursFromTaxID


description: Retrieves a list of protein BLAST neighbours using a list of proteins belonging to a complete genome as a query. Uses redundancy information for the query proteins. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
comment: The neighbours are stored in a list of structures which contain the total number of neighbours, list of GI identifiers, and a list of E-values
arguments: integer taxonomy identifier, memory address for the results (pointer to FLinkSetList), float E-value cutoff
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHoundNeighboursFromTaxID(Int4 TaxID, FLinkSetListPtr PNTR pNeighboursList, FloatHi evalue);


C++
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
comment: The neighbours are stored in a list of structures which contain the total number of neighbours, list of GI identifiers, and a list of E-values
arguments: integer taxonomy identifier, reference for the result (CFLink_set_List2), float E-value cutoff
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundNeighboursFromTaxID(int taxid, CFLink_set_List2& pNeighboursList, float evalue);


PERL
arguments: taxonomy identifier, E-value cutoff
return: sequence neighbours as comma delimited list of GI identifiers
example: SHoundNeighboursFromTaxID(2097,0.01);
list of functions


SHoundNeighboursOfNeighbours


description: Retrieves a list of protein BLAST neighbours using a list of proteins constituting neighbours to a given protein as a query. Uses redundancy information for the query proteins. This means that if the query fails for the input GI identifier, then the query will be retried for all other GI identifiers that belong to the same redundant group. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
comment: The neighbours are stored in a list of structures which contain the total number of neighbours, list of GI identifiers, and a list of E-values
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: integer GI protein identifier, memory address for the results (pointer to FLinkSetList), float E-value cutoff
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHoundNeighboursOfNeighbours(Int4 gi, FLinkSetListPtr PNTR pGINeighboursList, FloatHi evalue);


C++
comment: The neighbours are stored in a list of structures which contain the total number of neighbours, list of GI identifiers, and a list of E-values
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: integer GI protein identifier, reference for the result (CFLink_set_List2), float E-value cutoff
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundNeighboursOfNeighbours(int Gi, CFLink_set_List2& pNeighboursList, float evalue);
list of functions


SHoundNeighboursOfNeighboursList


description: Retrieves a list of protein BLAST neighbours using a list of proteins constituting neighbours to a given list of proteins as a query. Uses redundancy information for the query proteins. This means that if the query fails for the input GI identifier, then the query will be retried for all other GI identifiers that belong to the same redundant group. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
comment: The neighbours are stored in a list of lists of structures which contain the total number of neighbours, list of GI identifiers, and a list of E-values
arguments: pointer to a ValNode linked list of integer GI identifiers, memory address for the results (pointer to FLinkSetList2), float E-value cutoff
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHoundNeighboursOfNeighboursList(ValNodePtr pvngilist, FLinkSetList2Ptr PNTR pAllNeighboursList, FloatHi evalue));


C++
comment: The neighbours are stored in a list of lists of structures which contain the total number of neighbours, list of GI identifiers, and a list of E-values
arguments: reference to an STL list of integer GI identifiers, reference for the result (CFLink_set_List3), float E-value cutoff
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundNeighboursOfNeighboursList(list& stlGi, CFLink_set_List3&, float evalue);
list of functions


SHoundNumNeighboursInDB


description: Gets a total number of neighbours in the database. The BLAST protein neighbours were calculated using 0.01 maximum E-value cutoff.


C
arguments: memory address for the results (integer)
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR LIBCALL SHoundNumNeighboursInDB (Int4 PNTR pnum);


C++
arguments: reference for the result (integer)
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundNumNeighboursInDB(int& pnum);
list of functions



COMPLETE GENOME ANALYSIS



These functions return information concerning completely sequenced genomes that are present in SeqHound.


SHound3DListFromTaxID


description: Returns a list of proteins with 3-D structure for a complete organism. The function uses redundancy information but no neighbour information


C
comment: The results are stored in a structure which contains the total number of 3-D structures, list of GI identifiers, and a list of structural MMDB identifiers
arguments: integer taxonomy identifier, memory address for the results (pointer to ILinkSet)
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHound3DListFromTaxID(Int4 TaxID, ILinkSetPtr PNTR p3DList);


C++
comment: The results are stored in a structure which contains the total number of 3-D structures, list of GI identifiers, and a list of structural MMDB identifiers
arguments: integer taxonomy identifier and reference for the result (CILink_set)
return: integer error code:
SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred
SEQHOUND_NULL if the value was not found in the database
WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHound3DListFromTaxID(int taxid, CILink_set& p3DNeighbours);


PERL
arguments: taxonomy identifier
return: comma delimited list of GI identifiers
example: SHound3DListFromTaxID(2097);
list of functions


SHoundAllGenomesWithNumProteins


description: Retrieves summary for complete genomes and their protein count.


C
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
comment: The results are stored in a structure which contains the total number of genomes, list of taxonomy identifiers, and a list of protein counts
arguments: memory address for the result (pointer to ILinkSet)
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR LIBCALL SHoundAllGenomesWithNumProteins(ILinkSetPtr PNTR pAllGenomes);


C++
comment: The results are stored in a structure which contains the total number of genomes, list of taxonomy identifiers, and a list of protein counts
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: reference for the result (CILink_set)
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundAllGenomesWithNumProteins(CILink_set& pAllGenomes);


PERL
arguments: none
return: a list of taxonomy identifiers and their associated number of proteins
example: @list = SHoundAllGenomesWithNumProteins();
list of functions


SHoundAllGenomesWithScientificNames


description: Retrieves all complete genomes from SeqHound and their scientific names.


C
comment: The results are stored in a structure which contains the total number of genomes, list of taxonomy identifiers, and a list of taxonomy names
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
arguments: memory address for the result (pointer to CLinkSet)
return: integer error code; SLRI_SUCCESS for success or SLRI_FAIL
prototype: SLRI_ERR SHoundAllGenomesWithScientificNames(CLinkSetPtr PNTR pAllGenomes);


C++
comment: The API takes the memory address of a pointer as one argument. Please make sure that NO memory is allocated to the structure pointed to by the pointer (e.g. initialize the pointer to NULL before passing it to the SeqHound API call). When the function call is completed, the memory pointed to by the pointer as a result of the API call should be freed to avoid memory leak.
comment: The results are stored in a structure which contains the total number of genomes, list of taxonomy identifiers, and a list of taxonomy names
arguments: reference for the result (CCLink_set)
return: integer error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundAllGenomesWithScientificNames(CCLink_set& pAllGenomes);


PERL
arguments: none
return: a list of taxonomy identifiers and their associated scientific names
example: @list = SHoundAllGenomesWithScientificNames();
list of functions



FUNCTIONAL ANNOTATION



These functions retrieve functional annotation related to sequence records in SeqHound. This annotation includes associated identifiers from the Gene Ontology (GO), Online Inheritance in Man (OMIM), NCBI's Conserved Domain Database (CDD) and LocusLink.


SHoundCDDIDFromGi


description: Fetches domains from Conserved Domain Database (CDD) as determined by Reverse Position Specific BLAST on a given sequence.
comment: Domain information returned by this function was originally retrieved for proteins found in NCBI's LocusLink database. If the query protein GI identifier is not used by the LocusLink record then no information will be returned. The query protein GI identifier could be used to first retrieve a list of redundant (identical) sequence GI identifiers using SHoundRedundantGroup and then using these returned protein GI identifiers to query the LocusLink data. For more conserved domain information (for all proteins found in NCBI's nr dataset) see API functions under RPS BLAST Domains.


C
arguments: integer GI identifier (must be protein GI identifier)
return: pointer to a ValNode linked list of string CDD identifiers or NULL
prototype: ValNodePtr SHoundCDDIDFromGi(Int4 gi);


C++
arguments: integer GI identifier (must be protein GI identifier)
return: pointer to an STL list of string CDD identifiers or to an empty list
prototype: list *SHoundCDDIDFromGi(int Gi);


PERL
arguments: GI identifier (must be protein GI identifier e.g. 4502501)
return: comma delimited list of CDDIDs (e.g.COG2373, pfam00207,pfam01821,pfam01835) or zero if failure
example: SHoundCDDIDFromGi(4557225);
list of functions


SHoundCDDIDFromGiList


description: Fetches domains from Conserved Domain Database (CDD) as determined by Reverse Position Specific BLAST on a list of sequences.
comment: Domain information returned by this function was originally retrieved for proteins found in NCBI's LocusLink database. If the query protein GI identifier is not used by the LocusLink record then no information will be returned. The query protein GI identifier could be used to first retrieve a list of redundant (identical) sequence GI identifiers using SHoundRedundantGroup and then using these returned protein GI identifiers to query the LocusLink data. For more conserved domain information (for all proteins found in NCBI's nr dataset) see API functions under RPS BLAST Domains. The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers (must be protein GI identifiers)
return: pointer to a ValNode linked list of string CDD identifiers or NULL
prototype: ValNodePtr SHoundCDDIDFromGiList(ValNodePtr vnpgi);


C++
arguments: reference to an STL list of integer GI identifiers (must be protein GI identifiers)
return: pointer to a ValNode linked list of string CDD identifiers or NULL
prototype: list *SHoundCDDIDFromGiList(list& stlGi);


PERL
arguments: comma delimited GI identifiers (must be protein GI identifiers e.g. 4502501,4501843)
return: comma delimited list of CDDIDs or zero if failure
example: SHoundCDDIDFromGiList("4501841,4557225");
list of functions


SHoundCDDIDFromLLID


description: Fetches all Conserved Domain Database (CDD) IDs for a given LocusLink ID (LLID)


PERL
arguments: Locus Link ID (LLID)
return: list of CDDIDs or zero if failure
example: SHoundCDDIDFromLLID(1);
list of functions


SHoundCDDScoreFromGi


description: Fetches a score for Conserved Domain Database (CDD) domain assignment as determined by Reverse Position Specific BLAST.
comment: Currently, this function does not return meaningful results because there are no evalues associated with the records. Information returned by this function was originally retrieved for proteins found in NCBI's LocusLink database. If the query protein GI identifier is not used by the LocusLink record then no information will be returned. The query protein GI identifier could be used to first retrieve a list of redundant (identical) sequence GI identifiers using SHoundRedundantGroup and then using these returned protein GI identifiers to query the LocusLink data. For more conserved domain information (for all proteins found in NCBI's nr dataset) see API functions under RPS BLAST Domains.


C
arguments: integer GI identifier and string CDD identifier (must be protein GI)
return: float score, -1 or zero on error
prototype: FloatHi SHoundCDDScoreFromGi(Int4 gi, CharPtr cddid);


C++
arguments: integer GI identifier (must be protein GI identifier) and string CDD identifier
return: float score or an error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: float SHoundCDDScoreFromGi(int Gi, string cddid);
list of functions


SHoundGiFromCDDID


description: Fetches all protein sequences carrying a domain from Conserved Domain Database (CDD) as determined by Reverse Position Specific BLAST. Uses information from NCBI's LocusLink database. If the query CDD identifier is not used by LocusLink then no information will be returned.


C
arguments: pointer to a string containing CDD identifier
return: ValNode linked list of integer protein GI identifiers or NULL
prototype: ValNodePtr SHoundGiFromCDDID(const CharPtr cddid);


C++
arguments: string CDD identifier
return: pointer to an STL list of integer protein GI identifiers or to an empty list
prototype: list *SHoundGiFromCDDID(string& cddid);


PERL
arguments: Conserved Domain Database ID (CDDID) (either Pfam or SMART e.g. pfam00202)
return: comma delimited list of protein GI identifiers or zero if failure
example: SHoundGiFromCDDID("pfam00664");
list of functions


SHoundGiFromCDDIDList


description: Fetches all protein sequences carrying a list of domains from Conserved Domain Database (CDD) as determined by Reverse Position Specific BLAST. Uses information from NCBI's LocusLink database. If the query CDD identifier is not used by LocusLink then no information will be returned.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of string CDD identifiers
return: pointer to a ValNode linked list of integer protein GI identifiers or NULL
prototype: ValNodePtr SHoundGiFromCDDIDList(ValNodePtr vnpcdd);


C++
arguments: reference to an STL list of string CDD identifiers
return: pointer to an STL list of integer protein GI identifiers or to an empty list
prototype: list *SHoundGiFromCDDIDList(list& stlcdd);


PERL
arguments: a comma delimited Conserved Domain Database ID (CDDID) list (e.g. "pfam00202,pfam01835,pfam00079" )
return: comma delimited list of protein GI identifiers or zero if failure
example: SHoundGiFromCDDIDList("pfam00202,pfam01835,pfam00079,smart00231");
list of functions


SHoundGiFromGOID


description: Fetches all protein sequences which were assigned a given Gene Ontology (GO) function, process or component.


C
arguments: integer GO identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundGiFromGOID(Int4 goid);


C++
arguments: integer GO identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundGiFromGOID(int GOID);


PERL
arguments: GO identifier
return: comma delimited list of GI identifiers or zero
example: SHoundGiFromGOID(8320);
list of functions


SHoundGiFromGOIDAndECode


description: Gets GI identifiers from Gene Ontology ID (GOID) and evidence code (ECode)


C
arguments: integer GO identifier and GO evidence code (CharPtr)
return: pointer to a list of integer GIs or NULL
prototype: ValNodePtr SHoundGiFromGOIDAndECode(Int4 goid, CharPtr ecode);


C++
arguments: integer GO identifier and GO evidence code
return: list of integer Gis or NULL
prototype: list *SHoundGiFromGOIDAndECode(int goid, string ecode );


PERL
arguments: GOID (e.g. 5554), ecode(e.g. ND)
return: a list of comma delimited GI or zero if failure
example: SHoundGiFromGOIDAndECode(5554, ND)
list of functions


SHoundGiFromGOIDList


description: Fetches all protein sequences which were assigned a list of Gene Ontology (GO) functions, processes or components.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GO identifiers
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundGiFromGOIDList(ValNodePtr vnpgo);


C++
arguments: reference to an STL list of integer GO identifiers
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundGiFromGOIDList(list& stlGo);


PERL
arguments: comma delimited list of GO identifiers
return: comma delimited list of GI identifiers or zero
example: SHoundGiFromGOIDList("8320,5737");
list of functions


SHoundGiFromGOIDListAndECode


description: Gets GI identifiers from Gene Ontology ID (GOID) list and evidence code (ECode)
comment: The order in the lists is not maintained


C
arguments: integer GO identifier list and one GO evidence code
return: pointer to a list of integer GIs (unique) or NULL
prototype: ValNodePtr SHoundGiFromGOIDListAndECode(ValNodePtr vnpgo, CharPtr ecode);


C++
arguments: integer GO identifier list and one GO evidence code
return: list of integer GO Ids or NULL
prototype: list *SHoundGiFromGOIDListAndECode(list& stlGo, string ecode);


PERL
arguments: GOIDList (e.g. 5554,4), ecode(e.g. ND)
return: a list of comma delimited GI or zero if failure
example: SHoundGiFromGOIDListAndECode(5554,4, ND);
list of functions


SHoundGiFromLLID


description: Fetches protein GI identifiers associated with NCBI's LocusLink ID (LLID)


C
arguments: integer LocusLink identifier
return: pointer to a ValNode linked list of integer protein GI identifiers or NULL
prototype: ValNodePtr SHoundGiFromLLID(Int4 llid);


C++
arguments: integer LocusLink identifier
return: pointer to an STL list of integer protein GI identifiers or to an empty list
prototype: list *SHoundGiFromLLID(int llid);


PERL
arguments: LocusLink ID (LLID) (e.g. 9)
return: comma delimited list of protein GI identifiers or zero if failure
example: SHoundGiFromLLID(9);
list of functions


SHoundGiFromLLIDList


description: Fetches protein GI identifiers associated with a list of NCBI's LocusLink IDs (LLID).
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer LocusLink identifiers
return: pointer to a ValNode linked list of integer protein GI identifiers or NULL
prototype: ValNodePtr SHoundGiFromLLIDList(ValNodePtr vnpll);


C++
arguments: reference to an STL list of integer LocusLink identifiers
return: pointer to an STL list of integer protein GI identifiers or to an empty list
prototype: list *SHoundGiFromLLIDList(list& stllid);


PERL
arguments: comma delimited list of LLIDs (e.g. 2,9, 13)
return: comma delimited list of protein GI identifiers (e.g.4557225,4557227,27754153) or zero if failure
example: SHoundGiFromLLIDList("1,2,13");
list of functions


SHoundGiFromOMIM


description: Fetches all protein GI identifiers associated with an entry in Online Mendelian Inheritance in Man (OMIM) database.


C
arguments: integer OMIM identifier
return: pointer to a ValNode linked list of integer protein GI identifiers or NULL
prototype: ValNodePtr SHoundGiFromOMIM(Int4 omimid);


C++
arguments: integer OMIM identifier
return: pointer to an STL list of integer protein GI identifiers or to an empty list
prototype: list *SHoundGiFromOMIM(int omimid);


PERL
arguments: OMIM ID (e.g. 137150 )
return: comma delimited list of protein GI identifiers (e.g. 4501847) or zero if failure
example: SHoundGiFromOMIM(103950);
list of functions


SHoundGiFromOMIMList


description: Fetches all protein GI identifiers associated with a list of entries in Online Mendelian Inheritance in Man (OMIM) database.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer OMIM identifiers
return: pointer to a ValNode linked list of integer protein GI identifiers or NULL
prototype: ValNodePtr SHoundGiFromOMIMList(ValNodePtr vnpomim);


C++
arguments: reference to an STL list of integer OMIM identifiers
return: pointer to an STL list of integer protein GI identifiers or to an empty list
prototype: list *SHoundGiFromOMIMList(list& stlomim);


PERL
arguments: comma delimited OMIM IDs (e.g. 137150,103950,108345 )
return: comma delimited list of protein GI identifiers (e.g.4501847,4557225) or zero if failure
example: SHoundGiFromOMIMList("137150,103950,108345");
list of functions


SHoundGOECodeFromGiAndGOID


description: Gets evidence code from GI identifier and Gene Ontology (GO) ID.


C
arguments: integer GI identifier and integer GO identifier
return: ValNodePtr linked with a list of character GO evidence code (not unique) or NULL
prototype: ValNodePtr SHoundGOECodeFromGiAndGOID(Int4 Gi, Int4 goid);


C++
arguments: integer GI identifier and integer GO identifier
return: list of string GO evidence codes or NULL
prototype: list *SHoundGOECodeFromGiAndGOID(int Gi, int goid);


PERL
arguments: GI (e.g. 21071030), GOID (e.g. 5554)
return: a list of comma delimited Ecode or zero if failure
example: SHoundGOECodeFromGiAndGOID(21071030, 5554);
list of functions


SHoundGOIDFromGi


description: Fetches all Gene Ontology (GO) terms assigned to a protein sequence. An individual sequence can be referred to by one or more process, function or component terms.


C
arguments: integer GI identifier
return: pointer to a ValNode linked list of integer GO identifiers or NULL
prototype: ValNodePtr SHoundGOIDFromGi(Int4 gi);


C++
arguments: integer GI identifier
return: pointer to an STL list of integer GO identifiers or to an empty list
prototype: list *SHoundGOIDFromGi(int Gi);


PERL
arguments: GI identifier
return: comma delimited list of GO identifiers or zero
example: SHoundGOIDFromGi(15149484);
list of functions


SHoundGOIDFromGiList


description: Fetches all Gene Ontology (GO) terms assigned to a list of protein sequences. An individual sequence can be referred to by one or more process, function or component terms.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of integer GO identifiers or NULL
prototype: ValNodePtr SHoundGOIDFromGiList(ValNodePtr vnpgi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to an STL list of integer GO identifiers or to an empty list
prototype: list *SHoundGOIDFromGiList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers
return: comma delimited list of GO identifiers or zero
example: SHoundGOIDFromGiList("15149484,6912624");
list of functions


SHoundGOIDFromLLID


description: Fetches all Gene Ontology (GO) IDs for a given LocusLink ID (LLID)


PERL
arguments: Locus Link ID (LLID, e.g. 1)
return: comma delimited list of GOIDs or zero if failure
example: SHoundGOIDFromLLID(1);
list of functions


SHoundGOIDFromRedundantGi


description: Fetches all Gene Ontology (GO) term identifiers assigned to a protein sequence. Uses redundancy information for the query GI identifier. This means that if the query fails for the input GI identifier, then the query will be retried for all other GI identifiers that belong to the same redundant group. An individual sequence can be referred to by one or more a process, function or component terms.


C
arguments: integer GI identifier
return: pointer to a ValNode linked list of integer GO identifiers or NULL
prototype: ValNodePtr SHoundGOIDFromRedundantGi(Int4 gi);


C++
arguments: integer GI identifier
return: pointer to an STL list of integer GO identifiers or to an empty list
prototype: list *SHoundGOIDFromRedundantGi(int Gi);


PERL
arguments: GI identifier (e.g. 21071030)
return: comma delimited list of GO identifiers or or zero if failure
example: SHoundGOIDFromRedundantGi(15149484);
list of functions


SHoundGOIDFromRedundantGiList


description: Fetches all Gene Ontology (GO) term identifiers assigned to a list of protein sequences. Uses redundancy information for the query GI identifier. This means that if the query fails for the input GI identifier, then the query will be retried for all other GI identifiers that belong to the same redundant group. An individual sequence can be referred to by one or more a process, function or component terms.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of integer GO identifiers or NULL
prototype: ValNodePtr SHoundGOIDFromRedundantGiList(ValNodePtr vnpgi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to an STL list of integer GO identifiers or to an empty list
prototype: list *SHoundGOIDFromRedundantGiList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers (e.g. "21071030,4586891")
return: comma delimited list of GO identifiers or zero if failure
example: SHoundGOIDFromRedundantGiList("15149484,6912624");
list of functions


SHoundGOPMIDFromGiAndGOID


description: Gets PMID list from GI identifier and Gene Ontology ID (GOID)


C
arguments: integer GI identifier and integer GO identifier
return: ValNodePtr linked with a list of integer PMIDs (not unique) or NULL
prototype: ValNodePtr SHoundGOPMIDFromGiAndGOID(Int4 Gi, Int4 goid);


C++
arguments: integer GI identifier and integer GO identifier
return: list of integer PMIDs or NULL
prototype: list *SHoundGOPMIDFromGiAndGOID(int Gi, int goid);


PERL
arguments: GI (e.g. 21071030), GOID (e.g. 5554)
return: a list of comma delimited PMID or zero if failure
example: SHoundGOPMIDFromGiAndGOID(21071030, 5554)
list of functions


SHoundLLIDFromCDDID


description: Fetches LocusLink IDs (LLID) for a given Conserved Domain Database (CDD) ID


PERL
arguments: Conserved Domain ID
return: comma delimited list of LLIDs or zero if failure
example: SHoundLLIDFromCDDID("smart00408");
list of functions


SHoundLLIDFromGi


description: Fetches LocusLink IDs (LLID) for a given protein sequence.


C
arguments: integer GI identifier (must be protein GI identifier)
return: integer LocusLink identifier , -1 or zero on error
prototype: Int4 SHoundLLIDFromGi(Int4 gi);


C++
arguments: integer GI identifier (must be protein GI identifier)
return: integer LocusLink identifier or an error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundLLIDFromGi(int Gi);


PERL
arguments: GI identifier (must be protein GI identifier e.g. 4501843)
return: LLID (e.g. 12) or zero if failure
example: SHoundLLIDFromGi(4501843);
list of functions


SHoundLLIDFromGiList


description: Fetches LocusLink IDs (LLID) associated with a list of protein GI identifiers.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers (must be protein GI identifiers)
return: pointer to a ValNode linked list of integer LocusLink identifiers or NULL
prototype: ValNodePtr SHoundLLIDFromGiList(ValNodePtr vnpgi);


C++
arguments: reference to an STL list of integer GI identifiers (must be protein GI identifiers)
return: pointer to an STL list of integer LocusLink identifiers or to an empty list
prototype: list *SHoundLLIDFromGiList(list& stlGi);


PERL
arguments: comma delimited list of GIs (must be protein GI identifiers e.g. 4501841,4557225)
return: comma delimited list of LLIDs (e.g. 2, 16) or zero if failure
example: SHoundLLIDFromGiList("4501841,4557225");
list of functions


SHoundLLIDFromGOIDAndECode


description: Fetches LocusLink IDs (LLID) for a given Gene Ontology ID (GOID) and evidence code (ECode)


PERL
arguments: GOID
GO evidence code (e.g. "IEA")
return: comma delimited list of LLIDs or zero if failure
example: SHoundLLIDFromGOIDAndECode(6810, "IEA");
list of functions


SHoundLLIDFromOMIM


description: Fetches LocusLink IDs (LLID) for a given Online Mendelian Inheritance in Man (OMIM) ID.


PERL
arguments: OMIM ID
return: comma delimited list of LLIDs or zero if failure
example: $seqhound->SHoundLLIDFromOMIM(103950);
list of functions


SHoundLocusFromGi


description: Fetches a locus assignment for a protein sequence as found in NCBI's LocusLink database.


C
arguments: integer GI identifier (must be protein GI identifier)
return: pointer to a string containing a locus or NULL
prototype: CharPtr SHoundLocusFromGi(Int4 gi);


C++
arguments: integer GI identifier (must be protein GI identifier)
return: string containing a locus or an empty string
prototype: string SHoundLocusFromGi(int Gi);


PERL
arguments: GI identifier (must be protein GI identifier e.g. 51036689)
return: locus (e.g. 14q32.1) or zero if failure
example: SHoundLocusFromGi(51036689);
list of functions


SHoundOMIMFromGi


description: Fetches Online Mendelian Inheritance in Man (OMIM) database identifiers associated with a protein GI identifier.


C
arguments: integer GI identifier (must be protein GI identifier)
return: pointer to a ValNode linked list of integer OMIM identifiers or NULL
prototype: ValNodePtr SHoundOMIMFromGi(Int4 gi);


C++
arguments: integer GI identifier (must be protein GI identifier)
return: pointer to an STL list of integer OMIM identifiers or to an empty list
prototype: list *SHoundOMIMFromGi(int Gi);


PERL
arguments: GI identifier (must be protein GI identifier e.g. 4502501)
return: comma delimited list of OMIM IDs (e.g. 120820) or zero if failure
example: SHoundOMIMFromGi(4505335);
list of functions


SHoundOMIMFromGiList


description: Fetches Online Mendelian Inheritance in Man (OMIM) database identifiers associated with a list of protein GI identifiers.
comment: The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers (must be protein GI identifiers)
return: pointer to a ValNode linked list of integer OMIM identifiers or NULL
prototype: ValNodePtr SHoundOMIMFromGiList(ValNodePtr vnpgi);


C++
arguments: reference to an STL list of integer GI identifiers (must be protein GI identifiers)
return: pointer to an STL list of integer OMIM identifiers or to an empty list
prototype: list *SHoundOMIMFromGiList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers (must be protein GI identifiers e.g. 4502501,4501843)
return: comma delimited list of OMIM IDs (e.g. 107280,120820) or zero if failure
example: SHoundOMIMFromGiList("4501841,4557225");
list of functions


SHoundOMIMFromLLID


description: Fetches Online Mendelian Inheritance in Man (OMIM) IDs for a given LocusLink ID (LLID)


PERL
arguments: Locus Link ID (LLID)
return: OMIM ID or zero if failure
example: SHoundOMIMFromLLID(1);
list of functions


SHoundProteinReportSetDescription


description:
list of functions



GO HIERARCHY



These functions allow the programmer to traverse the Gene Ontology directed acyclic graph. See http://www.geneontology.org/ for more information on this data structure.


SHoundGODBGetAllAncestors


description: This function operates on Gene Ontology (GO) vocabulary graphs. It retrieves a list of all processes, functions or components situated above a given GO identifier in the graphs.


C
arguments: integer GO identifier
return: pointer to a ValNode linked list of integer GO identifiers or NULL
prototype: ValNodePtr SHoundGODBGetAllAncestors(Int4 goid);


C++
arguments: integer GO identifier
return: pointer to an STL list of integer GO identifiers or to an empty list
prototype: list *SHoundGODBGetAllAncestors(int goid);


PERL
arguments: GO identifier
return: comma delimited list of GO identifiers or zero
example: SHoundGODBGetAllAncestors(7596);
list of functions


SHoundGODBGetAllChildren


description: Operates on Gene Ontology (GO) vocabulary graphs. Retrieves a list all of processes, functions or components situated below a given GO identifier in the graphs.


C
arguments: integer GO identifier
return: pointer to a ValNode linked list of integer GO identifiers or NULL
prototype: ValNodePtr SHoundGODBGetAllChildren(Int4 goid);


C++
arguments: integer GO identifier
return: pointer to an STL list of integer GO identifiers or to an empty list
prototype: list *SHoundGODBGetAllChildren(int goid);


PERL
arguments: GO identifier
return: comma delimited list of GO identifiers or zero
example: SHoundGODBGetAllChildren(6886);
list of functions


SHoundGODBGetChildrenOf


description: Operates on Gene Ontology (GO) vocabulary graphs. Retrieves a list of processes, functions or components situated directly below a given GO identifier in the graphs.


C
arguments: integer GO identifier
return: pointer to a ValNode linked list of integer GO identifiers or NULL
prototype: ValNodePtr SHoundGODBGetChildrenOf(Int4 goid);


C++
arguments: integer GO identifier
return: pointer to an STL list of integer GO identifiers or to an empty list
prototype: list *SHoundGODBGetChildrenOf(int goid);


PERL
arguments: GO identifier
return: comma delimited list of GO identifiers or zero
example: SHoundGODBGetChildrenOf(7596);
list of functions


SHoundGODBGetClassification


description: Operates on Gene Ontology (GO) vocabulary graphs. Reports if a given GO identifier describes a cellular process, a cellular function or a cellular component.
comment: GO_MOL_FUN refers to a function GO_BIO_PRO refers to a process GO_CELL_COM refers to a component


C
arguments: integer GO identifier
return: pointer to a string containing the category name or NULL
prototype: CharPtr SHoundGODBGetClassification(Int4 goid);


C++
arguments: integer GO identifier
return: string containing the category name or an empty string
prototype: string SHoundGODBGetClassification(int goid);


PERL
arguments: GO identifier
return: string containing the category name or zero
example: SHoundGODBGetClassification(4866);
list of functions


SHoundGODBGetNameByID


description: Operates on Gene Ontology (GO) vocabulary graphs. Retrieves a name of a process, a function or a component for a given GO identifier.


C
arguments: integer GO identifier
return: pointer to a string containing containing the ontology name or NULL
prototype: CharPtr SHoundGODBGetNameByID(Int4 goid);


C++
arguments: integer GO identifier
return: string containing the ontology name or an empty string
prototype: string SHoundGODBGetNameByID(int goid);


PERL
arguments: GO identifier
return: string containing the ontology name or zero
example: SHoundGODBGetNameByID(4866);
list of functions


SHoundGODBGetParentOf


description: Operates on Gene Ontology (GO) vocabulary graphs. Retrieves a list of processes, functions or components situated directly above a given GO identifier in the graphs.
comment: due to the logic of the GO hierarchy graphs, it is possible that a GO identifier will have more than one parent


C
arguments: integer GO identifier
return: pointer to a ValNode linked list of integer GO identifiers or NULL
prototype: ValNodePtr SHoundGODBGetParentOf(Int4 goid);


C++
arguments: integer GO identifier
return: pointer to an STL list of integer GO identifiers or to an empty list
prototype: list *SHoundGODBGetParentOf(int goid);


PERL
arguments: GO identifier
return: comma delimited list of GO identifiers or zero
example: SHoundGODBGetParentOf(7596);
list of functions


SHoundGODBGetRecordByReference


description: Gets a list of Gene Ontology (GO) IDs with a specified GO reference type.


C
arguments: a reference type for GO module (e.g. EC)
return: pointer to a ValNode linked list of integer GO identifiers or NULL
prototype: ValNodePtr SHoundGODBGetRecordByReference(CharPtr refType)


C++
arguments: a reference type for GO module (e.g. EC)
return: pointer to an STL list of integer GO identifiers or to an empty list
prototype: list SHoundGODBGetRecordByReference(string refType)


PERL
comment: Return list is sorted and unique
arguments: a reference type for GO module (e.g. EC)
return: a comma delimited list of records (e.g. 9,10,16,26,30,33,34......) or zero if failure
example: SHoundGODBGetRecordByReference("EC");
list of functions



RPS BLAST DOMAINS



This group of functions is used to correlate conserved domains with protein sequence records. Conserved domains are precomputed for a non-redundant set of proteins in SeqHound using RPS BLAST and the Conserved Domain Database (CDD) from the NCBI.


SHoundGetDomainIdFromLabel


description: Returns one or more Conserved Domain Database (CDD) identifiers given a short non-unique label. The labels are preferred amongst the scientific community.


C
arguments: pointer to a string containing short label
return: pointer to a ValNode linked list of string CDD identifiers or NULL
prototype: ValNodePtr SHoundGetDomainIdFromLabel(CharPtr label);


C++
arguments: string containing short label
return: pointer to an STL list of string CDD identifiers or to an empty list
prototype: list *SHoundGetDomainIdFromLabel(string label);


PERL
arguments: short label
return: comma delimited list of CDD identifiers
example: SHoundGetDomainIdFromLabel("COLFI");
list of functions


SHoundGetDomainLabelFromDomainId


description: Returns a short non-unique label given a domain for a Conserved Domain Database (CDD). The labels are preferred amongst the scientific community.


C
arguments: pointer to a string containing CDD identifier
return: pointer to a string containing short label or NULL
prototype: CharPtr SHoundGetDomainLabelFromDomainId(CharPtr accession);


C++
arguments: string CDD identifier
return: string containing short label or an empty string
prototype: string SHoundGetDomainLabelFromDomainId(string domain);


PERL
arguments: CDD identifier
return: short label
example: SHoundGetDomainLabelFromDomainId(smart00038);
list of functions


SHoundGetDomainsFromGi


description: Fetches information about domains from the Conserved Domain Database (CDD) as assigned by Reverse Position Specific BLAST to a given protein sequence. Uses redundancy information for the query proteins. This means that if the query fails for the input GI identifier, then the query will be retried for all other GI identifiers that belong to the same redundant group.
comment: The returning structure contains CDD domain identifier, E-value, position, length of the alignment, N and C terminal residues missing when compared to the consensus domain and the total number of domains on a protein.


C
arguments: integer GI identifier
return: linked list of StRpsdb structures or NULL
prototype: StRpsdbPtr SHoundGetDomainsFromGi(Int4 gi);


C++
arguments: integer GI identifier
return: linked list of CStRpsdb structures or NULL
prototype: CStRpsdb *SHoundGetDomainsFromGi(int Gi);


PERL
arguments: protein GI identifier (e.g. 4557225)
return: linked list of StRpsdb structures in a parseable form or zero if failure
example: SHoundGetDomainsFromGi(4557225);
list of functions


SHoundGetDomainsFromGiListWithEvalue


description: Fetches information about domains from the Conserved Domain Database (CDD) as assigned by Reverse Position Specific BLAST to a given protein sequence. This function does not use redundant group information yet. The function uses an E-value cutoff for reporting results.


C
arguments: pointer to a ValNode linked list of integer GI identifiers and a float E-value cutoff
return: linked list of CStRpsdb structures or NULL
prototype: StRpsdbPtr SHoundGetDomainsFromGiListWithEvalue(ValNodePtr pvnGis, FloatHi cutoff);
list of functions


SHoundGetDomainsFromGiWithEvalue


description: Fetches information about domains from the Conserved Domain Database (CDD) as assigned by Reverse Position Specific BLAST to a given protein sequence. Uses redundancy information for the query proteins. This means that if the query fails for the input GI identifier, then the query will be retried for all other GI identifiers that belong to the same redundant group. The function uses an E-value cutoff for reporting results.
comment: The returning structure contains CDD domain identifier, E-value, position, length of the alignment, N and C terminal residues missing when compared to the consensus domain and the total number of domains on a protein


C
arguments: integer GI identifier and a float E-value cutoff
return: linked list of StRpsdb structures or NULL
prototype: StRpsdbPtr SHoundGetDomainsFromGiWithEvalue(Int4 gi, FloatHi cutoff);


C++
arguments: integer GI identifier and a float E-value cutoff
return: linked list of CStRpsdb structures or NULL
prototype: CStRpsdb *SHoundGetDomainsFromGiWithEvalue(int Gi, float cutoff);


PERL
arguments: protein GI identifier (e.g. 6322015)
evalue cutoff (e.g. 0.5)
return: linked list of StRpsdb structures in a parseable form or zero if failure
example: SHoundGetDomainsFromGiWithEvalue(4557225,0.001);
list of functions


SHoundGetFilteredDomainsFromGiWithEvalue


description:
list of functions


SHoundGetGisByDomainId


description: Fetches protein sequences on which a domain from the Conserved Domain Database (CDD) was identified by Reverse Position Specific BLAST.


C
arguments: pointer to a string containing CDD identifier
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundGetGisByDomainId(CharPtr domain_name);


C++
arguments: string containing CDD identifier
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundGetGisByDomainId(string domain);


PERL
arguments: CDD identifier
return: comma delimited list of GI identifiers
example: SHoundGetGisByDomainId("smart00038");
list of functions


SHoundGetGisByDomainIdAndEvalue


description: Fetches protein sequences on which a domain from the Conserved Domain Database (CDD) was identified by Reverse Position Specific BLAST. The function uses an E-value cutoff for reporting results.


C
arguments: pointer to a string containing CDD identifier and a float E-value cutoff
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundGetGisByDomainIdAndEvalue(CharPtr domain_id, FloatHi cutoff);


C++
arguments: string containing CDD identifier and a float E-value cutoff
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundGetGisByDomainIdAndEvalue(string domain, float cutoff);


PERL
arguments: CDD identifier and E-value cutoff
return: comma delimited list of GI identifiers
example: SHoundGetGisByDomainId("smart00038",0.001);
list of functions


SHoundGetGisByNumberOfDomains


description: Fetches all sequences with a specified number of domains identified by Reverse Position Specific BLAST using Conserved Domain Database set of domains.


C
arguments: integer number of domains
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundGetGisByNumberOfDomains(Int4 numdom);


C++
arguments: integer number of domains
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundGetGisByNumberOfDomains(int numdom);


PERL
arguments: number of domains
return: comma delimited list of GI identifiers
example: SHoundGetGisByNumberOfDomains(6);
list of functions



DEPRECATED FUNCTIONS



The functions listed in this section have been deprecated and may be replaced by new functions that may have different parameters and/or return types. Functions are listed here for historical purposes only. The description of each function may list a comparable new function that can be used instead. While deprecated functions will be supported, developers should use the new function listed going forward if at all possible. If the function has not been written for your language of choice (see the function tracker at http://www.blueprint.org/seqhound/apifunctsstatus.html), you may request that the function be written by sending an email to seqhound@blueprint.org. This will help us to direct our development efforts. Once the versions of the new function (that replaces a deprecated function) have been written into the remote Java, Perl, C and C++ remote API's we may consider removing support for these calls (with ample warning and in consideration of feedback). At this time, these functions would be moved to a section entitled Unsupported Functions.


SHoundAccFromGi


description: Converts a GI identifier to an NCBI accession number. This function name has been deprecated and should be replaced with SHoundGBAccFromGi.
comment: Sequences from the PIR or PDB databases will return "n/a" for this function since they do not have an NCBI accession. Instead, use SHoundGetDefline to retrieve the accession for these sequences.


C
arguments: integer GI identifier
return: pointer to a string containing accession number or NULL on error
prototype: CharPtr SHoundAccFromGi(Int4 gi);


C++
arguments: integer GI identifier
return: string containing accession number or an empty string
prototype: string SHoundAccFromGi(int Gi);


PERL
arguments: GI identifier
return: accession number or zero
example: SHoundAccFromGi(435);
list of functions


SHoundAccFromGiList


description: Converts a list of GI identifier to a list of NCBI accession numbers. This function has been deprecated. Use SHoundGBAccFromGiKeyedList instead.
comment: Sequences from the PIR or PDB databases will return "n/a" for this function since they do not have an NCBI accession. Instead, use SHoundGetDeflineList to retrieve the accessions for these sequences. The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of integer GI identifiers
return: pointer to a ValNode linked list of string accessions or NULL
prototype: ValNodePtr SHoundAccFromGiList(ValNodePtr pvnGi);


C++
arguments: reference to an STL list of integer GI identifiers
return: pointer to an STL list of string accessions or to an empty list
prototype: list *SHoundAccFromGiList(list& stlGi);


PERL
arguments: comma delimited list of GI identifiers
return: comma delimited list of accessions or zero
example: SHoundAccFromGiList("123,34634");
list of functions


SHoundFindAcc


description: Converts an accession number for a sequence into a GenInfo identifier - GI. This function name is deprecated and should be replaced by SHoundGiFromGBAcc.
comment: This function will not accept a version number (e.g. NP_116609.1). The '.1' must be removed from the example version number to form a valid accession. SeqHound only stores and returns the latest version of a sequence record.


C
arguments: pointer to a string containing accession number
return: GI identifier, -1 if not found or zero
prototype: Int4 SHoundFindAcc(CharPtr pcAcc);


C++
arguments: string containing accession number
return: integer GI value or an error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundFindAcc(string account);


PERL
arguments: accession number
return: GI identifier or zero
example: SHoundFindAcc("CAA28783");
list of functions


SHoundFindAccList


description: Converts a list of accession numbers into a list of GI identifiers. This function has been deprecated. Developers should use SHoundGiFromGBAccKeyedList instead.
comment: This function will not accept a version number (e.g. NP_116609.1). The '.1' must be removed from the example version number to form a valid accession. SeqHound only stores and returns the latest version of a sequence record. The order in the lists is not maintained


C
arguments: pointer to a ValNode linked list of strings - accession numbers
return: ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundFindAccList(ValNodePtr pvnAcc);


C++
arguments: reference to an STL list of strings - accession numbers
return: pointer to an STL list of integer GI identifiers or to an empty list
prototype: list *SHoundFindAccList(list& stlAcc);


PERL
arguments: comma delimited list of accessions
return: comma delimited list of GI identifiers or zero
example: SHoundFindAccList("CAA28783,X66994");
list of functions


SHoundFindName


description: Converts PDB, EMBL, Swiss-Prot, PIR sequence identifier into a GI identifier. This function has been deprecated. Consider SHoundGiFromDbnameAndId instead.
comment: Note that EMBL shares accession numbers with GenBank. EMBL GenInfo identifiers may be returned using these accessions; for example SHoundFindAcc(X13776) will return GI 45269. EMBL also has its own identifiers (which the NCBI and SeqHound refer to as 'name'). So the same GI may be returned by SHoundFindName(PAAMIR).


C
arguments: pointer to a string containing sequence name
return: integer GI identifier, -1 if not found or zero
prototype: Int4 SHoundFindName(CharPtr pName);


C++
arguments: string containing sequence name
return: integer GI identifier or an error code; SEQHOUND_ERROR or SEQHOUND_ABNORMAL if an error occurred, SEQHOUND_NULL if the value was not found in the database, WWWGETFILE_ERROR if a transmission error occurred
prototype: int SHoundFindName(string name);


PERL
arguments: sequence name
return: GI identifier or zero
example: SHoundFindName("3TS1");
list of functions


SHoundFindNameList


description: Converts PDB, EMBL, Swiss-Prot, PIR sequence identifier into a GI identifier. This function has been deprecated. Consider SHoundGiFromDbnameAndIdKeyedList instead.
comment: Note that EMBL shares accession numbers with GenBank. EMBL GenInfo identifiers may be returned using these accessions; for example SHoundFindAcc(X13776) will return GI 45269. EMBL also has its own identifiers (which the NCBI and SeqHound refer to as 'name'). So the same GI may be returned by SHoundFindName(PAAMIR).


C
arguments: pointer to a ValNode linked list of string sequence names
return: pointer to a ValNode linked list of integer GI identifiers or NULL
prototype: ValNodePtr SHoundFindNameList(ValNodePtr pvnName);


C++
arguments: reference to an STL list of string sequence names
return: pointer to an STL list of integer GI identifier or to an empty list
prototype: list *SHoundFindNameList(list& stlAcc);


PERL
arguments: comma delimited list of sequence names
return: comma delimited list of GI identifiers or zero
example: SHoundFindNameList("PMY14796,S36449,3TS1");
list of functions


SHoundGetNameByGi


description: Retrieves the Protein Data Bank (PDB) code from the given GI. This function has been deprecated. Use SHoundDbNameAndIdFromGi(KeyedList) instead.


C
arguments: integer GI identifier
return: PDB code (e.g. 3TS1) or zero if error
prototype: CharPtr SHoundGetNameByGi(Int4 gi);


PERL
arguments: GI identifier
return: PDB code (e.g. 3TS1) or zero if failure
example: $a = SHoundGetNameByGi(230940);
list of functions