-
Notifications
You must be signed in to change notification settings - Fork 19
Schema.org issues
The Web Publication Manifest has some terms and types that are currently not in schema.org, and we are not sure whether they should be. These include, for example, resources
, readingOrder
, links
(see https://w3c.github.io/wpub/#wp-resource-categorization-properties). We may also have some additional subtypes to CreativeWork
(although there already a bunch of those).
We see two alternatives:
-
Define our own Web Publication context file. This is what the current draft does (see the Web Publication context file, and the fact that we require all manifests to start with
"@context" : ["https://schema.org", "https://www.w3.org/ns/wp-context"]
) -
Go down the route of a formal hosted extension, something like
wp.schema.org
. Is this something that could be done via the W3C Recommendation process?
There are a number of properties related to "creators" for CreativeWork
that, in the publication world, must be order sensitive: author
, editor
, translator
, etc. (see the ones we currently list in the WP draft).
It is o.k. to add a "@container":"@list"
extra term in the Web Publication context file, the question is whether this approach all right with the various schema.org implementations. Of course, ideally, the order sensitivity would be valid for these schema.org terms overall...
This has two levels
- setting the language of an individual text item
- setting the default language for the full schema.org content
Both of these have a clear solution in JSON-LD:
"name": {
"@value" : "Marcel Proust",
"@language" : "fr"
}
for the first case and
"@context": [
"http://schema.org",
{
"@language" : "fr"
}
]
for the second. However, the current Google structured testing tool rejects these as erroneous data. Is this a temporary problem that we can ignore?
The A11y + publication community has a conformance and certification terms that are used in EPUB Conformance and Discovery specification http://www.w3.org/Submission/2017/SUBM-epub-a11y-20170125/.
dcterms:conformsTo
Its objective is to indicate that an EPUB Publication conforms to the accessibility requirements of this specification. It is a must for accessible publication. It can have the following values:
http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a
The EPUB Publication meets all accessibility requirements and achieves [WCAG 2.0] Level A conformance.
http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa
The EPUB Publication meets all accessibility requirements and achieves [WCAG 2.0] Level AA conformance.
http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa
The EPUB Publication meets all accessibility requirements and achieves [WCAG 2.0] Level AAA conformance.
for example:
<metadata>
<link rel="dcterms:conformsTo" href="http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa"/>
</metadata>
There are three terms
- certifiedBy
- certifierCredential
- certifierReport
see https://idpf.github.io/epub-vocabs/package/a11y/
How can we get these into the mix?
This is related to the issue of setting a specific term. A frequent use case in publication is that the same term should be repeated in different languages. Say, the same title in German and English. Provided the structure above works, this yields something like:
"name" : [{
"@value" : "Joseph und seine Brüder",
"@language" : "de"
},{
"@value" : "Joseph and His Brothers",
"@language" : "en"
}]
With the language indexing facility of JSON-LD this becomes much easier:
"name" : {
"de" : "Joseph und seine Brüder",
"en" : "Joseph and His Brothers"
}
Would it be possible to consider something like that in schema.org?
At the moment, we use a separate type (PublicationLink
) to collect information that is necessary for external link. It would be nicer to align with schema.org on that, and the (pending) LinkRole
type could make it. Except that the mime type cannot be expressed: the current domain of fileFormat
(or, better, encodingFormat
) does not include LinkRole
. What does it take to get this done (an issue has been raised: https://github.com/schemaorg/schemaorg/issues/1959)
At present, this is restricted to ISO 8601 values, whereas the HTML duration values include the possibilities to use more 'liberal' values like '2h 40m'. Is there a way of extending the possible values of schema.org?
The current type hierarchy is very rich, but the publishing community may need some more categories, e.g., a category for a book consisting of videos (collection of videos), a proceedings (a collection of articles), etc. None of these have been discussed in details, but the question is to understand the procedure to add new types.