Traits Docs
Fall 2024
API

# Entity

o1.legal.Entity
trait Entity(val `name`: String)

An `Entity` object represents a legal entity. A legal entity is essentially something that can sue or be sued in court, such as a person, a corporation, or a sovereign nation. That is, an `Entity` can be the plaintiff of the defendant in a CourtCase. (This is an approximation of the real-world concept.)

There are different kinds of legal entities; the trait `Entity` describes what is common to them all: they have a name, a contact person, and a `kind`, which is a textual description of the more specific type of the entity.

## Parameters

name

  the name of the legal entity, such as "Jane Doe" or "ACME Inc."

## Attributes

Graph
Supertypes
  class Object
  trait Matchable
  class Any
Known subtypes
  class Corporation
  class FullCapacityPerson
  class GeographicalFeature
  class Group
  trait JuridicalPerson
  trait HumanOrganization
  class Municipality
  class Nation
  trait NaturalPerson
  class ReducedCapacityPerson
  Show all

## Members list

### Value members

#### Abstract methods

def contact: NaturalPerson

The contact person of the legal entity. This is another legal entity which must be a human (a NaturalPerson).

The contact person of the legal entity. This is another legal entity which must be a human (a NaturalPerson).

## Attributes

def kind: String

A short description of the type of the legal entity. E.g., "human in full capacity" or "for-profit corporation".

A short description of the type of the legal entity. E.g., "human in full capacity" or "for-profit corporation".

## Attributes

#### Concrete methods

override def toString: String

Returns a textual description of the legal entity. This takes the form "NAME (KIND)", e.g., "Jane Doe (human in full capacity)".

Returns a textual description of the legal entity. This takes the form "NAME (KIND)", e.g., "Jane Doe (human in full capacity)".

## Attributes

Definition Classes
  Any

#### Concrete fields

val name: String