LDSTechForumProjects

LDS Music Content API - Collection Object

The collection object has the following attributes in version 9 of the LDS Music Content API.

albumArt

Dictionary containing information about this Collection's Album Art.

ipad, ipad@2x, iphone, iphone@2x

There are currently 4 keys in this dictionary "ipad", "ipad@2x", "iphone", and "iphone@2x" for the following respective resolutions 768x768, 1536x1536, 320x320, and 640x640

Each of those 4 keys return a dictionary that has three attributes/keys:

modified

Timestamp signifying date of last modification to the image

size

Integer representing the size of the image in bytes.

url

Url that the image can be retrieved from.

indexType

Integer that indicates the indexing styles that make sense for this collection.

Currently there are two types of indexing

   typedef enum {
       CollectionIndexTypeAlphabeticalOrNumeric = 0,
       CollectionIndexTypeAlphabeticalOnly = 1,
   } CollectionIndexType;

The Hymns and Children's songbook are both indexable numerically by page number and also alphabetically by title, whereas the ChildrensAdditional collection doesn't make sense to sort/index numerically since there are no page numbers associated with each item, however it does make sense to index/sort them Alphabetically by title, this is why this field and type came to be.

items

array of item objects (in order of their appearance in the book)


Item object

LDS Music Content API - Item Object


name

Long name of the collection "Hymns of the Church of Jesus Christ of Latter-day Saints"

people

array of person objects. each object containing a givenNames, familyName, and lds field. Contains all of the people who are authors/composers/etc of items within this collection.

The givenNames field is also known as First Name and familyName is also known as Last Name. The lds field indicates whether or not this person is a member of the LDS Church.

sections

array of section objects that correspond to the actual sections of the book being modeled. Currently the section object only has a "name" attribute for the title of the section. Examples of section titles are "Restoration", and "Sacrament". Each item (we model songs using an object named item) belongs to exactly one section. And each section contains multiple items. In the JSON data the sections array simply provides the order (and index) of the sections and the names of each section. Later on we will see that the items have a pointer to the section they belong to.

shortName

Short representation of the name "Hymns"

status

String representation of the Beta/Production status of this collection. "PROD" signifies production, "BETA" signifies beta.

thumbnail

Dictionary containing information about this Collection's Thumbnail.

ipad, ipad@2x, iphone, iphone@2x

There are currently 4 keys in this dictionary "ipad", "ipad@2x", "iphone", and "iphone@2x" for the following respective resolutions 88x88, 176x176, 88x88, and 176x176

Each of those 4 keys return a dictionary that has three attributes/keys:

modified

Timestamp signifying date of last modification to the image

size

Integer representing the size of the image in bytes.

url

Url that the image can be retrieved from.

topics

An array of strings representing the titles of each Topic in this collection. Each item (song) has an array of pointers to the specific topics that apply to that item.

type

Integer representing the Collection type.

Currently there are two types

   typedef enum {
       CollectionTypeSongs = 0,
       CollectionTypeHymns = 1,
   } CollectionType;

You may also notice that there is a Collection representing additional songs used by the Primary that aren't part of the Children's Songbook, called ChildrensAdditional that is the same type as the Children's Songbook (0). This is a different enough type of collection that we may need to classify it as a different type, but the representation of that content is still getting flushed out, so there may be some flux that occurs here.


hiltonc: Mainly, this is used to know how to refer to the items in the collection. If 0, then we call them songs. If 1, then we call them hymns. For example, the placeholder text in the search box might say "Search songs" or "Search hymns".

This page was last modified on 1 April 2014, at 19:45.

Note: Content found in this wiki may not always reflect official Church information. See Terms of Use.