If InvoicePurchaseOrderNumber were an attribute of InvoiceLine, you would do
<xsl:template match="InvoicePurchaseOrder">
<xsl:for-each select="InvoiceLine">
<xsl:value-of select="@InvoicePurchaseOrderNumber"/>
</xsl:for-each>
</xsl:template>
But it isn't, so I don't really know what you want. Perhaps
<xsl:template match="InvoicePurchaseOrder">
<xsl:variable name="PO-nr" select="@PurchaseOrderNumber"/>
<xsl:for-each select="InvoiceLine">
<xsl:value-of select="$PO-Nr"/>
</xsl:for-each>
</xsl:template>
Michael Kay
http://www.saxonica.com/
Author, XSLT 2.0 and XPath 2.0 Programmer's Reference