[gobject-introspection] doctool: Use format_xref to format some links to pages



commit d05e20a61d3e381e46fcb306f806566bbbd76312
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Fri Feb 15 06:04:11 2013 -0500

    doctool: Use format_xref to format some links to pages
    
    We don't do a full 100% conversion for all link tags, yet,
    because I don't want to break too much here. This may come
    later.

 giscanner/doctemplates/C/function.tmpl             |    6 +-----
 giscanner/doctemplates/C/property.tmpl             |    2 +-
 giscanner/doctemplates/C/signal.tmpl               |    2 +-
 giscanner/doctemplates/C/vfunc.tmpl                |    2 +-
 giscanner/doctemplates/Gjs/function.tmpl           |    6 +-----
 giscanner/doctemplates/Gjs/property.tmpl           |    2 +-
 giscanner/doctemplates/Gjs/signal.tmpl             |    2 +-
 giscanner/doctemplates/Python/function.tmpl        |    6 +-----
 giscanner/doctemplates/Python/property.tmpl        |    2 +-
 giscanner/doctemplates/Python/signal.tmpl          |    2 +-
 giscanner/doctemplates/base.tmpl                   |    2 +-
 .../Regress-1.0-C-expected/Regress.ATestError.page |    2 +-
 .../Regress.AliasedTestBoxed.page                  |    2 +-
 .../Regress.AnnotationBitfield.page                |    2 +-
 .../Regress.AnnotationCallback.page                |    2 +-
 .../Regress.AnnotationForeachFunc.page             |    2 +-
 .../Regress.AnnotationListCallback.page            |    2 +-
 .../Regress.AnnotationNotifyFunc.page              |    2 +-
 .../Regress.AnnotationObject-attribute-signal.page |    2 +-
 ...ess.AnnotationObject-doc-empty-arg-parsing.page |    2 +-
 ...Regress.AnnotationObject-function-property.page |    2 +-
 .../Regress.AnnotationObject-list-signal.page      |    2 +-
 .../Regress.AnnotationObject-string-property.page  |    2 +-
 .../Regress.AnnotationObject-string-signal.page    |    2 +-
 .../Regress.AnnotationObject-tab-property.page     |    2 +-
 .../Regress.AnnotationObject.allow_none.page       |    2 +-
 .../Regress.AnnotationObject.calleeowns.page       |    2 +-
 .../Regress.AnnotationObject.calleesowns.page      |    2 +-
 .../Regress.AnnotationObject.compute_sum.page      |    2 +-
 .../Regress.AnnotationObject.compute_sum_n.page    |    2 +-
 .../Regress.AnnotationObject.compute_sum_nz.page   |    2 +-
 .../Regress.AnnotationObject.create_object.page    |    2 +-
 .../Regress.AnnotationObject.do_not_use.page       |    2 +-
 .../Regress.AnnotationObject.extra_annos.page      |    2 +-
 .../Regress.AnnotationObject.foreach.page          |    2 +-
 .../Regress.AnnotationObject.get_hash.page         |    2 +-
 .../Regress.AnnotationObject.get_objects.page      |    2 +-
 .../Regress.AnnotationObject.get_strings.page      |    2 +-
 .../Regress.AnnotationObject.hidden_self.page      |    2 +-
 .../Regress.AnnotationObject.in.page               |    2 +-
 .../Regress.AnnotationObject.inout.page            |    2 +-
 .../Regress.AnnotationObject.inout2.page           |    2 +-
 .../Regress.AnnotationObject.inout3.page           |    2 +-
 .../Regress.AnnotationObject.method.page           |    2 +-
 .../Regress.AnnotationObject.notrans.page          |    2 +-
 .../Regress.AnnotationObject.out.page              |    2 +-
 .../Regress.AnnotationObject.page                  |    2 +-
 .../Regress.AnnotationObject.parse_args.page       |    2 +-
 .../Regress.AnnotationObject.set_data.page         |    2 +-
 .../Regress.AnnotationObject.set_data2.page        |    2 +-
 .../Regress.AnnotationObject.set_data3.page        |    2 +-
 .../Regress.AnnotationObject.string_out.page       |    2 +-
 .../Regress.AnnotationObject.use_buffer.page       |    2 +-
 .../Regress.AnnotationObject.watch.page            |    2 +-
 .../Regress.AnnotationObject.watch_full.page       |    2 +-
 .../Regress.AnnotationObject.with_voidp.page       |    2 +-
 .../Regress.AnnotationObjectClass.page             |    2 +-
 .../Regress.AnnotationStruct.page                  |    2 +-
 .../Regress-1.0-C-expected/Regress.FooASingle.page |    2 +-
 .../Regress.FooAddressType.page                    |    2 +-
 .../Regress.FooBRect.add.page                      |    2 +-
 .../Regress.FooBRect.new.page                      |    2 +-
 .../Regress-1.0-C-expected/Regress.FooBRect.page   |    2 +-
 .../Regress-1.0-C-expected/Regress.FooBUnion.page  |    2 +-
 .../Regress.FooBoxed.method.page                   |    2 +-
 .../Regress.FooBoxed.new.page                      |    2 +-
 .../Regress-1.0-C-expected/Regress.FooBoxed.page   |    2 +-
 .../Regress-1.0-C-expected/Regress.FooBuffer.page  |    2 +-
 .../Regress.FooBuffer.some_method.page             |    2 +-
 .../Regress.FooCallback.page                       |    2 +-
 .../Regress.FooDBusData.method.page                |    2 +-
 .../Regress.FooDBusData.page                       |    2 +-
 .../Regress.FooEnumFullname.page                   |    2 +-
 .../Regress.FooEnumNoType.page                     |    2 +-
 .../Regress.FooEnumType.page                       |    2 +-
 .../Regress-1.0-C-expected/Regress.FooError.page   |    2 +-
 .../Regress-1.0-C-expected/Regress.FooEvent.page   |    2 +-
 .../Regress.FooEventAny.page                       |    2 +-
 .../Regress.FooEventExpose.page                    |    2 +-
 .../Regress.FooFlagsNoType.page                    |    2 +-
 .../Regress.FooFlagsType.page                      |    2 +-
 .../Regress.FooForeignStruct.copy.page             |    2 +-
 .../Regress.FooForeignStruct.new.page              |    2 +-
 .../Regress.FooForeignStruct.page                  |    2 +-
 .../Regress.FooInterface-do_regress_foo.page       |    2 +-
 .../Regress.FooInterface.do_regress_foo.page       |    2 +-
 .../Regress.FooInterface.page                      |    2 +-
 .../Regress.FooInterface.static_method.page        |    2 +-
 .../Regress.FooInterfaceIface.page                 |    2 +-
 .../Regress.FooObject-hidden.page                  |    2 +-
 .../Regress.FooObject-read_fn.page                 |    2 +-
 .../Regress.FooObject-signal.page                  |    2 +-
 .../Regress.FooObject-string.page                  |    2 +-
 .../Regress.FooObject-virtual_method.page          |    2 +-
 .../Regress.FooObject.a_global_method.page         |    2 +-
 .../Regress.FooObject.append_new_stack_layer.page  |    2 +-
 .../Regress.FooObject.dup_name.page                |    2 +-
 .../Regress.FooObject.external_type.page           |    2 +-
 .../Regress.FooObject.get_default.page             |    2 +-
 .../Regress.FooObject.get_name.page                |    2 +-
 .../Regress.FooObject.handle_glyph.page            |    2 +-
 .../Regress.FooObject.is_it_time_yet.page          |    2 +-
 .../Regress.FooObject.new.page                     |    2 +-
 .../Regress.FooObject.new_as_super.page            |    2 +-
 .../Regress.FooObject.new_cookie.page              |    2 +-
 .../Regress-1.0-C-expected/Regress.FooObject.page  |    2 +-
 .../Regress.FooObject.read.page                    |    2 +-
 .../Regress.FooObject.skipped_method.page          |    2 +-
 .../Regress.FooObject.static_meth.page             |    2 +-
 .../Regress.FooObject.take_all.page                |    2 +-
 .../Regress.FooObject.various.page                 |    2 +-
 .../Regress.FooObject.virtual_method.page          |    2 +-
 .../Regress.FooObjectClass.page                    |    2 +-
 .../Regress.FooObjectCookie.page                   |    2 +-
 .../Regress.FooOtherObject.page                    |    2 +-
 .../Regress.FooRectangle.add.page                  |    2 +-
 .../Regress.FooRectangle.new.page                  |    2 +-
 .../Regress.FooRectangle.page                      |    2 +-
 .../Regress.FooSkippable.page                      |    2 +-
 .../Regress.FooStackLayer.page                     |    2 +-
 .../Regress-1.0-C-expected/Regress.FooStruct.page  |    2 +-
 .../Regress.FooSubInterface-destroy-event.page     |    2 +-
 .../Regress.FooSubInterface-destroy_event.page     |    2 +-
 .../Regress.FooSubInterface-do_bar.page            |    2 +-
 .../Regress.FooSubInterface-do_baz.page            |    2 +-
 .../Regress.FooSubInterface.do_bar.page            |    2 +-
 .../Regress.FooSubInterface.do_baz.page            |    2 +-
 .../Regress.FooSubInterface.page                   |    2 +-
 .../Regress.FooSubInterfaceIface.page              |    2 +-
 .../Regress.FooSubobject.new.page                  |    2 +-
 .../Regress.FooSubobject.page                      |    2 +-
 .../Regress.FooSubobjectClass.page                 |    2 +-
 .../Regress.FooThingWithArray.page                 |    2 +-
 .../Regress-1.0-C-expected/Regress.FooUnion.page   |    2 +-
 .../Regress.FooUtilityStruct.page                  |    2 +-
 .../Regress.FooVarargsCallback.page                |    2 +-
 .../Regress-1.0-C-expected/Regress.FooXEvent.page  |    2 +-
 .../Regress-1.0-C-expected/Regress.IntSet.page     |    2 +-
 .../Regress.LikeGnomeKeyringPasswordSchema.page    |    2 +-
 .../Regress.PtrArrayAlias.page                     |    2 +-
 .../Regress.SkippedStructure.page                  |    2 +-
 .../Regress.TestABCError.page                      |    2 +-
 .../Regress.TestBoxed.copy.page                    |    2 +-
 .../Regress.TestBoxed.equals.page                  |    2 +-
 .../Regress.TestBoxed.new.page                     |    2 +-
 ...ess.TestBoxed.new_alternative_constructor1.page |    2 +-
 ...ess.TestBoxed.new_alternative_constructor2.page |    2 +-
 ...ess.TestBoxed.new_alternative_constructor3.page |    2 +-
 .../Regress-1.0-C-expected/Regress.TestBoxed.page  |    2 +-
 .../Regress.TestBoxedB.copy.page                   |    2 +-
 .../Regress.TestBoxedB.new.page                    |    2 +-
 .../Regress-1.0-C-expected/Regress.TestBoxedB.page |    2 +-
 .../Regress.TestBoxedC.new.page                    |    2 +-
 .../Regress-1.0-C-expected/Regress.TestBoxedC.page |    2 +-
 .../Regress.TestBoxedD.copy.page                   |    2 +-
 .../Regress.TestBoxedD.free.page                   |    2 +-
 .../Regress.TestBoxedD.get_magic.page              |    2 +-
 .../Regress.TestBoxedD.new.page                    |    2 +-
 .../Regress-1.0-C-expected/Regress.TestBoxedD.page |    2 +-
 .../Regress.TestCallback.page                      |    2 +-
 .../Regress.TestCallbackArray.page                 |    2 +-
 .../Regress.TestCallbackFull.page                  |    2 +-
 .../Regress.TestCallbackGError.page                |    2 +-
 .../Regress.TestCallbackHashtable.page             |    2 +-
 .../Regress.TestCallbackOwnedGError.page           |    2 +-
 .../Regress.TestCallbackUserData.page              |    2 +-
 .../Regress.TestDEFError.page                      |    2 +-
 .../Regress-1.0-C-expected/Regress.TestEnum.page   |    2 +-
 .../Regress.TestEnumNoGEnum.page                   |    2 +-
 .../Regress.TestEnumUnsigned.page                  |    2 +-
 .../Regress-1.0-C-expected/Regress.TestError.page  |    2 +-
 .../Regress-1.0-C-expected/Regress.TestFlags.page  |    2 +-
 .../Regress.TestFloating.new.page                  |    2 +-
 .../Regress.TestFloating.page                      |    2 +-
 .../Regress.TestFloatingClass.page                 |    2 +-
 .../Regress.TestFundamentalObject.page             |    2 +-
 .../Regress.TestFundamentalObject.ref.page         |    2 +-
 .../Regress.TestFundamentalObject.unref.page       |    2 +-
 .../Regress.TestFundamentalObjectClass.page        |    2 +-
 .../Regress.TestFundamentalObjectCopyFunction.page |    2 +-
 ...ress.TestFundamentalObjectFinalizeFunction.page |    2 +-
 .../Regress.TestFundamentalSubObject.new.page      |    4 +++-
 .../Regress.TestFundamentalSubObject.page          |    2 +-
 .../Regress.TestFundamentalSubObjectClass.page     |    2 +-
 .../Regress.TestInheritDrawable.do_foo.page        |    2 +-
 ...ess.TestInheritDrawable.do_foo_maybe_throw.page |    2 +-
 .../Regress.TestInheritDrawable.get_origin.page    |    2 +-
 .../Regress.TestInheritDrawable.get_size.page      |    2 +-
 .../Regress.TestInheritDrawable.page               |    2 +-
 .../Regress.TestInheritDrawableClass.page          |    2 +-
 .../Regress.TestInheritPixmapObjectClass.page      |    2 +-
 .../Regress.TestInterface.page                     |    2 +-
 .../Regress.TestInterfaceIface.page                |    2 +-
 .../Regress.TestObj-all.page                       |    2 +-
 .../Regress.TestObj-allow_none_vfunc.page          |    2 +-
 .../Regress.TestObj-bare.page                      |    2 +-
 .../Regress.TestObj-boxed.page                     |    2 +-
 .../Regress.TestObj-cleanup.page                   |    2 +-
 .../Regress.TestObj-double.page                    |    2 +-
 .../Regress.TestObj-first.page                     |    2 +-
 .../Regress.TestObj-float.page                     |    2 +-
 .../Regress.TestObj-gtype.page                     |    2 +-
 .../Regress.TestObj-hash-table-old.page            |    2 +-
 .../Regress.TestObj-hash-table.page                |    2 +-
 .../Regress.TestObj-int.page                       |    2 +-
 .../Regress.TestObj-list-old.page                  |    2 +-
 .../Regress.TestObj-list.page                      |    2 +-
 .../Regress.TestObj-matrix.page                    |    2 +-
 .../Regress.TestObj-sig-with-array-prop.page       |    2 +-
 .../Regress.TestObj-sig-with-foreign-struct.page   |    2 +-
 .../Regress.TestObj-sig-with-hash-prop.page        |    2 +-
 .../Regress.TestObj-sig-with-int64-prop.page       |    2 +-
 .../Regress.TestObj-sig-with-intarray-ret.page     |    2 +-
 .../Regress.TestObj-sig-with-obj.page              |    2 +-
 .../Regress.TestObj-sig-with-strv.page             |    2 +-
 .../Regress.TestObj-sig-with-uint64-prop.page      |    2 +-
 .../Regress.TestObj-string.page                    |    2 +-
 ...Regress.TestObj-test-with-static-scope-arg.page |    2 +-
 .../Regress.TestObj-test.page                      |    2 +-
 .../Regress.TestObj.constructor.page               |    2 +-
 .../Regress.TestObj.do_matrix.page                 |    2 +-
 ...gress.TestObj.emit_sig_with_foreign_struct.page |    2 +-
 .../Regress.TestObj.emit_sig_with_int64.page       |    2 +-
 .../Regress.TestObj.emit_sig_with_obj.page         |    2 +-
 .../Regress.TestObj.emit_sig_with_uint64.page      |    2 +-
 .../Regress.TestObj.forced_method.page             |    2 +-
 .../Regress.TestObj.instance_method.page           |    2 +-
 .../Regress.TestObj.instance_method_callback.page  |    2 +-
 .../Regress.TestObj.new.page                       |    2 +-
 .../Regress.TestObj.new_callback.page              |    2 +-
 .../Regress.TestObj.new_from_file.page             |    2 +-
 .../Regress.TestObj.null_out.page                  |    2 +-
 .../Regress-1.0-C-expected/Regress.TestObj.page    |    2 +-
 .../Regress.TestObj.set_bare.page                  |    2 +-
 .../Regress.TestObj.skip_inout_param.page          |    2 +-
 .../Regress.TestObj.skip_out_param.page            |    2 +-
 .../Regress.TestObj.skip_param.page                |    2 +-
 .../Regress.TestObj.skip_return_val.page           |    2 +-
 .../Regress.TestObj.skip_return_val_no_out.page    |    2 +-
 .../Regress.TestObj.static_method.page             |    2 +-
 .../Regress.TestObj.static_method_callback.page    |    2 +-
 .../Regress.TestObj.torture_signature_0.page       |    2 +-
 .../Regress.TestObj.torture_signature_1.page       |    2 +-
 .../Regress.TestObjClass.page                      |    2 +-
 .../Regress.TestOtherError.page                    |    2 +-
 .../Regress.TestPrivateEnum.page                   |    2 +-
 .../Regress.TestPrivateStruct.page                 |    2 +-
 .../Regress.TestSimpleBoxedA.const_return.page     |    2 +-
 .../Regress.TestSimpleBoxedA.copy.page             |    2 +-
 .../Regress.TestSimpleBoxedA.equals.page           |    2 +-
 .../Regress.TestSimpleBoxedA.page                  |    2 +-
 .../Regress.TestSimpleBoxedB.copy.page             |    2 +-
 .../Regress.TestSimpleBoxedB.page                  |    2 +-
 .../Regress.TestSimpleCallback.page                |    2 +-
 .../Regress.TestStructA.clone.page                 |    2 +-
 .../Regress.TestStructA.page                       |    2 +-
 .../Regress.TestStructA.parse.page                 |    2 +-
 .../Regress.TestStructB.clone.page                 |    2 +-
 .../Regress.TestStructB.page                       |    2 +-
 .../Regress.TestStructC.page                       |    2 +-
 .../Regress.TestStructD.page                       |    2 +-
 .../Regress.TestStructE.page                       |    2 +-
 .../Regress.TestStructE__some_union__union.page    |    2 +-
 .../Regress.TestStructF.page                       |    2 +-
 .../Regress.TestStructFixedArray.frob.page         |    2 +-
 .../Regress.TestStructFixedArray.page              |    2 +-
 .../Regress.TestSubObj.instance_method.page        |    2 +-
 .../Regress.TestSubObj.new.page                    |    2 +-
 .../Regress-1.0-C-expected/Regress.TestSubObj.page |    2 +-
 .../Regress.TestSubObj.unset_bare.page             |    2 +-
 .../Regress.TestSubObjClass.page                   |    2 +-
 .../Regress.TestTypeGUInt64.page                   |    2 +-
 .../Regress.TestWi8021x-testbool.page              |    2 +-
 .../Regress.TestWi8021x.get_testbool.page          |    2 +-
 .../Regress.TestWi8021x.new.page                   |    2 +-
 .../Regress.TestWi8021x.page                       |    2 +-
 .../Regress.TestWi8021x.set_testbool.page          |    2 +-
 .../Regress.TestWi8021x.static_method.page         |    2 +-
 .../Regress.TestWi8021xClass.page                  |    2 +-
 .../Regress.VaListAlias.page                       |    2 +-
 .../Regress.aliased_caller_alloc.page              |    2 +-
 .../Regress.annotation_attribute_func.page         |    2 +-
 .../Regress.annotation_custom_destroy.page         |    2 +-
 .../Regress.annotation_get_source_file.page        |    2 +-
 .../Regress.annotation_init.page                   |    2 +-
 ...ress.annotation_invalid_regress_annotation.page |    2 +-
 .../Regress.annotation_ptr_array.page              |    2 +-
 .../Regress.annotation_return_array.page           |    2 +-
 .../Regress.annotation_return_filename.page        |    2 +-
 .../Regress.annotation_set_source_file.page        |    2 +-
 ...s.annotation_space_after_comment_bug631690.page |    2 +-
 .../Regress.annotation_string_array_length.page    |    2 +-
 .../Regress.annotation_string_zero_terminated.page |    2 +-
 ...ress.annotation_string_zero_terminated_out.page |    2 +-
 .../Regress.annotation_test_parsing_bug630862.page |    2 +-
 .../Regress.annotation_transfer_floating.page      |    2 +-
 .../Regress.annotation_versioned.page              |    2 +-
 .../Regress.atest_error_quark.page                 |    2 +-
 .../Regress.foo_async_ready_callback.page          |    2 +-
 .../Regress.foo_destroy_notify_callback.page       |    2 +-
 .../Regress-1.0-C-expected/Regress.foo_init.page   |    2 +-
 .../Regress.foo_method_external_references.page    |    2 +-
 .../Regress.foo_not_a_constructor_new.page         |    2 +-
 .../Regress.foo_skip_me.page                       |    2 +-
 .../Regress.foo_some_variant.page                  |    2 +-
 .../Regress.foo_some_variant_ptr.page              |    2 +-
 .../Regress.foo_test_array.page                    |    2 +-
 .../Regress.foo_test_const_char_param.page         |    2 +-
 .../Regress.foo_test_const_char_retval.page        |    2 +-
 .../Regress.foo_test_const_struct_param.page       |    2 +-
 .../Regress.foo_test_const_struct_retval.page      |    2 +-
 .../Regress.foo_test_string_array.page             |    2 +-
 .../Regress.foo_test_string_array_with_g.page      |    2 +-
 .../Regress.foo_test_unsigned_qualifier.page       |    2 +-
 .../Regress.foo_test_unsigned_type.page            |    2 +-
 .../Regress.foo_test_varargs_callback.page         |    2 +-
 .../Regress.foo_test_varargs_callback2.page        |    2 +-
 .../Regress.foo_test_varargs_callback3.page        |    2 +-
 .../Regress.func_obj_null_in.page                  |    2 +-
 .../Regress.global_get_flags_out.page              |    2 +-
 .../Regress.has_parameter_named_attrs.page         |    2 +-
 .../Regress.introspectable_via_alias.page          |    2 +-
 .../Regress.not_introspectable_via_alias.page      |    2 +-
 ...ess.random_function_with_skipped_structure.page |    2 +-
 .../Regress.set_abort_on_error.page                |    2 +-
 .../Regress.test_array_callback.page               |    2 +-
 .../Regress.test_array_fixed_out_objects.page      |    2 +-
 .../Regress.test_array_fixed_size_int_in.page      |    2 +-
 .../Regress.test_array_fixed_size_int_out.page     |    2 +-
 .../Regress.test_array_fixed_size_int_return.page  |    2 +-
 .../Regress.test_array_gint16_in.page              |    2 +-
 .../Regress.test_array_gint32_in.page              |    2 +-
 .../Regress.test_array_gint64_in.page              |    2 +-
 .../Regress.test_array_gint8_in.page               |    2 +-
 .../Regress.test_array_gtype_in.page               |    2 +-
 .../Regress.test_array_int_full_out.page           |    2 +-
 .../Regress.test_array_int_in.page                 |    2 +-
 .../Regress.test_array_int_inout.page              |    2 +-
 .../Regress.test_array_int_none_out.page           |    2 +-
 .../Regress.test_array_int_null_in.page            |    2 +-
 .../Regress.test_array_int_null_out.page           |    2 +-
 .../Regress.test_array_int_out.page                |    2 +-
 .../Regress.test_async_ready_callback.page         |    2 +-
 .../Regress.test_boolean.page                      |    2 +-
 .../Regress.test_boolean_false.page                |    2 +-
 .../Regress.test_boolean_true.page                 |    2 +-
 .../Regress.test_cairo_context_full_return.page    |    2 +-
 .../Regress.test_cairo_context_none_in.page        |    2 +-
 .../Regress.test_cairo_surface_full_out.page       |    2 +-
 .../Regress.test_cairo_surface_full_return.page    |    2 +-
 .../Regress.test_cairo_surface_none_in.page        |    2 +-
 .../Regress.test_cairo_surface_none_return.page    |    2 +-
 .../Regress.test_callback.page                     |    2 +-
 .../Regress.test_callback_async.page               |    2 +-
 .../Regress.test_callback_destroy_notify.page      |    2 +-
 ....test_callback_destroy_notify_no_user_data.page |    2 +-
 .../Regress.test_callback_thaw_async.page          |    2 +-
 .../Regress.test_callback_thaw_notifications.page  |    2 +-
 .../Regress.test_callback_user_data.page           |    2 +-
 .../Regress.test_closure.page                      |    2 +-
 .../Regress.test_closure_one_arg.page              |    2 +-
 .../Regress.test_closure_variant.page              |    2 +-
 .../Regress.test_date_in_gvalue.page               |    2 +-
 .../Regress.test_def_error_quark.page              |    2 +-
 .../Regress.test_double.page                       |    2 +-
 .../Regress.test_filename_return.page              |    2 +-
 .../Regress-1.0-C-expected/Regress.test_float.page |    2 +-
 .../Regress.test_garray_container_return.page      |    2 +-
 .../Regress.test_garray_full_return.page           |    2 +-
 .../Regress.test_gerror_callback.page              |    2 +-
 .../Regress.test_ghash_container_return.page       |    2 +-
 .../Regress.test_ghash_everything_return.page      |    2 +-
 .../Regress.test_ghash_gvalue_in.page              |    2 +-
 .../Regress.test_ghash_gvalue_return.page          |    2 +-
 ...egress.test_ghash_nested_everything_return.page |    2 +-
 ...gress.test_ghash_nested_everything_return2.page |    2 +-
 .../Regress.test_ghash_nothing_in.page             |    2 +-
 .../Regress.test_ghash_nothing_in2.page            |    2 +-
 .../Regress.test_ghash_nothing_return.page         |    2 +-
 .../Regress.test_ghash_nothing_return2.page        |    2 +-
 .../Regress.test_ghash_null_in.page                |    2 +-
 .../Regress.test_ghash_null_out.page               |    2 +-
 .../Regress.test_ghash_null_return.page            |    2 +-
 .../Regress.test_glist_container_return.page       |    2 +-
 .../Regress.test_glist_everything_return.page      |    2 +-
 .../Regress.test_glist_nothing_in.page             |    2 +-
 .../Regress.test_glist_nothing_in2.page            |    2 +-
 .../Regress.test_glist_nothing_return.page         |    2 +-
 .../Regress.test_glist_nothing_return2.page        |    2 +-
 .../Regress.test_glist_null_in.page                |    2 +-
 .../Regress.test_glist_null_out.page               |    2 +-
 .../Regress.test_gslist_container_return.page      |    2 +-
 .../Regress.test_gslist_everything_return.page     |    2 +-
 .../Regress.test_gslist_nothing_in.page            |    2 +-
 .../Regress.test_gslist_nothing_in2.page           |    2 +-
 .../Regress.test_gslist_nothing_return.page        |    2 +-
 .../Regress.test_gslist_nothing_return2.page       |    2 +-
 .../Regress.test_gslist_null_in.page               |    2 +-
 .../Regress.test_gslist_null_out.page              |    2 +-
 .../Regress-1.0-C-expected/Regress.test_gtype.page |    2 +-
 .../Regress.test_gvariant_as.page                  |    2 +-
 .../Regress.test_gvariant_asv.page                 |    2 +-
 .../Regress.test_gvariant_i.page                   |    2 +-
 .../Regress.test_gvariant_s.page                   |    2 +-
 .../Regress.test_gvariant_v.page                   |    2 +-
 .../Regress.test_hash_table_callback.page          |    2 +-
 .../Regress-1.0-C-expected/Regress.test_int.page   |    2 +-
 .../Regress-1.0-C-expected/Regress.test_int16.page |    2 +-
 .../Regress-1.0-C-expected/Regress.test_int32.page |    2 +-
 .../Regress-1.0-C-expected/Regress.test_int64.page |    2 +-
 .../Regress-1.0-C-expected/Regress.test_int8.page  |    2 +-
 .../Regress.test_int_out_utf8.page                 |    2 +-
 .../Regress.test_int_value_arg.page                |    2 +-
 .../Regress-1.0-C-expected/Regress.test_long.page  |    2 +-
 .../Regress.test_multi_callback.page               |    2 +-
 .../Regress.test_multi_double_args.page            |    2 +-
 .../Regress.test_multiline_doc_comments.page       |    2 +-
 .../Regress.test_nested_parameter.page             |    2 +-
 .../Regress.test_null_gerror_callback.page         |    2 +-
 .../Regress.test_owned_gerror_callback.page        |    2 +-
 .../Regress-1.0-C-expected/Regress.test_short.page |    2 +-
 .../Regress.test_simple_callback.page              |    2 +-
 .../Regress-1.0-C-expected/Regress.test_size.page  |    2 +-
 .../Regress.test_skip_unannotated_callback.page    |    2 +-
 .../Regress-1.0-C-expected/Regress.test_ssize.page |    2 +-
 .../Regress.test_strv_in.page                      |    2 +-
 .../Regress.test_strv_in_gvalue.page               |    2 +-
 .../Regress.test_strv_out.page                     |    2 +-
 .../Regress.test_strv_out_c.page                   |    2 +-
 .../Regress.test_strv_out_container.page           |    2 +-
 .../Regress.test_strv_outarg.page                  |    2 +-
 .../Regress-1.0-C-expected/Regress.test_timet.page |    2 +-
 .../Regress.test_torture_signature_0.page          |    2 +-
 .../Regress.test_torture_signature_1.page          |    2 +-
 .../Regress.test_torture_signature_2.page          |    2 +-
 .../Regress-1.0-C-expected/Regress.test_uint.page  |    2 +-
 .../Regress.test_uint16.page                       |    2 +-
 .../Regress.test_uint32.page                       |    2 +-
 .../Regress.test_uint64.page                       |    2 +-
 .../Regress-1.0-C-expected/Regress.test_uint8.page |    2 +-
 .../Regress-1.0-C-expected/Regress.test_ulong.page |    2 +-
 .../Regress.test_unichar.page                      |    2 +-
 .../Regress.test_unsigned_enum_param.page          |    2 +-
 .../Regress.test_ushort.page                       |    2 +-
 .../Regress.test_utf8_const_in.page                |    2 +-
 .../Regress.test_utf8_const_return.page            |    2 +-
 .../Regress.test_utf8_inout.page                   |    2 +-
 .../Regress.test_utf8_nonconst_return.page         |    2 +-
 .../Regress.test_utf8_null_in.page                 |    2 +-
 .../Regress.test_utf8_null_out.page                |    2 +-
 .../Regress.test_utf8_out.page                     |    2 +-
 .../Regress.test_utf8_out_nonconst_return.page     |    2 +-
 .../Regress.test_utf8_out_out.page                 |    2 +-
 .../Regress.test_value_get_fundamental_object.page |    2 +-
 .../Regress.test_value_return.page                 |    2 +-
 .../Regress.test_value_set_fundamental_object.page |    2 +-
 .../Regress.test_versioning.page                   |    2 +-
 .../Regress.ATestError.page                        |    2 +-
 .../Regress.AliasedTestBoxed.page                  |    2 +-
 .../Regress.AnnotationBitfield.page                |    2 +-
 .../Regress.AnnotationCallback.page                |    2 +-
 .../Regress.AnnotationForeachFunc.page             |    2 +-
 .../Regress.AnnotationListCallback.page            |    2 +-
 .../Regress.AnnotationNotifyFunc.page              |    2 +-
 .../Regress.AnnotationObject-attribute-signal.page |    2 +-
 ...ess.AnnotationObject-doc-empty-arg-parsing.page |    2 +-
 ...Regress.AnnotationObject-function-property.page |    2 +-
 .../Regress.AnnotationObject-list-signal.page      |    2 +-
 .../Regress.AnnotationObject-string-property.page  |    2 +-
 .../Regress.AnnotationObject-string-signal.page    |    2 +-
 .../Regress.AnnotationObject-tab-property.page     |    2 +-
 .../Regress.AnnotationObject.allow_none.page       |    2 +-
 .../Regress.AnnotationObject.calleeowns.page       |    2 +-
 .../Regress.AnnotationObject.calleesowns.page      |    2 +-
 .../Regress.AnnotationObject.compute_sum.page      |    2 +-
 .../Regress.AnnotationObject.compute_sum_n.page    |    2 +-
 .../Regress.AnnotationObject.compute_sum_nz.page   |    2 +-
 .../Regress.AnnotationObject.create_object.page    |    2 +-
 .../Regress.AnnotationObject.do_not_use.page       |    2 +-
 .../Regress.AnnotationObject.extra_annos.page      |    2 +-
 .../Regress.AnnotationObject.foreach.page          |    2 +-
 .../Regress.AnnotationObject.get_hash.page         |    2 +-
 .../Regress.AnnotationObject.get_objects.page      |    2 +-
 .../Regress.AnnotationObject.get_strings.page      |    2 +-
 .../Regress.AnnotationObject.hidden_self.page      |    2 +-
 .../Regress.AnnotationObject.in.page               |    2 +-
 .../Regress.AnnotationObject.inout.page            |    2 +-
 .../Regress.AnnotationObject.inout2.page           |    2 +-
 .../Regress.AnnotationObject.inout3.page           |    2 +-
 .../Regress.AnnotationObject.method.page           |    2 +-
 .../Regress.AnnotationObject.notrans.page          |    2 +-
 .../Regress.AnnotationObject.out.page              |    2 +-
 .../Regress.AnnotationObject.page                  |    2 +-
 .../Regress.AnnotationObject.parse_args.page       |    2 +-
 .../Regress.AnnotationObject.set_data.page         |    2 +-
 .../Regress.AnnotationObject.set_data2.page        |    2 +-
 .../Regress.AnnotationObject.set_data3.page        |    2 +-
 .../Regress.AnnotationObject.string_out.page       |    2 +-
 .../Regress.AnnotationObject.use_buffer.page       |    2 +-
 .../Regress.AnnotationObject.watch_full.page       |    2 +-
 .../Regress.AnnotationObject.with_voidp.page       |    2 +-
 .../Regress.AnnotationStruct.page                  |    2 +-
 .../Regress.FooASingle.page                        |    2 +-
 .../Regress.FooAddressType.page                    |    2 +-
 .../Regress.FooBRect.add.page                      |    2 +-
 .../Regress.FooBRect.new.page                      |    2 +-
 .../Regress-1.0-Gjs-expected/Regress.FooBRect.page |    2 +-
 .../Regress.FooBUnion.page                         |    2 +-
 .../Regress.FooBoxed.method.page                   |    2 +-
 .../Regress.FooBoxed.new.page                      |    2 +-
 .../Regress-1.0-Gjs-expected/Regress.FooBoxed.page |    2 +-
 .../Regress.FooBuffer.page                         |    2 +-
 .../Regress.FooBuffer.some_method.page             |    2 +-
 .../Regress.FooCallback.page                       |    2 +-
 .../Regress.FooDBusData.method.page                |    2 +-
 .../Regress.FooDBusData.page                       |    2 +-
 .../Regress.FooEnumFullname.page                   |    2 +-
 .../Regress.FooEnumNoType.page                     |    2 +-
 .../Regress.FooEnumType.page                       |    2 +-
 .../Regress-1.0-Gjs-expected/Regress.FooError.page |    2 +-
 .../Regress-1.0-Gjs-expected/Regress.FooEvent.page |    2 +-
 .../Regress.FooEventAny.page                       |    2 +-
 .../Regress.FooEventExpose.page                    |    2 +-
 .../Regress.FooFlagsNoType.page                    |    2 +-
 .../Regress.FooFlagsType.page                      |    2 +-
 .../Regress.FooForeignStruct.copy.page             |    2 +-
 .../Regress.FooForeignStruct.new.page              |    2 +-
 .../Regress.FooForeignStruct.page                  |    2 +-
 .../Regress.FooInterface-do_regress_foo.page       |    2 +-
 .../Regress.FooInterface.do_regress_foo.page       |    2 +-
 .../Regress.FooInterface.page                      |    2 +-
 .../Regress.FooInterface.static_method.page        |    2 +-
 .../Regress.FooObject-read_fn.page                 |    2 +-
 .../Regress.FooObject-signal.page                  |    2 +-
 .../Regress.FooObject-string.page                  |    2 +-
 .../Regress.FooObject-virtual_method.page          |    2 +-
 .../Regress.FooObject.a_global_method.page         |    2 +-
 .../Regress.FooObject.append_new_stack_layer.page  |    2 +-
 .../Regress.FooObject.dup_name.page                |    2 +-
 .../Regress.FooObject.external_type.page           |    2 +-
 .../Regress.FooObject.get_default.page             |    2 +-
 .../Regress.FooObject.get_name.page                |    2 +-
 .../Regress.FooObject.handle_glyph.page            |    2 +-
 .../Regress.FooObject.is_it_time_yet.page          |    2 +-
 .../Regress.FooObject.new.page                     |    2 +-
 .../Regress.FooObject.new_as_super.page            |    2 +-
 .../Regress.FooObject.page                         |    2 +-
 .../Regress.FooObject.read.page                    |    2 +-
 .../Regress.FooObject.static_meth.page             |    2 +-
 .../Regress.FooObject.various.page                 |    2 +-
 .../Regress.FooObject.virtual_method.page          |    2 +-
 .../Regress.FooObjectCookie.page                   |    2 +-
 .../Regress.FooOtherObject.page                    |    2 +-
 .../Regress.FooRectangle.add.page                  |    2 +-
 .../Regress.FooRectangle.page                      |    2 +-
 .../Regress.FooStackLayer.page                     |    2 +-
 .../Regress.FooStruct.page                         |    2 +-
 .../Regress.FooSubInterface-destroy-event.page     |    2 +-
 .../Regress.FooSubInterface-destroy_event.page     |    2 +-
 .../Regress.FooSubInterface-do_bar.page            |    2 +-
 .../Regress.FooSubInterface-do_baz.page            |    2 +-
 .../Regress.FooSubInterface.do_bar.page            |    2 +-
 .../Regress.FooSubInterface.do_baz.page            |    2 +-
 .../Regress.FooSubInterface.page                   |    2 +-
 .../Regress.FooSubobject.new.page                  |    2 +-
 .../Regress.FooSubobject.page                      |    2 +-
 .../Regress.FooThingWithArray.page                 |    2 +-
 .../Regress-1.0-Gjs-expected/Regress.FooUnion.page |    2 +-
 .../Regress.FooUtilityStruct.page                  |    2 +-
 .../Regress.FooXEvent.page                         |    2 +-
 .../Regress.LikeGnomeKeyringPasswordSchema.page    |    2 +-
 .../Regress.PtrArrayAlias.page                     |    2 +-
 .../Regress.TestABCError.page                      |    2 +-
 .../Regress.TestBoxed.copy.page                    |    2 +-
 .../Regress.TestBoxed.equals.page                  |    2 +-
 .../Regress.TestBoxed.new.page                     |    2 +-
 ...ess.TestBoxed.new_alternative_constructor1.page |    2 +-
 ...ess.TestBoxed.new_alternative_constructor2.page |    2 +-
 ...ess.TestBoxed.new_alternative_constructor3.page |    2 +-
 .../Regress.TestBoxed.page                         |    2 +-
 .../Regress.TestBoxedB.copy.page                   |    2 +-
 .../Regress.TestBoxedB.new.page                    |    2 +-
 .../Regress.TestBoxedB.page                        |    2 +-
 .../Regress.TestBoxedC.new.page                    |    2 +-
 .../Regress.TestBoxedC.page                        |    2 +-
 .../Regress.TestBoxedD.copy.page                   |    2 +-
 .../Regress.TestBoxedD.free.page                   |    2 +-
 .../Regress.TestBoxedD.get_magic.page              |    2 +-
 .../Regress.TestBoxedD.new.page                    |    2 +-
 .../Regress.TestBoxedD.page                        |    2 +-
 .../Regress.TestCallback.page                      |    2 +-
 .../Regress.TestCallbackArray.page                 |    2 +-
 .../Regress.TestCallbackFull.page                  |    2 +-
 .../Regress.TestCallbackGError.page                |    2 +-
 .../Regress.TestCallbackHashtable.page             |    2 +-
 .../Regress.TestCallbackOwnedGError.page           |    2 +-
 .../Regress.TestCallbackUserData.page              |    2 +-
 .../Regress.TestDEFError.page                      |    2 +-
 .../Regress-1.0-Gjs-expected/Regress.TestEnum.page |    2 +-
 .../Regress.TestEnumNoGEnum.page                   |    2 +-
 .../Regress.TestEnumUnsigned.page                  |    2 +-
 .../Regress.TestError.page                         |    2 +-
 .../Regress.TestFlags.page                         |    2 +-
 .../Regress.TestFloating.new.page                  |    2 +-
 .../Regress.TestFloating.page                      |    2 +-
 .../Regress.TestFundamentalObject.page             |    2 +-
 .../Regress.TestFundamentalObject.ref.page         |    2 +-
 .../Regress.TestFundamentalObject.unref.page       |    2 +-
 .../Regress.TestFundamentalObjectCopyFunction.page |    2 +-
 ...ress.TestFundamentalObjectFinalizeFunction.page |    2 +-
 .../Regress.TestFundamentalSubObject.new.page      |    4 +++-
 .../Regress.TestFundamentalSubObject.page          |    2 +-
 .../Regress.TestInheritDrawable.do_foo.page        |    2 +-
 ...ess.TestInheritDrawable.do_foo_maybe_throw.page |    2 +-
 .../Regress.TestInheritDrawable.get_origin.page    |    2 +-
 .../Regress.TestInheritDrawable.get_size.page      |    2 +-
 .../Regress.TestInheritDrawable.page               |    2 +-
 .../Regress.TestInheritPixmapObjectClass.page      |    2 +-
 .../Regress.TestInterface.page                     |    2 +-
 .../Regress.TestObj-all.page                       |    2 +-
 .../Regress.TestObj-allow_none_vfunc.page          |    2 +-
 .../Regress.TestObj-bare.page                      |    2 +-
 .../Regress.TestObj-boxed.page                     |    2 +-
 .../Regress.TestObj-cleanup.page                   |    2 +-
 .../Regress.TestObj-double.page                    |    2 +-
 .../Regress.TestObj-first.page                     |    2 +-
 .../Regress.TestObj-float.page                     |    2 +-
 .../Regress.TestObj-gtype.page                     |    2 +-
 .../Regress.TestObj-hash-table-old.page            |    2 +-
 .../Regress.TestObj-hash-table.page                |    2 +-
 .../Regress.TestObj-int.page                       |    2 +-
 .../Regress.TestObj-list-old.page                  |    2 +-
 .../Regress.TestObj-list.page                      |    2 +-
 .../Regress.TestObj-matrix.page                    |    2 +-
 .../Regress.TestObj-sig-with-array-prop.page       |    2 +-
 .../Regress.TestObj-sig-with-foreign-struct.page   |    2 +-
 .../Regress.TestObj-sig-with-hash-prop.page        |    2 +-
 .../Regress.TestObj-sig-with-int64-prop.page       |    2 +-
 .../Regress.TestObj-sig-with-intarray-ret.page     |    2 +-
 .../Regress.TestObj-sig-with-obj.page              |    2 +-
 .../Regress.TestObj-sig-with-strv.page             |    2 +-
 .../Regress.TestObj-sig-with-uint64-prop.page      |    2 +-
 .../Regress.TestObj-string.page                    |    2 +-
 ...Regress.TestObj-test-with-static-scope-arg.page |    2 +-
 .../Regress.TestObj-test.page                      |    2 +-
 .../Regress.TestObj.constructor.page               |    2 +-
 .../Regress.TestObj.do_matrix.page                 |    2 +-
 ...gress.TestObj.emit_sig_with_foreign_struct.page |    2 +-
 .../Regress.TestObj.emit_sig_with_int64.page       |    2 +-
 .../Regress.TestObj.emit_sig_with_obj.page         |    2 +-
 .../Regress.TestObj.emit_sig_with_uint64.page      |    2 +-
 .../Regress.TestObj.forced_method.page             |    2 +-
 .../Regress.TestObj.instance_method.page           |    2 +-
 .../Regress.TestObj.instance_method_callback.page  |    2 +-
 .../Regress.TestObj.new.page                       |    2 +-
 .../Regress.TestObj.new_callback.page              |    2 +-
 .../Regress.TestObj.new_from_file.page             |    2 +-
 .../Regress.TestObj.null_out.page                  |    2 +-
 .../Regress-1.0-Gjs-expected/Regress.TestObj.page  |    2 +-
 .../Regress.TestObj.set_bare.page                  |    2 +-
 .../Regress.TestObj.skip_inout_param.page          |    2 +-
 .../Regress.TestObj.skip_out_param.page            |    2 +-
 .../Regress.TestObj.skip_param.page                |    2 +-
 .../Regress.TestObj.skip_return_val.page           |    2 +-
 .../Regress.TestObj.skip_return_val_no_out.page    |    2 +-
 .../Regress.TestObj.static_method.page             |    2 +-
 .../Regress.TestObj.static_method_callback.page    |    2 +-
 .../Regress.TestObj.torture_signature_0.page       |    2 +-
 .../Regress.TestObj.torture_signature_1.page       |    2 +-
 .../Regress.TestOtherError.page                    |    2 +-
 .../Regress.TestPrivateEnum.page                   |    2 +-
 .../Regress.TestPrivateStruct.page                 |    2 +-
 .../Regress.TestSimpleBoxedA.const_return.page     |    2 +-
 .../Regress.TestSimpleBoxedA.copy.page             |    2 +-
 .../Regress.TestSimpleBoxedA.equals.page           |    2 +-
 .../Regress.TestSimpleBoxedA.page                  |    2 +-
 .../Regress.TestSimpleBoxedB.copy.page             |    2 +-
 .../Regress.TestSimpleBoxedB.page                  |    2 +-
 .../Regress.TestSimpleCallback.page                |    2 +-
 .../Regress.TestStructA.clone.page                 |    2 +-
 .../Regress.TestStructA.page                       |    2 +-
 .../Regress.TestStructA.parse.page                 |    2 +-
 .../Regress.TestStructB.clone.page                 |    2 +-
 .../Regress.TestStructB.page                       |    2 +-
 .../Regress.TestStructC.page                       |    2 +-
 .../Regress.TestStructD.page                       |    2 +-
 .../Regress.TestStructE.page                       |    2 +-
 .../Regress.TestStructE__some_union__union.page    |    2 +-
 .../Regress.TestStructF.page                       |    2 +-
 .../Regress.TestStructFixedArray.frob.page         |    2 +-
 .../Regress.TestStructFixedArray.page              |    2 +-
 .../Regress.TestSubObj.instance_method.page        |    2 +-
 .../Regress.TestSubObj.new.page                    |    2 +-
 .../Regress.TestSubObj.page                        |    2 +-
 .../Regress.TestSubObj.unset_bare.page             |    2 +-
 .../Regress.TestTypeGUInt64.page                   |    2 +-
 .../Regress.TestWi8021x-testbool.page              |    2 +-
 .../Regress.TestWi8021x.get_testbool.page          |    2 +-
 .../Regress.TestWi8021x.new.page                   |    2 +-
 .../Regress.TestWi8021x.page                       |    2 +-
 .../Regress.TestWi8021x.set_testbool.page          |    2 +-
 .../Regress.TestWi8021x.static_method.page         |    2 +-
 .../Regress.aliased_caller_alloc.page              |    2 +-
 .../Regress.annotation_attribute_func.page         |    2 +-
 .../Regress.annotation_custom_destroy.page         |    2 +-
 .../Regress.annotation_get_source_file.page        |    2 +-
 .../Regress.annotation_init.page                   |    2 +-
 ...ress.annotation_invalid_regress_annotation.page |    2 +-
 .../Regress.annotation_ptr_array.page              |    2 +-
 .../Regress.annotation_return_array.page           |    2 +-
 .../Regress.annotation_return_filename.page        |    2 +-
 .../Regress.annotation_set_source_file.page        |    2 +-
 ...s.annotation_space_after_comment_bug631690.page |    2 +-
 .../Regress.annotation_string_array_length.page    |    2 +-
 .../Regress.annotation_string_zero_terminated.page |    2 +-
 ...ress.annotation_string_zero_terminated_out.page |    2 +-
 .../Regress.annotation_test_parsing_bug630862.page |    2 +-
 .../Regress.annotation_transfer_floating.page      |    2 +-
 .../Regress.annotation_versioned.page              |    2 +-
 .../Regress.atest_error_quark.page                 |    2 +-
 .../Regress.foo_async_ready_callback.page          |    2 +-
 .../Regress.foo_destroy_notify_callback.page       |    2 +-
 .../Regress-1.0-Gjs-expected/Regress.foo_init.page |    2 +-
 .../Regress.foo_method_external_references.page    |    2 +-
 .../Regress.foo_not_a_constructor_new.page         |    2 +-
 .../Regress.foo_test_array.page                    |    2 +-
 .../Regress.foo_test_const_char_param.page         |    2 +-
 .../Regress.foo_test_const_char_retval.page        |    2 +-
 .../Regress.foo_test_const_struct_param.page       |    2 +-
 .../Regress.foo_test_const_struct_retval.page      |    2 +-
 .../Regress.foo_test_string_array.page             |    2 +-
 .../Regress.foo_test_string_array_with_g.page      |    2 +-
 .../Regress.foo_test_unsigned_qualifier.page       |    2 +-
 .../Regress.foo_test_unsigned_type.page            |    2 +-
 .../Regress.func_obj_null_in.page                  |    2 +-
 .../Regress.global_get_flags_out.page              |    2 +-
 .../Regress.has_parameter_named_attrs.page         |    2 +-
 .../Regress.introspectable_via_alias.page          |    2 +-
 .../Regress.set_abort_on_error.page                |    2 +-
 .../Regress.test_array_callback.page               |    2 +-
 .../Regress.test_array_fixed_out_objects.page      |    2 +-
 .../Regress.test_array_fixed_size_int_in.page      |    2 +-
 .../Regress.test_array_fixed_size_int_out.page     |    2 +-
 .../Regress.test_array_fixed_size_int_return.page  |    2 +-
 .../Regress.test_array_gint16_in.page              |    2 +-
 .../Regress.test_array_gint32_in.page              |    2 +-
 .../Regress.test_array_gint64_in.page              |    2 +-
 .../Regress.test_array_gint8_in.page               |    2 +-
 .../Regress.test_array_gtype_in.page               |    2 +-
 .../Regress.test_array_int_full_out.page           |    2 +-
 .../Regress.test_array_int_in.page                 |    2 +-
 .../Regress.test_array_int_inout.page              |    2 +-
 .../Regress.test_array_int_none_out.page           |    2 +-
 .../Regress.test_array_int_null_in.page            |    2 +-
 .../Regress.test_array_int_null_out.page           |    2 +-
 .../Regress.test_array_int_out.page                |    2 +-
 .../Regress.test_async_ready_callback.page         |    2 +-
 .../Regress.test_boolean.page                      |    2 +-
 .../Regress.test_boolean_false.page                |    2 +-
 .../Regress.test_boolean_true.page                 |    2 +-
 .../Regress.test_cairo_context_full_return.page    |    2 +-
 .../Regress.test_cairo_context_none_in.page        |    2 +-
 .../Regress.test_cairo_surface_full_out.page       |    2 +-
 .../Regress.test_cairo_surface_full_return.page    |    2 +-
 .../Regress.test_cairo_surface_none_in.page        |    2 +-
 .../Regress.test_cairo_surface_none_return.page    |    2 +-
 .../Regress.test_callback.page                     |    2 +-
 .../Regress.test_callback_async.page               |    2 +-
 .../Regress.test_callback_destroy_notify.page      |    2 +-
 ....test_callback_destroy_notify_no_user_data.page |    2 +-
 .../Regress.test_callback_thaw_async.page          |    2 +-
 .../Regress.test_callback_thaw_notifications.page  |    2 +-
 .../Regress.test_callback_user_data.page           |    2 +-
 .../Regress.test_closure.page                      |    2 +-
 .../Regress.test_closure_one_arg.page              |    2 +-
 .../Regress.test_closure_variant.page              |    2 +-
 .../Regress.test_date_in_gvalue.page               |    2 +-
 .../Regress.test_def_error_quark.page              |    2 +-
 .../Regress.test_double.page                       |    2 +-
 .../Regress.test_filename_return.page              |    2 +-
 .../Regress.test_float.page                        |    2 +-
 .../Regress.test_garray_container_return.page      |    2 +-
 .../Regress.test_garray_full_return.page           |    2 +-
 .../Regress.test_gerror_callback.page              |    2 +-
 .../Regress.test_ghash_container_return.page       |    2 +-
 .../Regress.test_ghash_everything_return.page      |    2 +-
 .../Regress.test_ghash_gvalue_in.page              |    2 +-
 .../Regress.test_ghash_gvalue_return.page          |    2 +-
 ...egress.test_ghash_nested_everything_return.page |    2 +-
 ...gress.test_ghash_nested_everything_return2.page |    2 +-
 .../Regress.test_ghash_nothing_in.page             |    2 +-
 .../Regress.test_ghash_nothing_in2.page            |    2 +-
 .../Regress.test_ghash_nothing_return.page         |    2 +-
 .../Regress.test_ghash_nothing_return2.page        |    2 +-
 .../Regress.test_ghash_null_in.page                |    2 +-
 .../Regress.test_ghash_null_out.page               |    2 +-
 .../Regress.test_ghash_null_return.page            |    2 +-
 .../Regress.test_glist_container_return.page       |    2 +-
 .../Regress.test_glist_everything_return.page      |    2 +-
 .../Regress.test_glist_nothing_in.page             |    2 +-
 .../Regress.test_glist_nothing_in2.page            |    2 +-
 .../Regress.test_glist_nothing_return.page         |    2 +-
 .../Regress.test_glist_nothing_return2.page        |    2 +-
 .../Regress.test_glist_null_in.page                |    2 +-
 .../Regress.test_glist_null_out.page               |    2 +-
 .../Regress.test_gslist_container_return.page      |    2 +-
 .../Regress.test_gslist_everything_return.page     |    2 +-
 .../Regress.test_gslist_nothing_in.page            |    2 +-
 .../Regress.test_gslist_nothing_in2.page           |    2 +-
 .../Regress.test_gslist_nothing_return.page        |    2 +-
 .../Regress.test_gslist_nothing_return2.page       |    2 +-
 .../Regress.test_gslist_null_in.page               |    2 +-
 .../Regress.test_gslist_null_out.page              |    2 +-
 .../Regress.test_gtype.page                        |    2 +-
 .../Regress.test_gvariant_as.page                  |    2 +-
 .../Regress.test_gvariant_asv.page                 |    2 +-
 .../Regress.test_gvariant_i.page                   |    2 +-
 .../Regress.test_gvariant_s.page                   |    2 +-
 .../Regress.test_gvariant_v.page                   |    2 +-
 .../Regress.test_hash_table_callback.page          |    2 +-
 .../Regress-1.0-Gjs-expected/Regress.test_int.page |    2 +-
 .../Regress.test_int16.page                        |    2 +-
 .../Regress.test_int32.page                        |    2 +-
 .../Regress.test_int64.page                        |    2 +-
 .../Regress.test_int8.page                         |    2 +-
 .../Regress.test_int_out_utf8.page                 |    2 +-
 .../Regress.test_int_value_arg.page                |    2 +-
 .../Regress.test_long.page                         |    2 +-
 .../Regress.test_multi_callback.page               |    2 +-
 .../Regress.test_multi_double_args.page            |    2 +-
 .../Regress.test_multiline_doc_comments.page       |    2 +-
 .../Regress.test_nested_parameter.page             |    2 +-
 .../Regress.test_null_gerror_callback.page         |    2 +-
 .../Regress.test_owned_gerror_callback.page        |    2 +-
 .../Regress.test_short.page                        |    2 +-
 .../Regress.test_simple_callback.page              |    2 +-
 .../Regress.test_size.page                         |    2 +-
 .../Regress.test_ssize.page                        |    2 +-
 .../Regress.test_strv_in.page                      |    2 +-
 .../Regress.test_strv_in_gvalue.page               |    2 +-
 .../Regress.test_strv_out.page                     |    2 +-
 .../Regress.test_strv_out_c.page                   |    2 +-
 .../Regress.test_strv_out_container.page           |    2 +-
 .../Regress.test_strv_outarg.page                  |    2 +-
 .../Regress.test_timet.page                        |    2 +-
 .../Regress.test_torture_signature_0.page          |    2 +-
 .../Regress.test_torture_signature_1.page          |    2 +-
 .../Regress.test_torture_signature_2.page          |    2 +-
 .../Regress.test_uint.page                         |    2 +-
 .../Regress.test_uint16.page                       |    2 +-
 .../Regress.test_uint32.page                       |    2 +-
 .../Regress.test_uint64.page                       |    2 +-
 .../Regress.test_uint8.page                        |    2 +-
 .../Regress.test_ulong.page                        |    2 +-
 .../Regress.test_unichar.page                      |    2 +-
 .../Regress.test_unsigned_enum_param.page          |    2 +-
 .../Regress.test_ushort.page                       |    2 +-
 .../Regress.test_utf8_const_in.page                |    2 +-
 .../Regress.test_utf8_const_return.page            |    2 +-
 .../Regress.test_utf8_inout.page                   |    2 +-
 .../Regress.test_utf8_nonconst_return.page         |    2 +-
 .../Regress.test_utf8_null_in.page                 |    2 +-
 .../Regress.test_utf8_null_out.page                |    2 +-
 .../Regress.test_utf8_out.page                     |    2 +-
 .../Regress.test_utf8_out_nonconst_return.page     |    2 +-
 .../Regress.test_utf8_out_out.page                 |    2 +-
 .../Regress.test_value_return.page                 |    2 +-
 .../Regress.test_versioning.page                   |    2 +-
 .../Regress.ATestError.page                        |    2 +-
 .../Regress.AliasedTestBoxed.page                  |    2 +-
 .../Regress.AnnotationBitfield.page                |    2 +-
 .../Regress.AnnotationCallback.page                |    2 +-
 .../Regress.AnnotationForeachFunc.page             |    2 +-
 .../Regress.AnnotationListCallback.page            |    2 +-
 .../Regress.AnnotationNotifyFunc.page              |    2 +-
 .../Regress.AnnotationObject-attribute-signal.page |    2 +-
 ...ess.AnnotationObject-doc-empty-arg-parsing.page |    2 +-
 ...Regress.AnnotationObject-function-property.page |    2 +-
 .../Regress.AnnotationObject-list-signal.page      |    2 +-
 .../Regress.AnnotationObject-string-property.page  |    2 +-
 .../Regress.AnnotationObject-string-signal.page    |    2 +-
 .../Regress.AnnotationObject-tab-property.page     |    2 +-
 .../Regress.AnnotationObject.allow_none.page       |    2 +-
 .../Regress.AnnotationObject.calleeowns.page       |    2 +-
 .../Regress.AnnotationObject.calleesowns.page      |    2 +-
 .../Regress.AnnotationObject.compute_sum.page      |    2 +-
 .../Regress.AnnotationObject.compute_sum_n.page    |    2 +-
 .../Regress.AnnotationObject.compute_sum_nz.page   |    2 +-
 .../Regress.AnnotationObject.create_object.page    |    2 +-
 .../Regress.AnnotationObject.do_not_use.page       |    2 +-
 .../Regress.AnnotationObject.extra_annos.page      |    2 +-
 .../Regress.AnnotationObject.foreach.page          |    2 +-
 .../Regress.AnnotationObject.get_hash.page         |    2 +-
 .../Regress.AnnotationObject.get_objects.page      |    2 +-
 .../Regress.AnnotationObject.get_strings.page      |    2 +-
 .../Regress.AnnotationObject.hidden_self.page      |    2 +-
 .../Regress.AnnotationObject.in.page               |    2 +-
 .../Regress.AnnotationObject.inout.page            |    2 +-
 .../Regress.AnnotationObject.inout2.page           |    2 +-
 .../Regress.AnnotationObject.inout3.page           |    2 +-
 .../Regress.AnnotationObject.method.page           |    2 +-
 .../Regress.AnnotationObject.notrans.page          |    2 +-
 .../Regress.AnnotationObject.out.page              |    2 +-
 .../Regress.AnnotationObject.page                  |    2 +-
 .../Regress.AnnotationObject.parse_args.page       |    2 +-
 .../Regress.AnnotationObject.set_data.page         |    2 +-
 .../Regress.AnnotationObject.set_data2.page        |    2 +-
 .../Regress.AnnotationObject.set_data3.page        |    2 +-
 .../Regress.AnnotationObject.string_out.page       |    2 +-
 .../Regress.AnnotationObject.use_buffer.page       |    2 +-
 .../Regress.AnnotationObject.watch_full.page       |    2 +-
 .../Regress.AnnotationObject.with_voidp.page       |    2 +-
 .../Regress.AnnotationStruct.page                  |    2 +-
 .../Regress.FooASingle.page                        |    2 +-
 .../Regress.FooAddressType.page                    |    2 +-
 .../Regress.FooBRect.add.page                      |    2 +-
 .../Regress.FooBRect.page                          |    2 +-
 .../Regress.FooBUnion.page                         |    2 +-
 .../Regress.FooBoxed.method.page                   |    2 +-
 .../Regress.FooBoxed.page                          |    2 +-
 .../Regress.FooBuffer.page                         |    2 +-
 .../Regress.FooBuffer.some_method.page             |    2 +-
 .../Regress.FooCallback.page                       |    2 +-
 .../Regress.FooDBusData.method.page                |    2 +-
 .../Regress.FooDBusData.page                       |    2 +-
 .../Regress.FooEnumFullname.page                   |    2 +-
 .../Regress.FooEnumNoType.page                     |    2 +-
 .../Regress.FooEnumType.page                       |    2 +-
 .../Regress.FooError.page                          |    2 +-
 .../Regress.FooEvent.page                          |    2 +-
 .../Regress.FooEventAny.page                       |    2 +-
 .../Regress.FooEventExpose.page                    |    2 +-
 .../Regress.FooFlagsNoType.page                    |    2 +-
 .../Regress.FooFlagsType.page                      |    2 +-
 .../Regress.FooForeignStruct.copy.page             |    2 +-
 .../Regress.FooForeignStruct.page                  |    2 +-
 .../Regress.FooInterface-do_regress_foo.page       |    2 +-
 .../Regress.FooInterface.do_regress_foo.page       |    2 +-
 .../Regress.FooInterface.page                      |    2 +-
 .../Regress.FooInterface.static_method.page        |    2 +-
 .../Regress.FooObject-read_fn.page                 |    2 +-
 .../Regress.FooObject-signal.page                  |    2 +-
 .../Regress.FooObject-string.page                  |    2 +-
 .../Regress.FooObject-virtual_method.page          |    2 +-
 .../Regress.FooObject.a_global_method.page         |    2 +-
 .../Regress.FooObject.append_new_stack_layer.page  |    2 +-
 .../Regress.FooObject.dup_name.page                |    2 +-
 .../Regress.FooObject.external_type.page           |    2 +-
 .../Regress.FooObject.get_default.page             |    2 +-
 .../Regress.FooObject.get_name.page                |    2 +-
 .../Regress.FooObject.handle_glyph.page            |    2 +-
 .../Regress.FooObject.is_it_time_yet.page          |    2 +-
 .../Regress.FooObject.page                         |    2 +-
 .../Regress.FooObject.read.page                    |    2 +-
 .../Regress.FooObject.static_meth.page             |    2 +-
 .../Regress.FooObject.various.page                 |    2 +-
 .../Regress.FooObject.virtual_method.page          |    2 +-
 .../Regress.FooObjectCookie.page                   |    2 +-
 .../Regress.FooOtherObject.page                    |    2 +-
 .../Regress.FooRectangle.add.page                  |    2 +-
 .../Regress.FooRectangle.page                      |    2 +-
 .../Regress.FooStackLayer.page                     |    2 +-
 .../Regress.FooStruct.page                         |    2 +-
 .../Regress.FooSubInterface-destroy-event.page     |    2 +-
 .../Regress.FooSubInterface-destroy_event.page     |    2 +-
 .../Regress.FooSubInterface-do_bar.page            |    2 +-
 .../Regress.FooSubInterface-do_baz.page            |    2 +-
 .../Regress.FooSubInterface.do_bar.page            |    2 +-
 .../Regress.FooSubInterface.do_baz.page            |    2 +-
 .../Regress.FooSubInterface.page                   |    2 +-
 .../Regress.FooSubobject.page                      |    2 +-
 .../Regress.FooThingWithArray.page                 |    2 +-
 .../Regress.FooUnion.page                          |    2 +-
 .../Regress.FooUtilityStruct.page                  |    2 +-
 .../Regress.FooXEvent.page                         |    2 +-
 .../Regress.LikeGnomeKeyringPasswordSchema.page    |    2 +-
 .../Regress.PtrArrayAlias.page                     |    2 +-
 .../Regress.TestABCError.page                      |    2 +-
 .../Regress.TestBoxed.copy.page                    |    2 +-
 .../Regress.TestBoxed.equals.page                  |    2 +-
 .../Regress.TestBoxed.page                         |    2 +-
 .../Regress.TestBoxedB.copy.page                   |    2 +-
 .../Regress.TestBoxedB.page                        |    2 +-
 .../Regress.TestBoxedC.page                        |    2 +-
 .../Regress.TestBoxedD.copy.page                   |    2 +-
 .../Regress.TestBoxedD.free.page                   |    2 +-
 .../Regress.TestBoxedD.get_magic.page              |    2 +-
 .../Regress.TestBoxedD.page                        |    2 +-
 .../Regress.TestCallback.page                      |    2 +-
 .../Regress.TestCallbackArray.page                 |    2 +-
 .../Regress.TestCallbackFull.page                  |    2 +-
 .../Regress.TestCallbackGError.page                |    2 +-
 .../Regress.TestCallbackHashtable.page             |    2 +-
 .../Regress.TestCallbackOwnedGError.page           |    2 +-
 .../Regress.TestCallbackUserData.page              |    2 +-
 .../Regress.TestDEFError.page                      |    2 +-
 .../Regress.TestEnum.page                          |    2 +-
 .../Regress.TestEnumNoGEnum.page                   |    2 +-
 .../Regress.TestEnumUnsigned.page                  |    2 +-
 .../Regress.TestError.page                         |    2 +-
 .../Regress.TestFlags.page                         |    2 +-
 .../Regress.TestFloating.page                      |    2 +-
 .../Regress.TestFundamentalObject.page             |    2 +-
 .../Regress.TestFundamentalObject.ref.page         |    2 +-
 .../Regress.TestFundamentalObject.unref.page       |    2 +-
 .../Regress.TestFundamentalObjectCopyFunction.page |    2 +-
 ...ress.TestFundamentalObjectFinalizeFunction.page |    2 +-
 .../Regress.TestFundamentalSubObject.page          |    2 +-
 .../Regress.TestInheritDrawable.do_foo.page        |    2 +-
 ...ess.TestInheritDrawable.do_foo_maybe_throw.page |    2 +-
 .../Regress.TestInheritDrawable.get_origin.page    |    2 +-
 .../Regress.TestInheritDrawable.get_size.page      |    2 +-
 .../Regress.TestInheritDrawable.page               |    2 +-
 .../Regress.TestInheritPixmapObjectClass.page      |    2 +-
 .../Regress.TestInterface.page                     |    2 +-
 .../Regress.TestObj-all.page                       |    2 +-
 .../Regress.TestObj-allow_none_vfunc.page          |    2 +-
 .../Regress.TestObj-bare.page                      |    2 +-
 .../Regress.TestObj-boxed.page                     |    2 +-
 .../Regress.TestObj-cleanup.page                   |    2 +-
 .../Regress.TestObj-double.page                    |    2 +-
 .../Regress.TestObj-first.page                     |    2 +-
 .../Regress.TestObj-float.page                     |    2 +-
 .../Regress.TestObj-gtype.page                     |    2 +-
 .../Regress.TestObj-hash-table-old.page            |    2 +-
 .../Regress.TestObj-hash-table.page                |    2 +-
 .../Regress.TestObj-int.page                       |    2 +-
 .../Regress.TestObj-list-old.page                  |    2 +-
 .../Regress.TestObj-list.page                      |    2 +-
 .../Regress.TestObj-matrix.page                    |    2 +-
 .../Regress.TestObj-sig-with-array-prop.page       |    2 +-
 .../Regress.TestObj-sig-with-foreign-struct.page   |    2 +-
 .../Regress.TestObj-sig-with-hash-prop.page        |    2 +-
 .../Regress.TestObj-sig-with-int64-prop.page       |    2 +-
 .../Regress.TestObj-sig-with-intarray-ret.page     |    2 +-
 .../Regress.TestObj-sig-with-obj.page              |    2 +-
 .../Regress.TestObj-sig-with-strv.page             |    2 +-
 .../Regress.TestObj-sig-with-uint64-prop.page      |    2 +-
 .../Regress.TestObj-string.page                    |    2 +-
 ...Regress.TestObj-test-with-static-scope-arg.page |    2 +-
 .../Regress.TestObj-test.page                      |    2 +-
 .../Regress.TestObj.do_matrix.page                 |    2 +-
 ...gress.TestObj.emit_sig_with_foreign_struct.page |    2 +-
 .../Regress.TestObj.emit_sig_with_int64.page       |    2 +-
 .../Regress.TestObj.emit_sig_with_obj.page         |    2 +-
 .../Regress.TestObj.emit_sig_with_uint64.page      |    2 +-
 .../Regress.TestObj.forced_method.page             |    2 +-
 .../Regress.TestObj.instance_method.page           |    2 +-
 .../Regress.TestObj.instance_method_callback.page  |    2 +-
 .../Regress.TestObj.null_out.page                  |    2 +-
 .../Regress.TestObj.page                           |    2 +-
 .../Regress.TestObj.set_bare.page                  |    2 +-
 .../Regress.TestObj.skip_inout_param.page          |    2 +-
 .../Regress.TestObj.skip_out_param.page            |    2 +-
 .../Regress.TestObj.skip_param.page                |    2 +-
 .../Regress.TestObj.skip_return_val.page           |    2 +-
 .../Regress.TestObj.skip_return_val_no_out.page    |    2 +-
 .../Regress.TestObj.static_method.page             |    2 +-
 .../Regress.TestObj.static_method_callback.page    |    2 +-
 .../Regress.TestObj.torture_signature_0.page       |    2 +-
 .../Regress.TestObj.torture_signature_1.page       |    2 +-
 .../Regress.TestOtherError.page                    |    2 +-
 .../Regress.TestPrivateEnum.page                   |    2 +-
 .../Regress.TestPrivateStruct.page                 |    2 +-
 .../Regress.TestSimpleBoxedA.const_return.page     |    2 +-
 .../Regress.TestSimpleBoxedA.copy.page             |    2 +-
 .../Regress.TestSimpleBoxedA.equals.page           |    2 +-
 .../Regress.TestSimpleBoxedA.page                  |    2 +-
 .../Regress.TestSimpleBoxedB.copy.page             |    2 +-
 .../Regress.TestSimpleBoxedB.page                  |    2 +-
 .../Regress.TestSimpleCallback.page                |    2 +-
 .../Regress.TestStructA.clone.page                 |    2 +-
 .../Regress.TestStructA.page                       |    2 +-
 .../Regress.TestStructA.parse.page                 |    2 +-
 .../Regress.TestStructB.clone.page                 |    2 +-
 .../Regress.TestStructB.page                       |    2 +-
 .../Regress.TestStructC.page                       |    2 +-
 .../Regress.TestStructD.page                       |    2 +-
 .../Regress.TestStructE.page                       |    2 +-
 .../Regress.TestStructE__some_union__union.page    |    2 +-
 .../Regress.TestStructF.page                       |    2 +-
 .../Regress.TestStructFixedArray.frob.page         |    2 +-
 .../Regress.TestStructFixedArray.page              |    2 +-
 .../Regress.TestSubObj.instance_method.page        |    2 +-
 .../Regress.TestSubObj.page                        |    2 +-
 .../Regress.TestSubObj.unset_bare.page             |    2 +-
 .../Regress.TestTypeGUInt64.page                   |    2 +-
 .../Regress.TestWi8021x-testbool.page              |    2 +-
 .../Regress.TestWi8021x.get_testbool.page          |    2 +-
 .../Regress.TestWi8021x.page                       |    2 +-
 .../Regress.TestWi8021x.set_testbool.page          |    2 +-
 .../Regress.TestWi8021x.static_method.page         |    2 +-
 .../Regress.aliased_caller_alloc.page              |    4 ++--
 .../Regress.annotation_attribute_func.page         |    4 ++--
 .../Regress.annotation_custom_destroy.page         |    4 ++--
 .../Regress.annotation_get_source_file.page        |    4 ++--
 .../Regress.annotation_init.page                   |    4 ++--
 ...ress.annotation_invalid_regress_annotation.page |    4 ++--
 .../Regress.annotation_ptr_array.page              |    4 ++--
 .../Regress.annotation_return_array.page           |    4 ++--
 .../Regress.annotation_return_filename.page        |    4 ++--
 .../Regress.annotation_set_source_file.page        |    4 ++--
 ...s.annotation_space_after_comment_bug631690.page |    4 ++--
 .../Regress.annotation_string_array_length.page    |    4 ++--
 .../Regress.annotation_string_zero_terminated.page |    4 ++--
 ...ress.annotation_string_zero_terminated_out.page |    4 ++--
 .../Regress.annotation_test_parsing_bug630862.page |    4 ++--
 .../Regress.annotation_transfer_floating.page      |    4 ++--
 .../Regress.annotation_versioned.page              |    4 ++--
 .../Regress.atest_error_quark.page                 |    4 ++--
 .../Regress.foo_async_ready_callback.page          |    4 ++--
 .../Regress.foo_destroy_notify_callback.page       |    4 ++--
 .../Regress.foo_init.page                          |    4 ++--
 .../Regress.foo_method_external_references.page    |    4 ++--
 .../Regress.foo_not_a_constructor_new.page         |    4 ++--
 .../Regress.foo_test_array.page                    |    4 ++--
 .../Regress.foo_test_const_char_param.page         |    4 ++--
 .../Regress.foo_test_const_char_retval.page        |    4 ++--
 .../Regress.foo_test_const_struct_param.page       |    4 ++--
 .../Regress.foo_test_const_struct_retval.page      |    4 ++--
 .../Regress.foo_test_string_array.page             |    4 ++--
 .../Regress.foo_test_string_array_with_g.page      |    4 ++--
 .../Regress.foo_test_unsigned_qualifier.page       |    4 ++--
 .../Regress.foo_test_unsigned_type.page            |    4 ++--
 .../Regress.func_obj_null_in.page                  |    4 ++--
 .../Regress.global_get_flags_out.page              |    4 ++--
 .../Regress.has_parameter_named_attrs.page         |    4 ++--
 .../Regress.introspectable_via_alias.page          |    4 ++--
 .../Regress.set_abort_on_error.page                |    4 ++--
 .../Regress.test_array_callback.page               |    4 ++--
 .../Regress.test_array_fixed_out_objects.page      |    4 ++--
 .../Regress.test_array_fixed_size_int_in.page      |    4 ++--
 .../Regress.test_array_fixed_size_int_out.page     |    4 ++--
 .../Regress.test_array_fixed_size_int_return.page  |    4 ++--
 .../Regress.test_array_gint16_in.page              |    4 ++--
 .../Regress.test_array_gint32_in.page              |    4 ++--
 .../Regress.test_array_gint64_in.page              |    4 ++--
 .../Regress.test_array_gint8_in.page               |    4 ++--
 .../Regress.test_array_gtype_in.page               |    4 ++--
 .../Regress.test_array_int_full_out.page           |    4 ++--
 .../Regress.test_array_int_in.page                 |    4 ++--
 .../Regress.test_array_int_inout.page              |    4 ++--
 .../Regress.test_array_int_none_out.page           |    4 ++--
 .../Regress.test_array_int_null_in.page            |    4 ++--
 .../Regress.test_array_int_null_out.page           |    4 ++--
 .../Regress.test_array_int_out.page                |    4 ++--
 .../Regress.test_async_ready_callback.page         |    4 ++--
 .../Regress.test_boolean.page                      |    4 ++--
 .../Regress.test_boolean_false.page                |    4 ++--
 .../Regress.test_boolean_true.page                 |    4 ++--
 .../Regress.test_cairo_context_full_return.page    |    4 ++--
 .../Regress.test_cairo_context_none_in.page        |    4 ++--
 .../Regress.test_cairo_surface_full_out.page       |    4 ++--
 .../Regress.test_cairo_surface_full_return.page    |    4 ++--
 .../Regress.test_cairo_surface_none_in.page        |    4 ++--
 .../Regress.test_cairo_surface_none_return.page    |    4 ++--
 .../Regress.test_callback.page                     |    4 ++--
 .../Regress.test_callback_async.page               |    4 ++--
 .../Regress.test_callback_destroy_notify.page      |    4 ++--
 ....test_callback_destroy_notify_no_user_data.page |    4 ++--
 .../Regress.test_callback_thaw_async.page          |    4 ++--
 .../Regress.test_callback_thaw_notifications.page  |    4 ++--
 .../Regress.test_callback_user_data.page           |    4 ++--
 .../Regress.test_closure.page                      |    4 ++--
 .../Regress.test_closure_one_arg.page              |    4 ++--
 .../Regress.test_closure_variant.page              |    4 ++--
 .../Regress.test_date_in_gvalue.page               |    4 ++--
 .../Regress.test_def_error_quark.page              |    4 ++--
 .../Regress.test_double.page                       |    4 ++--
 .../Regress.test_filename_return.page              |    4 ++--
 .../Regress.test_float.page                        |    4 ++--
 .../Regress.test_garray_container_return.page      |    4 ++--
 .../Regress.test_garray_full_return.page           |    4 ++--
 .../Regress.test_gerror_callback.page              |    4 ++--
 .../Regress.test_ghash_container_return.page       |    4 ++--
 .../Regress.test_ghash_everything_return.page      |    4 ++--
 .../Regress.test_ghash_gvalue_in.page              |    4 ++--
 .../Regress.test_ghash_gvalue_return.page          |    4 ++--
 ...egress.test_ghash_nested_everything_return.page |    4 ++--
 ...gress.test_ghash_nested_everything_return2.page |    4 ++--
 .../Regress.test_ghash_nothing_in.page             |    4 ++--
 .../Regress.test_ghash_nothing_in2.page            |    4 ++--
 .../Regress.test_ghash_nothing_return.page         |    4 ++--
 .../Regress.test_ghash_nothing_return2.page        |    4 ++--
 .../Regress.test_ghash_null_in.page                |    4 ++--
 .../Regress.test_ghash_null_out.page               |    4 ++--
 .../Regress.test_ghash_null_return.page            |    4 ++--
 .../Regress.test_glist_container_return.page       |    4 ++--
 .../Regress.test_glist_everything_return.page      |    4 ++--
 .../Regress.test_glist_nothing_in.page             |    4 ++--
 .../Regress.test_glist_nothing_in2.page            |    4 ++--
 .../Regress.test_glist_nothing_return.page         |    4 ++--
 .../Regress.test_glist_nothing_return2.page        |    4 ++--
 .../Regress.test_glist_null_in.page                |    4 ++--
 .../Regress.test_glist_null_out.page               |    4 ++--
 .../Regress.test_gslist_container_return.page      |    4 ++--
 .../Regress.test_gslist_everything_return.page     |    4 ++--
 .../Regress.test_gslist_nothing_in.page            |    4 ++--
 .../Regress.test_gslist_nothing_in2.page           |    4 ++--
 .../Regress.test_gslist_nothing_return.page        |    4 ++--
 .../Regress.test_gslist_nothing_return2.page       |    4 ++--
 .../Regress.test_gslist_null_in.page               |    4 ++--
 .../Regress.test_gslist_null_out.page              |    4 ++--
 .../Regress.test_gtype.page                        |    4 ++--
 .../Regress.test_gvariant_as.page                  |    4 ++--
 .../Regress.test_gvariant_asv.page                 |    4 ++--
 .../Regress.test_gvariant_i.page                   |    4 ++--
 .../Regress.test_gvariant_s.page                   |    4 ++--
 .../Regress.test_gvariant_v.page                   |    4 ++--
 .../Regress.test_hash_table_callback.page          |    4 ++--
 .../Regress.test_int.page                          |    4 ++--
 .../Regress.test_int16.page                        |    4 ++--
 .../Regress.test_int32.page                        |    4 ++--
 .../Regress.test_int64.page                        |    4 ++--
 .../Regress.test_int8.page                         |    4 ++--
 .../Regress.test_int_out_utf8.page                 |    4 ++--
 .../Regress.test_int_value_arg.page                |    4 ++--
 .../Regress.test_long.page                         |    4 ++--
 .../Regress.test_multi_callback.page               |    4 ++--
 .../Regress.test_multi_double_args.page            |    4 ++--
 .../Regress.test_multiline_doc_comments.page       |    4 ++--
 .../Regress.test_nested_parameter.page             |    4 ++--
 .../Regress.test_null_gerror_callback.page         |    4 ++--
 .../Regress.test_owned_gerror_callback.page        |    4 ++--
 .../Regress.test_short.page                        |    4 ++--
 .../Regress.test_simple_callback.page              |    4 ++--
 .../Regress.test_size.page                         |    4 ++--
 .../Regress.test_ssize.page                        |    4 ++--
 .../Regress.test_strv_in.page                      |    4 ++--
 .../Regress.test_strv_in_gvalue.page               |    4 ++--
 .../Regress.test_strv_out.page                     |    4 ++--
 .../Regress.test_strv_out_c.page                   |    4 ++--
 .../Regress.test_strv_out_container.page           |    4 ++--
 .../Regress.test_strv_outarg.page                  |    4 ++--
 .../Regress.test_timet.page                        |    4 ++--
 .../Regress.test_torture_signature_0.page          |    4 ++--
 .../Regress.test_torture_signature_1.page          |    4 ++--
 .../Regress.test_torture_signature_2.page          |    4 ++--
 .../Regress.test_uint.page                         |    4 ++--
 .../Regress.test_uint16.page                       |    4 ++--
 .../Regress.test_uint32.page                       |    4 ++--
 .../Regress.test_uint64.page                       |    4 ++--
 .../Regress.test_uint8.page                        |    4 ++--
 .../Regress.test_ulong.page                        |    4 ++--
 .../Regress.test_unichar.page                      |    4 ++--
 .../Regress.test_unsigned_enum_param.page          |    4 ++--
 .../Regress.test_ushort.page                       |    4 ++--
 .../Regress.test_utf8_const_in.page                |    4 ++--
 .../Regress.test_utf8_const_return.page            |    4 ++--
 .../Regress.test_utf8_inout.page                   |    4 ++--
 .../Regress.test_utf8_nonconst_return.page         |    4 ++--
 .../Regress.test_utf8_null_in.page                 |    4 ++--
 .../Regress.test_utf8_null_out.page                |    4 ++--
 .../Regress.test_utf8_out.page                     |    4 ++--
 .../Regress.test_utf8_out_nonconst_return.page     |    4 ++--
 .../Regress.test_utf8_out_out.page                 |    4 ++--
 .../Regress.test_value_return.page                 |    4 ++--
 .../Regress.test_versioning.page                   |    4 ++--
 1258 files changed, 1428 insertions(+), 1436 deletions(-)
