We are using several vocabularies along with schema.org and struggle with the structured data testing tool from Google. Is is even possible to completely pacify it when mixing vocabularies?
Some of the classes and properties we use are specializations of classes and properties of schema.org.
I have read the page about the extension mechanism. It is completely unclear to me what external extensions actually are. It is completely unclear to me if and how it is possible to communicate to Google that a class/property is a specialization of a schema.org class/property (so that Google uses RDFS reasoning to get statements involving the schema.org namespace).
The example I am using is http://www.netestate.de/imgtag_schema_example/lio.html
The RDFa in that page describes the image shown. The <img>
tag in the source has a typeof
attribute.
If I use
typeof="lio:Image"
, I get 1 error about lio:Image not being known to Google. Makes sense. Validation URL: http://www.netestate.de/imgtag_schema_example/lio.htmlIf I use
typeof="lio:Image schema:ImageObject"
, I get exactly the same error. Validation URL: http://www.netestate.de/imgtag_schema_example/lioschema.htmlIf I use
typeof="schema:ImageObject"
, I get 19 errors about properties not recognized as compatible with ImageObject. Validation URL: http://www.netestate.de/imgtag_schema_example/schema.htmlIf I use
typeof="schema:ImageObject lio:Image"
, I get 1 error about a class that is not known to Google (the class is not named but "ImageObject" is red!). Validation URL: http://www.netestate.de/imgtag_schema_example/schemalio.htmlIf I use typeof="lio:Image" and add the statement lio:Image rdfs:subClassOf schema:ImageObject to the RDFa, the validator separates the triples about http://purl.org/net/lio#Image ("class not defined, no errors") and the image (unknown class #__sid=rd0, 1 error). Validation URL: http://www.netestate.de/imgtag_schema_example/liosubclass.html
Where does the relative URI #__sid=rd0
come from?
Why is the error about #__sid=rd0
missing in this simpler example?