---
name: "TFBS::PatternI"
section: "3pm"
platform: "linux"
package: "libtfbs-perl"
version: "0.7.1+ds-4+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/TFBS::PatternI"
---

# TFBS::PatternI(3pm)

interface definition for all pattern objects (currently includes matrices and word (consensus and regular expressions )

## NAME

TFBS::PatternI - interface definition for all pattern objects (currently includes matrices and word (consensus and regular expressions )

## DESCRIPTION

TFBS::PatternI is a draft class that should contain general interface for matrix and other (future) pattern objects. It is not defined and not used yet, as I need to ponder over certain unresolved issues in general pattern definition. User feedback is more than welcome.

## FEEDBACK

Please send bug reports and other comments to the author.

## AUTHOR - Boris Lenhard

Boris Lenhard \<Boris.Lenhard@cgb.ki.se\>

## APPENDIX

The rest of the documentation details each of the object methods. Internal methods are preceded with an underscore.

### ID

```
 Title   : ID
 Usage   : my $ID = $icm->ID()
           $pfm->ID('M00119');
 Function: Get/set on the ID of the pattern (unique in a DB or a set)
 Returns : pattern ID (a string)
 Args    : none for get, string for set
```

### name

```
 Title   : name
 Usage   : my $name = $pwm->name()
           $pfm->name('PPARgamma');
 Function: Get/set on the name of the pattern
 Returns : pattern name (a string)
 Args    : none for get, string for set
```

### class

```
 Title   : class
 Usage   : my $class = $pwm->class()
           $pfm->class('forkhead');
 Function: Get/set on the structural class of the pattern
 Returns : class name (a string)
 Args    : none for get, string for set
```

### tag

```
 Title   : tag
 Usage   : my $acc = $pwm->tag('acc')
           $pfm->tag(source => "Gibbs");
 Function: Get/set on the structural class of the pattern
 Returns : tag value (a scalar/reference)
 Args    : tag name (string) for get,
           tag name (string) and value (any scalar/reference) for set
```

### all\_tags

```
 Title   : all_tags
 Usage   : my %tag = $pfm->all_tags();
 Function: get a hash of all tags for a matrix
 Returns : a hash of all tag values keyed by tag name
 Args    : none
```

### delete\_tag

```
 Title   : delete_tag
 Usage   : $pfm->delete_tag('score');
 Function: get a hash of all tags for a matrix
 Returns : nothing
 Args    : a string (tag name)
```
