Conditionals 1.0

Shaun McCance <shaunm at gnome.org>
Sat Nov 2 14:18:18 EDT 2013

Hi all,

The Conditionals 1.0 spec has been in widespread use for a while, and
there don't seem to be any major problems with it. I'd like to get it
marked final soon. I know a number of people have more features they'd
like from Conditionals. We can address those in a 1.1 after 1.0 is done.

Here's what you can do:

1) Review the specification here:

  http://projectmallard.org/if/1.0/

Point out any problems you find.

2) Validate your pages against the Conditionals schema. By default, the
Mallard schema just lets any extension stuff through without actually
checking it. To actually validate your Conditionals, add this version
attribute to your page elements:

  version="1.0 if/1.0"

yelp-check recognizes the version attribute and does schema merging.

  yelp-check validate *.page

If you want to be sure you've caught all the pages, you can try using
strict validation in yelp-check, like so:

  yelp-check validate --strict *.page

This turns off the blanket pass given to unknown extensions. However,
this is likely to choke on other extensions you're using. If you're
using UI expanders, you can add "ui/1.0" to the version string. For
experimental or other extensions, the only way to let them through
strict validation is to use the --allow feature in yelp-tools master,
which unfortunately depends on an unmerged libxml2 patch.

If you are seriously adventurous, here's the libxml2 patch:

https://bugzilla.gnome.org/show_bug.cgi?id=710744

And here's the command I now use when validating:

yelp-check validate --strict \
  --allow http://www.w3.org/2005/11/its \
  --allow http://www.w3.org/1999/xlink \
  --allow http://projectmallard.org/experimental/ \
  --allow http://projectmallard.org/experimental/ui/ \
  *.page

--
Shaun