[ 
https://issues.apache.org/jira/browse/UIMA-4685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15421346#comment-15421346
 ] 

Marshall Schor commented on UIMA-4685:
--------------------------------------

After some discussion, it seems some slight clarification is needed when 
talking about type systems in this class.  There are two kinds, and two 
purposes, I think:

1) TSI (the type system plus the index definition).  This is what today's Cas 
Complete serialization saves and reads.  Use of this in loading has the purpose 
of **replacing** the CAS's existing type system and index definitions; this 
kind of operation probably doesn't work reliably when scaled out with CAS 
Pools, because the pool assumes all CASes in it have the same type system and 
index definition.  But this works for simple cases.

2) TS (Just the type system).  This is used with Compressed Form 6 to specify 
the type system the serialized data is written with; when used in 
deserialization, it does **not** replace the CAS's type system, but rather 
allows lenient deserialization of the external form into the CAS.

The save API has 2 forms - a basic one and one with an extra destination spec 
to receive the TS or TSI, which is used except when the SerialiFormat specifies 
a format which includes already the TS or TSI.  

Does this seem correct or have I missed something?


> Add Common Load/Save APIs, including type system and index defs, for various 
> CAS formats
> ----------------------------------------------------------------------------------------
>
>                 Key: UIMA-4685
>                 URL: https://issues.apache.org/jira/browse/UIMA-4685
>             Project: UIMA
>          Issue Type: New Feature
>          Components: CasEditor, Core Java Framework
>    Affects Versions: 2.8.1SDK
>            Reporter: Peter Klügl
>            Assignee: Peter Klügl
>             Fix For: 2.9.0SDK
>
>         Attachments: BinaryCasIOUtils.java, caseditor.csv, 
> caseditor_bincas.csv
>
>
> Create a new CasIOUtils class having common load and save APIs, with optional 
> saving of type system and index definitions, in all the various CAS 
> serialization formats (except JSON).  Implement heuristic discovery for 
> deserialization to support automatic selection of the right kind of 
> deserializer.  Update the headers for binary to support indicating they have 
> the type system included (not used yet).  Update the SerialFormat to support 
> this.  Update the CasEditor and other components to use this new API.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to