case class Domain(loc: At, id: Definitions.Identifier, options: Seq[Definitions.DomainOption] = Seq.empty[DomainOption], authors: Seq[AuthorRef] = Seq.empty[AuthorRef], authorDefs: Seq[Author] = Seq.empty[Author], types: Seq[Type] = Seq.empty[Type], contexts: Seq[Context] = Seq.empty[Context], actors: Seq[Actor] = Seq.empty[Actor], stories: Seq[Story] = Seq.empty[Story], applications: Seq[Application] = Seq.empty[Application], domains: Seq[Domain] = Seq.empty[Domain], terms: Seq[Term] = Seq.empty[Term], includes: Seq[Include[DomainDefinition]] = Seq
.empty[Include[DomainDefinition]], brief: Option[Definitions.LiteralString] = Option.empty[LiteralString], description: Option[Definitions.Description] = None) extends VitalDefinition[DomainOption, DomainDefinition] with RootDefinition with WithTypes with DomainDefinition with Product with Serializable
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.
- loc
The location of the domain definition
- id
The name of the domain
- options
Options for the domain
- types
Type definitions with a domain (nearly global) scope, with applicability to many contexts or subdomains
- contexts
The contexts defined in the scope of the domain
- actors
Actor definitions for use in stories
- stories
Story definitions for this domain
- applications
Application definitions for this domain
- domains
Nested sub-domains within this domain
- terms
Definition of terms pertaining to this domain that provide explanation of concepts from the domain.
- brief
A brief description (one sentence) for use in documentation
- description
An optional description of the domain.
- Alphabetic
- By Inheritance
- Domain
- Serializable
- Product
- Equals
- DomainDefinition
- WithTypes
- RootDefinition
- VitalDefinition
- WithTerms
- WithIncludes
- WithAuthors
- WithOptions
- Definition
- Container
- BrieflyDescribedValue
- DescribedValue
- RiddlValue
- RiddlNode
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new Domain(loc: At, id: Definitions.Identifier, options: Seq[Definitions.DomainOption] = Seq.empty[DomainOption], authors: Seq[AuthorRef] = Seq.empty[AuthorRef], authorDefs: Seq[Author] = Seq.empty[Author], types: Seq[Type] = Seq.empty[Type], contexts: Seq[Context] = Seq.empty[Context], actors: Seq[Actor] = Seq.empty[Actor], stories: Seq[Story] = Seq.empty[Story], applications: Seq[Application] = Seq.empty[Application], domains: Seq[Domain] = Seq.empty[Domain], terms: Seq[Term] = Seq.empty[Term], includes: Seq[Include[DomainDefinition]] = Seq
.empty[Include[DomainDefinition]], brief: Option[Definitions.LiteralString] = Option.empty[LiteralString], description: Option[Definitions.Description] = None)- loc
The location of the domain definition
- id
The name of the domain
- options
Options for the domain
- types
Type definitions with a domain (nearly global) scope, with applicability to many contexts or subdomains
- contexts
The contexts defined in the scope of the domain
- actors
Actor definitions for use in stories
- stories
Story definitions for this domain
- applications
Application definitions for this domain
- domains
Nested sub-domains within this domain
- terms
Definition of terms pertaining to this domain that provide explanation of concepts from the domain.
- brief
A brief description (one sentence) for use in documentation
- description
An optional description of the domain.
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val actors: Seq[Actor]
- val applications: Seq[Application]
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val authorDefs: Seq[Author]
- val authors: Seq[AuthorRef]
- Definition Classes
- Domain → WithAuthors
- 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
- b
The boolean to convert to an Int
- Definition Classes
- VitalDefinition
- val brief: Option[Definitions.LiteralString]
- Definition Classes
- Domain → BrieflyDescribedValue
- def briefValue: String
- Definition Classes
- BrieflyDescribedValue
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- 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.
- returns
A numerator and denominator for percent complete
- Definition Classes
- VitalDefinition
- lazy val contents: Seq[DomainDefinition]
- Definition Classes
- Domain → WithIncludes → Container
- val contexts: Seq[Context]
- val description: Option[Definitions.Description]
- Definition Classes
- Domain → DescribedValue
- def descriptionValue: String
- Definition Classes
- DescribedValue
- val domains: Seq[Domain]
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def find(name: String): Option[Definitions.Definition]
- Definition Classes
- Definition
- def format: String
Format the node to a string
Format the node to a string
- Definition Classes
- WithOptions → RiddlNode
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def getOptionValue[OPT <: Definitions.DomainOption](implicit arg0: ClassTag[OPT]): Option[Seq[Definitions.LiteralString]]
- Definition Classes
- WithOptions
- def hasAuthors: Boolean
- Definition Classes
- WithAuthors → Definition
- def hasOption[OPT <: Definitions.DomainOption](implicit arg0: ClassTag[OPT]): Boolean
- Definition Classes
- WithOptions
- def hasOptions: Boolean
- Definition Classes
- WithOptions → Definition
- def hasTerms: Boolean
- Definition Classes
- WithTerms
- def hasTypes: Boolean
- Definition Classes
- WithTypes → Definition
- val id: Definitions.Identifier
- Definition Classes
- Domain → Definition
- def identify: String
- Definition Classes
- Definition
- def identifyWithLoc: String
- Definition Classes
- Definition
- val includes: Seq[Include[DomainDefinition]]
- Definition Classes
- Domain → WithIncludes
- def isContainer: Boolean
Determine if this node is a container or not
- def isEmpty: Boolean
determine if this node is empty or not.
determine if this node is empty or not. Non-containers are always empty
- Definition Classes
- WithOptions → Container → RiddlNode
- def isImplicit: Boolean
- Definition Classes
- Definition
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isRootContainer: Boolean
- Definition Classes
- Container
- def isVital: Boolean
- Definition Classes
- VitalDefinition → Definition
- final val kind: String
- Definition Classes
- Domain → Definition
- val loc: At
The location in the parse at which this RiddlValue occurs
The location in the parse at which this RiddlValue occurs
- Definition Classes
- Domain → RiddlValue
- 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
- Definition Classes
- Domain → VitalDefinition
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def nonEmpty: Boolean
- Definition Classes
- RiddlNode
- Annotations
- @deprecatedOverriding()
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- val options: Seq[Definitions.DomainOption]
- Definition Classes
- Domain → WithOptions
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val stories: Seq[Story]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val terms: Seq[Term]
- val types: Seq[Type]
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated