Node

@Entity
class Node(dataID: Long? = null, val name: String = "", val uri: String = "", isAbstract: Boolean = false, val annotation: Annotation? = null, attributes: MutableList<Attribute> = LinkedList(), associationRelations: MutableList<AssociationRelation> = LinkedList(), parentRelations: MutableSet<ParentRelation> = HashSet(), plugins: MutableSet<Plugin> = HashSet(), concretizations: MutableSet<Concretization> = HashSet(), compositions: MutableSet<Composition> = HashSet(), scripts: MutableList<Script> = LinkedList(), var model: Model? = null)

The Node is the top-level model element of the modicio metamodel. It represents a class in an object-oriented sense but can also represent a Node in a typed graph. The Node as first-level element contains all further model elements such as relations to other Nodes which are always unidirectional edges.

Constructors

Link copied to clipboard
constructor()
constructor(dataID: Long? = null, name: String = "", uri: String = "", isAbstract: Boolean = false, annotation: Annotation? = null, attributes: MutableList<Attribute> = LinkedList(), associationRelations: MutableList<AssociationRelation> = LinkedList(), parentRelations: MutableSet<ParentRelation> = HashSet(), plugins: MutableSet<Plugin> = HashSet(), concretizations: MutableSet<Concretization> = HashSet(), compositions: MutableSet<Composition> = HashSet(), scripts: MutableList<Script> = LinkedList(), model: Model? = null)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
val annotation: Annotation? = null

The Annotation contains the variant and version identifiers. The Annotation is mandatory.

Link copied to clipboard
var model: Model?

Backlink to Model to improve traversal.

Link copied to clipboard

The name provides the Node a practical identifier. Uniqueness is optional but desired. The name should relate to the uri and is typically its last part.

Link copied to clipboard
val uri: String

The unique naming URI of the Node in its current Model. The uri must not take variant/version into account which is stored separately. A modicio URI is defined as a "xs:anyURI" base with the schema extension "modicio:.*"

Functions

Link copied to clipboard
Link copied to clipboard
fun addAttribute(attribute: Attribute)
Link copied to clipboard
fun addComposition(composition: Composition)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun addPlugin(plugin: Plugin): Boolean
Link copied to clipboard
fun addScript(script: Script)
Link copied to clipboard
fun autowire()
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard