来自不同文档的交叉引用枚举

来自不同文档的交叉引用枚举

我正在编写一份基于需求文档的设计文档,该文档可能会发生变化。设计文档必须引用需求文档中枚举列表中的需求。

我的需求文档有以下内容:

\documentclass{article}
\usepackage{graphicx}
\usepackage{mathtools}
\begin{document}
\begin{enumerate}
    \item Requirement 1  \label{Req1}
    \item Requirement 2:
    \begin{enumerate}
        \item Requirement 2a \label{Req2a}
        \item Requirement 2b \label{Req2b}
    \end{enumerate}
\end{enumerate}
\end{document}

我的设计文档如下所示:

\documentclass[hidelinks]{article}
\usepackage{graphicx}
\usepackage{geometry}
\usepackage{fancyhdr}
\usepackage{amsmath, amsthm ,amssymb}
\usepackage{graphicx}
\usepackage{enumerate}
\usepackage{hyperref}
\usepackage{xr}

\begin{document}
\externaldocument{../requirements/Requirements.tex}

\section{Functional Requirements}
Functional Requirements are things the system must do. These are: \\

\begin{tabular}{| l | l |}
    \hline
    Requirement & Subsystem(s) implementing the requirement \\ \hline
    \ref{Req1} & Graphical Front End \\ \hline

\end{tabular}

\end{document}  

我希望看到枚举中赋予项目的编号显示在 \ref{Req1} 空间中。但我现在看到的是两个问号。我遗漏了什么?

答案1

在您的需求文档中,添加\usepackage{hyperref}\usepackage{enumerate}。该enumerate包会将标签写入辅助文件。然后我们才能在设计文件中调用它。该hyperref包是必需的,因为您已在设计文件中使用过此包。否则,您在编译第二个文件时会出错。

也放于\externaldocument之前\begin{document}

相关内容