---
diff --git a/giscanner/doctemplates/C/function.tmpl b/giscanner/doctemplates/C/function.tmpl
index c788225..8d66943 100644
--- a/giscanner/doctemplates/C/function.tmpl
+++ b/giscanner/doctemplates/C/function.tmpl
@@ -1,10 +1,6 @@
 <%inherit file="/base.tmpl"/>
 <%block name="info">
-% if node.parent is not None:
-    <link type="guide" xref="${namespace.name}.${node.parent.name}" group="${page_kind}"/>
-% else:
-    <link type="guide" xref="index" group="${page_kind}"/>
-% endif
+    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
     <api:function>
       <api:returns>
         <api:type>${formatter.format_type(node.retval.type) | x}</api:type>
diff --git a/giscanner/doctemplates/C/property.tmpl b/giscanner/doctemplates/C/property.tmpl
index e3eb051..6ec9e8e 100644
--- a/giscanner/doctemplates/C/property.tmpl
+++ b/giscanner/doctemplates/C/property.tmpl
@@ -1,5 +1,5 @@
 <%inherit file="/base.tmpl"/>
 <%block name="info">
-    <link type="guide" xref="${namespace.name}.${node.parent.name}" group="property"/>
+    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
     <title type="link" role="topic">${node.name}</title>
 </%block>
