Module jonix.onix3

Class Extent

java.lang.Object
com.tectonica.jonix.onix3.Extent
All Implemented Interfaces:
OnixComposite, OnixComposite.OnixDataComposite<JonixExtent>, OnixComposite.OnixDataCompositeWithKey<JonixExtent,ExtentTypes>, OnixTag, Serializable

Extent composite

A group of data elements which together describe an extent pertaining to the product. Optional, but in practice required for most products, eg to give the number of pages in a printed book or paginated e‑book, or to give the running time of an audiobook. Repeatable to specify different extent types or units.

Reference name <Extent>
Short tag <extent>
Cardinality 0…n

This tag may be included in the following composites:

Possible placements within ONIX message:

See Also:
  • Field Details

  • Constructor Details

    • Extent

      public Extent()
    • Extent

      public Extent(Element element)
  • Method Details

    • _initialize

      public void _initialize()
      Description copied from interface: OnixComposite
      This is an internal API. Since Jonix 8.0, composite objects are being populated lazily. This method initiates the population process, and is invoked internally by the accessor APIs of the composites
      Specified by:
      _initialize in interface OnixComposite
    • exists

      public boolean exists()
      Description copied from interface: OnixTag
      indicates whether this tag exists in the ONIX record
      Specified by:
      exists in interface OnixTag
      Returns:
      whether this tag (<Extent> or <extent>) is explicitly provided in the ONIX XML
    • ifExists

      public void ifExists(Consumer<Extent> action)
    • getXmlElement

      public Element getXmlElement()
      Description copied from interface: OnixComposite
      For advanced use-cases only.
      Specified by:
      getXmlElement in interface OnixComposite
      Returns:
      native representation of the XML element underlying to this tag
    • extentType

      public ExtentType extentType()

      An ONIX code which identifies the type of extent carried in the composite, eg running time for an audio or video product. Mandatory in each occurrence of the <Extent> composite, and non-repeating. From Issue 9 of the code lists, an extended set of values for <ExtentType> has been defined to allow more accurate description of pagination.

      Jonix-Comment: this field is required
    • extentValue

      public ExtentValue extentValue()

      The numeric value of the extent specified in <ExtentType>. Optional, and non-repeating. However, either <ExtentValue> or <ExtentValueRoman>, or both, must be present in each occurrence of the <Extent> composite; and it is very strongly recommended that <ExtentValue> should always be included, even when the original product uses Roman numerals.

      Jonix-Comment: this field is required
    • extentUnit

      public ExtentUnit extentUnit()

      An ONIX code indicating the unit used for the <ExtentValue> and the format in which the value is presented. Mandatory in each occurrence of the <Extent> composite, and non-repeating.

      Jonix-Comment: this field is required
    • extentValueRoman

      public ExtentValueRoman extentValueRoman()

      The value of the extent expressed in Roman numerals. Optional, and non-repeating. Used only for page runs which are numbered in Roman.

      Jonix-Comment: this field is optional
    • asStruct

      public JonixExtent asStruct()
      Specified by:
      asStruct in interface OnixComposite.OnixDataComposite<JonixExtent>
    • structKey

      public ExtentTypes structKey()
      Specified by:
      structKey in interface OnixComposite.OnixDataCompositeWithKey<JonixExtent,ExtentTypes>