Graph 图形数据库中的邮政地址数据建模-应用程序/数据库交互

Graph 图形数据库中的邮政地址数据建模-应用程序/数据库交互,graph,web-applications,neo4j,data-modeling,Graph,Web Applications,Neo4j,Data Modeling,我想发展自己的个人助理。在其他职责中,我的pa应该存储联系信息。我研究了LenSilverston和Paul Agnews的书《数据模型资源书第3卷》。这是开发关系数据库模型的一个很好的资源,它帮助我了解了自己的需求。但我想使用一个图形数据库,即neo4j,因为我所设想的pa都是关于关系的。 不管怎样,到目前为止我所拥有的 (p:Party)-[:HAS_CONTACT_MECHANISM]->(cm:ContactMechanism:EmailAddress{contact_string

我想发展自己的个人助理。在其他职责中,我的pa应该存储联系信息。我研究了LenSilverston和Paul Agnews的书《数据模型资源书第3卷》。这是开发关系数据库模型的一个很好的资源,它帮助我了解了自己的需求。但我想使用一个图形数据库,即neo4j,因为我所设想的pa都是关于关系的。 不管怎样,到目前为止我所拥有的

(p:Party)-[:HAS_CONTACT_MECHANISM]->(cm:ContactMechanism:EmailAddress{contact_string:"john@doe.com")-[:IS_CONTACT_MECHANISM_CATEGORY]->(cmc:{name:"Email address})
还有很多其他的接触机制类别

有了这些数据我可以

match (p:Person)-[:HAS_CONTACT_MECHANISM]->(cm)-[:IS_CONTACT_MECHANISM_CATEGORY]->(cmc:ContactMechanismCategory)
返回p.name,cm.contact_字符串,collect(cmc.name)

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

  • 保持简单
  • 存储各种地址格式
我的想法是创建不同的标签(和节点),如

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

我本来想在分类域中存储元数据(不知怎么的),但后来我迷路了。我确信有更好/更普遍的方法

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

谢谢 罗斯

PS:从用户的角度来看,我发现苹果的联系人应用程序非常鼓舞人心。我想知道应用程序和数据模型在这里是如何协同工作的

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"})