diff --git a/giscanner/doctemplates/C/signal.tmpl b/giscanner/doctemplates/C/signal.tmpl
index 20e28e1..28c0b74 100644
--- a/giscanner/doctemplates/C/signal.tmpl
+++ b/giscanner/doctemplates/C/signal.tmpl
@@ -1,5 +1,5 @@
 <%inherit file="./function.tmpl"/>
 <%block name="info">
-    <link type="guide" xref="${namespace.name}.${node.parent.name}" group="property"/>
+    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
     <title type="link" role="topic">${node.name}</title>
 </%block>
diff --git a/giscanner/doctemplates/C/vfunc.tmpl b/giscanner/doctemplates/C/vfunc.tmpl
index 85427de..aa0394f 100644
--- a/giscanner/doctemplates/C/vfunc.tmpl
+++ b/giscanner/doctemplates/C/vfunc.tmpl
@@ -1,4 +1,4 @@
 <%inherit file="./function.tmpl"/>
 <%block name="info">
-    <link type="guide" xref="${namespace.name}.${node.parent.name}" group="vfunc"/>
+    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
 </%block>
diff --git a/giscanner/doctemplates/Gjs/function.tmpl b/giscanner/doctemplates/Gjs/function.tmpl
index 6a43ddb..e0fd961 100644
--- a/giscanner/doctemplates/Gjs/function.tmpl
+++ b/giscanner/doctemplates/Gjs/function.tmpl
@@ -1,10 +1,6 @@
 <%inherit file="/base.tmpl"/>
 <%block name="info">
