gladstonemrm / FusionLifestyle

Issues relating to open data from Fusion Lifestyle
0 stars 0 forks source link

Mapping of data block to match new schema #16

Closed nickevansuk closed 5 years ago

nickevansuk commented 7 years ago

As discussed the mapping of the data block to match the new Modelling Opportunity Data specification is below.

Where there is no comment on the line, assume the property value is a constant.

data: {
  "@context": [
    "https://www.openactive.io/ns/oa.jsonld",
    "https://www.openactive.io/ns-beta/oa.jsonld"
  ],
  "type": "Event",

  "identifier": "B26CLTG16001215", /* activityID */

  "name": "Teen Gym 1600", /* title */

  "description": "", /* description */

  "activity": "Gym Activities", /* activityGroup */

  "genderRestriction": "mixed", /* gender */

  "duration": "PT60M", /* activityDuration converted to ISO spec. Can do this with System.Xml.XmlConvert.ToString(TimeSpan.FromMinutes(activityDuration)) */
  "startDate": "2017-07-25T19:00:00Z", /* startDateTime */
  "endDate": "2017-07-25T20:00:00Z", /* endDateTime */

  "location": {
    "type": "SportsActivityLocation",
    "name": "Gym", /* comma separate onSiteLocation */ 
    "containedInPlace": {
      "type": "Place",
      "url": "http://www.fusion-lifestyle.com/centres/Braintree_Leisure_Centre/Contact#formTop", /* website */
      "name": "Braintree Sport & Health Club", /* siteName */
      "identifier": "B2BLC", /* siteID */
      "address": {
        "type": "PostalAddress",
        "postalCode": "CM7 1FF", /* postcode */
        "streetAddress": "Panfield Lane" /* address */
       },
      "telephone": "01376 552 585" /* telephone */
    }
  },

  "image": "https://www.gomammoth.co.uk/wp-content/uploads/venue-images/5-a-side-football/canada-water/gomammoth-5-a-side-football-canada-water.jpg", /* imageURL */

  "beta:level": "beginner", /* level */

  "beta:availability": "limited", /* availability */

  "offer": [
    { /* include if seniorAllowed */
        "name": "Senior non-member",
        "price": "7.00", /* seniorCost */
        "priceCurrency": "GDP",
        "type": "Offer"
    },
    { /* include if adultAllowed */
        "name": "Adult non-member",
        "price": "10.00", /* adultCost */
        "priceCurrency": "GDP",
        "type": "Offer"
    },
    { /* include if juniorAllowed */
        "name": "Junior non-member",
        "price": "5.00", /* juniorCost */
        "priceCurrency": "GDP",
        "type": "Offer"
    }
  ]

}