Background
Custom properties in Open XML are stored in docProps/custom.xml
and look like this (for a string):
<property fmtid="{xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxxxxx}" pid="2" name="Key">
<vt:lpwstr>Value</vt:lpwstr>
</property>
The Open XML (v1) specification doesn't give many details about fmtid
and pid
. It merely states in section 7.3.2.2:
[PID] Uniquely relates a custom property with an OLE property
Questions
I have a few questions about the specification's vague explanation:
- What are OLE properties?
- Is it possible add a new OpenXML property in custom.xml without storing an OLE property?
- Does
pid
need to be unique perfmtid
, or unique for allfmtid
s in custom.xml - Why don't my own properties in custom.xml appear in Word?