-% if node.parent is not None:
-    <link type="guide" xref="${namespace.name}.${node.parent.name}" group="${page_kind}"/>
-% else:
-    <link type="guide" xref="index" group="${page_kind}"/>
-% endif
+    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
     <api:function>
       <api:returns>
         <api:type>${formatter.format_type(node.retval.type) | x}</api:type>
diff --git a/giscanner/doctemplates/Gjs/property.tmpl b/giscanner/doctemplates/Gjs/property.tmpl
index f05bc82..3316a00 100644
--- a/giscanner/doctemplates/Gjs/property.tmpl
+++ b/giscanner/doctemplates/Gjs/property.tmpl
@@ -1,6 +1,6 @@
 <%inherit file="/base.tmpl"/>
 <%block name="info">
-    <link type="guide" xref="${namespace.name}.${node.parent.name}" group="property"/>
+    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
     <title type="link" role="topic">${node.name}</title>
 </%block>
 <%block name="synopsis">
diff --git a/giscanner/doctemplates/Gjs/signal.tmpl b/giscanner/doctemplates/Gjs/signal.tmpl
index a8e900f..084d974 100644
--- a/giscanner/doctemplates/Gjs/signal.tmpl
+++ b/giscanner/doctemplates/Gjs/signal.tmpl
@@ -1,6 +1,6 @@
 <%inherit file="/base.tmpl"/>
 <%block name="info">
-    <link type="guide" xref="${namespace.name}.${node.parent.name}" group="signal"/>
+    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
     <title type="link" role="topic">${node.name}</title>
 </%block>
 <%block name="synopsis">
diff --git a/giscanner/doctemplates/Python/function.tmpl b/giscanner/doctemplates/Python/function.tmpl
index e1fc5d9..072a118 100644
--- a/giscanner/doctemplates/Python/function.tmpl
+++ b/giscanner/doctemplates/Python/function.tmpl
@@ -1,10 +1,6 @@
 <%inherit file="/base.tmpl"/>
 <%block name="info">
-% if node.parent is not None:
-    <link type="guide" xref="${namespace.name}.${node.parent.name}" group="${page_kind}"/>
-% else:
-    <link type="guide" xref="index" group="${page_kind}"/>
-% endif
+    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
     <api:function>
       <api:returns>
         <api:type>${formatter.format_type(node.retval.type) | x}</api:type>
diff --git a/giscanner/doctemplates/Python/property.tmpl b/giscanner/doctemplates/Python/property.tmpl
index f05bc82..3316a00 100644
--- a/giscanner/doctemplates/Python/property.tmpl
+++ b/giscanner/doctemplates/Python/property.tmpl
@@ -1,6 +1,6 @@
 <%inherit file="/base.tmpl"/>
 <%block name="info">
-    <link type="guide" xref="${namespace.name}.${node.parent.name}" group="property"/>
+    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
     <title type="link" role="topic">${node.name}</title>
 </%block>
 <%block name="synopsis">
diff --git a/giscanner/doctemplates/Python/signal.tmpl b/giscanner/doctemplates/Python/signal.tmpl
index a2d7b0b..dc93110 100644
--- a/giscanner/doctemplates/Python/signal.tmpl
+++ b/giscanner/doctemplates/Python/signal.tmpl
@@ -1,6 +1,6 @@
 <%inherit file="/base.tmpl"/>
 <%block name="info">
-    <link type="guide" xref="${namespace.name}.${node.parent.name}" group="signal"/>
+    ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
     <title type="link" role="topic">${node.name}</title>
 </%block>
 <%block name="synopsis">
diff --git a/giscanner/doctemplates/base.tmpl b/giscanner/doctemplates/base.tmpl
index 7fd0fd2..7898077 100644
--- a/giscanner/doctemplates/base.tmpl
+++ b/giscanner/doctemplates/base.tmpl
@@ -8,7 +8,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     <%block name="info">
-      <link type="guide" xref="index"/>
+      ${formatter.format_xref(node.parent, type="guide", group=page_kind)}
     </%block>
   </info>
   <title><%block name="title">${formatter.format_page_name(node)}</%block></title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.ATestError.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.ATestError.page
index a2ab2ef..e131f6f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.ATestError.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.ATestError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.ATestError</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AliasedTestBoxed.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AliasedTestBoxed.page
index 2229245..9490e4a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AliasedTestBoxed.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AliasedTestBoxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AliasedTestBoxed</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationBitfield.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationBitfield.page
index 8cbc832..4e19ef9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationBitfield.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationBitfield.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationBitfield</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationCallback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationCallback.page
index 30f950c..9a652d8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationCallback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationCallback</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationForeachFunc.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationForeachFunc.page
index 506ceff..db77a11 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationForeachFunc.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationForeachFunc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationForeachFunc</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationListCallback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationListCallback.page
index 3f9409e..79844c6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationListCallback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationListCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationListCallback</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationNotifyFunc.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationNotifyFunc.page
index b2dc717..17c8029 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationNotifyFunc.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationNotifyFunc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationNotifyFunc</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-attribute-signal.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-attribute-signal.page
index 188ff22..64e30a6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-attribute-signal.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-attribute-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">attribute-signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
index bc1d530..48acac5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">doc-empty-arg-parsing</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-function-property.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-function-property.page
index 88dae75..bd640b5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-function-property.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-function-property.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="property" type="guide"/>
     <title type="link" role="topic">function-property</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-list-signal.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-list-signal.page
index cfd1303..29ad584 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-list-signal.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-list-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">list-signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-property.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-property.page
index bedc144..70b80ae 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-property.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-property.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="property" type="guide"/>
     <title type="link" role="topic">string-property</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-signal.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-signal.page
index d875e1c..e25d2bb 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-signal.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-string-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">string-signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-tab-property.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-tab-property.page
index 1363f9e..2366f20 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-tab-property.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject-tab-property.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="property" type="guide"/>
     <title type="link" role="topic">tab-property</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.allow_none.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.allow_none.page
index 9d7e12e..1d553fd 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.allow_none.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.allow_none.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleeowns.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleeowns.page
index 3db342e..fc1758b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleeowns.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleeowns.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleesowns.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleesowns.page
index fb6d988..f168030 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleesowns.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.calleesowns.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum.page
index 2f18ea2..eaf0040 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_n.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_n.page
index be0ab85..feb7a55 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_n.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_n.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_nz.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_nz.page
index 29209f5..2af59a5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_nz.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.compute_sum_nz.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.create_object.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.create_object.page
index 43f4ee6..6ad744b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.create_object.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.create_object.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.do_not_use.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.do_not_use.page
index 7b160ab..4d651ca 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.do_not_use.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.do_not_use.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.extra_annos.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.extra_annos.page
index 61c6403..809ebd2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.extra_annos.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.extra_annos.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.foreach.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.foreach.page
index 18d5b1e..f74ca97 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.foreach.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.foreach.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_hash.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_hash.page
index 0560fa4..6cc123b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_hash.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_hash.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GHashTable*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_objects.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_objects.page
index 3585b2b..3021ce5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_objects.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_objects.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GSList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_strings.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_strings.page
index 498157b..62087b0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_strings.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.get_strings.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.hidden_self.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.hidden_self.page
index f3d3a4a..f1696c0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.hidden_self.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.hidden_self.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.in.page
index 568cd89..ef1f430 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout.page
index eaaa27b..0e95829 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout2.page
index 94674e2..cae38e5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout3.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout3.page
index c693c95..8ca35f3 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout3.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.inout3.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.method.page
index f5f98d4..8f0e187 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.notrans.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.notrans.page
index ca0b307..de87deb 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.notrans.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.notrans.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.out.page
index c229c0e..d244433 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.page
index 145996e..80e2546 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.AnnotationObject</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.parse_args.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.parse_args.page
index 7934ae6..2fa9f09 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.parse_args.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.parse_args.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data.page
index 6f5cf70..a52c0ff 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data2.page
index 7e6f2ed..dd72420 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data3.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data3.page
index d0a8761..86666ef 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data3.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.set_data3.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.string_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.string_out.page
index 81a5b07..a70d477 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.string_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.string_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.use_buffer.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.use_buffer.page
index 06a2690..3228007 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.use_buffer.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.use_buffer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch.page
index b92ea0e..0f9933d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch_full.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch_full.page
index 0ce3a59..5de06c0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch_full.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.watch_full.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.with_voidp.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.with_voidp.page
index 27f467e..ef9436e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.with_voidp.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObject.with_voidp.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObjectClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObjectClass.page
index 16e82e3..28b8a71 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObjectClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationObjectClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.AnnotationObjectClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationStruct.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationStruct.page
index 67f83e9..341362a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationStruct.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.AnnotationStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.AnnotationStruct</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooASingle.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooASingle.page
index d464625..39ebf9c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooASingle.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooASingle.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooASingle</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooAddressType.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooAddressType.page
index b98ce57..717b501 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooAddressType.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooAddressType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooAddressType</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.add.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.add.page
index 8a29140..38eae39 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.add.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.add.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBRect" group="method"/>
+    <link xref="Regress.FooBRect" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.new.page
index 53d8a79..3ca2281 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBRect" group="constructor"/>
+    <link xref="Regress.FooBRect" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooBRect*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.page
index 29268be..abd6b03 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBRect.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooBRect</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBUnion.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooBUnion.page
index 63831e7..8644d96 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooBUnion.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBUnion.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooBUnion</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.method.page
index dc73690..7483641 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBoxed" group="method"/>
+    <link xref="Regress.FooBoxed" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.new.page
index d745c1e..3e3e4f9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBoxed" group="constructor"/>
+    <link xref="Regress.FooBoxed" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooBoxed*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.page
index 11fe281..e711c3e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBoxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooBoxed</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.page
index 1291cbf..267ddcb 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooBuffer</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.some_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.some_method.page
index 19a2946..6f6469d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.some_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooBuffer.some_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBuffer" group="method"/>
+    <link xref="Regress.FooBuffer" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooCallback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooCallback.page
index 241296e..52feda2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooCallback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooCallback</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.method.page
index 4b5177c..8694337 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooDBusData" group="method"/>
+    <link xref="Regress.FooDBusData" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.page
index 34bb11e..09050e7 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooDBusData.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooDBusData</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumFullname.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumFullname.page
index 6e9c360..80f6c3b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumFullname.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumFullname.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooEnumFullname</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumNoType.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumNoType.page
index bf48cb9..b3c71a6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumNoType.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumNoType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooEnumNoType</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumType.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumType.page
index 9512104..6dd3491 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumType.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEnumType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooEnumType</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooError.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooError.page
index 09ae500..79bb9d2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooError.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooError</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEvent.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooEvent.page
index 0b77bcb..ce36830 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooEvent.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEvent.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooEvent</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEventAny.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooEventAny.page
index 347c651..0e3a555 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooEventAny.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEventAny.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooEventAny</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooEventExpose.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooEventExpose.page
index a99a5d1..27c4c4a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooEventExpose.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooEventExpose.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooEventExpose</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsNoType.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsNoType.page
index d4db757..53539d4 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsNoType.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsNoType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooFlagsNoType</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsType.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsType.page
index e4f3ede..2b4afeb 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsType.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooFlagsType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooFlagsType</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.copy.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.copy.page
index b6ecbf7..217a983 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.copy.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooForeignStruct" group="method"/>
+    <link xref="Regress.FooForeignStruct" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooForeignStruct*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.new.page
index ef6cd40..7314c1d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooForeignStruct" group="constructor"/>
+    <link xref="Regress.FooForeignStruct" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooForeignStruct*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.page
index 24082f8..ee3e5e7 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooForeignStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooForeignStruct</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface-do_regress_foo.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface-do_regress_foo.page
index 29f95e9..b3faca6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface-do_regress_foo.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface-do_regress_foo.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooInterface" group="vfunc"/>
+    <link xref="Regress.FooInterface" group="vfunc" type="guide"/>
 
   </info>
   <title>Regress.FooInterface::do_regress_foo</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.do_regress_foo.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.do_regress_foo.page
index bfe7803..7c44fd4 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.do_regress_foo.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.do_regress_foo.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooInterface" group="method"/>
+    <link xref="Regress.FooInterface" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.page
index 4682fdd..7ec29fe 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooInterface</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.static_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.static_method.page
index a4270fe..a3ad69a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.static_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterface.static_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooInterface" group="function"/>
+    <link xref="Regress.FooInterface" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterfaceIface.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterfaceIface.page
index 5a02e94..53b09b4 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooInterfaceIface.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooInterfaceIface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooInterfaceIface</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-hidden.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-hidden.page
index a0266cd..ccfbcfa 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-hidden.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-hidden.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <link xref="Regress.FooObject" group="property" type="guide"/>
     <title type="link" role="topic">hidden</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-read_fn.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-read_fn.page
index b6d543d..a316adb 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-read_fn.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-read_fn.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="vfunc"/>
+    <link xref="Regress.FooObject" group="vfunc" type="guide"/>
 
   </info>
   <title>Regress.FooObject::read_fn</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-signal.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-signal.page
index cbcb93f..3a8c131 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-signal.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <link xref="Regress.FooObject" group="signal" type="guide"/>
     <title type="link" role="topic">signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-string.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-string.page
index 4de4c9e..b0ed3c7 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-string.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-string.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <link xref="Regress.FooObject" group="property" type="guide"/>
     <title type="link" role="topic">string</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-virtual_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-virtual_method.page
index 12837f4..3e3f04e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-virtual_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject-virtual_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="vfunc"/>
+    <link xref="Regress.FooObject" group="vfunc" type="guide"/>
 
   </info>
   <title>Regress.FooObject::virtual_method</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.a_global_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.a_global_method.page
index b63ba80..801f59a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.a_global_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.a_global_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <link xref="Regress.FooObject" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.append_new_stack_layer.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.append_new_stack_layer.page
index 606729c..82bbc26 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.append_new_stack_layer.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.append_new_stack_layer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooOtherObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.dup_name.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.dup_name.page
index 373841e..6419ed7 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.dup_name.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.dup_name.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>char*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.external_type.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.external_type.page
index 2937dbd..77c8dc8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.external_type.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.external_type.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>UtilityObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_default.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_default.page
index d2010a4..04c38a2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_default.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_default.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <link xref="Regress.FooObject" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_name.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_name.page
index d94cdbf..68b305b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_name.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.get_name.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const char*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.handle_glyph.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.handle_glyph.page
index 696748f..0cb58ae 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.handle_glyph.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.handle_glyph.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.is_it_time_yet.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.is_it_time_yet.page
index b1f225e..f643665 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.is_it_time_yet.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.is_it_time_yet.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new.page
index 99810f8..75b0e07 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="constructor"/>
+    <link xref="Regress.FooObject" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_as_super.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_as_super.page
index 8c89bd5..069a421 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_as_super.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_as_super.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="constructor"/>
+    <link xref="Regress.FooObject" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_cookie.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_cookie.page
index 83b9b8f..312e93c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_cookie.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.new_cookie.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooObjectCookie</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.page
index c79e0b7..fff026c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooObject</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.read.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.read.page
index df2703a..d641502 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.read.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.read.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.skipped_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.skipped_method.page
index 9aff026..aea1afd 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.skipped_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.skipped_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.static_meth.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.static_meth.page
index 5988a07..9b157bb 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.static_meth.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.static_meth.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <link xref="Regress.FooObject" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page
index bfd7d1c..649824f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.take_all.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.various.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.various.page
index 9c9e4b5..eea3c15 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.various.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.various.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.virtual_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.virtual_method.page
index a342c3a..3f04cb4 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.virtual_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObject.virtual_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectClass.page
index c35a3bc..9d52838 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooObjectClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectCookie.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectCookie.page
index 4d9cabc..44a63ab 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectCookie.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooObjectCookie.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooObjectCookie</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooOtherObject.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooOtherObject.page
index 0d080df..491d023 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooOtherObject.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooOtherObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooOtherObject</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.add.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.add.page
index 137f94c..84a46bb 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.add.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.add.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooRectangle" group="method"/>
+    <link xref="Regress.FooRectangle" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.new.page
index 11a38ea..b9f16ea 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooRectangle" group="function"/>
+    <link xref="Regress.FooRectangle" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooRectangle*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.page
index 3ea38d1..d485de0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooRectangle.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooRectangle</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSkippable.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSkippable.page
index 3746d32..0d50e70 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSkippable.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSkippable.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooSkippable</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooStackLayer.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooStackLayer.page
index 049d376..961d19c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooStackLayer.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooStackLayer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooStackLayer</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooStruct.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooStruct.page
index 291133a..65b4f26 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooStruct.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooStruct</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy-event.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy-event.page
index 8ad16c8..6af09fd 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy-event.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy-event.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="property"/>
+    <link xref="Regress.FooSubInterface" group="signal" type="guide"/>
     <title type="link" role="topic">destroy-event</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy_event.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy_event.page
index 64855ff..eb08ec7 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy_event.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-destroy_event.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="vfunc"/>
+    <link xref="Regress.FooSubInterface" group="vfunc" type="guide"/>
 
   </info>
   <title>Regress.FooSubInterface::destroy_event</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_bar.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_bar.page
index beb98d1..56bdfed 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_bar.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_bar.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="vfunc"/>
+    <link xref="Regress.FooSubInterface" group="vfunc" type="guide"/>
 
   </info>
   <title>Regress.FooSubInterface::do_bar</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_baz.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_baz.page
index 1b1dc30..ac59643 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_baz.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface-do_baz.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="vfunc"/>
+    <link xref="Regress.FooSubInterface" group="vfunc" type="guide"/>
 
   </info>
   <title>Regress.FooSubInterface::do_baz</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_bar.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_bar.page
index 22d4ef2..6d7d970 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_bar.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_bar.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <link xref="Regress.FooSubInterface" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_baz.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_baz.page
index 2517846..bab0d68 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_baz.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.do_baz.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <link xref="Regress.FooSubInterface" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.page
index 4147580..9b25845 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooSubInterface</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterfaceIface.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterfaceIface.page
index fc18c91..f8643cf 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterfaceIface.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubInterfaceIface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooSubInterfaceIface</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.new.page
index 2b99532..c4adff6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubobject" group="constructor"/>
+    <link xref="Regress.FooSubobject" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooSubobject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.page
index 933b39a..6a70ef7 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooSubobject</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobjectClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobjectClass.page
index d0e3e88..499599c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobjectClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooSubobjectClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooSubobjectClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooThingWithArray.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooThingWithArray.page
index facdc1c..6033817 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooThingWithArray.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooThingWithArray.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooThingWithArray</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooUnion.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooUnion.page
index 06d2e80..9746f17 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooUnion.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooUnion.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooUnion</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooUtilityStruct.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooUtilityStruct.page
index e6943a0..d281ffb 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooUtilityStruct.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooUtilityStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooUtilityStruct</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooVarargsCallback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooVarargsCallback.page
index d477638..a57ea4d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooVarargsCallback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooVarargsCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooVarargsCallback</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.FooXEvent.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.FooXEvent.page
index 1812249..c389ef0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.FooXEvent.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.FooXEvent.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooXEvent</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.IntSet.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.IntSet.page
index e285bc2..b8710cf 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.IntSet.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.IntSet.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.IntSet</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.LikeGnomeKeyringPasswordSchema.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.LikeGnomeKeyringPasswordSchema.page
index f2e64f0..242fad0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.LikeGnomeKeyringPasswordSchema.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.LikeGnomeKeyringPasswordSchema.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.LikeGnomeKeyringPasswordSchema</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.PtrArrayAlias.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.PtrArrayAlias.page
index 9af00b5..f66aee4 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.PtrArrayAlias.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.PtrArrayAlias.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.PtrArrayAlias</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.SkippedStructure.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.SkippedStructure.page
index 2c6993d..ad13eea 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.SkippedStructure.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.SkippedStructure.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.SkippedStructure</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestABCError.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestABCError.page
index 2848aa3..384ffb8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestABCError.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestABCError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestABCError</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.copy.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.copy.page
index 660dc89..4027391 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.copy.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <link xref="Regress.TestBoxed" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestBoxed*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.equals.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.equals.page
index 9759b50..26206b6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.equals.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.equals.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <link xref="Regress.TestBoxed" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new.page
index e2550d6..5e05794 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <link xref="Regress.TestBoxed" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestBoxed*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor1.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor1.page
index 3f6df8a..2bc8192 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor1.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor1.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <link xref="Regress.TestBoxed" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestBoxed*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor2.page
index 603792e..e43127e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <link xref="Regress.TestBoxed" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestBoxed*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor3.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor3.page
index a7f7b65..ac75d2c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor3.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.new_alternative_constructor3.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <link xref="Regress.TestBoxed" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestBoxed*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.page
index 090ce47..d667532 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxed</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.copy.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.copy.page
index c2b907b..df0da11 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.copy.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedB" group="method"/>
+    <link xref="Regress.TestBoxedB" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestBoxedB*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.new.page
index 72e4cb0..7a0bc2b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedB" group="constructor"/>
+    <link xref="Regress.TestBoxedB" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestBoxedB*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.page
index 99160c6..856d7da 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedB.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxedB</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.new.page
index cc9a47d..4657b52 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedC" group="constructor"/>
+    <link xref="Regress.TestBoxedC" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestBoxedC*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.page
index 9a86486..c890545 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedC.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxedC</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.copy.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.copy.page
index c73df3c..ed99996 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.copy.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <link xref="Regress.TestBoxedD" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestBoxedD*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.free.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.free.page
index 110ec05..4622fcd 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.free.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.free.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <link xref="Regress.TestBoxedD" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.get_magic.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.get_magic.page
index 832b77c..bbd78ab 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.get_magic.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.get_magic.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <link xref="Regress.TestBoxedD" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.new.page
index d92e39a..5034562 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="constructor"/>
+    <link xref="Regress.TestBoxedD" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestBoxedD*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.page
index 8478165..b5110c2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestBoxedD.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxedD</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallback.page
index 9a219e9..bed84d5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallback</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackArray.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackArray.page
index 7ceb2e0..7d3f7b8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackArray.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackArray.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackArray</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackFull.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackFull.page
index 3de1fbe..0b8fca1 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackFull.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackFull.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackFull</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackGError.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackGError.page
index 1f6f2bd..804382f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackGError.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackGError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackGError</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackHashtable.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackHashtable.page
index 906947c..06ebb70 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackHashtable.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackHashtable.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackHashtable</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackOwnedGError.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackOwnedGError.page
index e7397a1..28b21ea 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackOwnedGError.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackOwnedGError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackOwnedGError</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackUserData.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackUserData.page
index f3047cf..286c830 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackUserData.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestCallbackUserData.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackUserData</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestDEFError.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestDEFError.page
index aa59b41..b485450 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestDEFError.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestDEFError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestDEFError</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestEnum.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnum.page
index b48602f..a672d7e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestEnum.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestEnum</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumNoGEnum.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumNoGEnum.page
index 575270d..cffae73 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumNoGEnum.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumNoGEnum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestEnumNoGEnum</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumUnsigned.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumUnsigned.page
index 2029669..81a9aa9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumUnsigned.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestEnumUnsigned.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestEnumUnsigned</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestError.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestError.page
index 6be3dac..97f829b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestError.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestError</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFlags.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFlags.page
index d545197..d5bfeeb 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFlags.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFlags.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestFlags</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.new.page
index 911873d..5f4a3a5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestFloating" group="constructor"/>
+    <link xref="Regress.TestFloating" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestFloating*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.page
index f1d98e7..1189912 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloating.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestFloating</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFloatingClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloatingClass.page
index 143325f..e7d5236 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFloatingClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFloatingClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestFloatingClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.page
index 964f691..473f1af 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalObject</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.ref.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.ref.page
index 71c0696..3e63b1e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.ref.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.ref.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <link xref="Regress.TestFundamentalObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestFundamentalObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.unref.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.unref.page
index 7bdf0d8..6f5c16b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.unref.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObject.unref.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <link xref="Regress.TestFundamentalObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectClass.page
index daedb67..443ce70 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalObjectClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectCopyFunction.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectCopyFunction.page
index dfd65ce..73a3328 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectCopyFunction.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectCopyFunction.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalObjectCopyFunction</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectFinalizeFunction.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectFinalizeFunction.page
index 2b9d965..df0e8fb 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectFinalizeFunction.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalObjectFinalizeFunction.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalObjectFinalizeFunction</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.new.page
index 0c9085e..a449540 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.new.page
@@ -7,7 +7,9 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestFundamentalSubObject" group="constructor"/>
+    <link xref="Regress.TestFundamentalSubObject"
+      group="constructor"
+      type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestFundamentalSubObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.page
index c8c1f03..6ed3608 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalSubObject</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObjectClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObjectClass.page
index 77dd6bc..79e14d5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObjectClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestFundamentalSubObjectClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalSubObjectClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo.page
index b2f85d4..24bd9c4 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
index e737f0f..e90dcd1 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_origin.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_origin.page
index 364f2a4..9ab00c6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_origin.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_origin.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_size.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_size.page
index 616dc66..c9c778e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_size.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.get_size.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.page
index 9d50d65..20ef3ff 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawable.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestInheritDrawable</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawableClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawableClass.page
index 059c991..2579f56 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawableClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritDrawableClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestInheritDrawableClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritPixmapObjectClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritPixmapObjectClass.page
index 06e5eed..3cf69e8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritPixmapObjectClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInheritPixmapObjectClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestInheritPixmapObjectClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInterface.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestInterface.page
index 1f823a2..1c53fd4 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestInterface.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInterface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestInterface</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestInterfaceIface.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestInterfaceIface.page
index 536f049..a643e5d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestInterfaceIface.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestInterfaceIface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestInterfaceIface</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-all.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-all.page
index 7526a98..37b5dd3 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-all.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-all.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">all</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-allow_none_vfunc.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-allow_none_vfunc.page
index 37c69f9..f3447b5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-allow_none_vfunc.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-allow_none_vfunc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="vfunc"/>
+    <link xref="Regress.TestObj" group="vfunc" type="guide"/>
 
   </info>
   <title>Regress.TestObj::allow_none_vfunc</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-bare.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-bare.page
index 103b5bc..4873a1c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-bare.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-bare.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">bare</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-boxed.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-boxed.page
index c632b21..460104b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-boxed.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-boxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">boxed</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-cleanup.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-cleanup.page
index 0dc4c38..bef9537 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-cleanup.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-cleanup.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">cleanup</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-double.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-double.page
index a80b804..bb907ab 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-double.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-double.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">double</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-first.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-first.page
index 94c3659..5600be6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-first.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-first.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">first</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-float.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-float.page
index 569b3e8..a981cf8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-float.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-float.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">float</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-gtype.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-gtype.page
index 3956ea6..2fbf9d9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-gtype.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-gtype.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">gtype</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table-old.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table-old.page
index 7012f4e..003425b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table-old.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table-old.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">hash-table-old</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table.page
index 4a3be63..f11e465 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-hash-table.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">hash-table</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-int.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-int.page
index fdca28f..95a4902 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-int.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-int.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">int</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list-old.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list-old.page
index 38b1f7e..680636d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list-old.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list-old.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">list-old</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list.page
index 17aa89b..7ea5130 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-list.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">list</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-matrix.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-matrix.page
index fc86d85..4c8247b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-matrix.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-matrix.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="vfunc"/>
+    <link xref="Regress.TestObj" group="vfunc" type="guide"/>
 
   </info>
   <title>Regress.TestObj::matrix</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-array-prop.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-array-prop.page
