If no authorgroup is available, the "author" entry is skipped.
"dateModified": adding the current date using the extension function date:date-time()
"datePublished": using info/meta[@name='published'] (just a placeholder), info/pubdate, info/date, or info/revhistory/revision[1]/date in this order. If none of these elements are available, no entry is created. (Needs to be discussed)
datePublished, dateModified, dateCreated: dates about our document. Not entirely sure which could be helpful
articleSection: could be a sub structure that belongs to a higher parent structure (like a chapter in a book). This would probably only be useful for chunked HTML (if at all)
archivedAt, expires: when one of our guides goes end of life.
copyrightHolder, copyrightNotice, copyrightYear: maybe useful for legal reasons
license: could point to the URL of GNU FDL (or any other licenses)
creativeWorkStatus: its stage in a lifecycle, for example Incomplete, Draft, Published, Obsolete. Could be helpful when something is in "beta state" (like ALP).
genre: could that hold our categories (like "systems management")?
inLanguage: the language that the text is written in
keywords: could be used to describe the article. Multiple entries in a keywords list are possible
version: could hold the release (15 SP5, for example). For doc-modular or doc-unversioned, this key can be skipped.
proficiencyLevel: Proficiency needed for this content, expected values: 'Beginner', 'Expert'.
After Jana did some research, it seems that JSON-LD (JSON Linked Data) is the way to go for our metadata.
This PR fixes DOCTEAM-1061 and contains the following changes:
<script type="application/ld+json">...</script
in the<head>
tag.Add the JSON-LD content inside the previous
<script>
:"@context": "http://schema.org",
: constant"@type": "TechArticle",
: constant"headline"
: using theinfo/title
ortitle
tag whatever is available"abstract"
: using the firstinfo/abstract
orinfo/highlights
tag whatever is available"author"
: usinginfo/authorgroup
. Creates a list of authors like:If no authorgroup is available, the "author" entry is skipped.
"dateModified"
: adding the current date using the extension functiondate:date-time()
"datePublished"
: usinginfo/meta[@name='published']
(just a placeholder),info/pubdate
,info/date
, orinfo/revhistory/revision[1]/date
in this order. If none of these elements are available, no entry is created. (Needs to be discussed)"publisher": a constant, created as:
Other, useful properties
datePublished
,dateModified
,dateCreated
: dates about our document. Not entirely sure which could be helpfularticleSection
: could be a sub structure that belongs to a higher parent structure (like a chapter in a book). This would probably only be useful for chunked HTML (if at all)audience
: our intended audience (beginners, developers, experts, ...)archivedAt
,expires
: when one of our guides goes end of life.copyrightHolder
,copyrightNotice
,copyrightYear
: maybe useful for legal reasonslicense
: could point to the URL of GNU FDL (or any other licenses)creativeWorkStatus
: its stage in a lifecycle, for example Incomplete, Draft, Published, Obsolete. Could be helpful when something is in "beta state" (like ALP).genre
: could that hold our categories (like "systems management")?inLanguage
: the language that the text is written inkeywords
: could be used to describe the article. Multiple entries in a keywords list are possibleversion
: could hold the release (15 SP5, for example). For doc-modular or doc-unversioned, this key can be skipped.proficiencyLevel
: Proficiency needed for this content, expected values: 'Beginner', 'Expert'.References