Smart Tag Associated to a Document Using XML Expansion Pack [Office 2003 SDK Documentation]
You can also have a smart tag be associated with a document. In such a scenario, the smart tag will only work with that specific document template or alternatively, a smart documents.
You might ask how would such a smart tag be useful since it won't work at an application level? Take for example an invoice document. You might have a smart tag that recognizes invoice numbers with very specific actions. You might not want the invoice number smart tag to work any other time as it doesn't make sense and could get annoying to have invoice number recognition on documents other than an invoice document. Or if you don't want your invoice number smart tag to be used for whatever reasons, outside of the invoice documents or templates you sent your customers.
To create a smart tag to be specifically associated to a document template, you build the smart tag DLL the usual way. However, you will need to use the XML Expansion Pack and the XML Expansion Pack manifest file to deploy that smart tag. There is a schema associated to the XML Expansion Pack manifest file. The XML Expansion Pack, the XML Expansion Pack manifest file and the schema reference are big topics by themselves. They are beyond the scope of this SDK.
For detailed information on how to use XML Expansion Pack and the XML Expansion Pack manifest file to deploy a smart tag and how a DLL can be made to be specifically associated to a document, see the Microsoft Office 2003 Smart Documents Software Development Kit. It should be noted that a smart tag can only be associated to a Word document and Excel workbook.