Formatter Validator Minifier Escape / Unescape JSON ↔ String JSON ↔ YAML JSON → CSV NDJSON / JSON Lines JSON → Types JSON ↔ XML JSON Diff JSON Patch Canonicalize (RFC 8785) Schema Validator Schema Generator JSONPath Tester JWT Decoder JSON Errors Schemas More Tools
JSONTools / Schema registry / publiccode.yml
Schema registry

publiccode.yml

publiccode.yml

publiccode.yml

Check your file against this schema

Opens the validator with this schema already loaded. Paste your publiccode.yml and it validates in your browser — nothing is uploaded.

Validate a publiccode.yml → View raw schema

Fields

Generated directly from the schema, following local $refs, to two levels of nesting.

Field Type Description
publiccodeYmlVersionrequiredstringThe publiccode.yml specification version this file adheres to.
one of: "0", "0.2", "0.2.0", "0.2.1", "0.2.2", "0.3" … (+9)
namerequiredstringThe (short) public name of the software, as most people usually refer to it. If the software has both an internal code name and a commercial name, use the commercial name. It can be localised in the description section.
applicationSuitestringThe name of the suite to which the software belongs.
urlrequiredstringA unique identifier for this software: a URL to the source code repository (git, svn, ...) where it is published. Prefer HTTP/HTTPS URLs that do not require authentication, if the repository supports multiple protocols. Forks meant to
landingURLstringA human-readable landing page, useful when url only serves source code to a source control client rather than a browsable page. Ideally where a "Go to the application source code" button would lead. Can also point to a page offering an
isBasedOnoneOfThe URL(s) of the original project(s), if this software is a variant or fork of another software. Its presence identifies this software as descending from the specified repositories.
softwareVersionstringThe latest stable version number of the software. It is a display only string; parsers should not assume semantic versioning or any other specific format.
releaseDatestringThe date the latest version was released.
logostringThe path to the logo of the software. Vector formats (SVG or SVGZ) are preferred, but PNG is also accepted. It can be a relative path from the repository root or an absolute URL to the raw file, but the file must reside in the same
monochromeLogodeprecatedstringDEPRECATED. A monochromatic (black) logo. The logo should be in vector format; raster formats are only allowed as a fallback. In this case, they should be transparent PNGs, minimum 1000px wide. The key value can be the relative path to the
inputTypesdeprecatedarray<string>DEPRECATED. A list of Media Types (MIME Types) as mandated in RFC 6838 which the application can handle as input. In case the software does not support any input, you can skip this field or use application/x.empty.
outputTypesdeprecatedarray<string>DEPRECATED. A list of Media Types (MIME Types) as mandated in RFC 6838 which the application can handle as output. In case the software does not support any output, you can skip this field or use application/x.empty.
platformsrequiredoneOfThe platforms that users use to access and operate the software, rather than the platform the software itself runs on. Use predefined values if possible.
categoriesarrayA list of categories that can be used to describe the software and can help build catalogs of open software.
usedByarray<string>The names of prominent public administrations known to be using this software, serving as testimonials. Parsers are encouraged to enrich this list with independently obtained signals of usage, such as forks owned by an administration.
roadmapstringA link to a public roadmap of the software.
developmentStatusrequiredenum
one of: "concept", "development", "beta", "stable", "obsolete"
softwareTyperequiredenum
one of: "standalone/mobile…, "standalone/iot", "standalone/deskto…, "standalone/web", "standalone/backen…, "standalone/other" … (+3)
supportsarray<object>A list of standards, regulations, frameworks or systems that the software supports or complies with.
intendedAudienceobject
intendedAudience.countriesarray<string>Countries explicitly included in the intended audience, i.e. whose processes, technologies or laws the software explicitly claims compliance with. Uses uppercase ISO 3166-1 alpha-2 codes; lowercase codes are deprecated but still accepted.
intendedAudience.unsupportedCountriesarray<string>Countries explicitly marked as NOT supported, for instance when the software conflicts with a specific law, process or technology. Uses uppercase ISO 3166-1 alpha-2 codes; lowercase codes are deprecated but still accepted.
intendedAudience.scopearrayTags related to the field of application of the software.
descriptionrequiredobjectA general, user-visible description of the software, for instance to build a web page describing it. Since the content is written in a specific language, specify the language as the subsection name, using an IETF BCP 47 language tag. The
legalrequiredobject
legal.licenserequiredstringThe license under which the software is distributed, as a valid SPDX expression referring to one or more open source licenses.
legal.mainCopyrightOwnerstringThe entity that owns the copyright on most of the code in the repository, normally the one reported at the top of most files. Multiple owners, or an informal group (e.g. "Linus Torvalds and all Linux contributors"), can be listed as an
legal.repoOwnerdeprecatedstringDEPRECATED. This string describes the entity that owns this repository; this might or might not be the same entity who owns the copyright on the code itself. Use organisation/name instead.
legal.authorsFiledeprecatedstringDEPRECATED. Some open-source software identify copyright holders through a file listing all entities that own the copyright. This key refers to that file using a path relative to the root of the repository.
maintenancerequiredobjectInformation on the maintenance status of the software, useful to evaluate whether it is actively developed.
maintenance.typerequiredenumHow the software is currently maintained.
one of: "internal", "contract", "community", "none"
maintenance.contractorsarrayThe entity or entities currently contracted for maintaining the software. Mandatory when maintenance/type is contract, and must not be present otherwise.
maintenance.contactsarrayOne or more contacts maintaining this software. This key is mandatory when maintenance/type is internal or community and optional otherwise. All contacts need to be a physical person, not a company or an organisation. If somebody is acting
localisationrequiredobjectAn overview of the localisation features of the software.
localisation.localisationReadyrequiredbooleanIf true, the software has infrastructure in place or is otherwise designed to be multilingual. It does not need to be available in more than one language.
localisation.availableLanguagesrequiredarray<string>If present, this is the list of languages in which the software is available. Of course, this list will contain at least one language. The primary language subtag cannot be omitted, as mandated by the BCP 47.
dependsOnobjectAn overview of the system-level dependencies required to install and use this software, such as a database. Do not list source code level dependencies (e.g. software libraries); focus only on runtime and system-level dependencies that must
dependsOn.openarrayRuntime dependencies distributed under an open source license.
dependsOn.proprietaryarrayRuntime dependencies distributed under a proprietary license.
dependsOn.hardwarearrayHardware dependencies that must be owned to use the software.
organisationobject
organisation.namestringThe canonical name of the organisation publishing the software.
organisation.urirequiredstringThe organisation publishing the software as a stable resolvable URI or a persistent identifier.
fundedByarrayA list of organisations that are currently known to be funding the development of this software.
ITdeprecatedobjectDEPRECATED. Country-specific sections will be removed in publiccode.yml 1.0. Use supports for compliance and integrations, and organisation for the publishing administration.
IT.countryExtensionVersionrequireddeprecatedstringDEPRECATED together with the entire Italian section. Version 1.0 is used by current files; 0.2 is accepted for compatibility with older publiccode.yml versions.
one of: "0.2", "1.0"
IT.conformedeprecatedobjectDEPRECATED. This section contains keys for declaring compliance with Italian legislation. Use supports where an appropriate identifier or alias exists.
IT.conforme.lineeGuidaDesigndeprecatedbooleanDEPRECATED. If true, the software is compliant with the former Italian design guidelines.
IT.conforme.modelloInteroperabilitadeprecatedbooleanDEPRECATED. If true, the software is compliant with the former Italian interoperability guidelines.
IT.conforme.misureMinimeSicurezzadeprecatedbooleanDEPRECATED. If true, the software is compliant with the Italian minimum ICT security measures for Public Administrations.
IT.conforme.gdprdeprecatedbooleanDEPRECATED. If true, the software complies with the GDPR. Use supports with alias:gdpr instead.
IT.piattaformedeprecatedobjectDEPRECATED. Use supports with the corresponding platform alias instead.
IT.piattaforme.spiddeprecatedbooleanDEPRECATED. If true, the software interfaces with SPID. Use supports with alias:spid instead.
IT.piattaforme.ciedeprecatedbooleanDEPRECATED. If true, the software interfaces with the Italian electronic identity card. Use supports with alias:cie instead.
IT.piattaforme.anprdeprecatedbooleanDEPRECATED. If true, the software interfaces with ANPR. Use supports with alias:anpr instead.
IT.piattaforme.pagopadeprecatedbooleanDEPRECATED. If true, the software interfaces with pagoPA. Use supports with alias:pagopa instead.
IT.piattaforme.iodeprecatedbooleanDEPRECATED. If true, the software interfaces with the IO app. Use supports with alias:io instead.
IT.riusodeprecatedobjectDEPRECATED. Use organisation to identify the publishing administration.
IT.riuso.codiceIPAdeprecatedstringDEPRECATED. This key represents the administration code in the Italian Public Administration index. Use organisation/uri instead.
itdeprecatedallOfDEPRECATED. Use the uppercase IT country code. The entire country-specific section will be removed in publiccode.yml 1.0.

