add DocumentMetadata class separately