Schema.org
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:
- Code
- SoftwareApplication
- MobileApplication
- WebApplication
- SoftwareSourceCode
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
- SourceForge uses also DOAP on Projects
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
- homepage
- full hierarchy, i.e., schema.org ontology
- schema.org on Wikipedia