hello @supermanPunch and @MichaelFray,
You are right, this is the way to do it
To serialize, just use objTaxonomy.Serialize (or just grab the content of the taxonomy file), and you can use the class method DocumentTaxonomy.Deserialize(strTaxo) to obtain an objTaxonomy.
Same applies to DOM and extractionResults.
For Keyword Learning content: you can grab the content of the learning file, put that content as string wherever it suits you (database, queue, asset , bucket storage etc), then just retrieve the contents, and use that instead of the LearningFilePath, within the LearningData variable.
Even for training the keyword / intelligent keyword / classifiers, the LearningData is In/Out - so it gets the LearningData at the state before training, and when the training finishes, the same variable contains the new, modified LearningData.
Hope this helps!