issues getting schema.org right for multiple sportsevents

hi

I'm fairly new to the schema.org side of things and wanted to add some data for our rugby club for the next matches to be shown on the google search results.

When validating only the first event comes up and I'm getting an exclamation mark next to my use of "SportsEvent" at the top. I'm wondering If this should be RugbyClub with the events created under them?

Would anyone be able to steer me in the right direction by correcting this piece of code, or pointing me to some working examples I can learn more from.

Thanks, Neil


<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "SportsEvent",
  "name": "Lordswood First XV",  
  "awayTeam": "Lordswood",
  "homeTeam": "Sheppey",
  "startDate" : "2016-02-13T14:00",
  "endDate" : "2016-02-13T16:00",
  "url" : "http://www.lordswoodrfc.co.uk/teams/lordswood-1st-xv/fixtures/",
  "location" : {
    "@type" : "Place",
    "sameAs" : "http://www.pitchero.com/clubs/sheppeyrfc",
    "name" : "Sheppey Rugby Football Club",
    "address" : "Lower Rd, Sheerness ME12 3ST"
  }
},
{
  "@context": "http://schema.org",
  "@type": "SportsEvent",
  "name": "Lordswood First XV",  
  "awayTeam": "Beccehamian",
  "homeTeam": "Lordswood",
  "startDate" : "2016-02-20T14:00",
  "endDate" : "2016-02-20T16:00",
  "url" : "http://www.lordswoodrfc.co.uk/teams/lordswood-1st-xv/fixtures/",
  "location" : {
    "@type" : "Place",
    "sameAs" : "http://www.lordswoodrfc.co.uk",
    "name" : "Lordswood Rugby Football Club",
    "address" : "The Clubhouse, North Dane Way, Chatham ME5 8YE"
  }
}
</script>

Open in new window

LVL 3
Neil ThompsonSenior Systems DeveloperAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

David Johnson, CD, MVPRetiredCommented:
"startDate" : "2016-02-13T14:00",
  "endDate" : "2016-02-13T16:00",

 combination of date and time of day in the form [-]CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm
You're missing the timezone and possibly the seconds
 "startDate" : "2016-02-13T14:00:00Z+5",   //Eastern Standard Time
  "endDate" : "2016-02-13T16:00:00Z",       //UTC

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Julian HansenCommented:
Jumping in the deep end here so hopefully this is useful

Having read the SportsEvent page on schema.org( https://schema.org/SportsEvent) it seems to suggest that you should create your games as sub-events. Their example creates the World Series as an event with games as sub-events which seems to be similar to what you are doing.

I have no way of testing but I would try that
Neil ThompsonSenior Systems DeveloperAuthor Commented:
Thanks guys, I've altered the time to the correct zone now using the Z

I've also tried the sub-event but this appears to require all the events to take place in 1 location as the root "sportsEvent" needs a location.

This is what I have so far which seems to validate ok, just waiting for Google to re-index to see what it turns out like

<script type="application/ld+json">
    {
        "@context": "http://schema.org",
        "@type": "SportsEvent",
        "name": "Lordswood 1st XV",
        "awayTeam": {
            "@type": "SportsTeam",
            "name": "Lordswood",
            "sameAs": "http://www.lordswoodrfc.co.uk"
        },
        "homeTeam": {
            "@type": "SportsTeam",
            "name": "Sheppey",
            "sameAs": "http://www.pitchero.com/clubs/sheppeyrfc"
        },
        "startDate": "2016-02-13T14:00",
        "endDate": "2016-02-13T15:30",
        "url": "http://www.lordswoodrfc.co.uk/teams/lordswood-1st-xv/fixtures/",
        "location": {
            "@type": "Place",
            "sameAs": "http://www.pitchero.com/clubs/sheppeyrfc",
            "name": "Sheppey Rugby Football Club",
            "address": "Lower Rd, Sheerness ME12 3ST"
        },
        "offers": {
            "price": "0",
            "url": "http://www.pitchero.com/clubs/sheppeyrfc"
        }
    }
</script>
<script type="application/ld+json">
    {
        "@context": "http://schema.org",
        "@type": "SportsEvent",
        "name": "Lordswood 1st XV",
        "awayTeam": {
            "@type": "SportsTeam",
            "name": "Beccehamian",
            "sameAs": "http://www.pitchero.com/clubs/beccehamianrfc"
        },
        "homeTeam": {
            "@type": "SportsTeam",
            "name": "Lordswood",
            "sameAs": "http://www.lordswoodrfc.co.uk"
        },
        "startDate": "2016-02-20T14:00",
        "endDate": "2016-02-20T15:30",
        "url": "http://www.lordswoodrfc.co.uk/teams/lordswood-1st-xv/fixtures/",
        "location": {
            "@type": "Place",
            "sameAs": "http://www.lordswoodrfc.co.uk",
            "name": "Lordswood Rugby Football Club",
            "address": "The Clubhouse, North Dane Way, Chatham ME5 8YE"
        },
        "offers": {
            "price": "0",
            "url": "http://www.lordswoodrfc.co.uk"
        }
    }
</script>

Open in new window

Julian HansenCommented:
From this page https://schema.org/subEvents
An Event that is part of this event. For example, a conference event includes many presentations, each of which is a subEvent of the conference.

I read that as sub-events being a collection of events - which can then have their own location. The example above for conferences - each presentation needs a venue - which is a location.

As I said before only just dived into this pool so may be speaking out of turn - but this how I would read the docs.
Neil ThompsonSenior Systems DeveloperAuthor Commented:
Hi Julian

You are right but my requirements are slightly different. This is for a rugby team that play matches weekly either at home or away so there will not be a fixed initial location such as an "arena" which is then divided into smaller "zones" as such to host the subEvents.

I was looking at your example to try to make a 2016 Matches "event" with every actual first/second team home/away match as sub events but it doesn't like that.

Thanks for all your help though guys, you've both given me helpful info and examples that I can go on to use elsewhere :)
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Web Languages and Standards

From novice to tech pro — start learning today.