use crate::tests::prelude::*;
track_file!("ref/asciidoc-lang/docs/modules/document/pages/revision-information.adoc");
non_normative!(
r#"
= Revision Information
A document's revision information is assigned to three built-in attributes: `revnumber`, `revdate` and `revremark`.
These optional attributes can be set and assigned values xref:revision-line.adoc[using the revision line] or xref:revision-attribute-entries.adoc[using attribute entries] in a document header.
== Revision attributes
revnumber::
The document's revision number or version is assigned to the built-in `revnumber` attribute.
When assigned using the revision line, the version must contain at least one number, and, if it isn't followed by a date or remark, it must begin with the letter *v* (e.g., `v7.0.6`).
Any letters or symbols preceding the number, including *v*, are dropped when the document is rendered.
If `revnumber` is set with an attribute entry, it doesn't have to contain a number and the entire value is displayed in the rendered document.
revdate::
The date the revision was completed is assigned to the built-in `revdate` attribute.
If the date is assigned using the revision line, it must be separated from the version by a comma (e.g., `78.1, 2020-10-10`).
The date can contain letters, numbers, symbols, and attribute references.
//From @graphitefriction: This statement isn't true according to my tests: "When the version or revision remarks are assigned using the revision line, but the revision date isn't, then `revdate` will be assigned the `docdate` value." Instead, `revdate` is left unset
revremark::
Remarks about the revision of the document are assigned to the built-in `revremark` attribute.
The remark must be separated by a colon (`:`) from the version or revision date when assigned using the revision line.
"#
);