Skip to content

Commit 558de14

Browse files
authored
Release core-0.2
* Release core-0.2 merge commit
2 parents 46bb168 + 191a488 commit 558de14

25 files changed

+668
-951
lines changed

CHANGELOG.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Changelog
2+
All notable changes to this project will be documented in this file.
3+
4+
## [core-0.2] - 2019-03-11
5+
### Added
6+
- A new `countryExtensionVersion` key was added under each country-specific extension, in order to separate their versioning from the core.
7+
- The `standalone` value for the `softwareType` key was deprecated in favor of more specific values: `standalone/mobile`, `standalone/iot`, `standalone/desktop`, `standalone/web`, `standalone/backend`, `standalone/other`
8+
9+
### Changed
10+
- `intendedAudience/onlyFor` was renamed to `intendedAudience/scope` (with a different dictionary of values).
11+
- `tags` was replaced by `categories` (with a different dictionary of values).
12+
- BCP47 is now used for languages instead of ISO 639-2, thus keys under `description` will now look like `en` instead of `eng`
13+
- `publiccode-yaml-version` was moved to `publiccodeYmlVersion` using camelCase
14+
- `maintainance/contacts` is now mandatory only if `maintainance/type` is `internal` or `community`.
15+
- All files ported to RST from previous MD
16+
17+
### Removed
18+
- The `freeTags` key was removed.
19+
20+
## [core-0.1] - 2019-01-25
21+
### Added
22+
- Files for first release
23+
24+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
25+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

README.md

Lines changed: 68 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,33 @@
11
# The `publiccode.yml` standard
22

