<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-GB link="#0563C1" vlink="#954F72" style='word-wrap:break-word'><div class=WordSection1><p class=MsoNormal><span lang=EN-US>Peter’s email reminder me that we do need to define message formats otherwise different implementations will not be able to communicate, even if we agree on using REST. Of course there are alternatives to REST which OAIS-IF could use.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>How about this simple example for a InfoPackage and an InfoObject, which you should be able to understand fairly readily. The only non-OAIS native part if what I call the “AndGroup” and “OrGroup” but I hope the example of the OtherRepInfo where there are 2 separate implementations – C# and Java – and one can choose which to use depending on which programming language you prefer.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>You will see that all the separate parts are referred to by URI, but one could instead put in simple text or an encoded binary object with something like binhex.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>Any comments?<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>{<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>              "InformationPackage":{<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                             "PackageType":"AIP",<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                             "PackageDescription": "This  is an example AIP",<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                             "Provenance":{"IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/prov">http://myprov.example.com/prov</a>},<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                             "Reference":{"IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/ref">http://myprov.example.com/ref</a>},<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                             "AccessRights":{"IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/ar">http://myprov.example.com/ar</a>},<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                             "Context":{"IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/context">http://myprov.example.com/context</a>},<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                             "Fixity":{"IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/fix">http://myprov.example.com/fix</a>},<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                             "RepInfo":{"AndGroup":[<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                                                                                                                                 {"RIType":"SemanticsRI", "IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/risem">http://myprov.example.com/risem</a>},<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                                                                                                                                 {"RIType":"StructureRI", "IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/ristr">http://myprov.example.com/ristr</a>},<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                                                                                                                                 {"RIType":"OtherRI", "OrGroup": [                                                                                                                <o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                                                                                                                                                               {"RIType":"OtherRI", "IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/rioth-java-sw">http://myprov.example.com/rioth-java-sw</a>},<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                                                                                                                                                               {"RIType":"OtherRI", "IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/rioth-csharp-sw">http://myprov.example.com/rioth-csharp-sw</a>}<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                                                                                                                                                               ]<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                                                                                                                                  }<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                                                                                                       ]<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                                                            }<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>              }<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>}<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>{<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>              "InformationObject":{<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                             "DataObject":{"IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/do">http://myprov.example.com/do</a>},<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>                             "RepInfo":{"IdentifierType":"URI", "Identifier":<a href="http://myprov.example.com/ro">http://myprov.example.com/ro</a>}<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>              }<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>              <o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>}<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>..David <o:p></o:p></span></p></div></body></html>