Module jonix.onix3

Class SalesRights

java.lang.Object
com.tectonica.jonix.onix3.SalesRights
All Implemented Interfaces:
OnixComposite, OnixComposite.OnixSuperComposite, OnixTag, Serializable

public class SalesRights extends Object implements OnixComposite.OnixSuperComposite, Serializable

Sales rights composite

An optional and repeatable group of data elements which together identify territorial sales rights which a publisher chooses to exercise in a product. When specifying a territory in which the product is not for sale, the publisher and product ID for an edition which is available in the specified territory can optionally be included. (In releases prior to 3.0, this functionality was provided in a <NotForSale> composite, which is now redundant and has been deleted.) See examples at the end of the sales rights composite.

Reference name <SalesRights>
Short tag <salesrights>
Cardinality 0…n

This tag may be included in the following composites:

Possible placements within ONIX message:

See Also:
  • Field Details

  • Constructor Details

    • SalesRights

      public SalesRights()
    • SalesRights

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

      public void ifExists(Consumer<SalesRights> 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
    • salesRightsType

      public SalesRightsType salesRightsType()

      An ONIX code which identifies the type of sales right or exclusion which applies in the territories which are associated with it. Mandatory in each occurrence of the <SalesRights> composite, and non-repeating. Values include: for sale with exclusive rights, for sale with non-exclusive rights, not for sale.

      Jonix-Comment: this field is required
    • territory

      public Territory territory()

      A group of data elements which together identify a territory in which the rights specified in <SalesRightsType> are applicable. Mandatory in each occurrence of the <SalesRights> composite, and non-repeating.

      Jonix-Comment: this field is required
    • salesRestrictions

      public ListOfOnixComposite<SalesRestriction> salesRestrictions()

      A group of data elements which together identify a non-territorial sales restriction which a publisher applies to a product within a particular territory. Optional, and repeatable if more than a single restriction applies.

      Jonix-Comment: this list may be empty
    • productIdentifiers

      An optional group of data elements which together define the identifier of a product in accordance with a specified scheme. Used here only if <SalesRightsType> has a value indicating ‘not for sale’, in order to specify an equivalent product which is available to be sold in the territory in question. Repeatable with different identifiers for the same product.

      Jonix-Comment: this list may be empty
    • publisherNames

      public ListOfOnixElement<PublisherName,String> publisherNames()

      The name of the publisher of an equivalent product which is available in the territory specified in the <SalesRights> composite, used only when <SalesRightsType> has a value indicating ‘not for sale’. Optional, and repeatable if the name is sent in multiple languages. The language attribute is optional for a single instance of <PublisherName>, but must be included in each instance if <PublisherName> is repeated.. Except where they are essential to the recognized form of the name, it is recommended that suffixes denoting incorporation (‘Co’, ‘Inc’, ‘Ltd’, ‘SA’, ‘GmbH’ etc) should be omitted.

      Jonix-Comment: this list may be empty