AsciiBib -- Path style definition lists

Defining AsciiBib using definition list paths

Purpose

The AsciiBib “path-style definition list” syntax allows you to represent:

  • the nested structure of Relaton records in a simple, one-level definition list; and

  • to use the key for each key-value pair to represent the hierarchical nesting of entries, as a dot-delimited path of keys.

This is similar to how JSON data is often accessed.

This syntax utilizes the structure of Relaton YAML representation.

Note
The AsciiBib nested list syntax requires frequent breakouts into open blocks, to deal with limitations of AsciiDoc.

Basic entry

[%bibitem]
== {blank}
id:: iso19115
docid.type:: ISO
docid.id:: 19115-1

Is equivalent to the AsciiBib nested list syntax of:

[%bibitem]
== {blank}
id:: iso19115
docid::
  type::: ISO
  id::: 19115-1

Element arrays

Whenever part of the key is repeated between entries, the entries are assumed to attach to the same parent. If an array of objects is needed, a blank entry is required for the key of each repeating element.

For example,

[%bibitem]
== {blank}
id:: iso19115
docid::
docid.type:: ISO
docid.id:: 19115-1
docid::
docid.type:: ISO
docid.id:: TC211

Is equivalent to the AsciiBib nested list syntax of:

[%bibitem]
== {blank}
id:: iso19115
docid::
  type::: ISO
  id::: 19115-1
docid::
  type::: ISO
  id::: TC211

Embedded elements can also repeat.

[%bibitem]
...
contributor.person.contact::
contributor.person.contact.phone:: 223322
contributor.person.contact.type:: mobile
contributor.person.contact::
contributor.person.contact.phone:: 332233
contributor.person.contact.type:: work

Is equivalent to the AsciiBib nested list syntax of:

[%bibitem]
...
=== Contributor
person::
  contact:::
    phone:::: 223322
    type:::: mobile
  contact:::
    phone:::: 332233
    type:::: work

Metanorma-specific information

The following is Metanorma AsciiDoc markup corresponding to the YAML given above, using path style syntax instead of nested definition list syntax:

[[ISO-19115-1]]
[%bibitem]
== {blank}
id:: ISO/TC211
fetched:: 2019-06-30
title::
title.type:: main
title.content:: Geographic information
title::
title.type:: subtitle
title.content:: Metadata
title::
title.type:: parttitle
title.content:: Part 1: Fundamentals
title.language:: en
title.script:: Latn
title.format:: text/plain
type:: standard
docid.type:: ISO
docid.id:: ISO19115-1
docnumber:: 19115-1
edition.content:: 1
language:: en
language:: fr
script:: Latn
version.revision_date:: 2019-04-01
version.draft:: draft
biblionote.type:: bibnote
biblionote.content::
+
--
Paper format is not available for this standard. Only PDF and EPUB.
--
docstatus.stage:: 90
docstatus.substage:: 90.93
docstatus.iteration:: iteration
date::
date.type:: issued
date.value:: 2014
date::
date.type:: published
date.from:: 2014-04
date.to:: 2014-05
date::
date.type:: accessed
date.value:: 2015-05-20
abstract::
abstract.content::
+
--
ISO 19115-1:2014 defines the schema required for describing geographic information and services by means of metadata. It provides information ...
--
abstract::
abstract.content::
+
--
L'ISO 19115-1:2014 définit le schéma requis pour décrire des informations géographiques et des services au moyen de métadonnées. Elle fournit des informations ...
--
abstract.language:: fr
abstract.script:: Latn
abstract.format:: text/plain
copyright.owner.name:: International Organization for Standardization
copyright.owner.abbreviation:: ISO
copyright.owner.url:: www.iso.org
copyright.from:: 2014
copyright.to:: 2020
link::
link.type:: src
link.content:: https://www.iso.org/standard/53798.html
link::
link.type:: obp
link.content:: https://www.iso.org/obp/ui/#!iso:std:53798:en
link::
link.type:: rss
link.content:: https://www.iso.org/contents/data/standard/05/37/53798.detail.rss
medium::
medium.form:: medium form
medium.size:: medium size
medium.scale:: medium scale
place:: bib place
extent.locality.type:: section
extent.locality.reference_from:: 7
accesslocation:: accesslocation1
accesslocation:: accesslocation2
classification.type:: type
classification.value:: value
validity.begins:: 2010-10-10 12:21
validity.ends:: 2011-02-03 18:30
contributor::
contributor.organization.name:: International Organization for Standardization
contributor.organization.url:: www.iso.org
contributor.organization.abbreviation:: ISO
contributor.organization.subdivision:: division
contributor.role.type:: publisher
contributor.role.description:: Publisher role
contributor::
contributor.person.name.completename.content:: A. Bierman
contributor.person.name.completename.language:: en
contributor.person.affiliation.organization.name:: IETF
contributor.person.affiliation.organization.abbreviation:: IETF
contributor.person.affiliation.organization.identifier.type:: uri
contributor.person.affiliation.organization.identifier.id:: www.ietf.org
contributor.person.affiliation.description:: Affiliation description
contributor.person.address.street:: 8 Street St
contributor.person.address.city:: City
contributor.person.address.postcode:: 123456
contributor.person.address.country:: Country
contributor.person.address.state:: State
contributor.person.contact.phone:: 223322
contributor.person.contact.type:: mobile
contributor.role:: author
contributor::
contributor.organization.name:: IETF
contributor.organization.abbreviation:: IETF
contributor.organization.identifier.type:: uri
contributor.organization.identifier.id:: www.ietf.org
contributor.role:: publisher
contributor::
contributor.person.name.language:: en
contributor.person.name.initial:: A.
contributor.person.name.surname:: Bierman
contributor.person.affiliation.organization.name:: IETF
contributor.person.affiliation.organization.abbreviation:: IETF
contributor.person.affiliation.description.content:: Affiliation description
contributor.person.affiliation.description.language:: en
contributor.person.affiliation.description.script:: Latn
contributor.person.identifier.type:: uri
contributor.person.identifier.id:: www.person.com
contributor.role:: author
relation::
relation.type:: updates
relation.bibitem.formattedref:: ISO 19115:2003
relation.bibitem.bib_locality.type:: page
relation.bibitem.bib_locality.reference_from:: 7
relation.bibitem.bib_locality.reference_to:: 10
relation::
relation.type:: updates
relation.bibitem.type:: standard
relation.bibitem.formattedref:: ISO 19115:2003/Cor 1:2006
series::
series.type:: main
series.title.type:: original
series.title.content:: ISO/IEC FDIS 10118-3
series.title.language:: en
series.title.script:: Latn
series.title.format:: text/plain
series.place:: Serie's place
series.organization:: Serie's organization
series.abbreviation.content:: ABVR
series.abbreviation.language:: en
series.abbreviation.script:: Latn
series.from:: 2009-02-01
series.to:: 2010-12-20
series.number:: serie1234
series.partnumber:: part5678
series::
series.type:: alt
series.formattedref.content:: serieref
series.formattedref.language:: en
series.formattedref.script:: Latn
keyword:: Keyword
keyword:: Key Word