在图形数据库中对邮政地址数据进行建模-应用程序/数据库交互

问题描述

我想发展自己的个人助理。除其他职责外,我的pa应该存储联系信息。我研究了Len Silverston和Paul Agnews的书“数据模型资源书第3卷”。它是开发关系数据库模型的重要资源,并且有助于弄清我的需求。但是我想使用一个图形数据库,即neo4j,因为我设想的全部都是关于关系的。 无论如何,我到目前为止所拥有的...

(p:Party)-[:HAS_CONTACT_MECHANISM]->(cm:ContactMechanism:EmailAddress{contact_string:"[email protected]")-[:IS_CONTACT_MECHANISM_CATEGORY]->(cmc:{name:"Email address})

还有很多其他联系机制类别...

enter image description here

有了这些数据,我就可以做...

match (p:Person)-[:HAS_CONTACT_MECHANISM]->(cm)-[:IS_CONTACT_MECHANISM_CATEGORY]->(cmc:ContactMechanismCategory)

返回p.name,cm.contact_string,collect(cmc.name)

现在,我想存储邮政地址。 我想

  • 保持简单
  • 存储各种地址格式

我的想法是创建独特的标签(和节点),例如...

create (addr1:ContactMechanism:GemanPostalAddress{street:"Köthener Straße",house_no:"38",plz:"10963",city:"Berlin",country:"Germany")

create (addr2:ContactMechanism:UKPostalAddress{house_no:"3",street:“Abbey Road",district:"St John's Wood",city:"Londeon",district:"NW8 9AY",country:"United Kingdom"})

这是我的问题: 在查询地址信息时,应用程序如何知道如何处理非常不同的数据。它需要知道属性名称以及属性的顺序,不是吗?它应该能够显示和读取地址信息,并且我想避免对业务规则进行硬编码(这是正确的术语吗?)。相反,我想为应用程序存储有关如何在数据库中处理邮政地址的所有必要信息。

我本来打算将元数据存储在类别域中(以某种方式),但后来迷路了。我确定有更好/更常见的方法

请原谅我,我不是专业人士。我很想听听专业人士的建议! :-)

谢谢 罗斯

PS:从用户的角度来看,我发现Apple的Contacts App非常具有启发性。我想知道应用程序和数据模型如何在这里协同工作。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)