index dd9c067..05b911c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-array-prop.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-array-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-array-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-foreign-struct.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-foreign-struct.page
index d4ef464..c2cb882 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-foreign-struct.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-foreign-struct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-foreign-struct</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-hash-prop.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-hash-prop.page
index 9e7233f..9ddd536 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-hash-prop.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-hash-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-hash-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-int64-prop.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-int64-prop.page
index 34b59f1..d8a9037 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-int64-prop.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-int64-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-int64-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-intarray-ret.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-intarray-ret.page
index c8ffee3..7f041e2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-intarray-ret.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-intarray-ret.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-intarray-ret</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-obj.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-obj.page
index 94dfedb..9d69a6f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-obj.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-obj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-obj</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-strv.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-strv.page
index 66c7ec1..919d38f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-strv.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-strv.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-strv</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-uint64-prop.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-uint64-prop.page
index 35ed4a6..6ee6bda 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-uint64-prop.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-uint64-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-uint64-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-string.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-string.page
index 561f2da..1ae4803 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-string.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-string.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">string</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test-with-static-scope-arg.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test-with-static-scope-arg.page
index 3febc0c..1ffe66e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test-with-static-scope-arg.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test-with-static-scope-arg.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">test-with-static-scope-arg</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test.page
index be5c6ad..15599c6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-test.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">test</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.constructor.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.constructor.page
index 0674eb7..8efd161 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.constructor.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.constructor.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <link xref="Regress.TestObj" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestObj*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.do_matrix.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.do_matrix.page
index 45a57e6..bc4e762 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.do_matrix.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.do_matrix.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_foreign_struct.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
index d003646..1ba8436 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_int64.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_int64.page
index 5ea844a..24f5826 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_int64.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_int64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_obj.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_obj.page
index 693df71..e0d123e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_obj.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_obj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_uint64.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_uint64.page
index 4ce7bab..0c2c68c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_uint64.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_uint64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.forced_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.forced_method.page
index 09328dd..92bfa2d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.forced_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.forced_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method.page
index 3b83028..7469238 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method_callback.page
index e4c2bd4..668096a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.instance_method_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new.page
index a8fd4f0..e931f7d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <link xref="Regress.TestObj" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestObj*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_callback.page
index 07e52ef..d2ec5f6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <link xref="Regress.TestObj" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestObj*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_from_file.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_from_file.page
index bcfd048..a77e915 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_from_file.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.new_from_file.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <link xref="Regress.TestObj" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestObj*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.null_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.null_out.page
index 637585b..c86b4b2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.null_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <link xref="Regress.TestObj" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.page
index fc54d98..42f26db 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestObj</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.set_bare.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.set_bare.page
index 4780264..160b8d2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.set_bare.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.set_bare.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_inout_param.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_inout_param.page
index bc2a21e..333d170 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_inout_param.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_inout_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_out_param.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_out_param.page
index 933af00..1df6c18 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_out_param.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_out_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_param.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_param.page
index a0e4b32..deca81b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_param.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val.page
index 4347f1b..47402c9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val_no_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val_no_out.page
index e931ab9..b590de2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val_no_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.skip_return_val_no_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method.page
index 7885b72..8e5c9b1 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <link xref="Regress.TestObj" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>double</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method_callback.page
index 552dc22..8058ac0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.static_method_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <link xref="Regress.TestObj" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_0.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_0.page
index 748621b..3e2fb61 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_0.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_0.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_1.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_1.page
index 0cfc66d..37e1ad2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_1.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.torture_signature_1.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObjClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestObjClass.page
index 93e56e8..86db748 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestObjClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObjClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestObjClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestOtherError.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestOtherError.page
index 1180b98..7d2d53b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestOtherError.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestOtherError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestOtherError</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateEnum.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateEnum.page
index 788441a..66b477d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateEnum.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateEnum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestPrivateEnum</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateStruct.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateStruct.page
index 8ce8712..5d55c80 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateStruct.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestPrivateStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestPrivateStruct</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.const_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.const_return.page
index fda625d..628186a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.const_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.const_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedA" group="function"/>
+    <link xref="Regress.TestSimpleBoxedA" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const RegressTestSimpleBoxedA*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.copy.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.copy.page
index b91fe94..4e7cf0e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.copy.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <link xref="Regress.TestSimpleBoxedA" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestSimpleBoxedA*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.equals.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.equals.page
index 7e7c16e..5e5dcbd 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.equals.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.equals.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <link xref="Regress.TestSimpleBoxedA" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.page
index 36459d3..08f968f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedA.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestSimpleBoxedA</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.copy.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.copy.page
index 995aef6..fd59315 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.copy.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedB" group="method"/>
+    <link xref="Regress.TestSimpleBoxedB" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestSimpleBoxedB*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.page
index e3c9fcb..2ed2304 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleBoxedB.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestSimpleBoxedB</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleCallback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleCallback.page
index 61bafb5..f815782 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleCallback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSimpleCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestSimpleCallback</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.clone.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.clone.page
index e23b1fe..9b4d353 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.clone.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.clone.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructA" group="method"/>
+    <link xref="Regress.TestStructA" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.page
index 0093ac8..22a1e90 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructA</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.parse.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.parse.page
index 53adcbf..befbd7c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.parse.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructA.parse.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructA" group="function"/>
+    <link xref="Regress.TestStructA" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.clone.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.clone.page
index 03888f0..b3a9f99 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.clone.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.clone.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructB" group="method"/>
+    <link xref="Regress.TestStructB" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.page
index 55d74f5..4ed2b54 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructB.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructB</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructC.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructC.page
index 08e850e..f208fcd 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructC.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructC.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructC</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructD.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructD.page
index 37c7b2a..f791d70 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructD.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructD.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructD</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE.page
index b3688e0..ccc8bbd 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructE</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE__some_union__union.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE__some_union__union.page
index 6f77035..3b81e62 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE__some_union__union.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructE__some_union__union.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestStructE__some_union__union</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructF.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructF.page
index d75ea66..74e8483 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructF.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructF.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructF</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.frob.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.frob.page
index cb46a63..7d5ed65 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.frob.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.frob.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructFixedArray" group="method"/>
+    <link xref="Regress.TestStructFixedArray" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.page
index a18443c..f33eed9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestStructFixedArray.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructFixedArray</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.instance_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.instance_method.page
index 30b5642..fa401f5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.instance_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.instance_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <link xref="Regress.TestSubObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.new.page
index 3b96a33..fbff9d9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSubObj" group="constructor"/>
+    <link xref="Regress.TestSubObj" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestObj*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.page
index f6488d8..7c6cb98 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestSubObj</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.unset_bare.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.unset_bare.page
index ca95f17..5497c25 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.unset_bare.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObj.unset_bare.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <link xref="Regress.TestSubObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObjClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObjClass.page
index 6bbd999..8954334 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObjClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestSubObjClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestSubObjClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestTypeGUInt64.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestTypeGUInt64.page
index d815a3f..e0a7bc0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestTypeGUInt64.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestTypeGUInt64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestTypeGUInt64</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x-testbool.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x-testbool.page
index d7333b8..47ad7be 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x-testbool.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x-testbool.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="property"/>
+    <link xref="Regress.TestWi8021x" group="property" type="guide"/>
     <title type="link" role="topic">testbool</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.get_testbool.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.get_testbool.page
index 052090c..9153172 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.get_testbool.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.get_testbool.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <link xref="Regress.TestWi8021x" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.new.page
index b6b025d..7afe8b1 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="constructor"/>
+    <link xref="Regress.TestWi8021x" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestWi8021x*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.page
index 9b05318..2965873 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestWi8021x</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.set_testbool.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.set_testbool.page
index 8196f97..bad3b1d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.set_testbool.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.set_testbool.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <link xref="Regress.TestWi8021x" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.static_method.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.static_method.page
index 6a42389..c0e98df 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.static_method.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021x.static_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="function"/>
+    <link xref="Regress.TestWi8021x" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021xClass.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021xClass.page
index 071d9a6..5959303 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021xClass.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestWi8021xClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestWi8021xClass</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.VaListAlias.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.VaListAlias.page
index bfd52d2..6b7d031 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.VaListAlias.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.VaListAlias.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.VaListAlias</title>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.aliased_caller_alloc.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.aliased_caller_alloc.page
index 8d36267..769da09 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.aliased_caller_alloc.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.aliased_caller_alloc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_attribute_func.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_attribute_func.page
index ffc8022..dbf8b82 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_attribute_func.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_attribute_func.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_custom_destroy.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_custom_destroy.page
index 6573043..8e08a23 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_custom_destroy.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_custom_destroy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_get_source_file.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_get_source_file.page
index 0424e3c..a76bade 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_get_source_file.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_get_source_file.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>char*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_init.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_init.page
index cffa65b..d2f479a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_init.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_init.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_invalid_regress_annotation.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_invalid_regress_annotation.page
index 1c2256f..e0399cd 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_invalid_regress_annotation.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_invalid_regress_annotation.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_ptr_array.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_ptr_array.page
index 79a3ab2..3b83de9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_ptr_array.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_ptr_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_array.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_array.page
index 6e8b015..d13fee5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_array.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>utf8*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_filename.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_filename.page
index d835b52..2e48458 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_filename.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_return_filename.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gchar*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_set_source_file.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_set_source_file.page
index ac54d22..84c616f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_set_source_file.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_set_source_file.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_space_after_comment_bug631690.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_space_after_comment_bug631690.page
index 8238d38..39cd529 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_space_after_comment_bug631690.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_space_after_comment_bug631690.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_array_length.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_array_length.page
index 89bc37e..5d3813d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_array_length.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_array_length.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated.page
index 9ab21d3..8c68554 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>utf8*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated_out.page
index 540e225..13eb1ca 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_string_zero_terminated_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_test_parsing_bug630862.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_test_parsing_bug630862.page
index 368f740..6fc0ad4 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_test_parsing_bug630862.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_test_parsing_bug630862.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_transfer_floating.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_transfer_floating.page
index a9b1270..4db50ca 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_transfer_floating.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_transfer_floating.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_versioned.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_versioned.page
index c50ca7b..f12a3cf 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.annotation_versioned.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.annotation_versioned.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.atest_error_quark.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.atest_error_quark.page
index 49c84ee..75bc68c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.atest_error_quark.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.atest_error_quark.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GQuark</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_async_ready_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_async_ready_callback.page
index be027cc..eadb613 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_async_ready_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_async_ready_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_destroy_notify_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_destroy_notify_callback.page
index ff381f0..b37a287 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_destroy_notify_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_destroy_notify_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_init.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_init.page
index 8190378..f035be5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_init.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_init.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_method_external_references.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_method_external_references.page
index de8797c..5eef0df 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_method_external_references.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_method_external_references.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_not_a_constructor_new.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_not_a_constructor_new.page
index acbfa5e..63d5766 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_not_a_constructor_new.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_not_a_constructor_new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressFooObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_skip_me.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_skip_me.page
index 914e971..96773b3 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_skip_me.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_skip_me.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant.page
index d4a6fc3..41e570f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant_ptr.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant_ptr.page
index 461c877..81483f1 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant_ptr.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_some_variant_ptr.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_array.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_array.page
index f6fcc31..810eba9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_array.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>utf8*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_param.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_param.page
index f98deeb..57ca7b3 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_param.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_retval.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_retval.page
index 7d1f595..839bee2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_retval.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_char_retval.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const char*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_param.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_param.page
index f72c8c1..00a1e07 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_param.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_retval.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_retval.page
index ee95d72..527b8ea 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_retval.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_const_struct_retval.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const RegressFooStruct*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array.page
index a342b01..17bf08a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array_with_g.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array_with_g.page
index f5e81e3..91d5824 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array_with_g.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_string_array_with_g.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_qualifier.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_qualifier.page
index e797629..8e02366 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_qualifier.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_qualifier.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_type.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_type.page
index adcf6bc..04eec05 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_type.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_unsigned_type.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback.page
index b3a9c3d..210f53c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback2.page
index 19cfec1..1d49d31 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback3.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback3.page
index f04a206..19c1932 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback3.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.foo_test_varargs_callback3.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.func_obj_null_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.func_obj_null_in.page
index 50691f3..40093e2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.func_obj_null_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.func_obj_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.global_get_flags_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.global_get_flags_out.page
index 078b47c..a43baa0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.global_get_flags_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.global_get_flags_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.has_parameter_named_attrs.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.has_parameter_named_attrs.page
index 725aed0..6fd4e6b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.has_parameter_named_attrs.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.has_parameter_named_attrs.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.introspectable_via_alias.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.introspectable_via_alias.page
index 8b28b1f..4d30ec5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.introspectable_via_alias.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.introspectable_via_alias.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.not_introspectable_via_alias.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.not_introspectable_via_alias.page
index afafef2..6158db4 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.not_introspectable_via_alias.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.not_introspectable_via_alias.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.random_function_with_skipped_structure.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.random_function_with_skipped_structure.page
index 8898215..3304979 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.random_function_with_skipped_structure.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.random_function_with_skipped_structure.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.set_abort_on_error.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.set_abort_on_error.page
index 08950c1..2853609 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.set_abort_on_error.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.set_abort_on_error.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_callback.page
index 3ed1fde..ee1afcd 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_out_objects.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_out_objects.page
index f084a5c..8110915 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_out_objects.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_out_objects.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_in.page
index a4b23fb..21c6d9f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_out.page
index 9785207..3fa5c4e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_return.page
index 245e6f3..913dc0d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_fixed_size_int_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint16_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint16_in.page
index 1c1392d..7d05b00 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint16_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint16_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint32_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint32_in.page
index 6a6ae2e..c5eee2d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint32_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint32_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint32</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint64_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint64_in.page
index 553a919..7a7701d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint64_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint64_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint64</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint8_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint8_in.page
index f705ba2..8e68579 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint8_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gint8_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gtype_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gtype_in.page
index 5695d38..0eab274 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gtype_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_gtype_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>char*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_full_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_full_out.page
index 18b06cb..5eb26d6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_full_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_full_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_in.page
index f7629d1..0caeee1 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_inout.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_inout.page
index 6aee8b1..75d142a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_inout.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_inout.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_none_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_none_out.page
index 18c92f3..c4698ce 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_none_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_none_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_in.page
index 17582dd..bab1741 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_out.page
index 2494cab..cdf6bda 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_out.page
index 071f730..b88feb2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_array_int_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_async_ready_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_async_ready_callback.page
index f7c097d..bd65df0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_async_ready_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_async_ready_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean.page
index 64bd1ff..a444eb2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_false.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_false.page
index 3cf8dec..c96a2f9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_false.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_false.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_true.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_true.page
index 6fd9edc..1fb64c1 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_true.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_boolean_true.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_full_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_full_return.page
index 2ce8656..8ada9d2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_full_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_full_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>cairo_t*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_none_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_none_in.page
index 69284e7..059afd5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_none_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_context_none_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_out.page
index 86cfa29..c04a345 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_return.page
index f04fa4e..7d77ae6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_full_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>cairo_surface_t*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_in.page
index f69202f..6730247 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_return.page
index f583a47..a5ac661 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_cairo_surface_none_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>cairo_surface_t*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback.page
index c9f0cad..7d2f2c8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_async.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_async.page
index f0ee48c..8c0a62e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_async.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_async.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify.page
index 31e48e9..f7a5e56 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify_no_user_data.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify_no_user_data.page
index 367b51f..3b162e2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify_no_user_data.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_destroy_notify_no_user_data.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_async.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_async.page
index 37d6ed5..5cc1557 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_async.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_async.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_notifications.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_notifications.page
index d9a30c7..bb0ed81 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_notifications.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_thaw_notifications.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_user_data.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_user_data.page
index 05f8482..3a98a47 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_user_data.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_callback_user_data.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_closure.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure.page
index 0218d54..0fdad91 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_closure.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_one_arg.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_one_arg.page
index 221eab6..0708b5c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_one_arg.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_one_arg.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_variant.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_variant.page
index 6479146..681b37a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_variant.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_closure_variant.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GVariant*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_date_in_gvalue.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_date_in_gvalue.page
index f2a5ec0..adb21f2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_date_in_gvalue.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_date_in_gvalue.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GValue*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_def_error_quark.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_def_error_quark.page
index fbad938..7ad7eb0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_def_error_quark.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_def_error_quark.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GQuark</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_double.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_double.page
index a5e5523..f954fe8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_double.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_double.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gdouble</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_filename_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_filename_return.page
index a5906fc..857e4da 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_filename_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_filename_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GSList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_float.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_float.page
index c6a1942..c395b04 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_float.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_float.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gfloat</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_container_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_container_return.page
index 6332487..f17cdd9 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_container_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_container_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>utf8*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_full_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_full_return.page
index 2faa31b..b127ed7 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_full_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_garray_full_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>utf8*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gerror_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gerror_callback.page
index cbfdcb5..1a5f54c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gerror_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gerror_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_container_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_container_return.page
index 9e59ef1..d465113 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_container_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_container_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GHashTable*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_everything_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_everything_return.page
index 0d608f8..616432a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_everything_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_everything_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GHashTable*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_in.page
index eb8ce9d..b6d2da5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_return.page
index e4a5732..2e739c8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_gvalue_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GHashTable*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return.page
index 39eb096..6b53197 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GHashTable*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return2.page
index cb3b6aa..0c780b5 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nested_everything_return2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GHashTable*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in.page
index d658960..8c457ad 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in2.page
index 9770002..a56ad65 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_in2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return.page
index c224824..c258ee0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const GHashTable*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return2.page
index 078906a..d221744 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_nothing_return2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GHashTable*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_in.page
index 303e6ee..a538b44 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_out.page
index 7d191f0..323469c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_return.page
index 3cb45a8..03461fd 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ghash_null_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const GHashTable*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_container_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_container_return.page
index 5944908..32a3c3a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_container_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_container_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_everything_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_everything_return.page
index 773cf55..6de1a9c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_everything_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_everything_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in.page
index 66126de..d88487f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in2.page
index a2c0ae1..7cba851 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_in2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return.page
index f571415..af54aea 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const GList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return2.page
index 4369761..2901e41 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_nothing_return2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_in.page
index f90b127..b6ca3ab 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_out.page
index 44d6aba..13e421d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_glist_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_container_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_container_return.page
index ebead8c..05587fc 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_container_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_container_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GSList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_everything_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_everything_return.page
index c303cb1..a03f4d8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_everything_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_everything_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GSList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in.page
index 651e4f3..61a14b1 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in2.page
index 9e65273..0703ec0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_in2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return.page
index 066e347..8df79aa 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const GSList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return2.page
index 8f7e343..aeb9a67 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_nothing_return2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GSList*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_in.page
index 52f6d6a..21d8d5c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_out.page
index fe931a8..d763519 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gslist_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gtype.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gtype.page
index fc75886..76e678b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gtype.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gtype.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GType</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_as.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_as.page
index e2be67d..df9d988 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_as.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_as.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GVariant*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_asv.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_asv.page
index 9d8e6b6..2d64ab2 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_asv.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_asv.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GVariant*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_i.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_i.page
index 6a2b233..2eec994 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_i.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_i.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GVariant*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_s.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_s.page
index a98c717..9ef9d9f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_s.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_s.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GVariant*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_v.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_v.page
index 698f10f..c07b2ac 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_v.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_gvariant_v.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GVariant*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_hash_table_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_hash_table_callback.page
index b86e360..24862b1 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_hash_table_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_hash_table_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_int.page
index ff1ed37..430af30 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_int.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int16.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_int16.page
index 770d8fb..d5be61d 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_int16.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int16.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint16</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int32.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_int32.page
index c0f0061..be90ac6 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_int32.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int32.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint32</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int64.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_int64.page
index 5002954..d864702 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_int64.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint64</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int8.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_int8.page
index 03275b1..1cfb431 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_int8.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int8.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint8</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int_out_utf8.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_int_out_utf8.page
index 400ff59..80276c0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_int_out_utf8.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int_out_utf8.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_int_value_arg.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_int_value_arg.page
index 69f223c..a61c91c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_int_value_arg.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_int_value_arg.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_long.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_long.page
index 8382839..30bf3af 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_long.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_long.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>glong</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_callback.page
index 68c571d..152c916 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_double_args.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_double_args.page
index 33112e8..5135297 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_double_args.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_multi_double_args.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_multiline_doc_comments.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_multiline_doc_comments.page
index b8755fb..d660bd8 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_multiline_doc_comments.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_multiline_doc_comments.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_nested_parameter.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_nested_parameter.page
index d5c0f7a..c28cc8f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_nested_parameter.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_nested_parameter.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_null_gerror_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_null_gerror_callback.page
index 8f10551..bdcc152 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_null_gerror_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_null_gerror_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_owned_gerror_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_owned_gerror_callback.page
index 668ead0..49f1b36 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_owned_gerror_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_owned_gerror_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_short.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_short.page
index 9fd725e..53d3b1b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_short.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_short.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gshort</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_simple_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_simple_callback.page
index cc8cceb..514fbfa 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_simple_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_simple_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_size.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_size.page
index cf00a65..3b67a00 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_size.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_size.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gsize</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_skip_unannotated_callback.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_skip_unannotated_callback.page
index b669803..321d087 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_skip_unannotated_callback.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_skip_unannotated_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ssize.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ssize.page
index 41c2764..d11446e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ssize.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ssize.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gssize</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in.page
index 07ad58f..3f9ca2a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in_gvalue.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in_gvalue.page
index 23447c0..44b0c6c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in_gvalue.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_in_gvalue.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GValue*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out.page
index 081c364..207e69f 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>utf8*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_c.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_c.page
index dd726a6..582ab10 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_c.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_c.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>utf8*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_container.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_container.page
index f0fc23c..0515bce 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_container.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_out_container.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>utf8*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_outarg.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_outarg.page
index d6e9db3..a105b5b 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_outarg.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_strv_outarg.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_timet.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_timet.page
index e8127d3..acada71 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_timet.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_timet.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>time_t</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_0.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_0.page
index 298e4ca..3d4c18c 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_0.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_0.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_1.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_1.page
index beb5999..7568989 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_1.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_1.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gboolean</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_2.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_2.page
index bb742fe..eb615c3 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_2.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_torture_signature_2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint.page
index 48901cc..1651512 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>guint</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint16.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint16.page
index ecb3162..2af7ee4 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint16.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint16.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>guint16</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint32.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint32.page
index bfaf042..7ccdde7 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint32.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint32.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>guint32</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint64.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint64.page
index e7587cb..24a9256 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint64.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>guint64</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint8.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint8.page
index fc13715..7222e74 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_uint8.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_uint8.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>guint8</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ulong.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ulong.page
index 32b331e..8095370 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ulong.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ulong.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gulong</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_unichar.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_unichar.page
index dc73530..0349472 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_unichar.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_unichar.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gunichar</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_unsigned_enum_param.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_unsigned_enum_param.page
index 5fbc9aa..642e75a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_unsigned_enum_param.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_unsigned_enum_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const gchar*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_ushort.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_ushort.page
index 31ee272..2b50e72 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_ushort.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_ushort.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gushort</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_in.page
index c21ee5b..eaafeae 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_return.page
index 8e46b6c..6bcb786 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_const_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const char*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_inout.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_inout.page
index 5c51995..ce0a884 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_inout.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_inout.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_nonconst_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_nonconst_return.page
index bacd87b..aa921b0 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_nonconst_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_nonconst_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>char*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_in.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_in.page
index db9a526..9b19637 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_in.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_out.page
index 14906be..6d4c455 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out.page
index 75c69f5..5084da3 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_nonconst_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_nonconst_return.page
index 4aa425f..65b2a8a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_nonconst_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_nonconst_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>char*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_out.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_out.page
index d02e94c..e377199 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_out.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_utf8_out_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_value_get_fundamental_object.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_get_fundamental_object.page
index 139a202..3435610 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_value_get_fundamental_object.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_get_fundamental_object.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>RegressTestFundamentalObject*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_value_return.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_return.page
index e33e73d..2edb30a 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_value_return.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>const GValue*</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_value_set_fundamental_object.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_set_fundamental_object.page
index 6740c44..ba1822e 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_value_set_fundamental_object.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_value_set_fundamental_object.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.test_versioning.page 
b/tests/scanner/Regress-1.0-C-expected/Regress.test_versioning.page
index 33e10ac..a389bda 100644
--- a/tests/scanner/Regress-1.0-C-expected/Regress.test_versioning.page
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.test_versioning.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.ATestError.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.ATestError.page
index 119860d..9ac6820 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.ATestError.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.ATestError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.ATestError</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AliasedTestBoxed.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AliasedTestBoxed.page
index 2229245..9490e4a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AliasedTestBoxed.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AliasedTestBoxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AliasedTestBoxed</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationBitfield.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationBitfield.page
index 8cbc832..4e19ef9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationBitfield.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationBitfield.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationBitfield</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationCallback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationCallback.page
index 30f950c..9a652d8 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationCallback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationCallback</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationForeachFunc.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationForeachFunc.page
index 506ceff..db77a11 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationForeachFunc.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationForeachFunc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationForeachFunc</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationListCallback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationListCallback.page
index 3f9409e..79844c6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationListCallback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationListCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationListCallback</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationNotifyFunc.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationNotifyFunc.page
index b2dc717..17c8029 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationNotifyFunc.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationNotifyFunc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationNotifyFunc</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-attribute-signal.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-attribute-signal.page
index 713c6d6..c30c337 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-attribute-signal.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-attribute-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">attribute-signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
index 2e71c46..6102591 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">doc-empty-arg-parsing</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-function-property.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-function-property.page
index f526ea9..d9d8b55 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-function-property.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-function-property.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="property" type="guide"/>
     <title type="link" role="topic">function-property</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-list-signal.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-list-signal.page
index c9e35a9..4e2044d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-list-signal.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-list-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">list-signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-property.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-property.page
index b570a59..eba5cef 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-property.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-property.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="property" type="guide"/>
     <title type="link" role="topic">string-property</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-signal.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-signal.page
index 4597130..59408b4 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-signal.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-string-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">string-signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-tab-property.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-tab-property.page
index e52a728..9c79727 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-tab-property.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject-tab-property.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="property" type="guide"/>
     <title type="link" role="topic">tab-property</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.allow_none.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.allow_none.page
