为法律构造SQL数据库

时间:2019-04-30 12:10:46

标签: database relational-database relationship data-conversion

我正在尝试将一些法律文本转换为关系表。我已经用尽了所有在线资源,这就是为什么我决定问这个问题的原因,因为我对下一步的工作一无所知。

我有一个要求已保存到遵循以下结构的数据库中:

  

文本法有许多要求,但每个要求可以在任何地方和任何项目中(标题->章->节->小节->文章->(要求))

     

Example Here

   Exemple 1:
Title 1
  Article 1
   requirement 1
   requirement 2
   requirement 3
   Chapter 1
       requirement 4
   Chapter 2
       Article 2
           requirement 5
           Section 1
               Subsection 1
                   requirement 6

Exemple 2:
   requirement 1
Section 1
   requirement 2
   Article 1
       requirement 3
       requirement 4
       requirement 5
 Section 2
       requirement 6
       requirement 7
       Article 2
           requirement 8
           requirement 9

1 个答案:

答案 0 :(得分:-1)

嗯,这种树状文档结构有些笨拙地适合关系。您是否有某些原因需要使用关系数据库?我会使用文档数据库。

requirement是否都具有相同的信息结构?这与出现在最高级别(甚至在Section 1之前)还是最深层次(在SubSection中)无关。如果它们是相同的结构,则建议使用requirement的表-我猜想requirement的组件将需要辅助表。 requirement的键为{ Ex, reqnum }。文档结构中节点的外键。

所有文档节点都具有相同的信息结构吗?那就是:

  • 类型:Ex / Title / Chapter / Section / SubSection
  • 号码
  • 说明/标题? (大概)

TitleTitre发生了什么?这些文件是否使用多种语言?

文章中的章节似乎没有一致性,反之亦然,因此您不能使用{Chapter, Chapnum, Article, Artnum }作为键。您需要发明一个代理密钥NodeId。那就是:

  • 文档树中每个节点的键。
  • requirement到其在树中位置的外键。
  • 从节点到其父节点的外键。

我会将节点到父级链接设为单独的"bridge table"。带有列{NodeId, ParentId}