3+
[![GitHub release](https://img.shields.io/github/release/italia/publiccode.yml.svg?style=plastic)](https://github.com/italia/publiccode.yml/releases)
34
[![Join the #publiccode channel](https://img.shields.io/badge/Slack%20channel-%23publiccode-blue.svg)](https://developersitalia.slack.com/messages/CAM3F785T)
45
[![Get invited](https://slack.developers.italia.it/badge.svg)](https://slack.developers.italia.it/)
6+
[![Docs
7+
Italia](https://docs.italia.it/media/static/projects/badges/passing.svg)](https://docs.italia.it/italia/developers-italia/publiccodeyml/it/master/index.html)
8+
[![Documentation](https://img.shields.io/badge/Documentation-Docs%20Italia-blue.svg)](https://docs.italia.it/italia/developers-italia/publiccodeyml/it/master/index.html)
59

6-
A metadata description standard for public software and policy repositories
7-
that is easy to use both for developers and people with less technical
8-
background, in order to make the software developed by Public Administrations
9-
and Public Organisations easily discoverable.
10+
> A metadata description standard for public software
1011
11-
**Latest release: [Version
12-
0.1](https://github.com/italia/publiccode.yml/releases/latest)**
12+
---
1313

14-
[See all versions](https://github.com/italia/publiccode.yml/releases)
14+
## Table of Contents
1515

16-
This project follows the Semantic Versioning. For more information see
17-
[SemVer.org](https://semver.org/).
16+
- [Description](#description)
17+
- [What is this file for](#what-this-file-is-for)
18+
- [Documentation](#documentation)
19+
- [Finding Projects](#finding-projects)
20+
- [Versioning](#versioning)
21+
- [Contributing](#contributing)
22+
- [Authors](#authors)
23+
- [License](#license)
1824

19-
Furthermore, the project uses branches and tags in the following way:
20-
* The `master` branch contains the latest stable version of the standard.
21-
* The `development` branch contains the improvements proposed for the next
22-
version.
23-
* GitHub's [release page](https://github.com/italia/publiccode.yml/releases)
24-
contains all the released versions of the standard. Releases are done
25-
following the tag version for consistency (e.g., tag v0.1 implies release
26-
v0.1).
25+
## Description
2726

28-
The PublicCode specification is developed by the [Italian Digital
29-
Transformation Team](https://teamdigitale.governo.it) and the
30-
[Authors](AUTHORS.md).
27+
A metadata description standard for public software and policy repositories
28+
that is easy to use both for developers and people with less technical
29+
background, in order to make the software developed by Public Administrations
30+
and Public Organisations easily discoverable.
3131

3232
## What this file is for
3333

@@ -55,6 +55,15 @@ The `publiccode.yml` file format should both be able to easily be added to any
5555
new project, as well as grow with the project as it expands beyond the original
5656
context it was developed in.
5757

58+
## Documentation
59+
60+
This repository is structured in order to be compatible with the [Docs Italia](https://docs.italia.it/italia/developers-italia/publiccodeyml/it/master/index.html)
61+
platform. As such, the content in the relevant folders will be
62+
compiled and rendered inside that platform. The `Docs Italia` platform is
63+
able to handle different releases and localised versions of the same file
64+
drawing from the document's GitHub repository. As such, the platform is to be
65+
considered the default landing page for the project.
66+
5867
## Finding projects
5968

6069
Finding projects depends on how the search API is structured for every hosting
@@ -68,16 +77,49 @@ The Italian Digital Transformation Team is also working on providing a scanner
6877
which looks for all publiccode files on all publicly accessible websites, and
6978
exposing them as open data.
7079

80+
## Versioning
81+
82+
**Latest release:** [![GitHub release](https://img.shields.io/github/release/italia/publiccode.yml.svg?style=plastic)](https://github.com/italia/publiccode.yml/releases) [See all versions](https://github.com/italia/publiccode.yml/releases)
83+
84+
This project follows the Semantic Versioning. For more information see
85+
[SemVer.org](https://semver.org/).
86+
87+
Furthermore, the project uses branches and tags in the following way:
88+
* The `master` branch contains the latest stable version of the standard.
89+
* The `development` branch contains the improvements proposed for the next
90+
version.
91+
* GitHub's [release page](https://github.com/italia/publiccode.yml/releases)
92+
contains all the released versions of the standard. Releases are done
93+
following the tag version for consistency.
94+
95+
However, since the repository contains both the core schema and the
96+
country-specific ones, it is necessary to further refine the versioning.
97+
As such, each update at the core and/or to a country-specific extension will be
98+
tagged as follows:
99+
100+
> core:x.y.z/<cc>:a.b.c
101+
102+
where <cc> is the country code defined using one of the ISO 3166-1 alpha-2
103+
codes.
104+
105+
This versioning schema is fundamental in this project since the
106+
`publiccode.yml` file contains references to the core release in the
107+
`publiccodeYmlVersion` key and each country-specific schema contains
108+
a `version` key.
109+
110+
Examples of this versioning schema may be:
111+
112+
> * core:0.2/it:0.4
113+
> * core:0.2/fr:1.1
114+
71115
## Contributing
72116

73117
Feel free to submit [Pull Requests and to file Issues](CONTRIBUTING.md).
74118

75-
This repository is structured in order to be compatible with the `Docs Italia`
76-
platform. As such, the markdown content in the relevant folders will be
77-
compiled and rendered on top of that platform. The `Docs Italia` platform is
78-
able to handle different releases and localised versions of the same file
79-
drawing from the document's GitHub repository. As such, the platform is to be
80-
considered the default landing page for the project.
119+
## Authors
120+
The `publiccode.yml` specification is developed by the [Italian Digital
121+
Transformation Team](https://teamdigitale.governo.it) and the
122+
[Authors](AUTHORS.md).
81123

82124
## Licence
83125

docs/en/categories-list.rst

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
.. _categories-list:
2+
3+
List of software categories
4+
===========================
5+
6+
Here follows a controlled vocabulary of useful tags for categorizing the
7+
software.
8+
9+
===
10+
Tag
11+
===
12+
- accounting
13+
- agile-project-management
14+
- applicant-tracking
15+
- application-development
16+
- appointment-scheduling
17+
- backup
18+
- billing-and-invoicing
19+
- blog
20+
- budgeting
21+
- business-intelligence
22+
- business-process-management
23+
- cad
24+
- call-center-management
25+
- cloud-management
26+
- collaboration
27+
- communications
28+
- compliance-management
29+
- contact-management
30+
- content-management
31+
- crm
32+
- customer-service-and-support
33+
- data-analytics
34+
- data-collection
35+
- data-visualization
36+
- digital-asset-management
37+
- digital-citizenship
38+
- document-management
39+
- donor-management
40+
- e-commerce
41+
- e-signature
42+
- email-management
43+
- email-marketing
44+
- employee-management
45+
- enterprise-project-management
46+
- enterprise-social-networking
47+
- erp
48+
- event-management
49+
- facility-management
50+
- feedback-and-reviews-management
51+
- financial-reporting
52+
- fleet-management
53+
- fundraising
54+
- gamification
55+
- geographic-information-systems
56+
- grant-management
57+
- graphic-design
58+
- help-desk
59+
- hr
60+
- ide
61+
- identity-management
62+
- instant-messaging
63+
- inventory-management
64+
- it-asset-management
65+
- it-development
66+
- it-management
67+
- it-security
68+
- it-service-management
69+
- knowledge-management
70+
- learning-management-system
71+
- marketing
72+
- mind-mapping
73+
- mobile-marketing
74+
- mobile-payment
75+
- network-management
76+
- office
77+
- online-booking
78+
- online-community
79+
- payment-gateway
80+
- payroll
81+
- predictive-analysis
82+
- procurement
83+
- productivity-suite
84+
- project-collaboration
85+
- project-management
86+
- property-management
87+
- real-estate-management
88+
- remote-support
89+
- resource-management
90+
- sales-management
91+
- seo
92+
- service-desk
93+
- social-media-management
94+
- survey
95+
- talent-management
96+
- task-management
97+
- taxes-management
98+
- test-management
99+
- time-management
100+
- time-tracking
101+
- translation
102+
- video-conferencing
103+
- video-editing
104+
- visitor-management
105+
- voip
106+
- warehouse-management
107+
- web-collaboration
108+
- web-conferencing
109+
- website-builder
110+
- workflow-management

docs/en/country.rst

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
.. _`country-extension`:
2+
3+
Country-Specific Extensions
4+
===========================
5+
6+
While the standard is structured to be meaningful on an international
7+
level, there are additional information that can be added that makes
8+
sense in specific countries, such as declaring compliance with local
9+
laws or regulations. The provided extension mechanism is the usage of
10+
country-specific sections.
11+
12+
All country-specific extensions are contained in a section named with
13+
the two-letter lowercase `ISO 3166-1 alpha-2 country
14+
code <https://it.wikipedia.org/wiki/ISO_3166-1_alpha-2>`__. For instance
15+
``spid`` is a property for Italian software declaring whether the
16+
software is integrated with the Italian Public Identification System.
17+
18+
If a software is compliant I will find:
19+
20+
.. code:: .yaml
21+
22+
it:
23+
spid: yes
24+
25+
Notice that country-specific extensions within international sections
26+
are not allowed. Countries that want to extend the format should add a
27+
country-specific section instead.
28+
29+
Documentation for the keys contained in a country specific section is
30+
maintained in separate files.
31+
32+
- Italy: :ref:`italia-extensions`.

docs/en/example/publiccode.minimal.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ tags:
1212

1313
developmentStatus: development
1414

15-
softwareType: "standalone"
15+
softwareType: "standalone/desktop"
1616

1717
description:
18-
eng:
18+
en:
1919
localisedName: medusa # Optional
2020
genericName: Text Editor
2121
shortDescription: >
@@ -43,4 +43,4 @@ maintenance:
4343
localisation:
4444
localisationReady: yes
4545
availableLanguages:
46-
- eng
46+
- en

docs/en/example/publiccode.yml

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ name: Medusa
44
applicationSuite: MegaProductivitySuite
55
url: "https://example.com/italia/medusa.git"
66
landingURL: "https://example.com/italia/medusa"
7-
87
isBasedOn: "https://github.com/italia/otello.git"
98
softwareVersion: "1.0"
109
releaseDate: "2017-04-15"
@@ -20,10 +19,9 @@ platforms:
2019
- android
2120
- ios
2221

23-
tags:
22+
categories:
2423
- content-management
25-
- artificial-intelligence
26-
- museum
24+
- office
2725

2826
usedBy:
2927
- Comune di Firenze
@@ -33,21 +31,19 @@ roadmap: "https://example.com/italia/medusa/roadmap"
3331

3432
developmentStatus: development
3533

36-
softwareType: "standalone"
34+
softwareType: "standalone/desktop"
3735

3836
intendedAudience:
39-
onlyFor:
40-
- cities
41-
- health-services
42-
- it-ag-agricolo
37+
scope:
38+
- science-and-technology
4339
countries:
4440
- it
4541
- de
4642
unsupportedCountries:
4743
- us
4844

4945
description:
50-
eng:
46+
en:
5147
localisedName: Medusa
5248
genericName: Text Editor
5349
shortDescription: >
@@ -63,9 +59,6 @@ description:
6359
documentation: "https://read.the.documentation/medusa/v1.0"
6460
apiDocumentation: "https://read.the.api.doc/medusa/v1.0"
6561

66-
freeTags:
67-
- an-english-tag
68-
6962
features:
7063
- Very important feature
7164
- Will run without a problem
@@ -104,10 +97,10 @@ maintenance:
10497
localisation:
10598
localisationReady: yes
10699
availableLanguages:
107-
- eng
108-
- ita
109-
- fra
110-
- deu
100+
- en
101+
- it
102+
- fr
103+
- de
111104

112105
dependsOn:
113106
open:
@@ -128,6 +121,8 @@ dependsOn:
128121

129122
it:
130123

124+
countryExtensionVersion: 0.1
125+
131126
conforme:
132127
accessibile: yes
133128
interoperabile: yes

0 commit comments

Comments
 (0)