Atlas · blocks · Plate 11 of 16

bibdata · blocks · datatypes · sections

MultiParagraphs

Diagram view views/MultiParagraphs.lml composing 16 LML includes and 14 associations.

Includes16
Associations14
Types16
Full UML diagram for MultiParagraphs

Model definitions

ParagraphWithFootnote

class models/blocks/paragraphs/ParagraphWithFootnote.lml

A paragraph which may also contain footnotes. While most paragraphs in a document can contain footnotes, the distinction is necessary, as footnotes are not appropriate for all instances of paragraph content in a document (e.g. sourcecode annotations).

AttributeTypeCardinalityDefinition
+footnotes ReferenceToIdWithParagraphElement 0..* Footnotes contained in the paragraph.

QuoteBlock

class models/blocks/multiparagraphs/QuoteBlock.lml

Block quotation, containing extensive textual content originally authored outside of the current document.

AttributeTypeCardinalityDefinition
+source ReferenceToCitationElement 0..1 Bibliographic citation for the quotation.
+author <<Bibliography>> Contributor 0..1 Author of the quotation. The `author` attribute of the quotation is redundant with `source`, since it restates information about the author that should be recoverable from the `source` citation. It is included for convenience, in case processing the citation to extract the author is prohibitive for rendering tools.

ReviewBlock

class models/blocks/multiparagraphs/ReviewBlock.lml

Block intended to capture reviewer comments about some text in the document.

AttributeTypeCardinalityDefinition
+reviewer String 0..1 The party who has offered the comment.
+date Iso8601DateTime 0..1 The date when the comment was made.
+type String 0..1 The type of reviewer comment.
+appliesFrom IdElement 0..1 Identifier for the start of the text or point in the text to which the comment applies. If not provided, the comment applies in the vicinity of the place it has been inserted into the text.
+appliesTo IdElement 0..1 Identifier for the end of the text to which the comment applies.

AdmonitionBlock

class models/blocks/multiparagraphs/AdmonitionBlock.lml

A sidebar block outside of the main flow of text, conveying particular warnings or supplementary text to the reader.

AttributeTypeCardinalityDefinition
+type AdmonitionType 1 Subclass of admonition determining how it is to be rendered; e.g. Warning, Note, Tip. Distinct admonition types are often associated with distinct icons or rendering.
+name TextElement 0..* Caption of admonition.
+uri Uri 0..1 Location where the content of the admonition is accessible as an external document.

AmendBlock

class models/blocks/amend/AmendBlock.lml

Block describing a change in a document, intended for human readers as opposed to the machine-readable Change.

AttributeTypeCardinalityDefinition
+change ChangeType 1 The type of change described in this block.
+bibLocality <<Bibliography>> BibItemLocality 0..* The location in the original document which has undergone the change described in this block. Typically this is given as a clause.
+localityStack <<Bibliography>> LocalityStack 0..* The location in the original document which has undergone the change described in this block, expressed as multiple levels of citation..
+path String 0..1 The location within the bibLocality where the change applies to, if bibLocality defines a container larger than the scope of the change.
+position AmendPosition 0..1 For an add change, whether the change is added before or after the location.
+pathEnd String 0..1 The end of the span within the bibLocality where the change applies to; applicable to modify or delete.
+title String 0..1 Optional caption of this block.
+description BasicBlock 0..* Description of the change described in this block.
+newContent NewContentBlock 0..1 New content to be added to the document; applicable to add and modify.
+classification Attribute 0..* Classification of the change.
+contributor <<Bibliography>> Contributor 0..* Contributor responsible for the change.

Attribute

class models/datatypes/Attribute.lml

Generic key-value attribute from an open register, attachable to any construct (document, section, block, inline element, media). Markup languages bind their own attribute types as register entries; basicdoc does not enumerate them. Well-known keys used across the ecosystem: id, class, lang, script, unnumbered, subsequence, format.

AttributeTypeCardinalityDefinition
+key String 1 Key of the attribute in the register.
+value String 0..* Value(s) of the attribute.
+scheme String 0..1 Optional scheme qualifying how the value is to be interpreted (e.g. a MIME type, a vocabulary, a markup-language namespace).

NewContentBlock

class models/blocks/amend/NewContentBlock.lml

Change contents, for use in AmendBlock.

AttributeTypeCardinalityDefinition
+newContentBlocks BasicBlock 0..* New blocks to be added to the document.
+clause BasicSection 0..* New clauses to be added to the document.
+document BasicDocument 0..* Entire documents attached as child content: a document is a block, composable into any relaxed container.

HierarchicalSection

class models/sections/HierarchicalSection.lml

Sections: groups of blocks within text, which can also contain other sections.

AttributeTypeCardinalityDefinition
+subsections HierarchicalSection 0..* Sections contained within the current section. The relation is recursive, so the hierarchical arrangement of sections can be arbitrarily deep.

BasicBlock

class models/blocks/BasicBlock.lml

Block of textual content in BasicDocument.

AttributeTypeCardinalityDefinition
+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.

Contributor

class <<Bibliography>> models/bibdata/relaton/Contributor.lml

Boundary reference to Relaton's Contributor. Basicdoc does not define contributor semantics; Relaton and downstream models provide the implementation.

LocalityStack

class <<Relaton>> models/bibdata/relaton/LocalityStack.lml

Boundary reference to Relaton's LocalityStack. Basicdoc does not define Relaton semantics; Relaton and downstream models provide the implementation.

BibItemLocality

class <<Relaton>> models/bibdata/relaton/BibItemLocality.lml

Boundary reference to Relaton's BibItemLocality. Basicdoc does not define Relaton semantics; Relaton and downstream models provide the implementation.