hughsie / oars

The Open Age Ratings Service
GNU Lesser General Public License v2.1
22 stars 6 forks source link

specification: Add a specification of OARS 1.1 #32

Closed pwithnall closed 4 years ago

pwithnall commented 4 years ago

Add a prose specification of the semantics of OARS 1.0 and 1.1, and RelaxNG Compact schemas of the structure of both.

The semantics are based on the behaviour of the generator, which was previously the canonical standard.

Add a meson.build with tests to validate the schemas, although this is only present as documentation for the time being, since there’s no build system for the module as a whole.

Signed-off-by: Philip Withnall withnall@endlessm.com

pwithnall commented 4 years ago

I think this should be fairly uncontroversial, but please check it carefully.

The only possible departure I know of from the existing generator/consumer behaviour is the fact that the RelaxNG schemas allow unknown to be used as an attribute value in the XML. All the consumers of the data (gnome-software, appstream-glib) accept any unhandled attribute value as AS_CONTENT_RATING_VALUE_UNKNOWN already.

hughsie commented 4 years ago

Looks great, thanks!