diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index be7e3e04c7..e479eb6598 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -6,7 +6,8 @@
 	</properties>
 	<body>
 		<release date="unreleased" version="12.9.1">
-			<action dev="joniles" type="update">Ensure `UniversalProjectReader` handles unknown file types correctly without raising an exception.</action>
+			<action dev="joniles" type="update">Fix an issue where `UniversalProjectReader` would raise an exception when handling an unknown file type.</action>
+			<action dev="joniles" type="update">Ensure that the resource type is included as part of the resource assignment data when writing PMXML files.</action>
 		</release>
 		<release date="2024-04-11" version="12.9.0">
 			<action dev="joniles" type="update">Updated `UniversalProjectReader` to add `getProjectReaderProxy` methods to allow access to the instance of the reader class which will be used to read a schedule, prior to the schedule being read. This will allow the reader to be configured, or schedule to be ignored without reading its content.</action>
diff --git a/src/main/java/net/sf/mpxj/primavera/PrimaveraPMProjectWriter.java b/src/main/java/net/sf/mpxj/primavera/PrimaveraPMProjectWriter.java
index b4794148ae..79f3882fb0 100644
--- a/src/main/java/net/sf/mpxj/primavera/PrimaveraPMProjectWriter.java
+++ b/src/main/java/net/sf/mpxj/primavera/PrimaveraPMProjectWriter.java
@@ -1178,6 +1178,7 @@ private void writeAssignment(ResourceAssignment mpxj)
       xml.setCostAccountObjectId(mpxj.getCostAccountUniqueID());
       xml.setRemainingStartDate(mpxj.getRemainingEarlyStart());
       xml.setRemainingFinishDate(mpxj.getRemainingEarlyFinish());
+      xml.setResourceType(ResourceTypeHelper.getXmlFromInstance(mpxj.getResource().getType()));
 
       PmxmlUnitsHelper unitsHelper = new PmxmlUnitsHelper(mpxj);
       xml.setPlannedUnits(unitsHelper.getPlannedUnits());