Schema.org

From Software Heritage Wiki
Revision as of 15:07, 25 April 2017 by Morane (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Schema.org is an initiative sponsored by Google, Microsoft, Yahoo and Yandex that promotes a very pragmatic approach to the semantic web/linked data. the Schema.org vocabulary is recognized the search engines listed above.

At the time of writing over 10 million sites use Schema.org to markup content, and many applications of the involved companies (e.g., GMail, Google Calendar) exploit Schema.org metadata to provide added value features (e.g., automatically interpreting reservation details to add events to your calendar).

Ontology

The Schema.org ontology has, at the time of writing, relatively little support for software-related entities, most notably:

The hierarchical organization of schema.org show that all three are subclasses of CreativeWork which is a subclass of Thing. SoftwareApplication and SoftwareSourceCode are subclasses of code; MobileApplication and WebApplication are subclasses of SoftwareApplication.

Properties

Properties common to Code, SoftwareApplication and SoftwareSourceCode

'about', 'accessibilityAPI', 'accessibilityControl', 'accessibilityFeature', 'accessibilityHazard', 'accountablePerson', 'additionalType', 'aggregateRating', 'alternateName', 'alternativeHeadline', 'associatedMedia', 'audience', 'audio', 'author', 'award', 'character', 'citation', 'comment', 'commentCount', 'contentLocation', 'contentRating', 'contributor', 'copyrightHolder', 'copyrightYear', 'creator', 'dateCreated', 'dateModified', 'datePublished', 'description', 'disambiguatingDescription', 'discussionUrl', 'editor', 'educationalAlignment', 'educationalUse', 'encoding', 'exampleOfWork', 'fileFormat', 'funder', 'genre', 'hasPart', 'headline', 'image', 'inLanguage', 'interactionStatistic', 'interactivityType', 'isAccessibleForFree', 'isBasedOn', 'isFamilyFriendly', 'isPartOf', 'keywords', 'learningResourceType', 'license', 'locationCreated', 'mainEntity', 'mainEntityOfPage', 'mentions', 'name', 'offers', 'position', 'potentialAction', 'producer', 'provider', 'publication', 'publisher', 'publishingPrinciples', 'recordedAt', 'releasedEvent', 'review', 'sameAs', 'schemaVersion', 'sourceOrganization', 'spatialCoverage', 'sponsor', 'temporalCoverage', 'text', 'thumbnailUrl', 'timeRequired', 'translator', 'typicalAgeRange', 'url', 'version', 'video', 'workExample' We noted that the propreties in Code are a subset to SoftwareApplication and SoftwareSourceCode.

Properties common to SoftwareSourceCode and SoftwareApplication

'targetProduct'

Properties only in SoftwareApplication

'installUrl', 'memoryRequirements', 'processorRequirements', 'countriesSupported', 'featureList', 'availableOnDevice', 'applicationSubCategory', 'interactionService', 'applicationSuite', 'softwareHelp', 'countriesNotSupported', 'actionApplication', 'applicationCategory', 'softwareRequirements', 'screenshot', 'releaseNotes', 'softwareAddOn', 'storageRequirements', 'fileSize', 'permissions', 'downloadUrl', 'softwareVersion', 'supportingData', 'operatingSystem'

Properties only in SoftwareSourceCode

'codeRepository', 'runtimePlatform', 'codeSampleType', 'programmingLanguage'


Websites and formats using schema.org

The usage of schema.org classes when testing web pages with the google's structured data testing tool where software projects, applications or code are presented:

Code

SoftwareApplication

SoftwareSourceCode

  • Github
  • CodeMeta initiative uses schema.org classes for Person and for SoftwareSourceCode in a Json-ld format


Linked Data and schema.org

schema.org vocabulary can be used on a website page to link data with an appropriate syntax (Microdata, RDFa or JSON-LD). A short getting started article is available on schema.org.

Using schema.org enables rich search results on various search engines like Google or Yahoo, listing in Google's knowledge graph and other possibilities with structured data.[1]

For the Software Heritage user inerface a markup syntax and vocabulary are yet to be decided.

References