diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 998be2902..b40760cc1 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -45,6 +45,7 @@ snapshotInformation.json
/Domains/2-DisciplinePhysical/Civil/CivilPhysical/ @iTwin/bis-civil-core
/Domains/2-DisciplinePhysical/Civil/LinearlyLocatedAttributions/RoadAttributions/ @iTwin/bis-civil-roads
/Domains/2-DisciplinePhysical/Civil/SpatialComposition/BridgeSpatial/ @iTwin/bis-civil-bridge
+/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/ @iTwin/bis-civil-core
/Domains/2-DisciplinePhysical/Civil/SpatialComposition/RoadSpatial/ @iTwin/bis-civil-roads
/Domains/2-DisciplinePhysical/Civil/RoadRailAlignment/ @iTwin/bis-civil-core
/Domains/2-DisciplinePhysical/Civil/RoadRailUnits/ @iTwin/bis-civil-core
diff --git a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/CivilSpatial.ecschema.xml b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/CivilSpatial.ecschema.xml
new file mode 100644
index 000000000..ca99f1688
--- /dev/null
+++ b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/CivilSpatial.ecschema.xml
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ NotForProduction
+
+
+ DisciplinePhysical
+
+
+
+
+ spcomp:Site
+
+
+
+ spcomp:SiteType
+
+
+
+ spcomp:SiteIsOfType
+
+
+
+
+
+
+
+
+
+ spcomp:Space
+
+
+
+
+
+ Space
+
+
+
+ spcomp:SpaceType
+
+
+
+ spcomp:SpaceIsOfType
+
+
+
+
+
+
+
+
+
+ Space
+
+
+
+ spcomp:SpaceType
+
+
+
+ spcomp:SpaceIsOfType
+
+
+
+
+
+
+
+
+
+ Space
+
+
+
+
+ spcomp:SpaceType
+
+
+
+ spcomp:SpaceIsOfType
+
+
+
+
+
+
+
+
+
+ Space
+ lr:ILinearLocationElement
+
+
+
+ spcomp:SpaceType
+
+
+
+ spcomp:SpaceIsOfType
+
+
+
+
+
+
+
+
+
+ Space
+
+
+
+ spcomp:SpaceType
+
+
+
+ spcomp:SpaceIsOfType
+
+
+
+
+
+
+
+
+
+ Space
+
+
+
+ spcomp:SpaceType
+
+
+
+ spcomp:SpaceIsOfType
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/CivilSpatial.remarks.md b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/CivilSpatial.remarks.md
new file mode 100644
index 000000000..e31428bed
--- /dev/null
+++ b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/CivilSpatial.remarks.md
@@ -0,0 +1,96 @@
+---
+noEditThisPage: true
+remarksTarget: CivilSpatial.ecschema.md
+---
+
+# CivilSpatial
+
+This schema contains the main classes to capture the Spatial Structure of Site projects.
+
+NOTE: Currently under development. This schema should not be used for production workflows. Data created using this schema is not supported and may not be upgradable.
+
+The following class diagram depicts the main classes in the CivilSpatial schema that extend the _Site_-related concepts from the `SpatialComposition` schema.
+
+
+
+The following class diagram depicts the main classes in the CivilSpatial schema that extend the _Space_-related concepts from the `SpatialComposition` schema.
+
+
+
+The following instance diagram depicts a simplified spatial hierarchy of a sample of a "Shopping Plaza", involving not only concepts defined in the `CivilSpatial` schema, but also the `BuildingSpatial` and `RoadSpatial` schemas - all of which are based on common rules and patterns defined in the `SpatialComposition` schema.
+
+
+
+## Entity Classes
+
+### Site
+
+`Site`s must be contained in `SpatialLocationModel`s or `PhysicalModel`s.
+
+### ParkingArea
+
+`ParkingArea`s must be contained in `SpatialLocationModel`s or `PhysicalModel`s.
+
+Equivalent to [IfcSpace](https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcSpace.htm) with a PredefinedType attribute set to [IfcSpaceTypeEnum.PARKING](https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcSpaceTypeEnum.htm).
+
+### ParkingIsland
+
+Instances of `ParkingIsland` are typically aggregated by instances of `ParkingArea` by using the `spcomp:SpatialStructureElementAggregatesElements` relationship.
+
+`ParkingIsland`s must be contained in `SpatialLocationModel`s or `PhysicalModel`s.
+
+### ParkingRow
+
+The number of Parking-spaces modeled in a single instance of `ParkingRow` is captured by its `ParkingSpaceCount` property.
+
+`ParkingRow`s must be contained in `SpatialLocationModel`s or `PhysicalModel`s.
+
+### PondArea
+
+Uses of permanent `PondArea`s include: to manage stormwater runoff, for protection against flooding, for erosion control, and to serve as an artificial wetland and improve the water quality in adjacent bodies of water.
+
+When needed, a `PondArea` may aggregate smaller areas within their boundary, modeled as instances of `GenericArea`.
+
+`PondArea`s must be contained in `SpatialLocationModel`s or `PhysicalModel`s.
+
+### Sidewalk
+
+A `Sidewalk` instance may be aggregated by a `RoadwayPlateau` when defined as part of a `rdsp:Road`, or may be defined parallel to other `spcomp:Facility` instances.
+
+When defined as part of a `rdsp:Road`, a sidewalk may accommodate moderate changes in grade (elevation) and is normally separated from the vehicular section by a curb. There may be a central reserve between the sidewalk and traffic lanes.
+
+`Sidewalk`s must be contained in `SpatialLocationModel`s or `PhysicalModel`s and can be linearly located, typically along an *Alignment*. An instance of `Sidewalk` typically holds the `bis:PhysicalElement`s (e.g. *Course*s) comprising its *pavement* structure.
+
+Equivalent to [IfcFacilityPart](https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcFacilityPart.htm) with its PredefinedType attribute set to [IfcRoadPartTypeEnum.SIDEWALK](https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcRoadPartTypeEnum.htm).
+
+### GenericArea
+
+`GenericArea`s must be contained in `SpatialLocationModel`s or `PhysicalModel`s.
+
+### SiteType
+
+Instances of `SiteType` provide an additional classification that can be applied to `Site`s.
+
+### ParkingAreaType
+
+Instances of `ParkingAreaType` provide an additional classification that can be applied to `ParkingArea`s.
+
+### ParkingIslandType
+
+Instances of `ParkingIslandType` provide an additional classification that can be applied to `ParkingIsland`s.
+
+### ParkingRowType
+
+Instances of `ParkingRowType` provide an additional classification that can be applied to `ParkingRow`s.
+
+### PondAreaType
+
+Instances of `PondAreaType` provide an additional classification that can be applied to `PondArea`s.
+
+### SidewalkType
+
+Instances of `SidewalkType` provide an additional classification that can be applied to `Sidewalk`s.
+
+### GenericAreaType
+
+Instances of `GenericAreaType` provide an additional classification that can be applied to `GenericArea`s.
diff --git a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/CivilSpatial - instances.cmap b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/CivilSpatial - instances.cmap
new file mode 100644
index 000000000..09f80c5e9
Binary files /dev/null and b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/CivilSpatial - instances.cmap differ
diff --git a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/CivilSpatial-classes.cmap b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/CivilSpatial-classes.cmap
new file mode 100644
index 000000000..1e78997e0
Binary files /dev/null and b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/CivilSpatial-classes.cmap differ
diff --git a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/CivilSpatial-instances.png b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/CivilSpatial-instances.png
new file mode 100644
index 000000000..75d629ec5
Binary files /dev/null and b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/CivilSpatial-instances.png differ
diff --git a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/Site-classes.png b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/Site-classes.png
new file mode 100644
index 000000000..1a36e7de4
Binary files /dev/null and b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/Site-classes.png differ
diff --git a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/Space-classes.png b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/Space-classes.png
new file mode 100644
index 000000000..49d329997
Binary files /dev/null and b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/CivilSpatial/media/Space-classes.png differ
diff --git a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/RoadSpatial/RoadSpatial.ecschema.xml b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/RoadSpatial/RoadSpatial.ecschema.xml
index 5366931a4..80f71f8c1 100644
--- a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/RoadSpatial/RoadSpatial.ecschema.xml
+++ b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/RoadSpatial/RoadSpatial.ecschema.xml
@@ -56,10 +56,6 @@
RoadPartlr:ILinearLocationElement
-
- RoadPart
- lr:ILinearLocationElement
- RoadPart
diff --git a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/RoadSpatial/RoadSpatial.remarks.md b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/RoadSpatial/RoadSpatial.remarks.md
index ecc0a8fcb..2d827bf86 100644
--- a/Domains/2-DisciplinePhysical/Civil/SpatialComposition/RoadSpatial/RoadSpatial.remarks.md
+++ b/Domains/2-DisciplinePhysical/Civil/SpatialComposition/RoadSpatial/RoadSpatial.remarks.md
@@ -85,16 +85,6 @@ Instances of `Shoulder` are typically aggregated by an instance of `RoadwayPlate
Equivalent to [IfcFacilityPart](https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcFacilityPart.htm) with its PredefinedType attribute set to [IfcRoadPartTypeEnum.SHOULDER](https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcRoadPartTypeEnum.htm).
-### Sidewalk
-
-A sidewalk may accommodate moderate changes in grade (elevation) and is normally separated from the vehicular section by a curb. There may be a central reserve between the sidewalk and traffic lanes.
-
-A `RoadwayPlateau` instance typically aggregates zero or more instances of `Sidewalk`.
-
-`Sidewalk`s must be contained in `SpatialLocationModel`s or `PhysicalModel`s and can be linearly located, typically along an *Alignment*. An instance of `Sidewalk` typically holds the `bis:PhysicalElement`s (e.g. *Course*s) comprising its *pavement* structure.
-
-Equivalent to [IfcFacilityPart](https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcFacilityPart.htm) with its PredefinedType attribute set to [IfcRoadPartTypeEnum.SIDEWALK](https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcRoadPartTypeEnum.htm).
-
### JunctionElement
Only one instance of `Road` can aggregate an instance of `JunctionElement`. Other `Road`s meeting or crossing the same `JunctionElement` shall use the `RoadIncludesJunctions` relationship to indicate association with it.
diff --git a/SchemaInventory.json b/SchemaInventory.json
index 39fe77588..e690e79d7 100644
--- a/SchemaInventory.json
+++ b/SchemaInventory.json
@@ -5497,5 +5497,19 @@
"dynamic": "No",
"approved": "Yes"
}
+ ],
+ "CivilSpatial": [
+ {
+ "name": "CivilSpatial",
+ "path": "Domains\\2-DisciplinePhysical\\Civil\\SpatialComposition\\CivilSpatial\\CivilSpatial.ecschema.xml",
+ "released": false,
+ "version": "01.00.00",
+ "comment": "Working Copy",
+ "sha1": "",
+ "author": "",
+ "approved": "No",
+ "date": "Unknown",
+ "dynamic": "No"
+ }
]
}
\ No newline at end of file