Skip to main content

HAS_BUILDING_MATERIAL

HAS_BUILDING_MATERIAL edge/relationship definition.

Description

Connects an ARCHITECTURAL (  :Place:Context  ) or (  :Thing:BuildingSection  ) to a ( :Vocab:MaterialType ) node to record that the material is a primary element in its construction. Additional details (e.g., size, color, masonry style, etc.) may be recorded as edge properties.

Analogy

"Formation" column in "Context" table or join row(s), column(s), or table(s) defining relationship between a Context and a formation type.

CIDOC-CRM Mapping

MAYBE include a short summmary here, but leave the details for the designated CIDOC-CRM section.

Relevant Nodes, Directions, and Cardinality

[  :Place:Context  |  :Thing:BuildingSection  ] ——[ :HAS_BUILDING_MATERIAL ]——> @[0..*] [  :Vocab:MaterialType  ] ⟵ @[0..*]

  • Each ARCHITECTURAL Context or BuildingSection may have zero or many primary building MaterialTypes.
  • Each MaterialType may be a primary building material for zero or many Contexts or BuildingSections.

Edge/Relationship Properties

propertytypereq?uniq?descriptionexample(s)
------
sizeLengthfloatnnA numerical value for the average length measurement of individual pieces of this building material, in terms of the unit defined in the sizeUnit property, to two decimal points.61.00
sizeWidthfloatnnA numerical value for the average width measurement of individual pieces of this building material, in terms of the unit defined in the sizeUnit property, to two decimal points.26.50
sizeHeightfloatnnA numerical value for the average height measurement of individual pieces of this building material, in terms of the unit defined in the sizeUnit property, to two decimal points.30.50
sizeUnitstringnnThe unit of measurement for the recorded size measurements (sizeLength, sizeWidth, sizeHeight properties), selected from options defined in the (  :Vocab:MeasureUnit  ) controlled vocabulary."centimeters"
percentintegernnA numerical value (no decimal points) of the approximate percentage of this material in terms of the whole.85
colorstringnnA description of the average color of this building material, selected from options in ( :Vocab:Color )."Very Dark Grey"
stoneFinishstringnnA description of the finish type for STONE building material, selected from options in ( :Vocab:StoneFinishType )."roughly hewn"
masonryStylestringnnA description of the masonry style for walls and other masonry features, selected from options in ( :Vocab:MasonryStyle )."regular courses"
masonryTechnique[string list]nnAny observed masonry technique, as a string array, selected from options in ( :Vocab:MasonryTechnique ).["corbels", "quoins", "string courses"]

POSSIBLE: System/Audit Properties

Need to decide if we should include the full (or a partial) audit trail for edge/relationships. I'm leaning toward YES.

(these are not required/enforced by Neo4j but are populated via the UJAP Database web application; these could also be handled—perhaps more simply—by edge/relationship to AuditEvent nodes)

propertytypereq?uniq?descriptionexample(s)
proposedAtdatetimennTimestamp of entity proposal (initial database record creation)"2026-01-30T02:39:15.638Z"
proposedBystringnnEmail or userID of the person who created this entity's initial/proposed record"person@email.com"
approvedAtdatetimennTimestamp of entity proposal (initial database record creation)"2026-01-30T12:47:15.638Z"
approvedBystringnnEmail or userID of the person who created this entity's initial/proposed record"person@email.com"
committedAtdatetimennof node entity COMMIT (i.e., formal approval/ publishing to database by an admin)."2026-01-31T02:41:56.043Z"
committedBystringnnEmail or userID of the person who COMMITTED this node entity."person@email.com"

Example Visualization

Insert visualization here, drawn in Arrows.app and using the correct color-coding.