<LML /> 2.0 - Inline Markup Module

specification

Author: Dr. O. Hoffmann (German web-page)

This module belongs to the Literature Markup Language Version 2.0

Changes

There are many new elements in LML 2.0 indicated in the element index with (v2).

Element-Index

Complete Element and Attribute Index

Content Inline Elements

a

Description

Type: Inline

Indicates an anchor to identify a document fragment. Note, that the host language has to provide the functionality, especially it is required, that such an element has an attribute containing fragment identifiers as xml:id. This covers only the functionality of an anchor, not that of a (hyper)link. An a element might be empty or might contain some content. It defines the (possibly stylable) position of the start of the element representation, even for an empty anchor this is defined. This indicates already, that the typical use case might be different than in older HTML versions, typically it will be an empty element, because else it is more convenient for authors to use the related element directly. The a element is not intended to group other content, it defines only a target for a reference and has no other semantic meaning or functionality.

User agents may indicate an anchor or any other element with an identifier on demand, including the fragment identifier to simplify for example citation of document fragments.

Relations

Today many written and spoken texts are full of abbreviations - and many people do not know the meaning or do not even know, if the abbreviation is spoken as a word or as single letters. A few elements try to simplify the situation a little bit. And authors should provide the meaning of an abbreviation at least once per document as metadata within the used abbreviation elements or alternatively within a glossary, including references from an abbreviation to the glossary. Intentionally the element names for abbreviations are not really short. This might help authors a little bit to avoid the usage of superfluous abbreviations in favour of the complete phrase for better understandability.

abbr

Description

Type: Inline

An abbreviation or shortcut of a word, term or phrase. Examples are abbr., etc, Dr., Prof., JPEG, ok, ff.
acronym, init and syla can be used for specific types of abbreviations. An even more specific case is a u (a unit respectively the shortcut for it in this case). If some abbreviation does not belong to these types, the generic abbr is used. In doubt about pronunciation, the meta element phon can indicate the pronunciation.

Relations

acronym

Description

Type: Inline

A specific abbreviation, typically a word made from key letters of a group of words, spoken as a word, not as a group of letters. Examples are DAISY, LASER, RADAR, NATO. Note that some acronyms like laser or radar developed to quite common simple words, for those words it is not necessary anymore to indicate them as acronyms, if intended to describe the related object or activity, not the original abbreviated process or principle.

Note, that there is more than one explanation of the word 'acronym' in some languages, however this is only an element name and this definition here applies for the element. For other meanings some other elements for abbreviations are available.

Relations

init

Description

Type: Inline

A specific abbreviation or shortcut of a word, term or phrase, sometimes called initialism, typically made from key letters of a group of words, each letter spoken separately, not as a word. Often for the first letter of each shortened word a capital letter is used. Examples are SVG, HTML, MathML, LML.

Relations

syla

Description

Type: Inline

A specific syllabic abbreviation or shortcut of a word, term or phrase, typically made from key syllables of a group of words, spoken as one word. Examples are Interpol, Gestapo, Stasi.

Relations

trunc (v2)

Description

Type: Inline

Truncation, an abbreviation formed from the first part of a word.

allegory

Description

Type: Inline

Indicates an allegory, parable, simile, if the author wants to pronounce it, here just the short ones, because it is inline content. The very short form is typically more a methaphor.

Relations

me

Description

Type: Inline

Indicates a metaphor, if the author wants to pronounce it. An allegory is typically a longer variant, a metaphor consists typically only of one or a few words.

Relations

arch (v2)

Description

Type: Inline

A general markup for an archaic phrase, a word or short phrase slightly outdated at the time of writing or publishing. If such an archaic word is considered to be not common for the audience, it can be expected, that such a phrase is explained for example in a related meta element or an explanation is provided for example per reference to a glossary.

Relations

fp

Description

Type: Inline

A foreign phrase, a word or short phrase from another language, not assimilated. If such a foreign word is not common in the primary language of the document, it can be expected, that such a phrase is explained respectively translated for example in a related meta element.

Some social circumstances can result in a mixture of quite different languages, for example so called 'denglisch' results from anglicisms and pseudo-anglicisms in the german language. This is often not understandable for a certain amount of german speaking or english speaking people, therefore there is a requirement to explain such anglicisms and even more pseudo-anglicisms to the general public, if used at all.

Relations

dp (v2)

Description

Type: Inline

A general markup for a dialect, idiom, slang phrase. If such a slang word is considered to be not common for the audience, it can be expected, that such a phrase is explained for example in a related meta element or an explanation is provided for example per reference to a glossary.

Relations

tp (v2)

Description

Type: Inline

A general markup for a technical phrase, a word or short phrase with a specific meaning in a technical domain, the current text is about, used to distinguish this from the general meaning of the phrase out of the specific technical domain. If such a technical word is considered to be not common for the audience, it can be expected, that such a phrase is explained for example in a related meta element or an explanation is provided for example per reference to a glossary.

Relations

br

Description

Type: Inline (and empty)

Indicates a line break within some text. The br is intended to be an empty element, this means it may not contain any content. Content within the element is not impossible, but has no semantic meaning.

Indicated line breaks may have different purposes - typically it is a very weak structure this indicates, maybe within a p only a small break or separation of two (or more) units creating only together the idea provided by the paragraph. Or within a verse line of a poem it may indicate a specific exotic use case in a non classical poetic form. Because this element was abused in (X)HTML as an element to structure or to style content, authors are explicitly discouraged here to use it for such purposes.

In SVG tiny 1.2 the related tbreak is introduced, because SVG tiny 1.2 has no specific elements to structure text depending on its semantic meaning.

Relations

contradiction

Description

Type: Inline

Indicates a contradiction. Contradictions are a common issue in languages and are repeatedly discussed. To avoid confusion, such intentional construction can be indicated with this element.

Relations

d

Description

Type: Inline

An inline separator (stylable dot) to dissociate text content, for example in a list group of links. There is no specific styling or presentation. This is mainly recommended to be used as a separator for links directly followed on each other to simplify the recognition of the separation for screen-readers and similar non visual presentation programs. This is better than to use arbitrary glyphs as separators, what can be irritating for the audience of a screen-reader. Within a list group this is typically used as an empty element within the element representing the list item either at the beginning or at the end. Alternatively the separator element can be the list group item itself, containing in this case the listed content.

del

Description

Type: Inline or block

Indicates a deleted fragment. For historical reasons or for comparison such a passage might be still interesting, therefore it is not completely removed, often a new or modified fragment replaces it using the element ins. This element introduces no further separation from other content as block elements typically do, but it requires an unambiguous indication, that the content is not valid anymore.

Relations

ins

Description

Type: Inline or block

Indicates an inserted fragment. For historical reasons or for comparison it might be interesting to indicate, that a passage is inserted into some content, typically later after a revision. This element introduces no further separation from other content as block elements typically do, but it requires an indication, that the content is inserted (later).

Relations

deco

Description

Type: Inline or block

Indicates a document fragment to be decorative only. This is some content only available for some specific type of presentation, for example visual or some construction providing some background noise, which therefore does not contain any information relevant for the intention of the document. Especially a user-agent without the capabilities to present this content may leave it out of his presentation without further notice to the user and without changing the meaning or intention of the author.

Relations

ds (v2)

Description

Type: Inline

Indicates direct speech, not a quotation. In fictional works some fictional persons sometimes speak directly, because this is not a quotation, this is the proper markup for it, but one can of course use quotation marks as well for this. But using markup has the advantage to style the quotation marks. If the quotation marks should have a fixed character, use quotation marks directly.

Relations

em

Description

Type: Inline

Emphasised content. To be used, if some phrases are more important than phrases around it. Emphasised content can be emphasised even more by using just another em - consider alternatively or additionally the usage of strong.

Relations

strong

Description

Type: Inline

A strong emphasised passage of content. Compare element em.

Relations

de (v2)

Description

Type: Inline

Deemphasised or understated content. To be used, if some phrases are less important than phrases around it. Understated content can be understated even more by using just another de - consider alternatively or additionally the usage of weak.

If a de appears within an em, this means normal mode. Finally the exact number of nested de and em count to decide how important the statement is.

weak (v2)

Description

Type: Inline

A strongly understated passage of content. Compare element de.

If a weak appears within an strong, this means normal mode. Finally the exact number of nested weak and strong count to decide how weak or strong the statement is.

eq

Description

Type: Inline

A container for a inline mathematics or in general equations or similar structures from natural science, logics and related areas. Often equations or such abstractions require some advanced presentation or markup from foreign namespaces to provide the functionality. Similar to the related block element beq eq can contain the content itself or references a resource with a link.

Relations

Sample for eq

Examples how to embed equations.

gloss (v2)

Description

Type: Inline

Container for an expression that is explained with an entry in a glossary.

Usually a gloss is embedded in a link or a comparable mechanism to reference the entry in the glossary. Alternatively the reference may follow the gloss directly.

Relations

hypothesis

Description

Type: Inline

Indicates a hypothesis, presumption or assertion to be examined in a text.

Relations

lie

Description

Type: Inline

Indicates a lie, fraud, trickery or cheat. Of course, if something is intended as a lie to the reader, an author will not markup such lies, but in some kinds of texts or fictions such a markup might help to inform the reader about a lie, the protagonists do not expose yet.

Relations

Description

Type: Inline

Indicates a (hyper)link to another resource, document or a document fragment. Note, that the host language has to provide the functionality or a language like XLink has to be used to provide the technical functionality of a link.

Note, that XLink provides the possibility too, to embed other documents, for example raster images.
A user agent should indicate referenced external content in both cases to ensure, that the user is able to identify the referenced content. This might be necessary too for legal reasons and to respect authors rights of the referenced content to separate such unproblematic referencing from quotation or republishing of foreign content.

For a visual presentation the viewport for the embedded content has to be determined. Often this can be derived completely (high priority mentioned first)
1) from styling or
2) in LML 2.0 from the attribute viewport (see attribute definition below)
3) from the embedded content
4) If this is not possible, for example if an SVG document provides the size only in percentage, the link is treated as an (inline-)block element, this means, the width expands automatically to the size of the parent element, correspondingly to CSS width: auto for block elements. If the height is known and the aspect ratio is preserved, this is used instead to determine a proper width. If the width is determined automatically as described and the aspect ratio is preserved, the height is calculated from the aspect ratio. If the aspect ratio is not preserved and there is no other information for the height indicated, the height is assumed to be the same as the width. Authors are strongly recommended to avoid situations with completely missing information, they should a least provide some information about the aspect ratio to ensure a useful display.

For embedded timed content like video or audio it is expected, that the user-agent provides an interface on demand to begin, end and pause the timed element. Additionally the user-agent may provide the functionalities to search forward and backward. Timed content referenced with XLink:actuate="onLoad" starts with the 'onLoad' event for the referenced document automatically. Timed content referenced with XLink:actuate="onRequest" begins with a begin within the user-agents interface. In this case the user-agent has to indicate, that the resource needs to be activated. 'other' and 'none' is not expected to be embedded, if specified anyway, they behave as 'onRequest'. LML itself has no further functionality for the author to have influence on the timing of embedded content. If this is required, a specific format like SMIL or SVG can be used as a component or embedded resource to provide such a functionality in a declarative way.

Additions, Version 2.0

Normally it might be avoided, that a link is a descendant of a link. Obvious exceptions are links within a meta. However, if link elements are nested in each other, the innermost link becomes active if selected and activated, the event does not bubble to the parents after this happened. Authors have to ensure, that there is other content in an ancestor link to activate this independently.

To reference a fragment in a document, such a fragment needs a fragment identifier. In LML the generic xml:id is used for this. The fragment identifier is simply added to the URI/IRI of the link reference after a '#'. If the fragment is in the same document, the referencing value is only '#' followed by the fragment identifier.