What we found in this schema

Specification sections for the keywords in this schema

Keyword Document Section
$idJSON Schema Core, draft 2020-12§8.2.1 — The "$id" Keyword
$refJSON Schema Core, draft 2020-12§8.2.3.1 — Direct References with "$ref"
$schemaJSON Schema Core, draft 2020-12§8.1.1 — "$schema"
additionalPropertiesJSON Schema Core, draft 2020-12§10.3.2.3 — "additionalProperties"
allOfJSON Schema Core, draft 2020-12§10.2.1.1 — "allOf"
deprecatedJSON Schema Validation, draft 2020-12§9.3 — "deprecated"
descriptionJSON Schema Validation, draft 2020-12§9.1 — "title" and "description"
enumJSON Schema Validation, draft 2020-12§6.1.2 — "enum"
formatJSON Schema Validation, draft 2020-12§7 — Vocabularies for Semantic Content With "format"
ifJSON Schema Core, draft 2020-12§10.2.2.1 — "if"
itemsJSON Schema Core, draft 2020-12§10.3.1.2 — "items"
maxLengthJSON Schema Validation, draft 2020-12§6.3.1 — "maxLength"
minItemsJSON Schema Validation, draft 2020-12§6.4.2 — "minItems"
minLengthJSON Schema Validation, draft 2020-12§6.3.2 — "minLength"
notJSON Schema Core, draft 2020-12§10.2.1.4 — "not"
oneOfJSON Schema Core, draft 2020-12§10.2.1.3 — "oneOf"
patternJSON Schema Validation, draft 2020-12§6.3.3 — "pattern"
propertiesJSON Schema Core, draft 2020-12§10.3.2.1 — "properties"
requiredJSON Schema Validation, draft 2020-12§6.5.3 — "required"
thenJSON Schema Core, draft 2020-12§10.2.2.2 — "then"
typeJSON Schema Validation, draft 2020-12§6.1.1 — "type"
format: "date"RFC 3339§5.6 — Internet Date/Time Format
format: "uri"RFC 3986 (STD 66)§3 — Syntax Components

Documents

Attribution

This schema comes from SchemaStore, distributed under the Apache License 2.0. Copyright 2015–present Mads Kristensen and contributors. View the original file. The field table and audit on this page are generated by JSONTools.tools; the schema itself is unmodified.

← All schemas