Best Schema Practiced for School with Subdivisions
I am interested in best SEO practices for creating schema markup for a School that has subdivisions: Preschool, ElementarySchool, MiddleSchool, and HighSchool. My plan initially is to create JSON-LD for each of the division pages and the home page.
My questions are:
- is this a good method of doing this and in line with best schema practices?
- When using schema, what is the best method of associating a subdivision of a school with the school?
- Would it be appropriate to use the schema contactPoint to mark up each of the names and phone numbers on the contact page?
- Are there any opportunities I should take advantage of or pitfalls I should avoid?
I have included JSON-LD code for what I'm thinking the code for some of these pages might look like.
Home Page:
<script type='application/ld+json'>
{
"@context": "http://schema.org/",
"@type": "School",
"address": {
"@type": "PostalAddress",
"addressCountry": "Country",
"addressLocality": "City",
"addressRegion": "State",
"postalCode": "12345",
"streetAddress": "123 School St",
"telephone": "+15432190100",
"description": "This is a very good school"
},
"areaServed": "City",
"name": "School",
"url": "https://www.school.edu",
"sameAs": [
"https://www.facebook.com/school",
"https://www.youtube.com/user/school",
"http://twitter.com/school",
"https://www.instagram.com/school/"
]
}
</script>
Preschool Page
Note: The phone number and name are different but the address is the same. Would this be duplicate or spammy in Google's eyes?
<!--Preschool-->
<script type='application/ld+json'>
{
"@context": "http://schema.org/",
"@type": "Preschool",
"address": {
"@type": "PostalAddress",
"addressCountry": "Country",
"addressLocality": "City",
"addressRegion": "State",
"postalCode": "12345",
"streetAddress": "123 School St",
"telephone": "+15432190101",
"description": "School has a very good preschool"
},
"areaServed": "City",
"name": "School - Preschool",
"url": "https://www.school.edu/preschool",
"parentOrganization": {
"@type": "School",
"name": "School"
}
}
</script>