After the link to a fragment of the same element is activated, the current view of the user-agent jumps to the fragment. If the fragment is inside a meta, this may implicate, that the view on the meta is opened before. If the link references a fragment in another element, the user-agent switches to this new document before jumping to the fragment.

The precise behaviour is detailed by the XLink attribute show. A not trivial case applies for the value 'embed'. The format of the referenced document has to define, what happens, if there is a link to a fragment, as XHTML and SVG for example do.

If an LML document fragment is referenced to be embedded by a document in another format, and this format states not otherwise, the complete document is embedded, but it is jumped to the position of the fragment identifier to begin reception. The embedding format has to ensure, that all content is accessible on demand, for example for a visual presentation with scrollbars. If nothing is stated in the other format, something like scrollbars is expected for such a presentation. The same applies, if within an LML document an LML fragment is referenced to be embedded.

XLink attributes

Description

Type: Attribute

If XLink is used, the following attributes are intended to have specific values for this type of link:

href
"URI"
the URI or IRI of the link target.
type
"simple" (Other types are available in XLink, but are not further discussed here, the general definition can be found in XLink.)
title
"string"
a title for the arc of the hyperlink.
show
"new | replace | embed | other | none"
'new' opens the target in a new window or tab - the exact behaviour depends on the user preferences, how to present new content.
'replace' replaces the current document. If the document is embedded itself in another document, it does not replace the embedding document(s) too, for this the host language has to provide advanced syntax.
With 'embed' the other document is embedded inside the current document, like for example an image in SVG or an object in (X)HTML.
'other' is related to references to external stylesheets or timesheets or scripts or the reference to other parts of the project. LML provides the markup to indicate this relation.
'none' means simply no presentation - the user-agent may list such links additionally as optional referenced content separated from the current document, similar to meta information. LML may provide markup to indicate what to do with it.
actuate
"onRequest | onLoad | other | none"
'onRequest' means typically a user interactivity like an activation or click on the link content. If the link is empty, the user-agent should provide an indication to activate the referenced content.
'onLoad' means an activation with the onLoad event, typically for external stylesheets, timesheets or scripts, static raster images
'other' is related to the reference to other parts of the project. LML provides the markup to indicate this relation.
'none' means a deactivation of the link functionality. The user-agent may provide a separated indication of the referenced content.
role
"URI"
referencing a document (fragment) indicating the role of the link target.
arcrole
"URI"
referencing a document (fragment) indicating the role of the arc of the link.

type

Description

Type: Attribute

The link element has an attribute type to indicate the content type (internet media type, formerly called MIME type) of the referenced document. In case of embedded content this can be useful as a hint. Implementations may choose to not fetch and embed formats that they do not support. Note that if an internet media type is returned by the server, the server metadata is authoritative over the type attribute. The user agent may use this attribute or the server information to decide, whether it is useful to fetch the referenced content or not. To choose an alternative within a switch element the related typec has to be used.

For a list of internet media types, see the IANA media type registry.
For a list of types for audio and video codecs, see the IANA codec registry and RFC2361.

For some formats like audio or video it might be useful to provide information about the used codecs. Other formats like SMIL might require often more than one internet media type for some useful presentation.

Therefore the value is a whitespace or comma separated list of internet media types (or codecs) or media type or codec groups.
An or-group is indicated with parenthesis, '(' at the beginning, ')' at the end.
An and-group is indicated with parenthesis, '{' at the beginning, '}' at the end.
A group can contain other groups.
A single type evaluates to true, if it is interpreted.
An or-group evaluates to true, if at least one of the specified types, respectively groups directly inside is interpreted.
An and-group evaluates to true, if all specified types, respectively groups directly inside are interpreted.
This attribute evaluates to true, if all specified types, respectively groups directly inside are interpreted.

