Agreed-upon semantics were to skip null and serialize booleans.  I realize it's not fully consistent but AFAIK no language without first-class booleans can do this correctly.  Perl uses JSON::true and JSON::false which serialize to 0/1 for instance.