**How it should work**
The refines parameter gets a string that corresponds to a previously defined reference. e.g. a reference that was named with `name="animal"` can then be refined through `<ref refines="animal">`.
`<ref refines="animal"> Page 25 </ref>` should then lead to "Page 25" being printed in the references section, below the definition of the "animal" source, and with an indent.
The refines-param is only valid per group. I.e. if there is a reference `<ref name="animal" group="part1">` and a refines `<ref refines="animal" group="part1">`, the refinement should be printed.
However, if the refines was `<ref refines="animal">`, it would only print the refinement if "animal" was also defined in the standard references group.
Refined refs can also have a name. e.g. If there was `<ref refines="animal" name="animalpage25"> Page 25 </ref>`, `<ref name="animalpage25" />` would also link to the refined reference.
For compatibility with all the different languages the Cite extension works for, refined references are labeled with Arabic numbers after the main reference. E.g. 1.1, 1.2 etc.
It is not possible to refine a reference more than once (i.e. 1.1.1 never exists).
This is a concrete implementation task for the proposal that was discussed in T138601.
Currently, when referencing different sections of the same book, the whole source always needs to be repeated.
The wish to improve the referencing of multiple parts of the same source was part of the German-speaking community's technical wishlist in 2013, 2015 and of the international technical wishlist in 2015. For more info, see T100645.