Skip to main content

Named Element

A NamedElement is an OntoumlElement that can be assigned a name and other descriptive information. It is an abstract grouping that never appears directly in a document (it has no type value of its own); it only contributes the six descriptive properties below to its subtypes.

PropertyTypeDescription
namelanguageString or nullThe name of the element.
alternativeNameslanguageString[]Synonyms or alternatives to the main name — not translations of it.
descriptionlanguageString or nullA free-text account of the element.
editorialNoteslanguageString[]Notes about the development process; not to be confused with description.
creatorsresource[]Agents who contributed to creating the element.
contributorsresource[]Agents who contributed to developing the element.

NamedElement also carries the identity properties id, created, and modified from OntoumlElement. Remember that every property is required: an absent single value is written as null and an absent collection as [].

Textual vs. agent metadata​

The descriptive properties fall into two groups by datatype:

  • name, alternativeNames, description, and editorialNotes are all languageString values, so each can hold the text in several languages at once. Keep the distinctions in mind: alternativeNames are synonyms rather than translations of name, and editorialNotes document the process rather than the subject the way description does.
  • creators and contributors are arrays of resource values, identifying the agents behind the element rather than describing it.

Subtypes​

NamedElement has three concrete/abstract descendants:

Shared properties​

Since NamedElement is abstract, it is never serialized on its own. Its properties appear inside every named element, alongside the identity block:

{
"id": "element_1",
"created": "2024-09-03",
"modified": null,
"name": { "en": "Person" },
"alternativeNames": [],
"description": null,
"editorialNotes": [],
"creators": [],
"contributors": []
}

See Project and the abstract syntax reference for complete, serializable objects that embed this block.