index d94ad83..4246c2a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.allow_none.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.allow_none.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleeowns.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleeowns.page
index d964b9c..b65b1ce 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleeowns.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleeowns.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleesowns.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleesowns.page
index bcc26d8..221b24c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleesowns.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.calleesowns.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum.page
index 0dc19bc..2aa3f06 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_n.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_n.page
index a687001..b769ba6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_n.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_n.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_nz.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_nz.page
index ed909ac..b7a834a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_nz.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.compute_sum_nz.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.create_object.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.create_object.page
index 6098722..b22eaf8 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.create_object.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.create_object.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.do_not_use.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.do_not_use.page
index 61915f4..8b7912d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.do_not_use.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.do_not_use.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.extra_annos.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.extra_annos.page
index 58bf5ff..9017593 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.extra_annos.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.extra_annos.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.foreach.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.foreach.page
index 5d5c79d..cdf26c5 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.foreach.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.foreach.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_hash.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_hash.page
index ff2aef1..20ffffd 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_hash.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_hash.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>{String: GObject.Object}</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_objects.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_objects.page
index e339e08..6ae6806 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_objects.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_objects.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[Regress.AnnotationObject]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_strings.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_strings.page
index 9a3db5d..96134cf 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_strings.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.get_strings.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.hidden_self.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.hidden_self.page
index 1abc401..2238d90 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.hidden_self.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.hidden_self.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.in.page
index b5f2d65..cf66940 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout.page
index 9b61536..b8d5088 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout2.page
index 58cab9a..6c34095 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout3.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout3.page
index e21a9c6..d7adac1 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout3.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.inout3.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.method.page
index c771d76..217ae08 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.notrans.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.notrans.page
index 606e2b1..c9a864f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.notrans.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.notrans.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.out.page
index d4bf6b1..3f84550 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.page
index 2010469..95675a6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.AnnotationObject</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.parse_args.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.parse_args.page
index d1e428d..1bc89fb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.parse_args.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.parse_args.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data.page
index b1e4129..6c5d1e7 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data2.page
index 402b162..de78bd3 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data3.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data3.page
index 8c54d3b..94c689e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data3.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.set_data3.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.string_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.string_out.page
index 5932129..78e1db7 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.string_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.string_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.use_buffer.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.use_buffer.page
index 36a1815..c2e5f11 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.use_buffer.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.use_buffer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.watch_full.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.watch_full.page
index c990409..329c968 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.watch_full.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.watch_full.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.with_voidp.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.with_voidp.page
index 8a77746..57eff66 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.with_voidp.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationObject.with_voidp.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationStruct.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationStruct.page
index edc9fd1..e210042 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationStruct.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.AnnotationStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.AnnotationStruct</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooASingle.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooASingle.page
index b59e763..09cd98f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooASingle.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooASingle.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooASingle</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooAddressType.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooAddressType.page
index e3f5293..008a8f3 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooAddressType.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooAddressType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooAddressType</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.add.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.add.page
index 975d512..48b5bfd 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.add.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.add.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBRect" group="method"/>
+    <link xref="Regress.FooBRect" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.new.page
index 9476671..21d810a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBRect" group="constructor"/>
+    <link xref="Regress.FooBRect" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooBRect</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.page
index 57e2652..fd1e9d6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBRect.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooBRect</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBUnion.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBUnion.page
index 63831e7..8644d96 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBUnion.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBUnion.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooBUnion</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.method.page
index 270c809..4f00498 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBoxed" group="method"/>
+    <link xref="Regress.FooBoxed" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.new.page
index 8d86995..8cfb619 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBoxed" group="constructor"/>
+    <link xref="Regress.FooBoxed" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooBoxed</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.page
index 962300f..bca1f99 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBoxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooBoxed</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.page
index c9cd8be..0b4f9e5 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooBuffer</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.some_method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.some_method.page
index 5903a76..af7c408 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.some_method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooBuffer.some_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBuffer" group="method"/>
+    <link xref="Regress.FooBuffer" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooCallback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooCallback.page
index 241296e..52feda2 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooCallback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooCallback</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.method.page
index 0ba67e7..4745995 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooDBusData" group="method"/>
+    <link xref="Regress.FooDBusData" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.page
index 08ad0d2..b4eaead 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooDBusData.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooDBusData</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumFullname.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumFullname.page
index 443f25e..00169aa 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumFullname.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumFullname.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooEnumFullname</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumNoType.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumNoType.page
index 5957904..d2b41e6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumNoType.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumNoType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooEnumNoType</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumType.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumType.page
index d052d4f..c3ff89b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumType.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEnumType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooEnumType</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooError.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooError.page
index 5577eeb..8c0b6a2 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooError.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooError</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEvent.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEvent.page
index 0b77bcb..ce36830 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEvent.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEvent.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooEvent</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventAny.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventAny.page
index 45cd3a1..562ec03 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventAny.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventAny.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooEventAny</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventExpose.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventExpose.page
index 7e9ca7d..0000add 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventExpose.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooEventExpose.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooEventExpose</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsNoType.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsNoType.page
index d4db757..53539d4 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsNoType.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsNoType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooFlagsNoType</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsType.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsType.page
index e4f3ede..2b4afeb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsType.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooFlagsType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooFlagsType</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.copy.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.copy.page
index 97aff9a..eb2fc33 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.copy.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooForeignStruct" group="method"/>
+    <link xref="Regress.FooForeignStruct" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooForeignStruct</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.new.page
index 7753c4a..fdeb397 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooForeignStruct" group="constructor"/>
+    <link xref="Regress.FooForeignStruct" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooForeignStruct</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.page
index 06c5793..312994a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooForeignStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooForeignStruct</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface-do_regress_foo.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface-do_regress_foo.page
index b39c41f..17f6ec9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface-do_regress_foo.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface-do_regress_foo.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooInterface" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooInterface::do_regress_foo</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.do_regress_foo.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.do_regress_foo.page
index f992fca..b91471d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.do_regress_foo.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.do_regress_foo.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooInterface" group="method"/>
+    <link xref="Regress.FooInterface" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.page
index 16d0311..83ae1d0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooInterface</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.static_method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.static_method.page
index e79716c..d38a448 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.static_method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooInterface.static_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooInterface" group="function"/>
+    <link xref="Regress.FooInterface" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-read_fn.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-read_fn.page
index 72ee34e..4bdaf37 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-read_fn.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-read_fn.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooObject" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooObject::read_fn</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-signal.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-signal.page
index f506623..6e5657d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-signal.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="signal"/>
+    <link xref="Regress.FooObject" group="signal" type="guide"/>
     <title type="link" role="topic">signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-string.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-string.page
index d86283d..a738fdd 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-string.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-string.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <link xref="Regress.FooObject" group="property" type="guide"/>
     <title type="link" role="topic">string</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-virtual_method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-virtual_method.page
index aaf6bfa..d2ccd86 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-virtual_method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject-virtual_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooObject" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooObject::virtual_method</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.a_global_method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.a_global_method.page
index 5241c4f..83fec18 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.a_global_method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.a_global_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <link xref="Regress.FooObject" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.append_new_stack_layer.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.append_new_stack_layer.page
index 8c70035..d53564b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.append_new_stack_layer.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.append_new_stack_layer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooOtherObject</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.dup_name.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.dup_name.page
index baf2386..46a61b2 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.dup_name.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.dup_name.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>String</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.external_type.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.external_type.page
index 7127617..fb2b54c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.external_type.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.external_type.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Utility.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_default.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_default.page
index 63027a5..8ab8654 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_default.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_default.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <link xref="Regress.FooObject" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooSubobject</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_name.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_name.page
index 54b6f10..b06580f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_name.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.get_name.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>String</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.handle_glyph.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.handle_glyph.page
index 4de3f71..746d830 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.handle_glyph.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.handle_glyph.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.is_it_time_yet.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.is_it_time_yet.page
index 5586b96..8f83b37 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.is_it_time_yet.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.is_it_time_yet.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new.page
index 0cc6155..32500e1 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="constructor"/>
+    <link xref="Regress.FooObject" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooObject</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new_as_super.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new_as_super.page
index 1245175..2c85b26 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new_as_super.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.new_as_super.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="constructor"/>
+    <link xref="Regress.FooObject" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.page
index 8d801b7..1cbea89 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooObject</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.read.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.read.page
index 526a4fb..b59223c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.read.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.read.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.static_meth.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.static_meth.page
index 3bec5bb..c4c1045 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.static_meth.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.static_meth.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <link xref="Regress.FooObject" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.various.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.various.page
index 6f861c7..8ed0b6d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.various.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.various.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.virtual_method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.virtual_method.page
index 980d4ef..460c461 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.virtual_method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObject.virtual_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObjectCookie.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObjectCookie.page
index 4d9cabc..44a63ab 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObjectCookie.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooObjectCookie.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooObjectCookie</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooOtherObject.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooOtherObject.page
index 5368b92..0916a44 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooOtherObject.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooOtherObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooOtherObject</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.add.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.add.page
index 18646a8..46d6252 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.add.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.add.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooRectangle" group="method"/>
+    <link xref="Regress.FooRectangle" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.page
index 521a68b..0cfef62 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooRectangle.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooRectangle</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStackLayer.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStackLayer.page
index bd7a445..8a08c9a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStackLayer.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStackLayer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooStackLayer</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStruct.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStruct.page
index 4088a6c..84f5d19 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStruct.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooStruct</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy-event.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy-event.page
index 5a29770..961a22e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy-event.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy-event.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="signal"/>
+    <link xref="Regress.FooSubInterface" group="signal" type="guide"/>
     <title type="link" role="topic">destroy-event</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy_event.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy_event.page
index 8df59ff..5abc585 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy_event.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-destroy_event.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooSubInterface" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooSubInterface::destroy_event</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_bar.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_bar.page
index 04a5551..8164924 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_bar.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_bar.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooSubInterface" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooSubInterface::do_bar</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_baz.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_baz.page
index b3e4bd7..4945c89 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_baz.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface-do_baz.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooSubInterface" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooSubInterface::do_baz</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_bar.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_bar.page
index 7db9c6b..8a1fd9e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_bar.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_bar.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <link xref="Regress.FooSubInterface" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_baz.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_baz.page
index 00fc125..10e8020 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_baz.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.do_baz.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <link xref="Regress.FooSubInterface" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.page
index 4ace79f..0694e3d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubInterface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooSubInterface</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.new.page
index b9991b8..6e400bb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubobject" group="constructor"/>
+    <link xref="Regress.FooSubobject" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooSubobject</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.page
index da87ffa..f9cac64 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooSubobject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooSubobject</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooThingWithArray.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooThingWithArray.page
index 7ae6ae5..430dce7 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooThingWithArray.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooThingWithArray.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooThingWithArray</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUnion.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUnion.page
index 06d2e80..9746f17 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUnion.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUnion.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooUnion</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUtilityStruct.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUtilityStruct.page
index 0471b87..2b94f69 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUtilityStruct.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooUtilityStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooUtilityStruct</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooXEvent.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooXEvent.page
index 1812249..c389ef0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooXEvent.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.FooXEvent.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooXEvent</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.LikeGnomeKeyringPasswordSchema.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.LikeGnomeKeyringPasswordSchema.page
index 05362e5..44a946e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.LikeGnomeKeyringPasswordSchema.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.LikeGnomeKeyringPasswordSchema.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.LikeGnomeKeyringPasswordSchema</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.PtrArrayAlias.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.PtrArrayAlias.page
index 9af00b5..f66aee4 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.PtrArrayAlias.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.PtrArrayAlias.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.PtrArrayAlias</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestABCError.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestABCError.page
index 6a044d7..f31b58e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestABCError.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestABCError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestABCError</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.copy.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.copy.page
index d7fe088..eac2133 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.copy.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <link xref="Regress.TestBoxed" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxed</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.equals.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.equals.page
index 82819c8..23a6d7d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.equals.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.equals.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <link xref="Regress.TestBoxed" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new.page
index 9377348..5fbf83a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <link xref="Regress.TestBoxed" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxed</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor1.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor1.page
index 915a79b..7d1b27b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor1.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor1.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <link xref="Regress.TestBoxed" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxed</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor2.page
index 7cdfd4f..3a4ef98 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <link xref="Regress.TestBoxed" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxed</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor3.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor3.page
index 0362341..da86a8e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor3.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.new_alternative_constructor3.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="constructor"/>
+    <link xref="Regress.TestBoxed" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxed</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.page
index c6792c5..baa423f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxed</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.copy.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.copy.page
index c79a4d2..78b8165 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.copy.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedB" group="method"/>
+    <link xref="Regress.TestBoxedB" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxedB</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.new.page
index 687c90d..b68acc9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedB" group="constructor"/>
+    <link xref="Regress.TestBoxedB" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxedB</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.page
index 46cf7c1..0e39780 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedB.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxedB</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.new.page
index 25dd557..301936b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedC" group="constructor"/>
+    <link xref="Regress.TestBoxedC" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxedC</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.page
index 88dd1a4..18b77d9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedC.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxedC</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.copy.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.copy.page
index f30d472..be4b26a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.copy.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <link xref="Regress.TestBoxedD" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxedD</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.free.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.free.page
index c6affa2..3198b66 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.free.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.free.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <link xref="Regress.TestBoxedD" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.get_magic.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.get_magic.page
index 6246564..fdb9dbf 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.get_magic.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.get_magic.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <link xref="Regress.TestBoxedD" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.new.page
index 781cd99..6ed46e5 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="constructor"/>
+    <link xref="Regress.TestBoxedD" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxedD</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.page
index 17b3c79..995e80d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestBoxedD.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxedD</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallback.page
index 9a219e9..bed84d5 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallback</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackArray.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackArray.page
index 7ceb2e0..7d3f7b8 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackArray.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackArray.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackArray</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackFull.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackFull.page
index 3de1fbe..0b8fca1 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackFull.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackFull.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackFull</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackGError.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackGError.page
index 1f6f2bd..804382f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackGError.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackGError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackGError</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackHashtable.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackHashtable.page
index 906947c..06ebb70 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackHashtable.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackHashtable.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackHashtable</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackOwnedGError.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackOwnedGError.page
index e7397a1..28b21ea 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackOwnedGError.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackOwnedGError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackOwnedGError</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackUserData.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackUserData.page
index f3047cf..286c830 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackUserData.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestCallbackUserData.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackUserData</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestDEFError.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestDEFError.page
index 6a92ba9..589059d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestDEFError.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestDEFError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestDEFError</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnum.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnum.page
index 9009dcd..814b474 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnum.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestEnum</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumNoGEnum.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumNoGEnum.page
index a0cd98c..5c0c559 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumNoGEnum.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumNoGEnum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestEnumNoGEnum</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumUnsigned.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumUnsigned.page
index 327cacc..df3cfa1 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumUnsigned.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestEnumUnsigned.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestEnumUnsigned</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestError.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestError.page
index c635d0e..d6a6ebb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestError.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestError</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFlags.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFlags.page
index d545197..d5bfeeb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFlags.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFlags.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestFlags</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.new.page
index 9ca5d06..35ea1f4 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestFloating" group="constructor"/>
+    <link xref="Regress.TestFloating" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestFloating</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.page
index 481bea2..07ef3f2 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFloating.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestFloating</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.page
index d669f54..a8cb35a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalObject</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.ref.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.ref.page
index d887b19..7891d88 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.ref.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.ref.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <link xref="Regress.TestFundamentalObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestFundamentalObject</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.unref.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.unref.page
index 2e0932b..8992abc 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.unref.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObject.unref.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <link xref="Regress.TestFundamentalObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectCopyFunction.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectCopyFunction.page
index dfd65ce..73a3328 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectCopyFunction.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectCopyFunction.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalObjectCopyFunction</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectFinalizeFunction.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectFinalizeFunction.page
index 2b9d965..df0e8fb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectFinalizeFunction.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalObjectFinalizeFunction.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalObjectFinalizeFunction</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.new.page
index e879a7d..109cb52 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.new.page
@@ -7,7 +7,9 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestFundamentalSubObject" group="constructor"/>
+    <link xref="Regress.TestFundamentalSubObject"
+      group="constructor"
+      type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestFundamentalSubObject</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.page
index 4e40b9c..619eb30 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestFundamentalSubObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalSubObject</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo.page
index 9c1af71..eb60f55 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
index 176b164..f9f05b2 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_origin.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_origin.page
index 17020c6..24489cf 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_origin.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_origin.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_size.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_size.page
index e2444c6..f8c06b4 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_size.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.get_size.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.page
index 05d628f..02fa064 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritDrawable.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestInheritDrawable</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritPixmapObjectClass.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritPixmapObjectClass.page
index deaeea5..0df0396 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritPixmapObjectClass.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInheritPixmapObjectClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestInheritPixmapObjectClass</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInterface.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInterface.page
index d097d9c..4f39890 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInterface.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestInterface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestInterface</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-all.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-all.page
index 1094566..c2d87a4 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-all.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-all.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">all</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-allow_none_vfunc.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-allow_none_vfunc.page
index 874928d..3febd77 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-allow_none_vfunc.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-allow_none_vfunc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.TestObj" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.TestObj::allow_none_vfunc</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-bare.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-bare.page
index 97c7ee6..f1f1b52 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-bare.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-bare.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">bare</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-boxed.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-boxed.page
index e870627..a392a77 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-boxed.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-boxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">boxed</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-cleanup.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-cleanup.page
index 0bff84e..8e5e2bf 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-cleanup.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-cleanup.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">cleanup</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-double.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-double.page
index df73505..5e2df6b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-double.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-double.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">double</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-first.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-first.page
index 34d6f7c..d0294e9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-first.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-first.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">first</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-float.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-float.page
index ea02ac2..0554ba8 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-float.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-float.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">float</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-gtype.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-gtype.page
index b477bed..6b222e4 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-gtype.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-gtype.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">gtype</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table-old.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table-old.page
index ca81a39..1d3c3c2 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table-old.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table-old.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">hash-table-old</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table.page
index abd64ea..f8d3441 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-hash-table.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">hash-table</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-int.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-int.page
index 8865234..0c3f4cc 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-int.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-int.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">int</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list-old.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list-old.page
index 19331f3..9d8ea91 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list-old.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list-old.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">list-old</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list.page
index 93252b2..02638e9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-list.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">list</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-matrix.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-matrix.page
index 7b81f90..1d83217 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-matrix.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-matrix.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.TestObj" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.TestObj::matrix</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-array-prop.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-array-prop.page
index 2e2d2fb..b1919f9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-array-prop.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-array-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-array-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-foreign-struct.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-foreign-struct.page
index 1f4d53d..31b8ca3 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-foreign-struct.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-foreign-struct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-foreign-struct</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-hash-prop.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-hash-prop.page
index 58d0393..137a413 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-hash-prop.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-hash-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-hash-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-int64-prop.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-int64-prop.page
index 28d0b7e..6c528c0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-int64-prop.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-int64-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-int64-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-intarray-ret.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-intarray-ret.page
index 2a1f980..f724bcb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-intarray-ret.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-intarray-ret.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-intarray-ret</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-obj.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-obj.page
index 9f3e81f..d7e15e0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-obj.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-obj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-obj</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-strv.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-strv.page
index ae851a3..a63e207 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-strv.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-strv.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-strv</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-uint64-prop.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-uint64-prop.page
index 17a54d1..6fbf7a0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-uint64-prop.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-uint64-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-uint64-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-string.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-string.page
index 13f2b4b..2e91097 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-string.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-string.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">string</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test-with-static-scope-arg.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test-with-static-scope-arg.page
index 6c2fced..b19711f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test-with-static-scope-arg.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test-with-static-scope-arg.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">test-with-static-scope-arg</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test.page
index ebec470..9700cef 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-test.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">test</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.constructor.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.constructor.page
index e41bb1d..14c8ba6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.constructor.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.constructor.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <link xref="Regress.TestObj" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestObj</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.do_matrix.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.do_matrix.page
index aa1e5f3..2b27fe6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.do_matrix.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.do_matrix.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_foreign_struct.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
index 0096789..a2eb7ea 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_int64.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_int64.page
index 029b884..b2853ef 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_int64.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_int64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_obj.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_obj.page
index 4997415..c0f9950 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_obj.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_obj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_uint64.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_uint64.page
index 491828a..7ff7b0b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_uint64.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_uint64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.forced_method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.forced_method.page
index f70bfbe..771bba8 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.forced_method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.forced_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method.page
index 636d216..096b754 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method_callback.page
index 9fc1408..d0f6009 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.instance_method_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new.page
index 2391086..d3210ca 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <link xref="Regress.TestObj" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestObj</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_callback.page
index 49cdd8e..4427952 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <link xref="Regress.TestObj" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestObj</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_from_file.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_from_file.page
index ae4dd14..a4f9980 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_from_file.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.new_from_file.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="constructor"/>
+    <link xref="Regress.TestObj" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestObj</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.null_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.null_out.page
index fed5b0a..dfc9ef0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.null_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <link xref="Regress.TestObj" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.page
index 9c4b902..b842894 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestObj</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.set_bare.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.set_bare.page
index b4da15e..d80d786 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.set_bare.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.set_bare.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_inout_param.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_inout_param.page
index 14cc9da..df6625d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_inout_param.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_inout_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_out_param.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_out_param.page
index 3a44777..f557941 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_out_param.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_out_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_param.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_param.page
index e6e4535..06c0c62 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_param.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val.page
index 7323da2..9ea28a1 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val_no_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val_no_out.page
index 84807b3..c61e93e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val_no_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.skip_return_val_no_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method.page
index 4744d5f..d1f2e59 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <link xref="Regress.TestObj" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method_callback.page
index d428186..13e917e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.static_method_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <link xref="Regress.TestObj" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_0.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_0.page
index fa7d17b..8053e0b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_0.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_0.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_1.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_1.page
index 2094693..0ba6cbb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_1.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.torture_signature_1.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestOtherError.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestOtherError.page
index d1887d5..858e58a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestOtherError.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestOtherError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestOtherError</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateEnum.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateEnum.page
index 788441a..66b477d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateEnum.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateEnum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestPrivateEnum</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateStruct.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateStruct.page
index fa50813..7b1309d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateStruct.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestPrivateStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestPrivateStruct</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.const_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.const_return.page
index 81a0049..7f5dfde 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.const_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.const_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedA" group="function"/>
+    <link xref="Regress.TestSimpleBoxedA" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestSimpleBoxedA</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.copy.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.copy.page
index e7d1c81..2784f14 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.copy.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <link xref="Regress.TestSimpleBoxedA" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestSimpleBoxedA</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.equals.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.equals.page
index 9119729..aa9a02e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.equals.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.equals.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <link xref="Regress.TestSimpleBoxedA" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.page
index 2a8dd62..9117ddb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedA.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestSimpleBoxedA</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.copy.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.copy.page
index 0db8a8d..f0ca721 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.copy.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedB" group="method"/>
+    <link xref="Regress.TestSimpleBoxedB" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestSimpleBoxedB</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.page
index b775b86..7ecc623 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleBoxedB.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestSimpleBoxedB</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleCallback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleCallback.page
index 61bafb5..f815782 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleCallback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSimpleCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestSimpleCallback</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.clone.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.clone.page
index f023cfe..9d23bbd 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.clone.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.clone.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructA" group="method"/>
+    <link xref="Regress.TestStructA" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.page
index 07b1752..a6a9817 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructA</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.parse.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.parse.page
index 22038ba..38406e6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.parse.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructA.parse.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructA" group="function"/>
+    <link xref="Regress.TestStructA" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.clone.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.clone.page
index 692f899..ed5f9c0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.clone.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.clone.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructB" group="method"/>
+    <link xref="Regress.TestStructB" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.page
index b5b2ff3..21d8626 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructB.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructB</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructC.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructC.page
index 1db74ca..6bd5812 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructC.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructC.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructC</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructD.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructD.page
index cf224e3..aa9f131 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructD.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructD.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructD</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE.page
index 75684f3..b931c36 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructE</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE__some_union__union.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE__some_union__union.page
index 6f77035..3b81e62 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE__some_union__union.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructE__some_union__union.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestStructE__some_union__union</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructF.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructF.page
index fe5e7bc..cfb434b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructF.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructF.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructF</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.frob.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.frob.page
index b3cdcd7..a237385 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.frob.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.frob.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructFixedArray" group="method"/>
+    <link xref="Regress.TestStructFixedArray" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.page
index b5df529..db6e789 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestStructFixedArray.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructFixedArray</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.instance_method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.instance_method.page
index e55a1c3..4a7427e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.instance_method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.instance_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <link xref="Regress.TestSubObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.new.page
index 91236d2..a66646b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSubObj" group="constructor"/>
+    <link xref="Regress.TestSubObj" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestObj</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.page
index 39e755b..7147da1 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestSubObj</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.unset_bare.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.unset_bare.page
index e297b4d..2b720eb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.unset_bare.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestSubObj.unset_bare.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <link xref="Regress.TestSubObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestTypeGUInt64.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestTypeGUInt64.page
index d815a3f..e0a7bc0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestTypeGUInt64.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestTypeGUInt64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestTypeGUInt64</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x-testbool.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x-testbool.page
index 7835ee5..256dbb6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x-testbool.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x-testbool.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="property"/>
+    <link xref="Regress.TestWi8021x" group="property" type="guide"/>
     <title type="link" role="topic">testbool</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.get_testbool.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.get_testbool.page
