Inspired by https://goo.gl/zg9Bs3 following code
import java.io.*;
import org.apache.uima.fit.factory.JCasFactory;
import org.apache.uima.jcas.JCas;
import org.apache.uima.cas.CAS;
import org.apache.uima.json.JsonCasSerializer;
public class test {
public static void main(String [] args ) throws IOException {
try {
String note="Lorem ipsum incididunt ut labore et dolore magna aliqua";
JCas jcas = JCasFactory.createJCas();
jcas.setDocumentText(note);
JsonCasSerializer jcs = new JsonCasSerializer();
StringWriter sw = new StringWriter();
CAS cas = jcas.getCas();
jcs.serialize(cas, sw);
System.out.println(sw.toString());
} catch (Exception ex) {
}
}
}
compiles fine with javac -cp .:uima-core.jar:uimafit-core-2.3.0.jar:uimaj-core-2.9.0.jar:uimaj-json.jar
test.java and executed delivers properly formatted JSON serialization.
{"_context":{"_types":{"DocumentAnnotation":{"_id":"uima.tcas.DocumentAnnotation","_feature_types":{"sofa":"_ref"}},"Sofa":{"_id":"uima.cas.Sofa","_feature_types":{"sofaArray":"_ref"}},"Annotation":{"_id":"uima.tcas.Annotation","_feature_types":{"sofa":"_ref"},"_subtypes":["DocumentAnnotation"]},"AnnotationBase":{"_id":"uima.cas.AnnotationBase","_feature_types":{"sofa":"_ref"},"_subtypes":["Annotation"]},"TOP":{"_id":"uima.cas.TOP","_subtypes":["AnnotationBase","Sofa"]}}},"_views":{"_InitialView":{"DocumentAnnotation":[{"sofa":1,"begin":0,"end":55,"language":"x-unspecified"}]}},"_referenced_fss":{"1":{"_type":"Sofa","sofaNum":1,"sofaID":"_InitialView","mimeType":"text","sofaString":"Lorem
ipsum incididunt ut labore et dolore magna aliqua"}}}
Help would be appreciated how to convert back the serialized JSON into a CAS object.
Unfortunately, there is no org.apache.uima.json.JsonCasDeSerialize...
Thanks.
|