Why we need schema.org validation
As we author the structured data in our websites, we want to know immediately if the markup is valid. If you don’t know you have invalid markup at the time you’re authoring then you either you may never find out, you will test it manually or it will come out in the Google Search Console report. Either way, you must go back to edit what you created, losing valuable time. Moreover, incorrect data may cause your content to be categorized for wrong search queries, having a direct impact on your search performance.
Below are four different categories of structured data validation:
- Domain & Range Validation of schema.org properties, these often have restrictions of expected types. They may include expected classes, like a schema.org/employee is used with Organization and expects a Person. They may also expect primitive values (e.g. text, number, date), like http://schema.org/name expects is used with Thing and expects a text value. Examples shown below:
- Product Feature Validation is specific to enable product features, such as Google’s rich snippets. Google documents rich snippets and each of those features have requirements, e.g. Product rich snippet requires schema.org/name
- Generally Accepted Schema,org Principles [GASP] is what I’m terming the commonly accepted validation rules that apply to everyone’s schema.org data. For example, everyone can agree upon constraints for schema: Person (examples credit of W3C Shapes Constraint Language Use Cases):
- Children must be born after the parent
- Children cannot contain cycles (e.g children of an ancestor)
- deathDate must be after birthDate
- Domain Specific Validation of Schema.org model is constraints on the data model that are specific to your industry, company and where no consensus in GASP, this is where you apply your own rules for your schema.org data
How are they applied?
In Schema App, we apply the first three categories of structured data validation as you create your markup. The Domain / Range validation is built into the tool so that you cannot create the wrong data. Product Feature validation in Schema App is available to our paid users. We have gone through Google’s documentation and built in rules that check your data as you create it.
To prevent this:
You will get warnings when you try to save your data:
GASP validation rules are those Schema App have determine apply to everyone and are included in paid user validation. The more we use schema.org structured data, the more validation rules will emerge and be applied to all customers. We would like to collaborate on these with the industry so that we can actually open source the constraints. If you’re also interested in collaborating contact Mark.
Domain Specific Validation
While not included in our tool, we can include custom validation rules that are specific to your organization. It takes some work to define, implement and test your rules, but once they’re ready it is easy to also include in your application.