 	
 	/// The FCPXML document as a properly formatted string.
 	public var fcpxmlString: String {
-		let xmlDocument = XMLDocument(rootElement: self)
+		let xmlDocument = XMLDocument(rootElement: self.copy() as! XMLElement)
 		let formattedData = xmlDocument.xmlData(withOptions: 131076)
 		let formattedString = NSString(data: formattedData, encoding: String.Encoding.utf8.rawValue)
 		

								
								let multicamAngleChildElement = multicamAngleChild as! XMLElement
								
								guard multicamAngleChildElement.fcpxType == .assetClip else {
									continue
								}
								

					let itemChildElement = itemChild as! XMLElement
					
					// Find regular synchronized clips
					if itemChildElement.fcpxType == .assetClip || itemChildElement.fcpxType == .clip { // Normal synchronized clip
						
						if itemChildElement.fcpxRef == resource.fcpxID {  // Match found on a primary storyline clip
							print("Matching synchronized clip found: \(item.attribute(forName: "name")?.stringValue)")
