猫鼬组(Mongoose Groups)为NodeJS项目(使用Mongoose)提供了一种定义和查询组附件的方法,例如,A是否包含B。在一般情况下,这不需要任何超出Mongoose的架构引用或子文档功能的东西。但是,更复杂的应用程序有额外的要求:

  • 多级组箱(A包含B包含C

  • 多叶、多根(A包含BC包含D

  • 菱形图案(A含BA含CB含DC含D

  • 循环包含检测(A包含B包含A不允许

  • 没有“参考行走”的高效单查询(获取所有包含A的组,一次获取所有包含A的组)

插件架构,以便群组和群组成员都可以利用您现有的架构。

一个例子待定。