/**
  * Look-up MetaMetadata for this purl. If there is no special MetaMetadata, use Document.
  * Construct Metadata of the correct subtype, base on the MetaMetadata. Set its location field to
  * purl.
  *
  * @param purl
  * @return
  */
 public Document constructDocument(ParsedURL purl) {
   MetaMetadata metaMetadata = getDocumentMM(purl);
   Document result = (Document) metaMetadata.constructMetadata(metadataTScope);
   result.setLocation(purl);
   return result;
 }
 public MetaMetadata getDocumentMM(Document metadata) {
   return getDocumentMM(metadata.getLocation(), metadataTScope.getTag(metadata.getClass()));
 }