BioCodec (Apache OpenNLP Tools 2.5.9 API)
Description: declaration: package: opennlp.tools.namefind, class: BioCodec

# Class BioCodec

java.lang.Object
opennlp.tools.namefind.BioCodec

All Implemented Interfaces:
  `SequenceCodec<String>`

public class BioCodec extends Object implements SequenceCodec<String>
The default `SequenceCodec` implementation according to the `BIO` scheme:

- B: 'beginning' of a NE
- I: 'inside', the word is inside a NE
- O: 'outside', the word is a regular word outside a NE

See also the paper by Roth D. and Ratinov L.: Design Challenges and Misconceptions in Named Entity Recognition.

See Also:
  - `SequenceCodec`
  - `BilouCodec`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `CONTINUE`
  `static final String`
  `OTHER`
  `static final String`
  `START`

  ### Fields inherited from interface SequenceCodec

  `DEFAULT_PREFIX`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `BioCodec()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `areOutcomesCompatible(String[] outcomes)`
  Checks if the `outcomes` of a model are compatible with this `SequenceCodec`.
  `NameFinderSequenceValidator`
  `createSequenceValidator()`
  `Span[]`
  `decode(List<String> c)`
  Decodes a sequence of `objects` into `Span` objects.
  `String[]`
  `encode(Span[] names, int length)`
  Encodes `Span` objects into a sequence of `objects`.

  ### Methods inherited from class Object

  `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### START

    public static final String START
    See Also:
      - Constant Field Values

  - ### CONTINUE

    public static final String CONTINUE
    See Also:
      - Constant Field Values

  - ### OTHER

    public static final String OTHER
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### BioCodec

    public BioCodec()

- ## Method Details

  - ### decode

    public Span[] decode(List<String> c)
    Description copied from interface: `SequenceCodec`
    Decodes a sequence of `objects` into `Span` objects.
    Specified by:
      `decode` in interface `SequenceCodec<String>`
    Parameters:
      `c` - A list of `T` to decode.
    Returns:
      A `Span` array encapsulating the decoded elements in `c`.

  - ### encode

    public String[] encode(Span[] names, int length)
    Description copied from interface: `SequenceCodec`
    Encodes `Span` objects into a sequence of `objects`.
    Specified by:
      `encode` in interface `SequenceCodec<String>`
    Parameters:
      `names` - A list of `elements` to encode.
      `length` - The length to respect.
    Returns:
      An array of `T` to encode.

  - ### createSequenceValidator

    public NameFinderSequenceValidator createSequenceValidator()
    Specified by:
      `createSequenceValidator` in interface `SequenceCodec<String>`
    Returns:
      A `SequenceValidator` which can validate a sequence of `outcomes`.

  - ### areOutcomesCompatible

    public boolean areOutcomesCompatible(String[] outcomes)
    Description copied from interface: `SequenceCodec`
    Checks if the `outcomes` of a model are compatible with this `SequenceCodec`.
    Specified by:
      `areOutcomesCompatible` in interface `SequenceCodec<String>`
    Parameters:
      `outcomes` - The possible model outcomes.
    Returns:
      `true` if `outcomes` are type compatible, `false` otherwise.