Avoid xrefs to topics
Every link you need to create to topics should be defined in a relationship table rather than as an xref in a topic, if possible. There are issues with using xrefs to create links to topic, especially with reused content:
If you own common content that is reused, avoid using cross-references to topics wherever you can. When you use xrefs to topics and someone reuses your content, if they aren’t reusing the topic that’s the target of the xref, they’ll end up with a broken link in their output. It also causes potential problems related to localization, which are explained below.
If you reuse a topic that contains an embedded xref and the target topic is not included in your deliverable, your output will contain a broken link. If you’re reusing topics that include xrefs to topics, request that the content owner move the xref to a relationship table link instead.
When you reuse content that contains embedded xrefs, that creates a dependency on the topics that are the target of the xrefs. If the content is localized, all content that is referenced is included in the package sent for translation. So if you’re reusing content that includes xrefs to other topics, those other topics are included in the package for localization, even if you are only reusing an element in that topic that does not include the xref. This increases translation costs.
If you create relationships between topics, you do not need to include a text reference to that topic.
There are some limited cases where it's better to embed the xref directly in the topic content. For example, in an installation checklist or when the context of the link would be completely lost by not embedding it in the text.
It’s not an issue to include xrefs to external targets, such as Web sites.