
org.biojava.nbio.structure.cath.CathDatabase Maven / Gradle / Ivy
/*
* BioJava development code
*
* This code may be freely distributed and modified under the
* terms of the GNU Lesser General Public Licence. This should
* be distributed with the code. If you do not have a copy,
* see:
*
* http://www.gnu.org/copyleft/lesser.html
*
* Copyright for this code is held jointly by the individual
* authors. These should be listed in @author doc comments.
*
* For more information on the BioJava project and its aims,
* or to join the biojava-l mailing list, visit the home page
* at:
*
* http://www.biojava.org/
*
* Author: Daniel Asarnow
* Date: 2012-6-23
*/
package org.biojava.nbio.structure.cath;
import java.util.List;
/** General API for interacting with CATH.
*
* @author Daniel Asarnow
*/
public interface CathDatabase {
/** Return the CATH release version.
*
* @return CATH version
*/
public String getCathVersion();
/** Return the CathNode for a node ID.
*
* @param nodeId
* @return CATH node
*/
public CathNode getCathNode(String nodeId);
/** Return list of CATH descriptions for node representatives at a CATH category (e.g. "T").
*
* @param category
* @return CATH descriptions
*/
public List getByCategory(CathCategory category);
/** Return list of CATH descriptions whose CATH codes (e.g. 1.4.6.10) start with the query.
* This is currently redundant with getDescriptionsByNodeId.
*
* @param query
* @return CATH descriptions
*/
public List filterByCathCode(String query);
/** Return the CATH sub-tree for a particular domain.
*
* @param domain
* @return CATH sub-tree
*/
public List getTree(CathDomain domain);
/** Return list of CATH domains whose node name (e.g. Orthogonal Bundle) starts with the query.
*
* @param query
* @return CATH domains
*/
public List filterByNodeName(String query);
/** Return list of CATH descriptions whose descriptions (name field) starts with the query.
*
* @param query
* @return CATH descriptions
*/
public List filterByDescription(String query);
/** Return CATH description for node representative by node ID.
*
* @param nodeId
* @return CATH description
*/
public CathDomain getDescriptionByNodeId(String nodeId);
/** Return all CATH domains for a PDB ID.
*
* @param pdbId
* @return CATH domains
*/
public List getDomainsForPdb(String pdbId);
/** Return CATH domain for CATH domain ID.
*
* @param cathId
* @return CATH domain
*/
public CathDomain getDomainByCathId(String cathId);
/** Return CATH description for CATH domain ID.
*
* @param cathId
* @return
*/
public CathDomain getDescriptionByCathId(String cathId);
/** Return all CATH domains for a particular CATH node.
*
* @param nodeId
* @return
*/
public List getDomainsByNodeId(String nodeId);
public List getFragmentsByPdbId(String pdbId);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy