Domain

com.reactific.riddl.language.ast.Definitions.Domain
case class Domain(loc: At, id: Identifier, options: Seq[DomainOption], authors: Seq[AuthorRef], authorDefs: Seq[Author], types: Seq[Type], constants: Seq[Constant], contexts: Seq[Context], users: Seq[User], epics: Seq[Epic], sagas: Seq[Saga], applications: Seq[Application], domains: Seq[Domain], terms: Seq[Term], includes: Seq[Include[DomainDefinition]], brief: Option[LiteralString], description: Option[Description]) extends VitalDefinition[DomainOption, DomainDefinition], RootDefinition, WithTypes, DomainDefinition

The definition of a domain. Domains are the highest building block in RIDDL and may be nested inside each other to form a hierarchy of domains. Generally, domains follow hierarchical organization structure but other taxonomies and ontologies may be modelled with domains too.

Value parameters

applications

Application definitions for this domain

brief

A brief description (one sentence) for use in documentation

contexts

The contexts defined in the scope of the domain

description

An optional description of the domain.

domains

Nested sub-domains within this domain

epics

Story definitions for this domain

id

The name of the domain

loc

The location of the domain definition

options

Options for the domain

terms

Definition of terms pertaining to this domain that provide explanation of concepts from the domain.

types

Type definitions with a domain (nearly global) scope, with applicability to many contexts or subdomains

users

User definitions for use in epics

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait WithTypes
trait WithTerms
trait WithAuthors
trait Definition
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

override def maturity: Int

Compute the 'maturity' of a definition.

Compute the 'maturity' of a definition. Maturity is a score with no maximum but with scoring rules that target 100 points per definition. Maturity is broken down this way:

  • has a description - up to 50 points depending on # of non empty lines

  • has a brief description - 5 points

  • has options specified - 5 points

  • has terms defined -

  • has an author in or above the definition - 5 points \-

  • definition specific things: 0.65

Attributes

Returns
Definition Classes

Inherited methods

Attributes

Inherited from:
BrieflyDescribedValue
def completeness: (Int, Int)

Compute the completeness of this definition.

Compute the completeness of this definition. Vital definitions should have options, terms, and authors but includes are optional. Incompleteness is signalled by child definitions that are empty.

Attributes

Returns

A numerator and denominator for percent complete

Inherited from:
VitalDefinition

Attributes

Inherited from:
DescribedValue
override def format: String

Format the node to a string

Format the node to a string

Attributes

Definition Classes
Inherited from:
WithOptions

Attributes

Inherited from:
WithOptions
override def hasAuthors: Boolean

Attributes

Definition Classes
Inherited from:
WithAuthors
override def hasDefinitions: Boolean

Attributes

Definition Classes
Inherited from:
Definition

Attributes

Inherited from:
WithOptions
override def hasOptions: Boolean

Attributes

Definition Classes
Inherited from:
WithOptions

Attributes

Inherited from:
WithTerms
override def hasTypes: Boolean

Attributes

Definition Classes
Inherited from:
WithTypes

Attributes

Inherited from:
Definition

Attributes

Inherited from:
Definition
override def isContainer: Boolean

Determine if this node is a container or not

Determine if this node is a container or not

Attributes

Definition Classes
Inherited from:
Container
override def isDefinition: Boolean

Attributes

Definition Classes
Inherited from:
Definition
override def isEmpty: Boolean

determine if this node is empty or not.

determine if this node is empty or not. Non-containers are always empty

Attributes

Definition Classes
Inherited from:
WithOptions

Attributes

Inherited from:
Definition

Attributes

Inherited from:
Container
override def isVital: Boolean

Attributes

Definition Classes
Inherited from:
VitalDefinition
final def nonEmpty: Boolean

Attributes

Inherited from:
RiddlNode

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Attributes

Inherited from:
Definition

Concrete fields

lazy override val contents: Seq[DomainDefinition]
final val kind: String

Implicits

Inherited implicits

implicit def bool2int(b: Boolean): Int

Implicit conversion of boolean to Int for easier computation of statistics below

Implicit conversion of boolean to Int for easier computation of statistics below

Value parameters

b

The boolean to convert to an Int

Attributes

Returns
Inherited from:
VitalDefinition