Some more advanced formats may provide alternatives themselves, as LML, SVG or SMIL. In such a case, that alternatives can be indicated with an or-group.
For example type = "({image/svg+xml image/png} {application/xhtml+xml image/png} {text/html image/gif})" indicates, that either SVG and PNG are required for a proper presentation or XHTML and PNG or alternatively HTML and GIF. Because support for PNG and JPEG/JFIF is required anyway in SVG, there is no need to indicate them additionally, therefore in the first item this can be skipped.

LML has currently no registered media type, for the usage within type one may use "application/x-lml+xml". For the header send by a server one may use this too or simply "application/xml".

rlang

Description

Type: Attribute

The link element has an attribute rlang (reference language) to indicate the language of the referenced document. This corresponds to the attribute hreflang in (X)HTML. The value is a language identifier as for xml:lang.

hint

Description

Type: Attribute

The link element has an attribute hint to indicate, that external content is referenced (what can be relevant for example in relation to author rights especially for embedded content).

Possible values are the default 'none', 'same' and 'other'.
'none' means, that no specific hint is intended by the author. Concerning authors rights this implicates no statement at all.
'same' means, that the referenced content belongs to the same area or project than the referencing document. No specific hint is required.
For 'other' this indicates, that the referenced content belongs to another area or project (with other author rights), a noticeable hint should be provided by the user-agent to indicate the change of areas or claims.

viewport (v2)

Description

Type: Attribute

The width and height of a viewport to be preserved for embedded content in case of XLink:show="embed". The value is either empty (default) or a whitespace separated pair of CSS lengths (deviation from current nonsense in CSS: Absolute units like centimeter or millimeter are interpreted due to international standards for such units, not due to the CSS unit obfuscation).
The first entry is the width, the second the height.

viewport provides a viewport for embedded content. How the embedded content is treated, depends on the embedded format. For example SVG explains in detail, what has to happen for this format, depending on the width, height, viewBox and preserveAspectRatio of the embedded SVG document. It scales only, if width and height are given as percentage.

Raster image formats typically do not have such detailed instructions than SVG, but typically the aspect ratio and the viewBox can be implicated by the given width and height of the image. If a format defines it not otherwise, the behaviour is the same as for a given width and height of 100% percentage for an SVG with preserved aspect ratio of type meet, the intrinsic width and height of the raster image are used as a viewBox.
This means, the largest scaling factor is chosen to fit the image with preserved aspect ratio into the viewport without any clipping. If another behaviour is desired, it is suggested to embed the raster image into SVG.

If the embedded content has no information about width and height, as for example for a typical LML or XHTML document, the embedded document uses simply the given viewport to display its content, typically with automatic text line wrapping and scrolling.

If viewport is not given, automatic behaviour as described above is used to generate a viewport.

Relations

name

Description

Type: Inline

Represents the name of a person, location, organisation or product, especially useful to avoid confusion with the same words not used as a name to identify a subject or object. Typically a name is intended to identify an individual subject or object, not a general representation of subjects or object classes. Under some circumstances the reader may have problems to identify a name as a name, this can be avoided with this element. The element itself provides no more information about the class of subjects or objects, the named entity belongs to. For this additional attributes like typeof or property can be quite useful, if required.

Relations

forename (v2)

Description

Type: Inline

Forename of a person.

Relations

surname (v2)

Description

Type: Inline

Surname of a person.

Relations

naname (v2)

Description

Type: Inline

Academic title, social title or title of nobility of a person.

street (v2)

Description

Type: Inline

Indication a street within an address, might include a number or identifier a house as well.

Relations

addrcode (v2)

Description

Type: Inline

Indication an address code within an address, typically used for the numerical code to identify towns or regions in an address, can include both such an abstract identifier and a name of a city or region. Some people or organisation have their own number or identifier for a post box.

Relations

country (v2)

Description

Type: Inline

Indication a country within an address, can be a name of a country or a number code or both.

Relations

email (v2)

Description

Type: Inline