index f38ab9c..0c9440b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.get_testbool.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.get_testbool.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <link xref="Regress.TestWi8021x" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.new.page
index 9bcbcc1..c79a2f5 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="constructor"/>
+    <link xref="Regress.TestWi8021x" group="constructor" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestWi8021x</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.page
index 7c9958d..d69548f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestWi8021x</title>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.set_testbool.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.set_testbool.page
index 764aa43..471c51c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.set_testbool.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.set_testbool.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <link xref="Regress.TestWi8021x" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.static_method.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.static_method.page
index 685c311..ccfe04c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.static_method.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestWi8021x.static_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="function"/>
+    <link xref="Regress.TestWi8021x" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.aliased_caller_alloc.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.aliased_caller_alloc.page
index 5c57a1b..de2b93b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.aliased_caller_alloc.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.aliased_caller_alloc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_attribute_func.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_attribute_func.page
index 981fc54..8f00a10 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_attribute_func.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_attribute_func.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_custom_destroy.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_custom_destroy.page
index a975754..4cc018c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_custom_destroy.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_custom_destroy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_get_source_file.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_get_source_file.page
index a227f73..39f6c14 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_get_source_file.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_get_source_file.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>filename</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_init.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_init.page
index ae10b7e..c75d9c2 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_init.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_init.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_invalid_regress_annotation.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_invalid_regress_annotation.page
index a32b80f..1997a4d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_invalid_regress_annotation.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_invalid_regress_annotation.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_ptr_array.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_ptr_array.page
index dd6de2a..9bfb168 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_ptr_array.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_ptr_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_array.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_array.page
index a400582..3f63c9a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_array.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_filename.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_filename.page
index c590aec..8641945 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_filename.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_return_filename.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>filename</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_set_source_file.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_set_source_file.page
index 4601452..a5977b8 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_set_source_file.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_set_source_file.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_space_after_comment_bug631690.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_space_after_comment_bug631690.page
index e8891e3..675e00d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_space_after_comment_bug631690.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_space_after_comment_bug631690.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_array_length.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_array_length.page
index bdb0261..347eb6d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_array_length.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_array_length.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated.page
index 0557895..741447e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated_out.page
index dce9add..cd4d8be 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_string_zero_terminated_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_test_parsing_bug630862.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_test_parsing_bug630862.page
index b9f8a5c..edade5b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_test_parsing_bug630862.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_test_parsing_bug630862.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_transfer_floating.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_transfer_floating.page
index 33bd9f4..a4fceaf 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_transfer_floating.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_transfer_floating.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_versioned.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_versioned.page
index 6693eb1..f1d5700 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_versioned.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.annotation_versioned.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.atest_error_quark.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.atest_error_quark.page
index 26b3557..3aade3c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.atest_error_quark.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.atest_error_quark.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Quark</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_async_ready_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_async_ready_callback.page
index 4a3e911..980a930 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_async_ready_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_async_ready_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_destroy_notify_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_destroy_notify_callback.page
index 83a8354..d5cff2a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_destroy_notify_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_destroy_notify_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_init.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_init.page
index 81fae43..20eb206 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_init.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_init.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_method_external_references.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_method_external_references.page
index 0e5168e..10876aa 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_method_external_references.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_method_external_references.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_not_a_constructor_new.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_not_a_constructor_new.page
index 38264da..31f881b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_not_a_constructor_new.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_not_a_constructor_new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooObject</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_array.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_array.page
index 24d4000..989084b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_array.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_param.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_param.page
index 3cb9d8e..4f09562 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_param.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_retval.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_retval.page
index e478432..3ff9265 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_retval.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_char_retval.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>String</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_param.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_param.page
index b52e7d3..da103fb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_param.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_retval.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_retval.page
index 5521386..9c7539c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_retval.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_const_struct_retval.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooStruct</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array.page
index 24dfaac..fe3b85a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array_with_g.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array_with_g.page
index b34cf4f..8b5c901 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array_with_g.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_string_array_with_g.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_qualifier.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_qualifier.page
index ebd9a0f..c35d3e9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_qualifier.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_qualifier.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_type.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_type.page
index f62023e..9f68b51 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_type.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.foo_test_unsigned_type.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.func_obj_null_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.func_obj_null_in.page
index 79a12aa..446001a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.func_obj_null_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.func_obj_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.global_get_flags_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.global_get_flags_out.page
index 741a353..bafa541 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.global_get_flags_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.global_get_flags_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.has_parameter_named_attrs.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.has_parameter_named_attrs.page
index f147b84..d4f673d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.has_parameter_named_attrs.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.has_parameter_named_attrs.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.introspectable_via_alias.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.introspectable_via_alias.page
index f138818..aa2baa6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.introspectable_via_alias.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.introspectable_via_alias.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.set_abort_on_error.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.set_abort_on_error.page
index cfddc65..9b300e1 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.set_abort_on_error.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.set_abort_on_error.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_callback.page
index d5d324c..112cd23 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_out_objects.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_out_objects.page
index 0eab51d..51026b5 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_out_objects.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_out_objects.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_in.page
index 1f570f3..14a6e66 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_out.page
index e10c883..ce62153 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_return.page
index 18179bf..1e2c678 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_fixed_size_int_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[Number]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint16_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint16_in.page
index b15076f..e4b957e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint16_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint16_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint32_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint32_in.page
index f92ad91..171ad11 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint32_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint32_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint32</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint64_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint64_in.page
index 98a57d5..a8b51a6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint64_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint64_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint8_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint8_in.page
index fbaae44..16ddc7c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint8_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gint8_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gtype_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gtype_in.page
index 0488943..61e1d0a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gtype_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_gtype_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>String</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_full_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_full_out.page
index d2b0ab8..5f580ad 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_full_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_full_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[Number]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_in.page
index c3b26b2..3d41dca 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_inout.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_inout.page
index 118056f..b4094cd 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_inout.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_inout.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_none_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_none_out.page
index a841e04..ac10521 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_none_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_none_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[Number]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_in.page
index eadf590..33b27a0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_out.page
index c50b620..1e1a364 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_out.page
index ba2b349..78953ec 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_array_int_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_async_ready_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_async_ready_callback.page
index c7cd25e..89d737c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_async_ready_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_async_ready_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean.page
index 15f8a67..e165db2 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_false.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_false.page
index 2c35db3..21e169c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_false.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_false.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_true.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_true.page
index 0206b08..e525a2f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_true.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_boolean_true.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_full_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_full_return.page
index d78865d..1c222c6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_full_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_full_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>cairo.Context</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_none_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_none_in.page
index 9abd2d1..f710ac0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_none_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_context_none_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_out.page
index c0d6675..dcec607 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_return.page
index eee51f1..f1b0f96 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_full_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>cairo.Surface</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_in.page
index ef6d4cc..783576a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_return.page
index cec7127..72e602e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_cairo_surface_none_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>cairo.Surface</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback.page
index 5797086..869dd98 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_async.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_async.page
index b281ca7..7b9ef5b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_async.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_async.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify.page
index 18496d5..d147c97 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify_no_user_data.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify_no_user_data.page
index 6679446..7fa31a3 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify_no_user_data.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_destroy_notify_no_user_data.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_async.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_async.page
index 592d8e0..66dec18 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_async.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_async.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_notifications.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_notifications.page
index 24e0e24..9a8b57e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_notifications.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_thaw_notifications.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_user_data.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_user_data.page
index 5e824a9..dd9f597 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_user_data.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_callback_user_data.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure.page
index ee8f025..a954544 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_one_arg.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_one_arg.page
index 3df43b8..3c37f7a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_one_arg.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_one_arg.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_variant.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_variant.page
index e54fd5a..2bdbfe6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_variant.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_closure_variant.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Variant</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_date_in_gvalue.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_date_in_gvalue.page
index c6a75d7..acb379e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_date_in_gvalue.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_date_in_gvalue.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Value</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_def_error_quark.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_def_error_quark.page
index 46d62af..5a82a3f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_def_error_quark.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_def_error_quark.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Quark</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_double.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_double.page
index 7be3ebd..0ed75f6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_double.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_double.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_filename_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_filename_return.page
index e4c935f..b26b613 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_filename_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_filename_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[filename]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_float.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_float.page
index 27952a2..30f2ef7 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_float.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_float.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_container_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_container_return.page
index 5dad944..a419628 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_container_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_container_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_full_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_full_return.page
index 35b90f8..86b1b78 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_full_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_garray_full_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gerror_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gerror_callback.page
index 4d7bc88..31ab83c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gerror_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gerror_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_container_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_container_return.page
index e15eb13..b002deb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_container_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_container_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>{String: String}</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_everything_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_everything_return.page
index 0b0d347..1c1a0a9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_everything_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_everything_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>{String: String}</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_in.page
index 2556237..2c80137 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_return.page
index 8a9fe98..08748ea 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_gvalue_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>{String: GObject.Value}</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return.page
index c2701df..4dece43 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>{String: {String: String}}</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return2.page
index 896e346..8aa4da3 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nested_everything_return2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>{String: {String: String}}</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in.page
index 438f5ab..62990fc 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in2.page
index 2dc3aa8..72d774d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_in2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return.page
index 4ee392e..e3729a5 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>{String: String}</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return2.page
index 492f653..7777ab4 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_nothing_return2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>{String: String}</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_in.page
index 52dd265..413a75b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_out.page
index 09d222d..2c27253 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_return.page
index dac341f..df6d686 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ghash_null_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>{String: String}</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_container_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_container_return.page
index 0e6cc95..c3ac7cb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_container_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_container_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_everything_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_everything_return.page
index a58d926..fb31f77 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_everything_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_everything_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in.page
index 3e14483..3c85d19 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in2.page
index b22fd18..f160d12 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_in2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return.page
index ec64972..e741d90 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return2.page
index b31d98f..0fccdbb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_nothing_return2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_in.page
index 6add7ce..dfedc28 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_out.page
index b13cc9a..a1c7c68 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_glist_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_container_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_container_return.page
index 19f7091..5133d11 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_container_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_container_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_everything_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_everything_return.page
index 5393646..f82b1ce 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_everything_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_everything_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in.page
index e011db6..3409619 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in2.page
index 0e71821..05e0b56 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_in2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return.page
index dc11a42..03597fb 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return2.page
index 5e1c564..0331f92 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_nothing_return2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_in.page
index e698701..34168c8 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_out.page
index 5c25956..4c9f3ca 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gslist_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gtype.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gtype.page
index d2a438d..824689a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gtype.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gtype.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GType</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_as.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_as.page
index 0d301a9..1eedc34 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_as.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_as.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Variant</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_asv.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_asv.page
index fa477da..a5709df 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_asv.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_asv.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Variant</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_i.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_i.page
index 7af092f..e1e7dc0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_i.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_i.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Variant</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_s.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_s.page
index b98b64d..139e0c6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_s.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_s.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Variant</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_v.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_v.page
index 4987455..cec12de 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_v.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_gvariant_v.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Variant</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_hash_table_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_hash_table_callback.page
index 9f215d7..a49c65c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_hash_table_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_hash_table_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int.page
index 31b8b67..6193dd8 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int16.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int16.page
index f2f3902..d8efb0b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int16.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int16.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint16</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int32.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int32.page
index c254ed4..8015b37 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int32.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int32.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint32</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int64.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int64.page
index a30895e..24a69e9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int64.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int8.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int8.page
index ba53b82..ab573a0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int8.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int8.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint8</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_out_utf8.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_out_utf8.page
index 971e658..020f9e2 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_out_utf8.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_out_utf8.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_value_arg.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_value_arg.page
index 866be0d..cb84a3c 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_value_arg.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_int_value_arg.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_long.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_long.page
index 9eeddea..12bc1ae 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_long.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_long.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_callback.page
index 519ce43..ea0646f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_double_args.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_double_args.page
index 70d56ce..378ace7 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_double_args.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multi_double_args.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multiline_doc_comments.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multiline_doc_comments.page
index 75e4221..38a75e7 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multiline_doc_comments.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_multiline_doc_comments.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_nested_parameter.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_nested_parameter.page
index 3ee6239..54bda89 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_nested_parameter.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_nested_parameter.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_null_gerror_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_null_gerror_callback.page
index 710af51..5af4d58 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_null_gerror_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_null_gerror_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_owned_gerror_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_owned_gerror_callback.page
index e966fe8..206ac21 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_owned_gerror_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_owned_gerror_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_short.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_short.page
index 1c53e16..59381ae 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_short.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_short.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gshort</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_simple_callback.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_simple_callback.page
index d6e596c..9d8198f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_simple_callback.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_simple_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_size.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_size.page
index fe3f5b4..bc6896d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_size.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_size.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gsize</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ssize.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ssize.page
index 77bc9cd..ccc011d 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ssize.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ssize.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gssize</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in.page
index 880f489..7659a72 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in_gvalue.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in_gvalue.page
index 0444457..20617c0 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in_gvalue.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_in_gvalue.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Value</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out.page
index b475f63..477a46f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_c.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_c.page
index 69239d5..d393946 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_c.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_c.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_container.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_container.page
index 17b5581..f9bec39 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_container.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_out_container.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[String]</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_outarg.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_outarg.page
index 63bde33..01bcba4 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_outarg.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_strv_outarg.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_timet.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_timet.page
index be54bcc..65ccab5 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_timet.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_timet.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_0.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_0.page
index af5810f..1696583 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_0.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_0.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_1.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_1.page
index 915fdfe..a10b0ab 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_1.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_1.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Boolean</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_2.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_2.page
index ac69400..3a3eb39 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_2.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_torture_signature_2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint.page
index deb1e90..ac1653a 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint16.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint16.page
index 357dcc5..93faff4 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint16.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint16.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>guint16</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint32.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint32.page
index 445dbff..ebab4d6 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint32.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint32.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>guint32</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint64.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint64.page
index f77993c..942d786 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint64.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint8.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint8.page
index 4f099b7..f39dcc1 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint8.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_uint8.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>guint8</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ulong.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ulong.page
index 5ad9142..76f3310 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ulong.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ulong.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Number</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unichar.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unichar.page
index 2a10fb3..25465b3 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unichar.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unichar.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>String</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unsigned_enum_param.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unsigned_enum_param.page
index 9da74e6..8b7348e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unsigned_enum_param.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_unsigned_enum_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>String</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ushort.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ushort.page
index 9dd5ddc..74ada4b 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ushort.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_ushort.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gushort</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_in.page
index 7b1f74d..63fedb9 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_return.page
index 514a565..a63dc22 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_const_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>String</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_inout.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_inout.page
index cf5ce4a..1f282c2 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_inout.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_inout.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_nonconst_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_nonconst_return.page
index 3b0e3c8..2fec9e8 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_nonconst_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_nonconst_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>String</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_in.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_in.page
index ba9f250..14f3a55 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_in.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_out.page
index 36e0022..66632ff 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out.page
index 0889a57..b1a4062 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_nonconst_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_nonconst_return.page
index 2feadbf..e8a097e 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_nonconst_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_nonconst_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>String</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_out.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_out.page
index 39037cb..07107ed 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_out.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_utf8_out_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_return.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_return.page
index a554bf1..59f03b7 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_return.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_value_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Value</api:type>
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_versioning.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_versioning.page
index bfef494..eb6ce0f 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_versioning.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_versioning.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>void</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.ATestError.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.ATestError.page
index 119860d..9ac6820 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.ATestError.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.ATestError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.ATestError</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AliasedTestBoxed.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AliasedTestBoxed.page
index 2229245..9490e4a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AliasedTestBoxed.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AliasedTestBoxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AliasedTestBoxed</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationBitfield.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationBitfield.page
index 8cbc832..4e19ef9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationBitfield.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationBitfield.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationBitfield</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationCallback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationCallback.page
index 30f950c..9a652d8 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationCallback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationCallback</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationForeachFunc.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationForeachFunc.page
index 506ceff..db77a11 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationForeachFunc.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationForeachFunc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationForeachFunc</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationListCallback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationListCallback.page
index 3f9409e..79844c6 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationListCallback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationListCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationListCallback</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationNotifyFunc.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationNotifyFunc.page
index b2dc717..17c8029 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationNotifyFunc.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationNotifyFunc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.AnnotationNotifyFunc</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-attribute-signal.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-attribute-signal.page
index b52cf90..9ed31bc 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-attribute-signal.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-attribute-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">attribute-signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
index 9d8641d..29eedcc 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-doc-empty-arg-parsing.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">doc-empty-arg-parsing</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-function-property.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-function-property.page
index f526ea9..d9d8b55 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-function-property.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-function-property.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="property" type="guide"/>
     <title type="link" role="topic">function-property</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-list-signal.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-list-signal.page
index d4a2732..fdfa65f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-list-signal.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-list-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">list-signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-property.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-property.page
index 97391bc..a3cb045 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-property.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-property.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="property" type="guide"/>
     <title type="link" role="topic">string-property</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-signal.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-signal.page
index 95bd3d2..06e79aa 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-signal.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-string-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="signal"/>
+    <link xref="Regress.AnnotationObject" group="signal" type="guide"/>
     <title type="link" role="topic">string-signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-tab-property.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-tab-property.page
index db243c6..ed219fe 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-tab-property.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject-tab-property.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="property"/>
+    <link xref="Regress.AnnotationObject" group="property" type="guide"/>
     <title type="link" role="topic">tab-property</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.allow_none.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.allow_none.page
index 0fe1c05..5dc0d89 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.allow_none.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.allow_none.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleeowns.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleeowns.page
index 3f2107e..e808852 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleeowns.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleeowns.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleesowns.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleesowns.page
index cd2c7d9..0b6dd5d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleesowns.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.calleesowns.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum.page
index fcc8910..32bdcff 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_n.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_n.page
index d929218..cc1c627 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_n.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_n.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_nz.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_nz.page
index 053a368..eb65fe3 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_nz.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.compute_sum_nz.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.create_object.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.create_object.page
index 4ee8088..bcd4fd5 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.create_object.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.create_object.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.do_not_use.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.do_not_use.page
index 4e79b26..dd7f050 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.do_not_use.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.do_not_use.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.extra_annos.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.extra_annos.page
index 5ddadfc..d872978 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.extra_annos.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.extra_annos.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.foreach.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.foreach.page
index 0d34439..63fedad 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.foreach.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.foreach.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_hash.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_hash.page
index 87cfede..d0dbe7c 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_hash.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_hash.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>{unicode: GObject.Object}</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_objects.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_objects.page
index bd174a4..4d378e3 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_objects.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_objects.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[Regress.AnnotationObject]</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_strings.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_strings.page
index 698180b..7eb5735 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_strings.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.get_strings.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[unicode]</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.hidden_self.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.hidden_self.page
index 5dd1e2b..717525f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.hidden_self.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.hidden_self.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.in.page
index 569587e..2f7d526 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout.page
index 84ac74a..4723d33 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout2.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout2.page
index b620580..774f323 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout2.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout3.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout3.page
index ca64eaa..806b6e7 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout3.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.inout3.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.method.page
index f280088..11a0f0d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.notrans.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.notrans.page
index 8e7786a..4e474d0 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.notrans.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.notrans.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.out.page
index a871879..b1e037f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.page
index 94313a6..ec6a11f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.AnnotationObject</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.parse_args.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.parse_args.page
index c76bb94..a69df60 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.parse_args.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.parse_args.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data.page
index beaebab..e8a4879 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data2.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data2.page
index b9fc65f..63e540d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data2.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data2.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data3.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data3.page
index ccabb84..b01add0 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data3.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.set_data3.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.string_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.string_out.page
index 9d12f39..cd68ab7 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.string_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.string_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.use_buffer.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.use_buffer.page
index 6c5d72c..dddc4d5 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.use_buffer.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.use_buffer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.watch_full.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.watch_full.page
index ebb7aa0..3d3c756 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.watch_full.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.watch_full.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.with_voidp.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.with_voidp.page
index b4ceb23..a6b653a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.with_voidp.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationObject.with_voidp.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.AnnotationObject" group="method"/>
+    <link xref="Regress.AnnotationObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationStruct.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationStruct.page
index edc9fd1..e210042 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationStruct.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.AnnotationStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.AnnotationStruct</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooASingle.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooASingle.page
index b59e763..09cd98f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooASingle.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooASingle.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooASingle</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooAddressType.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooAddressType.page
index e3f5293..008a8f3 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooAddressType.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooAddressType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooAddressType</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.add.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.add.page
index fd700d2..dca11c3 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.add.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.add.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBRect" group="method"/>
+    <link xref="Regress.FooBRect" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.page
index 57e2652..fd1e9d6 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBRect.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooBRect</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBUnion.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBUnion.page
index 63831e7..8644d96 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBUnion.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBUnion.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooBUnion</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.method.page
index 9cfe931..dfaf746 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBoxed" group="method"/>
+    <link xref="Regress.FooBoxed" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.page
index 962300f..bca1f99 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBoxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooBoxed</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.page
index c93a1f7..1a51542 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooBuffer</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.some_method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.some_method.page
index 8b65f13..bee0dd0 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.some_method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooBuffer.some_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooBuffer" group="method"/>
+    <link xref="Regress.FooBuffer" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooCallback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooCallback.page
index 241296e..52feda2 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooCallback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooCallback</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.method.page
index 2d19be6..744cbf0 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooDBusData" group="method"/>
+    <link xref="Regress.FooDBusData" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.page
index 08ad0d2..b4eaead 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooDBusData.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooDBusData</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumFullname.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumFullname.page
index 443f25e..00169aa 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumFullname.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumFullname.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooEnumFullname</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumNoType.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumNoType.page
index 5957904..d2b41e6 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumNoType.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumNoType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooEnumNoType</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumType.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumType.page
index d052d4f..c3ff89b 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumType.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEnumType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooEnumType</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooError.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooError.page
index 5577eeb..8c0b6a2 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooError.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooError</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEvent.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEvent.page
index 0b77bcb..ce36830 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEvent.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEvent.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooEvent</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventAny.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventAny.page
index 45cd3a1..562ec03 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventAny.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventAny.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooEventAny</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventExpose.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventExpose.page
index 7e9ca7d..0000add 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventExpose.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooEventExpose.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooEventExpose</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsNoType.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsNoType.page
index d4db757..53539d4 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsNoType.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsNoType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooFlagsNoType</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsType.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsType.page
index e4f3ede..2b4afeb 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsType.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooFlagsType.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooFlagsType</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.copy.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.copy.page
index 86bdfa3..757033f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.copy.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooForeignStruct" group="method"/>
+    <link xref="Regress.FooForeignStruct" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooForeignStruct</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.page
index 06c5793..312994a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooForeignStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooForeignStruct</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface-do_regress_foo.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface-do_regress_foo.page
index 6cb6433..d0be1eb 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface-do_regress_foo.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface-do_regress_foo.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooInterface" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooInterface::do_regress_foo</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.do_regress_foo.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.do_regress_foo.page
index 465f913..d94103f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.do_regress_foo.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.do_regress_foo.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooInterface" group="method"/>
+    <link xref="Regress.FooInterface" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.page
index bc0b7df..d2a482f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooInterface</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.static_method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.static_method.page
index 7da66ea..5a09792 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.static_method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooInterface.static_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooInterface" group="function"/>
+    <link xref="Regress.FooInterface" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-read_fn.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-read_fn.page
index e5189c1..c2ca1c0 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-read_fn.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-read_fn.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooObject" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooObject::read_fn</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-signal.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-signal.page
index 691f7ae..ee6c20c 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-signal.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-signal.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="signal"/>
+    <link xref="Regress.FooObject" group="signal" type="guide"/>
     <title type="link" role="topic">signal</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-string.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-string.page
index ce48885..9d61f3a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-string.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-string.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="property"/>
+    <link xref="Regress.FooObject" group="property" type="guide"/>
     <title type="link" role="topic">string</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-virtual_method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-virtual_method.page
index e457900..01cf6db 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-virtual_method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject-virtual_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooObject" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooObject::virtual_method</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.a_global_method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.a_global_method.page
index e291ab6..ecfd04f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.a_global_method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.a_global_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <link xref="Regress.FooObject" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.append_new_stack_layer.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.append_new_stack_layer.page
index 7fa2ea7..dce6f59 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.append_new_stack_layer.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.append_new_stack_layer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooOtherObject</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.dup_name.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.dup_name.page
index 3d329fb..4e2a8e4 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.dup_name.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.dup_name.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>unicode</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.external_type.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.external_type.page
index 09481e9..182f153 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.external_type.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.external_type.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Utility.Object</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_default.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_default.page
index 3b7c872..68806e8 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_default.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_default.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <link xref="Regress.FooObject" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooSubobject</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_name.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_name.page
index 52a9056..bc94a27 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_name.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.get_name.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>unicode</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.handle_glyph.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.handle_glyph.page
index 5671a1c..260c8dd 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.handle_glyph.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.handle_glyph.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.is_it_time_yet.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.is_it_time_yet.page
index 633c32f..8678802 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.is_it_time_yet.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.is_it_time_yet.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.page
index 9a63538..3265e6b 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooObject</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.read.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.read.page
index 787081f..1dc774f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.read.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.read.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.static_meth.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.static_meth.page
index 4c825d8..ab00651 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.static_meth.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.static_meth.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="function"/>
+    <link xref="Regress.FooObject" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.various.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.various.page
index 15227cd..456f9cc 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.various.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.various.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.virtual_method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.virtual_method.page
index 3e05ffa..60b3815 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.virtual_method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObject.virtual_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooObject" group="method"/>
+    <link xref="Regress.FooObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObjectCookie.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObjectCookie.page
index 4d9cabc..44a63ab 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooObjectCookie.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooObjectCookie.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooObjectCookie</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooOtherObject.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooOtherObject.page
index 111b2ac..dadf523 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooOtherObject.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooOtherObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooOtherObject</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.add.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.add.page
index e2f8bbe..1a05ace 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.add.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.add.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooRectangle" group="method"/>
+    <link xref="Regress.FooRectangle" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.page
index 521a68b..0cfef62 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooRectangle.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooRectangle</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooStackLayer.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooStackLayer.page
index bd7a445..8a08c9a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooStackLayer.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooStackLayer.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.FooStackLayer</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooStruct.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooStruct.page
index 4088a6c..84f5d19 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooStruct.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooStruct</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy-event.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy-event.page
index 675a861..a42bb17 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy-event.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy-event.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="signal"/>
+    <link xref="Regress.FooSubInterface" group="signal" type="guide"/>
     <title type="link" role="topic">destroy-event</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy_event.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy_event.page
index 4b925a9..82dbc62 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy_event.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-destroy_event.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooSubInterface" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooSubInterface::destroy_event</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_bar.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_bar.page
index d07cadc..a035189 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_bar.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_bar.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooSubInterface" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooSubInterface::do_bar</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_baz.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_baz.page
index 723cea8..3b0404f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_baz.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface-do_baz.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.FooSubInterface" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.FooSubInterface::do_baz</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_bar.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_bar.page
index 45137e8..0e15941 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_bar.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_bar.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <link xref="Regress.FooSubInterface" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_baz.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_baz.page
index e95447c..f5fcb43 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_baz.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.do_baz.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.FooSubInterface" group="method"/>
+    <link xref="Regress.FooSubInterface" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.page
index e4d936a..81593d3 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubInterface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooSubInterface</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubobject.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubobject.page
index c4e1ce2..fc7b5ad 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubobject.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooSubobject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.FooSubobject</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooThingWithArray.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooThingWithArray.page
index 7ae6ae5..430dce7 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooThingWithArray.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooThingWithArray.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooThingWithArray</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooUnion.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooUnion.page
index 06d2e80..9746f17 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooUnion.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooUnion.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooUnion</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooUtilityStruct.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooUtilityStruct.page
index 0471b87..2b94f69 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooUtilityStruct.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooUtilityStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.FooUtilityStruct</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.FooXEvent.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.FooXEvent.page
index 1812249..c389ef0 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.FooXEvent.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.FooXEvent.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.FooXEvent</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.LikeGnomeKeyringPasswordSchema.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.LikeGnomeKeyringPasswordSchema.page
index 05362e5..44a946e 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.LikeGnomeKeyringPasswordSchema.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.LikeGnomeKeyringPasswordSchema.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.LikeGnomeKeyringPasswordSchema</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.PtrArrayAlias.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.PtrArrayAlias.page
index 9af00b5..f66aee4 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.PtrArrayAlias.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.PtrArrayAlias.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.PtrArrayAlias</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestABCError.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestABCError.page
index 6a044d7..f31b58e 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestABCError.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestABCError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestABCError</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.copy.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.copy.page
index fa810dd..85e7639 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.copy.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <link xref="Regress.TestBoxed" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxed</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.equals.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.equals.page
index e03d1f0..9fe3061 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.equals.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.equals.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxed" group="method"/>
+    <link xref="Regress.TestBoxed" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.page
index c6792c5..baa423f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxed</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.copy.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.copy.page
index 30b4599..e2b38f8 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.copy.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedB" group="method"/>
+    <link xref="Regress.TestBoxedB" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxedB</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.page
index 46cf7c1..0e39780 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedB.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxedB</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedC.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedC.page
index 88dd1a4..18b77d9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedC.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedC.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxedC</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.copy.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.copy.page
index 6923488..e350d80 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.copy.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <link xref="Regress.TestBoxedD" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestBoxedD</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.free.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.free.page
index 366fb2d..d083007 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.free.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.free.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <link xref="Regress.TestBoxedD" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.get_magic.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.get_magic.page
index 551c617..ea1ac4f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.get_magic.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.get_magic.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestBoxedD" group="method"/>
+    <link xref="Regress.TestBoxedD" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.page
index 17b3c79..995e80d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestBoxedD.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestBoxedD</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallback.page
index 9a219e9..bed84d5 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallback</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackArray.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackArray.page
index 7ceb2e0..7d3f7b8 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackArray.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackArray.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackArray</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackFull.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackFull.page
index 3de1fbe..0b8fca1 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackFull.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackFull.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackFull</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackGError.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackGError.page
index 1f6f2bd..804382f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackGError.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackGError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackGError</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackHashtable.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackHashtable.page
index 906947c..06ebb70 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackHashtable.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackHashtable.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackHashtable</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackOwnedGError.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackOwnedGError.page
index e7397a1..28b21ea 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackOwnedGError.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackOwnedGError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackOwnedGError</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackUserData.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackUserData.page
index f3047cf..286c830 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackUserData.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestCallbackUserData.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestCallbackUserData</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestDEFError.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestDEFError.page
index 6a92ba9..589059d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestDEFError.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestDEFError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestDEFError</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnum.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnum.page
index 9009dcd..814b474 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnum.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestEnum</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumNoGEnum.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumNoGEnum.page
index a0cd98c..5c0c559 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumNoGEnum.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumNoGEnum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestEnumNoGEnum</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumUnsigned.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumUnsigned.page
index 327cacc..df3cfa1 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumUnsigned.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestEnumUnsigned.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestEnumUnsigned</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestError.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestError.page
index c635d0e..d6a6ebb 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestError.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestError</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFlags.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFlags.page
index d545197..d5bfeeb 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFlags.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFlags.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestFlags</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFloating.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFloating.page
index 87520bd..a2b80e1 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFloating.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFloating.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestFloating</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.page
index af4623a..7035407 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalObject</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.ref.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.ref.page
index 23164e0..af12914 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.ref.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.ref.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <link xref="Regress.TestFundamentalObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestFundamentalObject</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.unref.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.unref.page
index 18f5765..90e7e88 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.unref.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObject.unref.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestFundamentalObject" group="method"/>
+    <link xref="Regress.TestFundamentalObject" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectCopyFunction.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectCopyFunction.page
index dfd65ce..73a3328 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectCopyFunction.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectCopyFunction.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalObjectCopyFunction</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectFinalizeFunction.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectFinalizeFunction.page
index 2b9d965..df0e8fb 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectFinalizeFunction.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalObjectFinalizeFunction.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalObjectFinalizeFunction</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalSubObject.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalSubObject.page
index 6f3a246..6b1e810 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalSubObject.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestFundamentalSubObject.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestFundamentalSubObject</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo.page
index 2aff243..2d8d0b6 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
index 4f7d8e6..4524842 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.do_foo_maybe_throw.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_origin.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_origin.page
index ccd73b1..983cb50 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_origin.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_origin.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_size.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_size.page
index 39d7bcc..09b0559 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_size.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.get_size.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestInheritDrawable" group="method"/>
+    <link xref="Regress.TestInheritDrawable" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.page
index d7ed30b..1fdd2c8 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritDrawable.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestInheritDrawable</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritPixmapObjectClass.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritPixmapObjectClass.page
index deaeea5..0df0396 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritPixmapObjectClass.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInheritPixmapObjectClass.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestInheritPixmapObjectClass</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInterface.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInterface.page
index 454ff74..807e18a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestInterface.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestInterface.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestInterface</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-all.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-all.page
index 2870e2b..f8fb4a1 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-all.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-all.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">all</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-allow_none_vfunc.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-allow_none_vfunc.page
index aaea25a..7a3b9c9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-allow_none_vfunc.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-allow_none_vfunc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.TestObj" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.TestObj::allow_none_vfunc</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-bare.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-bare.page
index 97c7ee6..f1f1b52 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-bare.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-bare.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">bare</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-boxed.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-boxed.page
index e870627..a392a77 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-boxed.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-boxed.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">boxed</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-cleanup.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-cleanup.page
index 1e34196..f35c031 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-cleanup.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-cleanup.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">cleanup</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-double.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-double.page
index 8243a45..70fd579 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-double.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-double.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">double</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-first.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-first.page
index f35e30d..b5bcd2c 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-first.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-first.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">first</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-float.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-float.page
index 8ff32c0..87be50f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-float.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-float.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">float</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-gtype.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-gtype.page
index b477bed..6b222e4 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-gtype.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-gtype.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">gtype</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table-old.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table-old.page
index 57d37ae..c796f36 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table-old.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table-old.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">hash-table-old</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table.page
index 1c5a6ea..c5d426c 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-hash-table.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">hash-table</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-int.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-int.page
index 18089ad..db7a89e 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-int.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-int.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">int</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list-old.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list-old.page
index 70fe618..95367ec 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list-old.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list-old.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">list-old</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list.page
index b21f723..aca148d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-list.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">list</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-matrix.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-matrix.page
index a1f1fd9..fe7066a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-matrix.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-matrix.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="Regress.TestObj" group="vfunc" type="guide"/>
     
   </info>
   <title>Regress.TestObj::matrix</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-array-prop.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-array-prop.page
