# JSDoc: Class: BAttribute

# Class: BAttribute

## BAttribute()

Attribute is an abstract concept which has two real uses - label (key - value pair) and relation (representing named relationship between source and target note)

## Constructor

#### new BAttribute()

Source:
  - becca/entities/battribute.js, line 22

### Extends

- AbstractBeccaEntity

### Members

#### attributeId :string

##### Type:

- string

Source:
  - becca/entities/battribute.js, line 53

#### (protected) becca

Overrides:
  - AbstractBeccaEntity#becca
Source:
  - becca/entities/abstract_becca_entity.js, line 35

#### isInheritable :boolean

##### Type:

- boolean

Source:
  - becca/entities/battribute.js, line 65

#### name :string

##### Type:

- string

Source:
  - becca/entities/battribute.js, line 59

#### noteId :string

##### Type:

- string

Source:
  - becca/entities/battribute.js, line 55

#### position :int

##### Type:

- int

Source:
  - becca/entities/battribute.js, line 61

#### type :AttributeType

##### Type:

- AttributeType

Source:
  - becca/entities/battribute.js, line 57

#### utcDateModified :string

##### Type:

- string

Source:
  - becca/entities/battribute.js, line 67

#### value :string

##### Type:

- string

Source:
  - becca/entities/battribute.js, line 63

### Methods

#### (protected) _getContent() → {string|Buffer}

Overrides:
  - AbstractBeccaEntity#_getContent
Source:
  - becca/entities/abstract_becca_entity.js, line 250

##### Returns:

Type
  string | Buffer

#### (protected) _setContent()

Overrides:
  - AbstractBeccaEntity#_setContent
Source:
  - becca/entities/abstract_becca_entity.js, line 128

#### (protected) beforeSaving()

Overrides:
  - AbstractBeccaEntity#beforeSaving
Source:
  - becca/entities/abstract_becca_entity.js, line 20

#### (protected) generateHash() → {string}

Overrides:
  - AbstractBeccaEntity#generateHash
Source:
  - becca/entities/abstract_becca_entity.js, line 59

##### Returns:

Type
  string

#### getNote() → {BNote|null}

Source:
  - becca/entities/battribute.js, line 135

##### Returns:

Type
  BNote | null

#### (abstract, protected) getPojo()

Overrides:
  - AbstractBeccaEntity#getPojo
Source:
  - becca/entities/abstract_becca_entity.js, line 82

#### (protected) getPojoToSave()

Overrides:
  - AbstractBeccaEntity#getPojoToSave
Source:
  - becca/entities/abstract_becca_entity.js, line 74

#### getTargetNote() → {BNote|null}

Source:
  - becca/entities/battribute.js, line 148

##### Returns:

Type
  BNote | null

#### (protected) getUtcDateChanged()

Overrides:
  - AbstractBeccaEntity#getUtcDateChanged
Source:
  - becca/entities/abstract_becca_entity.js, line 27

#### isDefinition() → {boolean}

Source:
  - becca/entities/battribute.js, line 163

##### Returns:

Type
  boolean

#### markAsDeleted(deleteIdopt)

Mark the entity as (soft) deleted. It will be completely erased later. This is a low-level method, for notes and branches use `note.deleteNote()` and 'branch.deleteBranch()` instead.

##### Parameters:

Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`deleteId` |  | <optional> | null |

Overrides:
  - AbstractBeccaEntity#markAsDeleted
Source:
  - becca/entities/abstract_becca_entity.js, line 267

#### (protected) putEntityChange()

Overrides:
  - AbstractBeccaEntity#putEntityChange
Source:
  - becca/entities/abstract_becca_entity.js, line 44

#### save() → {this}

Saves entity - executes SQL, but doesn't commit the transaction on its own

Overrides:
  - AbstractBeccaEntity#save
Source:
  - becca/entities/abstract_becca_entity.js, line 91

##### Returns:

Type
  this