Container for an email-address or a link or form allowing to send an email to a given address. Take into account, that there are specific spam-robots searching for email-addresses. But on the other hand in many countries it is required to provide some digital contact option like an email address. And even more important, such a markup helps humans users as well to find the address with the help of programs.

Relations

phone (v2)

Description

Type: Inline

Container for a (tele)phone contact. Take into account, that there are specific spam-robots searching for phone numbers. But on the other hand in many countries it is required to provide such contact option. And even more important, such a markup helps humans users as well to find the phone contact with the help of programs.

fax (v2)

Description

Type: Inline

Container for a (tele)fax contact. Take into account, that there are specific spam-robots searching for fax/phone numbers. But on the other hand in many countries it is required to provide such contact option. And even more important, such a markup helps humans users as well to find the fax/phone contact with the help of programs.

homepage (v2)

Description

Type: Inline

Container for a reference to a home page of a person, especially helpful within address or impressum Such a markup helps humans users as well to find a contact address of a person with the help of programs.

neo

Description

Type: Inline

Indicates a neologism, a new word creation. If the meaning is not obvious, the author may want to explain it with some meta information.

Relations

wikipedia: Neologism

ph

Description

Type: Inline

A generic inline container to indicate a phrase or a group of elements or text fragments of inline content. This is typically used as a container, if there is no other element with a semantic meaning fitting to the intention of the author. Typically a host language will have such a container anyway, there is not need to use this as a role value, but this maybe is useful, if LML is used as the host language itself. One helpful application can be to use it to add some additional meta information and explanations with an element meta to the phrase, if it needs further explanation and does not belong to the meaning of another inline element. This element may be used to add additional styling too.

Relations

q

Description

Type: Inline

An inline quotation. The cite element provides the information about the source, respectively the author. See cite and the related block element bq for more details.

Relations

Samples for q

Examples how to quote.

ruby

Description

Type: Inline

Minimal Content Model: (rb, (rt | (rp, rt, rp)))

A container for ruby notation.

Relations

rbc

Description

Type: Inline

Minimal Content Model: (rb+)

The ruby base container, contains rb elements. Only one rbc element may appear inside a ruby element.

Relations

rtc

Description

Type: Inline

Minimal Content Model: (rt+)

The ruby text container, contains rt elements. One or two rtc elements may appear inside a ruby element to associate ruby texts with a single base text, represented by an rbc element. More than two rtc elements must not appear inside a ruby element.

Relations

rb

Description

Type: Inline

Minimal Content Model: (PCDATA | Inline - ruby)*

The ruby base element. For simple ruby markup, only one rb element may appear. For complex ruby markup, multiple rb elements may appear inside an rbc element. Each rb element is associated with a corresponding rt element, for fine-grained control of ruby presentation.
The rb element may contain inline elements or character data as its content, but the ruby element is not allowed as its descendant element.

Relations

rt

Description

Type: Inline

Minimal Content Model: (PCDATA | Inline - ruby)*

The ruby text element. For simple ruby markup, only one rt element may appear. For complex ruby markup, multiple rt elements may appear inside an rtc element. Each rt element is associated with a corresponding rb element, for fine-grained control of ruby presentation.
The rt element may contain inline elements or character data as its content, but the ruby element is not allowed as its descendant element.

Relations

rbspan

Description

Type: Attribute

The rt element has a specific attribute rbspan. In complex ruby markup, the rbspan attribute allows an rt element to span multiple rb elements. The value shall be an integer value greater than zero ("0"). The default value of this attribute is one ("1"). The rbspan attribute should not be used in simple ruby markup, and user agents should ignore the rbspan attribute when it appears in simple ruby markup.

Relations

rp

Description

Type: Inline

Minimal Content Model: PCDATA*

The rp element can be used in the case of simple ruby markup to specify characters that can denote the beginning and end of ruby text when user agents do not have other ways to present ruby text distinctively from the base text. Parentheses (or similar characters) can provide an acceptable fallback. In this situation, ruby text will only degrade to be rendered inline and enclosed in the fallback parentheses. This is the least inappropriate rendering under the condition that only inline rendering is available. The rp element cannot be used with complex ruby markup.

Relations

samp

Description

Type: Inline

A sample, for example for some markup, program, script or any other sample an author needs to provide to explain something.

Relations

sen

Description

Type: Inline

A sentence.

Typically it is not required nor even desired to markup any sentence. If this element is used, it pronounces the content as something like a theorem or proposition or an edge hypotheses or theme of a complete discussion.

Relations

socalled (v2)

Description

Type: Inline

Container for a phrase the for which the author or narrator indicates a disclaiming of responsibility.

Relations

sub

Description

Type: Inline

A subscript, typically used in simple representations of an index in a formula, for example in the chemical formula for water the indicator '2' for two hydrogen atoms: H2O.

Relations

sup

Description

Type: Inline

A superscript, typically used in simple representations of an index (top) in a formula or an exponent, for example the top x in ex = exp(x) or as an indicator for the spin degeneracy of atomic or molecular states like 2P1/2.

Relations

time

Description

Type: Inline

Indicates a date, time interval or period. A subset of the international standard ISO 8601:2004 for date and time is used to provide an understandable content. For a date this looks like ±YYYY-MM-DDThh:mm:ss.fZ. Not required time information can be shortened, especially the complete date fraction or the complete time fraction including the separator 'T'. Therefore for a date this looks like ±YYYY-MM-DD, for a time hh:mm:ss.fZ, where .f can be skipped too as :ss.f can and :mm:ss.f. Or for a low accuracy time information one may note something like ~±YYYY. The time zone indicator can be skipped to indicate locale time, in such a case the author should identify the location next to the time information, but not inside the time element. Of course a better approach is to note the time zone directly instead of the Z: ±YYYY-MM-DDThh:mm:ss.f±hh:mm, where the last :mm is optional again.

Durations are possible with the 'P' indicator syntax, for example:
PYYYY-MM-DDThh:mm:ss.f
or in combination with a begin date:
±YYYY-MM-DDThh:mm:ss.fZ/PYYYY-MM-DDThh:mm:ss.f
or with an end date:
PYYYY-MM-DDThh:mm:ss.f/±YYYY-MM-DDThh:mm:ss.fZ

For details about the notation see the definition of the element created.

Note that due to changes and corrections of the calendar system in previous centuries and the current system of leap seconds there is no trivial relation between a precise time interval, period or duration and two dates according to this notation. For this a notation of TAI is necessary. Therefore alternatively the time can be represented as TAI seconds since 1958-01-01T00:00:00.0 in such a way: 'TAI±t.f', where 't.f' is a float representing the number of seconds including possible fractions of seconds. Durations are always noted in TAI seconds, if no begin or end date is provided. Therefore a day has exactly 24 hours or 86400 seconds, a month 30.4375 days or 2629800 seconds, a year 365.25 days or 31557600 seconds - due to these strange numbers for the lengths of months and years, it can be a good idea to avoid larger units than days for durations. Therefore deviating from ISO 8601:2004 one can indicate durations too with an arbitrary number of digits for hours, if leading 'TAI' is used. And one can indicate an arbitrary number of digits for days, if the 'T' after is not skipped.

If an author prefers another ambiguous format or notation, the proper solution could be to provide the sloppy notation in the flow text like 'last saturday' or 'at my 30th birthday' and to add the proper time only as meta information.

Relations

timec

Description

Type: Inline

Indicates the current time. Sometimes documents generated by (server sided) scripting or declarative animations provide clocks with the current time. To distinguish this from arbitrary time information or to provide a simple text equivalent for accessibility reasons one can use this element. The content is the same as for time without the possibility to indicate time ranges or durations, what is meaningless for the current time. After generation of the content the time information is typically not updated, if not animated. Readers have to take into account this for generated static content or if they save such an output to their local file system. Additionally the output from a server is always delayed, authors may try to compensate that for an estimated time for the first view. Readers have to take into account inaccuracies tolerantly.

Inline samples

Samples for several block and inline elements.