index cccc090..eb1b99f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-array-prop.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-array-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-array-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-foreign-struct.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-foreign-struct.page
index 0dfd9d8..36a30d7 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-foreign-struct.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-foreign-struct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-foreign-struct</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-hash-prop.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-hash-prop.page
index ef6ded3..2048ad2 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-hash-prop.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-hash-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-hash-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-int64-prop.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-int64-prop.page
index 9bfe4b9..a782484 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-int64-prop.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-int64-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-int64-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-intarray-ret.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-intarray-ret.page
index 134a1bb..d070f17 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-intarray-ret.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-intarray-ret.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-intarray-ret</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-obj.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-obj.page
index f99b27f..d4814a8 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-obj.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-obj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-obj</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-strv.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-strv.page
index a92fe03..a7037a4 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-strv.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-strv.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-strv</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-uint64-prop.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-uint64-prop.page
index 3c220f0..c89d1d1 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-uint64-prop.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-uint64-prop.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">sig-with-uint64-prop</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-string.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-string.page
index 345a821..fa49993 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-string.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-string.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="property"/>
+    <link xref="Regress.TestObj" group="property" type="guide"/>
     <title type="link" role="topic">string</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test-with-static-scope-arg.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test-with-static-scope-arg.page
index 674df4a..736814c 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test-with-static-scope-arg.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test-with-static-scope-arg.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">test-with-static-scope-arg</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test.page
index e7ea160..e09f531 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-test.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="signal"/>
+    <link xref="Regress.TestObj" group="signal" type="guide"/>
     <title type="link" role="topic">test</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.do_matrix.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.do_matrix.page
index f7d905b..31e6b14 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.do_matrix.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.do_matrix.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_foreign_struct.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
index 4da0acf..3871f1f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_foreign_struct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_int64.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_int64.page
index a90da8d..5c607d1 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_int64.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_int64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_obj.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_obj.page
index 2f02db8..675aba9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_obj.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_obj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_uint64.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_uint64.page
index fede0a6..a6ad4b1 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_uint64.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_uint64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.forced_method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.forced_method.page
index 33a7507..90bedec 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.forced_method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.forced_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method.page
index 6f0dab4..ec94048 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method_callback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method_callback.page
index 34b7497..aa015c5 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method_callback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.instance_method_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.null_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.null_out.page
index f654e7e..7538150 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.null_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <link xref="Regress.TestObj" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.page
index 2da014f..1ded23c 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestObj</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.set_bare.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.set_bare.page
index 52013d5..bbd16fe 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.set_bare.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.set_bare.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_inout_param.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_inout_param.page
index 609e8b3..d2eea26 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_inout_param.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_inout_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_out_param.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_out_param.page
index b956db9..2a13be9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_out_param.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_out_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_param.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_param.page
index 9104649..0a900ee 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_param.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val.page
index 4b1e9bb..b4ae458 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val_no_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val_no_out.page
index dd5ca45..1c10cea 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val_no_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.skip_return_val_no_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method.page
index df4963e..6896d2e 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <link xref="Regress.TestObj" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>float</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method_callback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method_callback.page
index 08e4441..32fe8e5 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method_callback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.static_method_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="function"/>
+    <link xref="Regress.TestObj" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_0.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_0.page
index c5d8c9f..9ad2710 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_0.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_0.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_1.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_1.page
index 9954056..0313a70 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_1.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.torture_signature_1.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestObj" group="method"/>
+    <link xref="Regress.TestObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestOtherError.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestOtherError.page
index d1887d5..858e58a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestOtherError.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestOtherError.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="enum" type="guide"/>
     
   </info>
   <title>Regress.TestOtherError</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateEnum.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateEnum.page
index 788441a..66b477d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateEnum.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateEnum.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestPrivateEnum</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateStruct.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateStruct.page
index fa50813..7b1309d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateStruct.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestPrivateStruct.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestPrivateStruct</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.const_return.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.const_return.page
index 6b7b9eb..10789f2 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.const_return.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.const_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedA" group="function"/>
+    <link xref="Regress.TestSimpleBoxedA" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestSimpleBoxedA</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.copy.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.copy.page
index 22a5525..5e19199 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.copy.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <link xref="Regress.TestSimpleBoxedA" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestSimpleBoxedA</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.equals.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.equals.page
index 9616ddd..426bd98 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.equals.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.equals.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedA" group="method"/>
+    <link xref="Regress.TestSimpleBoxedA" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.page
index 2a8dd62..9117ddb 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedA.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestSimpleBoxedA</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.copy.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.copy.page
index 405778a..95950d7 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.copy.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.copy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSimpleBoxedB" group="method"/>
+    <link xref="Regress.TestSimpleBoxedB" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.TestSimpleBoxedB</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.page
index b775b86..7ecc623 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleBoxedB.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestSimpleBoxedB</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleCallback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleCallback.page
index 61bafb5..f815782 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleCallback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSimpleCallback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestSimpleCallback</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.clone.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.clone.page
index cbc5b42..ee47fb3 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.clone.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.clone.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructA" group="method"/>
+    <link xref="Regress.TestStructA" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.page
index 07b1752..a6a9817 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructA</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.parse.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.parse.page
index d8bdaae..e557650 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.parse.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructA.parse.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructA" group="function"/>
+    <link xref="Regress.TestStructA" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.clone.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.clone.page
index cebaa16..4abe66b 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.clone.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.clone.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructB" group="method"/>
+    <link xref="Regress.TestStructB" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.page
index b5b2ff3..21d8626 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructB.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructB</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructC.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructC.page
index 1db74ca..6bd5812 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructC.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructC.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructC</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructD.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructD.page
index cf224e3..aa9f131 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructD.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructD.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructD</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE.page
index 75684f3..b931c36 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructE</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE__some_union__union.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE__some_union__union.page
index 6f77035..3b81e62 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE__some_union__union.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructE__some_union__union.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestStructE__some_union__union</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructF.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructF.page
index fe5e7bc..cfb434b 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructF.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructF.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructF</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.frob.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.frob.page
index 0db4962..427eef3 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.frob.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.frob.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestStructFixedArray" group="method"/>
+    <link xref="Regress.TestStructFixedArray" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.page
index b5df529..db6e789 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestStructFixedArray.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="record" type="guide"/>
     
   </info>
   <title>Regress.TestStructFixedArray</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.instance_method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.instance_method.page
index 417ba33..878b405 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.instance_method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.instance_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <link xref="Regress.TestSubObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.page
index fef2f91..b1dc19b 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestSubObj</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.unset_bare.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.unset_bare.page
index bb2ad60..67a9806 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.unset_bare.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestSubObj.unset_bare.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestSubObj" group="method"/>
+    <link xref="Regress.TestSubObj" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestTypeGUInt64.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestTypeGUInt64.page
index d815a3f..e0a7bc0 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestTypeGUInt64.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestTypeGUInt64.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="default" type="guide"/>
     
   </info>
   <title>Regress.TestTypeGUInt64</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x-testbool.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x-testbool.page
index 5846ac6..00c168b 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x-testbool.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x-testbool.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="property"/>
+    <link xref="Regress.TestWi8021x" group="property" type="guide"/>
     <title type="link" role="topic">testbool</title>
 
   </info>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.get_testbool.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.get_testbool.page
index 4b9de5a..e9431c7 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.get_testbool.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.get_testbool.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <link xref="Regress.TestWi8021x" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.page
index 67b7eca..aef0387 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-      <link type="guide" xref="index"/>
+      <link xref="index" group="class" type="guide"/>
     
   </info>
   <title>Regress.TestWi8021x</title>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.set_testbool.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.set_testbool.page
index 2234664..d5afdb6 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.set_testbool.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.set_testbool.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="method"/>
+    <link xref="Regress.TestWi8021x" group="method" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.static_method.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.static_method.page
index 1fecc3a..be2afb9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.static_method.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestWi8021x.static_method.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="Regress.TestWi8021x" group="function"/>
+    <link xref="Regress.TestWi8021x" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.aliased_caller_alloc.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.aliased_caller_alloc.page
index 377dcbd..6b9f278 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.aliased_caller_alloc.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.aliased_caller_alloc.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>aliased_caller_alloc</title>
+  <title>Regress.aliased_caller_alloc</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.AliasedTestBoxed)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_attribute_func.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_attribute_func.page
index 023e993..e636e2d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_attribute_func.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_attribute_func.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>annotation_attribute_func</title>
+  <title>Regress.annotation_attribute_func</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.AnnotationObject, unicode)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_custom_destroy.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_custom_destroy.page
index d98c2b8..fb428b2 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_custom_destroy.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_custom_destroy.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -28,7 +28,7 @@
     </api:function>
 
   </info>
-  <title>annotation_custom_destroy</title>
+  <title>Regress.annotation_custom_destroy</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.AnnotationCallback, Regress.AnnotationNotifyFunc, gpointer)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_get_source_file.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_get_source_file.page
index 73e3555..e8b0ac5 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_get_source_file.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_get_source_file.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>filename</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>annotation_get_source_file</title>
+  <title>Regress.annotation_get_source_file</title>
   
 <synopsis><code mime="text/x-python">
 @returns(filename)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_init.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_init.page
index 09ee5b1..c94076a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_init.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_init.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>annotation_init</title>
+  <title>Regress.annotation_init</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [unicode])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_invalid_regress_annotation.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_invalid_regress_annotation.page
index eec7b20..038bb47 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_invalid_regress_annotation.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_invalid_regress_annotation.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>annotation_invalid_regress_annotation</title>
+  <title>Regress.annotation_invalid_regress_annotation</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_ptr_array.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_ptr_array.page
index 12752bb..daf47ff 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_ptr_array.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_ptr_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>annotation_ptr_array</title>
+  <title>Regress.annotation_ptr_array</title>
   
 <synopsis><code mime="text/x-python">
 @accepts([GObject.Value])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_array.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_array.page
index 5b6e6bc..c2a7371 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_array.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[unicode]</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>annotation_return_array</title>
+  <title>Regress.annotation_return_array</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_filename.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_filename.page
index c1e8e63..a5a8fa0 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_filename.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_return_filename.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>filename</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>annotation_return_filename</title>
+  <title>Regress.annotation_return_filename</title>
   
 <synopsis><code mime="text/x-python">
 @returns(filename)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_set_source_file.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_set_source_file.page
index 504ef28..4dd41fc 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_set_source_file.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_set_source_file.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>annotation_set_source_file</title>
+  <title>Regress.annotation_set_source_file</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(filename)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_space_after_comment_bug631690.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_space_after_comment_bug631690.page
index 0307bd2..69351e9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_space_after_comment_bug631690.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_space_after_comment_bug631690.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>annotation_space_after_comment_bug631690</title>
+  <title>Regress.annotation_space_after_comment_bug631690</title>
   
 <synopsis><code mime="text/x-python">
 @returns(none)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_array_length.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_array_length.page
index e42b140..ca6241d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_array_length.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_array_length.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>annotation_string_array_length</title>
+  <title>Regress.annotation_string_array_length</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [unicode])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated.page
index 8cafc09..33ad8d1 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[unicode]</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>annotation_string_zero_terminated</title>
+  <title>Regress.annotation_string_zero_terminated</title>
   
 <synopsis><code mime="text/x-python">
 @returns([unicode])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated_out.page
index 2c396ac..008b4cd 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_string_zero_terminated_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>annotation_string_zero_terminated_out</title>
+  <title>Regress.annotation_string_zero_terminated_out</title>
   
 <synopsis><code mime="text/x-python">
 @accepts([unicode])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_test_parsing_bug630862.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_test_parsing_bug630862.page
index 402a6ff..f3243ec 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_test_parsing_bug630862.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_test_parsing_bug630862.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>annotation_test_parsing_bug630862</title>
+  <title>Regress.annotation_test_parsing_bug630862</title>
   
 <synopsis><code mime="text/x-python">
 @returns(GObject.Object)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_transfer_floating.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_transfer_floating.page
index 956465c..0e19f1f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_transfer_floating.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_transfer_floating.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Object</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>annotation_transfer_floating</title>
+  <title>Regress.annotation_transfer_floating</title>
   
 <synopsis><code mime="text/x-python">
 @returns(GObject.Object)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_versioned.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_versioned.page
index a387a59..5ca4dbb 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_versioned.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.annotation_versioned.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>annotation_versioned</title>
+  <title>Regress.annotation_versioned</title>
   
 <synopsis><code mime="text/x-python">
 @returns(none)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.atest_error_quark.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.atest_error_quark.page
index 3640155..477e985 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.atest_error_quark.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.atest_error_quark.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Quark</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>atest_error_quark</title>
+  <title>Regress.atest_error_quark</title>
   
 <synopsis><code mime="text/x-python">
 @returns(GLib.Quark)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_async_ready_callback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_async_ready_callback.page
index d9e9994..399187e 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_async_ready_callback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_async_ready_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -28,7 +28,7 @@
     </api:function>
 
   </info>
-  <title>foo_async_ready_callback</title>
+  <title>Regress.foo_async_ready_callback</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Gio.Cancellable, Gio.AsyncReadyCallback, gpointer)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_destroy_notify_callback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_destroy_notify_callback.page
index 1f758a6..3b9ccb9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_destroy_notify_callback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_destroy_notify_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -28,7 +28,7 @@
     </api:function>
 
   </info>
-  <title>foo_destroy_notify_callback</title>
+  <title>Regress.foo_destroy_notify_callback</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.FooCallback, gpointer, GLib.DestroyNotify)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_init.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_init.page
index 4ee838b..6195fbc 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_init.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_init.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>foo_init</title>
+  <title>Regress.foo_init</title>
   
 <synopsis><code mime="text/x-python">
 @returns(int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_method_external_references.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_method_external_references.page
index 77a94c4..9095b08 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_method_external_references.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_method_external_references.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -32,7 +32,7 @@
     </api:function>
 
   </info>
-  <title>foo_method_external_references</title>
+  <title>Regress.foo_method_external_references</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Utility.Object, Utility.EnumType, Utility.FlagType, Utility.Struct)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_not_a_constructor_new.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_not_a_constructor_new.page
index 0f58aaa..9df41fa 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_not_a_constructor_new.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_not_a_constructor_new.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooObject</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>foo_not_a_constructor_new</title>
+  <title>Regress.foo_not_a_constructor_new</title>
   
 <synopsis><code mime="text/x-python">
 @returns(Regress.FooObject)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_array.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_array.page
index 2680f70..8feb21f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_array.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[unicode]</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>foo_test_array</title>
+  <title>Regress.foo_test_array</title>
   
 <synopsis><code mime="text/x-python">
 @returns([unicode])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_param.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_param.page
index 6be54b8..e16a8dd 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_param.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>foo_test_const_char_param</title>
+  <title>Regress.foo_test_const_char_param</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(unicode)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_retval.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_retval.page
index 4eb0d3a..b5c3412 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_retval.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_char_retval.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>unicode</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>foo_test_const_char_retval</title>
+  <title>Regress.foo_test_const_char_retval</title>
   
 <synopsis><code mime="text/x-python">
 @returns(unicode)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_param.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_param.page
index 31532fc..e37243a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_param.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_param.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>foo_test_const_struct_param</title>
+  <title>Regress.foo_test_const_struct_param</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.FooStruct)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_retval.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_retval.page
index 140bbbb..2f820a9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_retval.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_const_struct_retval.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>Regress.FooStruct</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>foo_test_const_struct_retval</title>
+  <title>Regress.foo_test_const_struct_retval</title>
   
 <synopsis><code mime="text/x-python">
 @returns(Regress.FooStruct)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array.page
index 1f9d3cc..68ff1b4 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>foo_test_string_array</title>
+  <title>Regress.foo_test_string_array</title>
   
 <synopsis><code mime="text/x-python">
 @accepts([unicode])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array_with_g.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array_with_g.page
index bf4b9a7..f5d1884 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array_with_g.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_string_array_with_g.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>foo_test_string_array_with_g</title>
+  <title>Regress.foo_test_string_array_with_g</title>
   
 <synopsis><code mime="text/x-python">
 @accepts([unicode])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_qualifier.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_qualifier.page
index 3c57204..ed8bb96 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_qualifier.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_qualifier.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>foo_test_unsigned_qualifier</title>
+  <title>Regress.foo_test_unsigned_qualifier</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_type.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_type.page
index d869c4e..0fe4bec 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_type.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.foo_test_unsigned_type.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>foo_test_unsigned_type</title>
+  <title>Regress.foo_test_unsigned_type</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.func_obj_null_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.func_obj_null_in.page
index 0c0d372..5b96883 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.func_obj_null_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.func_obj_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>func_obj_null_in</title>
+  <title>Regress.func_obj_null_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.TestObj)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.global_get_flags_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.global_get_flags_out.page
index bc3fffe..e5c60be 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.global_get_flags_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.global_get_flags_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>global_get_flags_out</title>
+  <title>Regress.global_get_flags_out</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.TestFlags)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.has_parameter_named_attrs.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.has_parameter_named_attrs.page
index 8010d9b..9d7992d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.has_parameter_named_attrs.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.has_parameter_named_attrs.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>has_parameter_named_attrs</title>
+  <title>Regress.has_parameter_named_attrs</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [guint32])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.introspectable_via_alias.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.introspectable_via_alias.page
index 230882f..c024ff8 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.introspectable_via_alias.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.introspectable_via_alias.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>introspectable_via_alias</title>
+  <title>Regress.introspectable_via_alias</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.PtrArrayAlias)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.set_abort_on_error.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.set_abort_on_error.page
index 3eda9cd..ad32633 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.set_abort_on_error.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.set_abort_on_error.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>set_abort_on_error</title>
+  <title>Regress.set_abort_on_error</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(bool)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_callback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_callback.page
index cf5c11a..4da29a8 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_callback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_array_callback</title>
+  <title>Regress.test_array_callback</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.TestCallbackArray)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_out_objects.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_out_objects.page
index 2fe68c9..e2d84b8 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_out_objects.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_out_objects.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_array_fixed_out_objects</title>
+  <title>Regress.test_array_fixed_out_objects</title>
   
 <synopsis><code mime="text/x-python">
 @accepts([Regress.TestObj])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_in.page
index ed44e36..60ad182 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_array_fixed_size_int_in</title>
+  <title>Regress.test_array_fixed_size_int_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts([int])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_out.page
index 30cebc4..3c6afc4 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_array_fixed_size_int_out</title>
+  <title>Regress.test_array_fixed_size_int_out</title>
   
 <synopsis><code mime="text/x-python">
 @accepts([int])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_return.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_return.page
index d38e4f9..0df5ae5 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_return.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_fixed_size_int_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[int]</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>test_array_fixed_size_int_return</title>
+  <title>Regress.test_array_fixed_size_int_return</title>
   
 <synopsis><code mime="text/x-python">
 @returns([int])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint16_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint16_in.page
index db9e904..e033aff 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint16_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint16_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_array_gint16_in</title>
+  <title>Regress.test_array_gint16_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [gint16])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint32_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint32_in.page
index 21e0902..5a696b9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint32_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint32_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>gint32</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_array_gint32_in</title>
+  <title>Regress.test_array_gint32_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [gint32])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint64_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint64_in.page
index 68b1158..dafee3c 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint64_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint64_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_array_gint64_in</title>
+  <title>Regress.test_array_gint64_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [int])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint8_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint8_in.page
index 4c96194..40b38b2 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint8_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gint8_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_array_gint8_in</title>
+  <title>Regress.test_array_gint8_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [gint8])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gtype_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gtype_in.page
index 42f7372..9cfb531 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gtype_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_gtype_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>unicode</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_array_gtype_in</title>
+  <title>Regress.test_array_gtype_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [GType])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_full_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_full_out.page
index b0d3863..4b2c4fa 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_full_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_full_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[int]</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_array_int_full_out</title>
+  <title>Regress.test_array_int_full_out</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_in.page
index 59a4be0..879821b 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_array_int_in</title>
+  <title>Regress.test_array_int_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [int])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_inout.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_inout.page
index 48fc0ac..193d2f3 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_inout.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_inout.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_array_int_inout</title>
+  <title>Regress.test_array_int_inout</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [int])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_none_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_none_out.page
index 3c11393..745bbe7 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_none_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_none_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>[int]</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_array_int_none_out</title>
+  <title>Regress.test_array_int_none_out</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_in.page
index a2f7ba9..194ecb5 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_array_int_null_in</title>
+  <title>Regress.test_array_int_null_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts([int], int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_out.page
index dd2aa75..6ee3517 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_null_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_array_int_null_out</title>
+  <title>Regress.test_array_int_null_out</title>
   
 <synopsis><code mime="text/x-python">
 @accepts([int], int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_out.page
index 15e62e1..30eaea9 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_array_int_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_array_int_out</title>
+  <title>Regress.test_array_int_out</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(int, [int])
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_async_ready_callback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_async_ready_callback.page
index 1486cc4..4b2459e 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_async_ready_callback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_async_ready_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_async_ready_callback</title>
+  <title>Regress.test_async_ready_callback</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Gio.AsyncReadyCallback)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean.page
index 8c19698..293e35b 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_boolean</title>
+  <title>Regress.test_boolean</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(bool)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_false.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_false.page
index 7212f68..ee76326 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_false.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_false.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_boolean_false</title>
+  <title>Regress.test_boolean_false</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(bool)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_true.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_true.page
index 13c90c2..c233d79 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_true.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_boolean_true.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>bool</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_boolean_true</title>
+  <title>Regress.test_boolean_true</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(bool)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_full_return.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_full_return.page
index f927cf5..b749fa4 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_full_return.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_full_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>cairo.Context</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>test_cairo_context_full_return</title>
+  <title>Regress.test_cairo_context_full_return</title>
   
 <synopsis><code mime="text/x-python">
 @returns(cairo.Context)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_none_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_none_in.page
index d9cd230..8b36aac 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_none_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_context_none_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_cairo_context_none_in</title>
+  <title>Regress.test_cairo_context_none_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(cairo.Context)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_out.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_out.page
index ec8da6f..4e8a636 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_out.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_out.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_cairo_surface_full_out</title>
+  <title>Regress.test_cairo_surface_full_out</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(cairo.Surface)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_return.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_return.page
index ac77695..a855704 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_return.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_full_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>cairo.Surface</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>test_cairo_surface_full_return</title>
+  <title>Regress.test_cairo_surface_full_return</title>
   
 <synopsis><code mime="text/x-python">
 @returns(cairo.Surface)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_in.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_in.page
index c2daf5f..0d7e20b 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_in.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_in.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_cairo_surface_none_in</title>
+  <title>Regress.test_cairo_surface_none_in</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(cairo.Surface)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_return.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_return.page
index 4eda436..de92a08 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_return.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_cairo_surface_none_return.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>cairo.Surface</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>test_cairo_surface_none_return</title>
+  <title>Regress.test_cairo_surface_none_return</title>
   
 <synopsis><code mime="text/x-python">
 @returns(cairo.Surface)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback.page
index a5e52b5..d5074fa 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_callback</title>
+  <title>Regress.test_callback</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.TestCallback)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_async.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_async.page
index 471926a..cbf04b8 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_async.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_async.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>none</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_callback_async</title>
+  <title>Regress.test_callback_async</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.TestCallbackUserData, gpointer)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify.page
index 26a0c31..5452fbf 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -28,7 +28,7 @@
     </api:function>
 
   </info>
-  <title>test_callback_destroy_notify</title>
+  <title>Regress.test_callback_destroy_notify</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.TestCallbackUserData, gpointer, GLib.DestroyNotify)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify_no_user_data.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify_no_user_data.page
index 7df745a..11899cc 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify_no_user_data.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_destroy_notify_no_user_data.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_callback_destroy_notify_no_user_data</title>
+  <title>Regress.test_callback_destroy_notify_no_user_data</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.TestCallbackUserData, GLib.DestroyNotify)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_async.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_async.page
index a94e661..6280f9f 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_async.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_async.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>test_callback_thaw_async</title>
+  <title>Regress.test_callback_thaw_async</title>
   
 <synopsis><code mime="text/x-python">
 @returns(int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_notifications.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_notifications.page
index 03158ab..cae6c5e 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_notifications.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_thaw_notifications.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>test_callback_thaw_notifications</title>
+  <title>Regress.test_callback_thaw_notifications</title>
   
 <synopsis><code mime="text/x-python">
 @returns(int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_user_data.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_user_data.page
index d4a9578..69cff3a 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_user_data.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_callback_user_data.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_callback_user_data</title>
+  <title>Regress.test_callback_user_data</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(Regress.TestCallbackUserData, gpointer)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure.page
index cdbf8bb..20db07c 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -20,7 +20,7 @@
     </api:function>
 
   </info>
-  <title>test_closure</title>
+  <title>Regress.test_closure</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(GObject.Closure)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_one_arg.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_one_arg.page
index b19753a..7f35412 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_one_arg.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_one_arg.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>int</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_closure_one_arg</title>
+  <title>Regress.test_closure_one_arg</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(GObject.Closure, int)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_variant.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_variant.page
index 6be06f3..dae0cc0 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_variant.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_closure_variant.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Variant</api:type>
@@ -24,7 +24,7 @@
     </api:function>
 
   </info>
-  <title>test_closure_variant</title>
+  <title>Regress.test_closure_variant</title>
   
 <synopsis><code mime="text/x-python">
 @accepts(GObject.Closure, GLib.Variant)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_date_in_gvalue.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_date_in_gvalue.page
index bcdb8ed..1394018 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_date_in_gvalue.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_date_in_gvalue.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GObject.Value</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>test_date_in_gvalue</title>
+  <title>Regress.test_date_in_gvalue</title>
   
 <synopsis><code mime="text/x-python">
 @returns(GObject.Value)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_def_error_quark.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_def_error_quark.page
index 89a1b50..e920059 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_def_error_quark.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_def_error_quark.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
         <api:type>GLib.Quark</api:type>
@@ -16,7 +16,7 @@
     </api:function>
 
   </info>
-  <title>test_def_error_quark</title>
+  <title>Regress.test_def_error_quark</title>
   
 <synopsis><code mime="text/x-python">
 @returns(GLib.Quark)
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_double.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_double.page
index efea2d6..0f75857 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_double.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_double.page
@@ -7,7 +7,7 @@
       xmlns:ui="http://projectmallard.org/1.0/ui/";>
   <info>
     
-    <link type="guide" xref="index" group="function"/>
+    <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>