我找到了一些有用但不太多的东西:
http://blogs.msdn.com/b/visio/archive/2010/01/12/custom-containers-lists-and-callouts-in-visio-2010.aspx
简而言之,通过从shape元素中读取User.msvStructureType元素,我们至少可以找出哪些形状是容器,哪些不是。但到目前为止我看不到层次结构信息......