Module jonix.onix3

Class PriceIdentifier

java.lang.Object
com.tectonica.jonix.onix3.PriceIdentifier
All Implemented Interfaces:
OnixComposite, OnixComposite.OnixDataComposite<JonixPriceIdentifier>, OnixComposite.OnixDataCompositeWithKey<JonixPriceIdentifier,PriceIdentifierTypes>, OnixTag, Serializable

Price identifier composite

An optional group of elements that provide an identifier, reference or persistent label for a particular price. For products that may be available at potentially many different prices, to different groups of purchasers or under different terms and conditions, this identifier may then be used in subsequent revenue reporting to specify which price the product was traded at.

Note that the price identifier will always be proprietary and must be unique across multiple pricing options for one product, but need not be unique across all products, nor need it be the same across all products offered at the same price point or under the same terms.

The composite is repeatable in order to provide multiple identifiers for the same price.

Reference name <PriceIdentifier>
Short tag <priceidentifier>
Cardinality 0…n

This tag may be included in the following composites:

Possible placements within ONIX message:

Since:
Onix-3.02
See Also:
  • Field Details

  • Constructor Details

    • PriceIdentifier

      public PriceIdentifier()
    • PriceIdentifier

      public PriceIdentifier(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 (<PriceIdentifier> or <priceidentifier>) is explicitly provided in the ONIX XML
    • ifExists

      public void ifExists(Consumer<PriceIdentifier> 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
    • priceIDType

      public PriceIDType priceIDType()

      An ONIX code identifying the scheme from which the identifier in the <IDValue> element is taken. Mandatory in each occurrence of the <PriceIdentifier> composite, and non-repeating.

      There is no particular public ‘standard’ for price identifiers, so at present only proprietary identifiers may be specified.

      Jonix-Comment: this field is required
    • idValue

      public IDValue idValue()

      An identifier of the type specified in the <PriceIDType> element. Mandatory in each occurrence of the <PriceIdentifier> composite, and non-repeating.

      Jonix-Comment: this field is required
    • idTypeName

      public IDTypeName idTypeName()

      A name which identifies a proprietary identifier scheme (ie a scheme which is not a standard and for which there is no individual ID type code). Must be included when, and only when, the code in the <PriceIDType> element indicates a proprietary scheme, eg a publisher’s own identifier scheme. Optional and non-repeating.

      Jonix-Comment: this field is optional
    • asStruct

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

      public PriceIdentifierTypes structKey()
      Specified by:
      structKey in interface OnixComposite.OnixDataCompositeWithKey<JonixPriceIdentifier,PriceIdentifierTypes>