Atlas · document · Plate 02 of 16
bibdata · blocks · change · contribmetadata · document · sections
BasicDocument
Diagram view views/BasicDocument.lml composing
12 LML includes
and 13 associations.
Model definitions
BasicDocument¶
classmodels/document/BasicDocument.lml
Class modelling a basic document.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+identifier |
UniqueIdentifier | 0..1 | A globally unique identifier for the document in an agreed identifier schema. The identifier is to be used for tracking interactions with the document without depending on formal document registries; it would be exemplified by a GUID, rather than a document registry identifier such as "`ISO 639`", which belongs to `bibdata`. |
+bibdata |
BibData | 1 | A bibliographic description, capturing bibliographic metadata about the document itself, including authors, title, and date of production. |
+sections |
BasicSection | 1..* | Hierarchically arranged units of textual content within the document. |
+references |
ReferencesSection | 0..* | Bibliographic content. |
+integrityValue |
IntegrityValue | 0..* | A digital signature of the contribution. |
+attributes |
Attribute | 0..* | Entries from the generic attribute register: an open key-value set that markup languages bind their own attribute types into. |
UniqueIdentifier¶
classmodels/change/UniqueIdentifier.lml
Identifier used to uniquely identify a BasicDocument.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+value |
String
|
1 | A string that uniquely identifies a BasicDocument. |
BibData¶
classmodels/bibdata/BibData.lml
The bibliographic description of a BasicDocument. BibData differs from BibliographicItem by making `title` and `copyright` mandatory.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+ext |
BibDataExtensionType | 1 | The extension point of the bibliographic description of a BasicDocument. |
BibliographicItem¶
class <<Bibliography>>models/bibdata/relaton/BibliographicItem.lml
Boundary reference to Relaton's BibliographicItem. Basicdoc defines only the bibliographic basis (BibData and its ext hook BibDataExtensionType); Relaton and downstream models extend and implement the full bibliographic semantics (OCP: open for extension, closed for modification here).
BibDataExtensionType¶
classmodels/bibdata/BibDataExtensionType.lml
The extension point of the bibliographic description of a BasicDocument.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+doctype |
DocumentType | 0..* | Classification of the BasicDocument, indicating that it is to be rendered in a distinct manner. |
DocumentType¶
enummodels/bibdata/DocumentType.lml
definitiondocumentdefinition
BasicSection¶
classmodels/sections/BasicSection.lml
Group of blocks within text, which is a leaf node in the hierarchical organisation of text (does not contain any sections of its own).
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+title |
TextElement | 0..* | Title of the section. |
+id |
String
|
0..1 | Identifier for the section, to be used for cross-references within the document. (Citations of references are modelled as cross-references to the corresponding bibliographical item in the References section.) |
+language |
Iso639Code | 0..* | Language tags for the section, coded as ISO 639 codes. |
+script |
Iso15924Code | 0..* | Script tags for the section, coded as ISO 15924 codes. |
+blocks |
BasicBlock | 0..* | Blocks, containing the textual content of the section (but excluding subsections, which are only present in Hierarchical Sections). |
+attributes |
Attribute | 0..* | Entries from the generic attribute register: an open key-value set that markup languages bind their own attribute types into. |
HierarchicalSection¶
classmodels/sections/HierarchicalSection.lml
Sections: groups of blocks within text, which can also contain other sections.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+subsections |
HierarchicalSection | 0..* | Sections contained within the current section. The relation is recursive, so the hierarchical arrangement of sections can be arbitrarily deep. |
ContentSection¶
classmodels/sections/ContentSection.lml
Prefatory sections of text, outside the main flow of text. In the BasicDocument model these are treated as equivalent to Hierarchical Sections. (The distinction is currently reserved for downstream models such as Metanorma, which differentiates structurally between prefatory sections and sections in the main body of the text; differences between the two may be introduced in the Basic Document model at a later date.)
ReferencesSection¶
classmodels/sections/ReferencesSection.lml
Sections containing zero or more bibliographical items (as described in Relaton), along with any prefatory text.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+references |
<<Bibliography>> BibliographicItem | 0..* | Bibliographical items included in the References Section. |
IntegrityValue¶
classmodels/contribmetadata/IntegrityValue.lml
A digital signature of the contribution, consisting of a `hash` value and a `signature`, with an associated `publicKey`.
BasicBlock¶
classmodels/blocks/BasicBlock.lml
Block of textual content in BasicDocument.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+notes |
NoteBlock | 0..* | Notes whose scope is the current block. |
+contribMetadata |
ContributionElementMetadata | 0..* | Attribution of the block to a specific contributor, to be used in change management of documents. |
+attributes |
Attribute | 0..* | Entries from the generic attribute register: an open key-value set that markup languages bind their own attribute types into. |